[INFO] Nexus 5 booting kernel 4.11 - Nexus 5 General

Hi,
i just wanted to give some information on my latest attempts to boot kernel 4.11 on the Nexus 5.
This is just for fun or at least a proof of concept to boot mainline kernel.
Have a look at bootup text file attached to this post.
You may first see my other post here:
https://forum.xda-developers.com/showpost.php?p=72681973&postcount=13
As i already stated this "project" is of no real practical use, other then learning about latest kernel and getting used to DTS files.
Many parts are missing and booting into Android would be a very dusty and rocky road... it is more that this will never happen!
Anyway i decided to switch to kernel 4.11, as there'd been some improvements on some SoC internals (e.g. USB).
So i took this kernel:
https://git.linaro.org/landing-team...shot/kernel-release/db820c/qcomlt-4.11.tar.gz
After some first tests i decided to check out more options in the kernel config file to get little nearer to the 3.4 kernel config we all know.
You'll find the config file below.
In order to do some testing easily i decided to use TWRP recovery as an initrd here.
To make it more handy i simply added a service to get a console shell.
In other words, there's busybox and some other tools to examine the system.
The image uses the serial debug console as the user interface.
To interact with the system you'll need an earjack debug adapter.
See the image (debug_3.5mm.jpg) for some information... or search the web.
To boot the image, unzip hammerhead-4.11.zip go into bootloader mode and use fastboot:
fastboot boot hammerhead-4.11.img
EDIT: Updated the attachments, as there'd been some progress (see post #7).
EDIT2: YAU (Yet Another Update)
Have fun!
scholbert

Nice job!
Some time ago I tried to build from scratch 3.10 kernel, you can find the code here.
From the log look like that the internal memory is missing, maybe due incomplete device tree entry. The related documentation should be this.

Hi 95A31!
95A31 said:
Nice job!
Some time ago I tried to build from scratch 3.10 kernel, you can find the code here.
From the log look like that the internal memory is missing, maybe due incomplete device tree entry. The related documentation should be this.
Click to expand...
Click to collapse
Thanks for your reply. Any hints and ideas are higly appreciated
Basically the sdhc entries look o.k. to me.
I already compared many parts of the DT entries in kernel 4.11 with the ones in kernel 3.4 as well (and yes they slightly changed their style).
There might be some issues with DT in general here, but i suspect some basic stuff is missing to initiate the power supply (PM8841 & PM8941) correctly.
Maybe i'll dig a little deeper... maybe not :angel:
Anyway, leave some comments here if you like!
Cheers,
scholbert

scholbert said:
...
There might be some issues with DT in general here, but i suspect some basic stuff is missing to initiate the power supply (PM8841 & PM8941) correctly.
....
Click to expand...
Click to collapse
What make you think this?

Gonna test it on my phone.

95A31 said:
What make you think this?
Click to expand...
Click to collapse
See those snippets from bootlog of kernel 3.4:
Code:
...
[ 0.143223] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.144749] socinfo_print: v8, id=126, ver=2.2, raw_id=1968, raw_ver=7, hw_plat=150, hw_plat_ver=65536
[ 0.144755] accessory_chip=0, hw_plat_subtype=0, pmic_model=65537, pmic_die_revision=196609
[ 0.158993] gpiochip_add: registered GPIOs 0 to 145 on device: msmgpio
[ 0.175335] msm_watchdog f9017000.qcom,wdt: MSM Watchdog Initialized
[ 0.194446] 8841_s1: 675 <--> 1050 mV at 0 mV normal idle
[ 0.194895] 8841_s1_ao: 675 <--> 1050 mV at 0 mV normal idle
[ 0.195357] 8841_s1_so: 675 <--> 1050 mV at 675 mV normal idle
[ 0.195859] 8841_s2: 500 <--> 1050 mV at 0 mV normal idle
[ 0.196322] 8841_s2_corner: 0 <--> 0 mV at 0 mV normal idle
[ 0.196785] 8841_s2_corner_ao: 0 <--> 0 mV at 0 mV normal idle
[ 0.197235] 8841_s2_floor_corner: 0 <--> 0 mV at 0 mV normal idle
[ 0.197723] 8841_s3: 1050 mV normal idle
[ 0.198201] 8841_s4: 815 <--> 900 mV at 0 mV normal idle
[ 0.198675] 8841_s4_corner: 0 <--> 0 mV at 0 mV normal idle
[ 0.199145] 8841_s4_floor_corner: 0 <--> 0 mV at 0 mV normal idle
[ 0.199630] 8941_s1: 1300 mV normal idle
[ 0.200131] 8941_s2: 2150 mV normal idle
[ 0.200614] 8941_s3: 1800 mV normal idle
[ 0.201146] 8941_l1: 1225 mV normal idle
[ 0.201627] 8941_l2: 1200 mV normal idle
[ 0.202120] 8941_l3: 1225 mV normal idle
[ 0.202608] 8941_l4: 1225 mV normal idle
[ 0.203117] 8941_l5: 1800 mV normal idle
[ 0.203599] 8941_l6: 1800 mV normal idle
[ 0.204088] 8941_l7: 1800 mV normal idle
[ 0.204588] 8941_l8: 1800 mV normal idle
[ 0.205066] 8941_l9: 1800 <--> 2950 mV at 2950 mV normal idle
[ 0.205554] 8941_l10: 1800 <--> 2950 mV at 2950 mV normal idle
[ 0.206025] 8941_l11: 1300 mV normal idle
[ 0.206520] 8941_l12: 1800 mV normal idle
[ 0.206982] 8941_l12_ao: 1800 mV normal idle
[ 0.207462] 8941_l13: 1800 <--> 2950 mV at 2950 mV normal idle
[ 0.207961] 8941_l14: 1800 mV normal idle
[ 0.208434] 8941_l15: 2050 mV normal idle
[ 0.208930] 8941_l16: 2700 mV normal idle
[ 0.209418] 8941_l17: 3000 mV normal idle
[ 0.209909] 8941_l18: 2850 mV normal idle
[ 0.210405] 8941_l19: 3000 <--> 3300 mV at 3300 mV normal idle
[ 0.210917] 8941_l20: 2950 mV normal idle
[ 0.211414] 8941_l21: 2950 mV normal idle
[ 0.211907] 8941_l22: 3000 <--> 3300 mV at 3100 mV normal idle
[ 0.212411] 8941_l23: 3000 mV normal idle
[ 0.212898] 8941_l24: 3075 mV normal idle
[ 0.213387] 8941_lvs1:
[ 0.213821] 8941_lvs2:
[ 0.214265] 8941_lvs3:
...
...and these messages from kernel 4.11:
Code:
...
[ 0.213352] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.215005] cpuidle: using governor menu
[ 0.215647] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[ 0.215657] hw-breakpoint: maximum watchpoint size is 8 bytes.
[ 0.216665] irq: no irq domain found for /smp2p-adsp/slave-kernel !
[ 0.232062] irq: no irq domain found for /soc/[email protected] !
[ 0.251356] AXI: msm_bus_fabric_init_driver(): msm_bus_fabric_init_driver
[ 0.251635] reg-fixed-voltage vreg-boost: could not find pctldev for node /soc/[email protected]/[email protected]/[email protected]/boost-bypass, deferring probe
...
Regards,
scholbert

Hey,
short update... found something to get the messages from PMIC :victory:
There was a missing option in my configuration. We need CONFIG_RPMSG_QCOM_SMD to be set.
Unfortunately still no sign from the eMMC ...
EDIT: grrrrr... still some issues here.
If RPM shared memory driver gets activated, this seems to change some setup in clock unit of the chip, which as a result disables RTC or destroys something else.
So in the end i'm not sure if shared memory driver should be used here
Anyway will play around with all this in the next weeks... but remember it's summer... so it may all take it's time!
EDIT2: yeeeessssss.. some issues solved!
I forgot that i made a change in dtsi which seemed to block the interrupt to smbi... in the end reverted it, applied new configuration, and there it is.
We got eMMC now :highfive:
See new attached files and have anice weekend!
EDIT3: Moved the attachments to the first post!
BTW, there's a guy at the fairphone forum who does similar experiments with the FP2 (MSM8974 based as well):
https://forum.fairphone.com/t/kernel-hackers-upstream-kernel-for-fp2-openos/28628
Here's his github repo:
https://github.com/z3ntu/linux
Regards,
scholbert

scholbert said:
Hey,
short update... found something to get the messages from PMIC :victory:
There was a missing option in my configuration. We need CONFIG_RPMSG_QCOM_SMD to be set.
Unfortunately still no sign from the eMMC ...
[...]
Click to expand...
Click to collapse
Good job!
Look like system can not access to memory:
Code:
[ 1.800624] init: /init.rc: 66: invalid command 'load_system_props'
Code:
[ 1.995481] init: /init.recovery.hammerhead.rc: 17: invalid command '/sbin/ln'
Maybe the change msm_sdcc.1 -> f9824900.sdhci had broke something. Before the kernel messages I have this part in my logs:
Code:
[7040] use_signed_kernel=0, is_unlocked=1, is_tampered=1.
[7040] Loading boot image (9416704): start
[7380] Loading boot image (9416704): done
[7380] Found Appeneded Flattened Device tree
[7380] DTB: platform id 126, board id 150, soc rev 20002, board rev 11
[7390] get_display_kcal = 0, 0, 0, x
[7390]
Booting Linux
[7440] vibe
[7540] splash: boot
[7580] splash: unlocked
[7620] cmdline: console=ttyHSL0,115200,n8 androidboot.hardware=hammerhead user_debug=31 msm_watchdog_v2.enable=1 mdss_mdp.panel=dsi androidboot.bootdevice=msm_sdcc.1 uart_console=enable gpt=enable lge.kcal=0|0|0|x lge.rev=rev_11 androidboot.laf androidboot.emmc=[7640] Updating device tree: start
[7650] Updating device tree: done
[7660] booting linux @ 0x8000, ramdisk @ 0x2900000 (1115413), tags/device tree @ 0x2700000
[7660] Turn off MIPI_CMD_PANEL.
[7660] Continuous splash enabled, keeping panel alive.
Uncompressing Linux... done, booting the kernel.
Can be the value of androidboot.bootdevice related with this problem?
Here a Linaro guy is working on Nexus 7 (APQ8064 based unfortunately).
EDIT:
Moreover fstab.hammerhead use msm_sdcc.1 and this is wrong for sure.

Hi 95A31,
thanks for your comments and information about the Nexus 7 project.
The errors you find in the logs are related to the TWRP initrd and setup stuff.
Please refer to these messages i grabbed some time ago from the standard TWRP image:
Code:
...
[ 5.341167] init: /init.rc: 66: invalid command 'load_system_props'
[ 5.346559] init: could not import file '/init.recovery.logd.rc' from '/init.rc'
[ 5.353919] init: /init.recovery.hammerhead.rc: 17: invalid command 'ln'
[ 5.362647] healthd: wakealarm_init: timerfd_create failed
[ 5.863315] android_usb: already disabled
[ 6.134887] init: Unable to open persistent property directory /data/property errno: 2
[ 6.141831] init: Unable to open persistent property directory /data/property errno: 2
...
As you see it's barely the same stuff printed out (independent of the kernel you use).
You may modify the initrd as you like to
The partitions can be mounted and accessed from serial console with this kernel now:
Code:
~ # mount -t ext4 /dev/block/mmcblk0p28 /data
[ 237.878280] EXT4-fs (mmcblk0p28): mounted filesystem with ordered data mode. Opts: (null)
~ # df
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 968568 28 968540 0% /dev
tmpfs 968568 288 968280 0% /tmp
/dev/block/mmcblk0p28
27971732 10849488 17105860 39% /data
~ # cd data
/data # ls
adb backup data media security
anr bootchart drm mediadrm ss
app bugreports fdAlbum misc su
app-asec cam_socket1 local nfc system
app-lib cam_socket2 lost+found property tombstones
app-private dalvik-cache maru resource-cache user
/data #
Please check out the expermimental image and try yourself.
Be careful what you do at anytime though, because your dealing with your phones file system from within an experimental ramdisk.
So please do not brick your phone, while playing around :angel:
BTW... speaking of memory is more common for RAM, while storage may be used for eMMC and mass storage devices.
Of course a lot of tweaks and fixes are needed as this is all very experimental, so anyway thanks for your hint.
EDIT: ... and yes as for the numbering and naming this has to be corrected somewhere in time.
The eMMC is detected as device mmc0 (controller sdhci1) for now, because WLAN SDIO (using controller sdhci2) is not implemented yet.
Same for the fstab file.
Someone may try to rename some entries and see what happens, but as far as many parts are missing, there's no need for this right now.
Regards,
scholbert

scholbert said:
[...]
The errors you find in the logs are related to the TWRP initrd and setup stuff.
[...]
Click to expand...
Click to collapse
You are more skilled than me about this topic
scholbert said:
[...]
Someone may try to rename some entries and see what happens, but as far as many parts are missing, there's no need for this right now.
[...]
Click to expand...
Click to collapse
Which should be the next thing to fix?
I attached the list of commits commited by LG in aosp kernel

95A31 said:
You are more skilled than me about this topic
Click to expand...
Click to collapse
Thanks for the flowers
95A31 said:
Which should be the next thing to fix?
Click to expand...
Click to collapse
I would like to get a working usb connection and use adb to communicate with the phone.
This would possibly increase the amount of interested people to check out a console based system on their phone and do some experiments.
I guess there are only a few people who got this earjack adapter or something.
At least the Nexus 5 is an interesting piece of embedded hardware to play with, even if the display got crashed.
95A31 said:
I attached the list of commits commited by LG in aosp kernel
Click to expand...
Click to collapse
Nice! Thanks for the list.
As this refers to AOSP kernel 3.4 it gives a good overview of the patches fixes and changes of course.
For mainline kernel 4.11 this is list would look very different though.
I still concentrate on fine tuning of the kernel configuration, as there are still many things to discover.
To get some Nexus 5 specific device drivers integrated would be nice as well (e.g. check BQ24190/2 code and implement it to DT).
Anyway... always remember this is a just for fun thing.
Could be some educational project if your like, but without all the binary blobs adopted to kernel 4.11 there will never be a working Android.
EDIT:
As for the educational purpose (my very own )
We can sample some interrupts from the PM8941 subsystem very well:
Code:
~ # cat /proc/interrupts
CPU0
18: 8925 GIC-0 20 Level arch_timer
20: 0 GIC-0 39 Level arch_mem_timer
22: 0 GIC-0 194 Edge adsp
23: 0 GIC-0 190 Edge smp2p
24: 0 GIC-0 59 Edge smp2p
25: 0 GIC-0 175 Edge smp2p
26: 1181 GIC-0 139 Level msm_serial0
27: 80 GIC-0 155 Edge mmc0
28: 0 GIC-0 170 Edge f9824900.sdhci
176: 0 GIC-0 127 Level i2c_qup
178: 0 GIC-0 271 Level bam_dma
179: 0 GIC-0 166 Edge msm_otg
186: 0 pmic_arb 6357309 Edge pm8xxx_rtc_alarm
187: 2 pmic_arb 524325 Edge pm8941_pwrkey
188: 0 pmic_arb 1050408 Edge chg-done
189: 0 pmic_arb 1049896 Edge chg-fast
190: 0 pmic_arb 1049640 Edge chg-trkl
191: 0 pmic_arb 1179946 Edge bat-temp-ok
192: 0 pmic_arb 1179690 Edge bat-present
193: 0 pmic_arb 1245739 Edge chg-gone
194: 4 pmic_arb 1245483 Edge usb-valid
195: 0 pmic_arb 1311020 Edge dc-valid
197: 2 pmic_arb 12648535 Edge volume_up
198: 2 pmic_arb 12714072 Edge volume_down
243: 0 GIC-0 188 Edge adsp
244: 0 GIC-0 57 Edge modem
245: 47 GIC-0 200 Edge rpm
246: 0 GIC-0 58 Edge smsm
247: 0 GIC-0 189 Edge smsm
248: 0 GIC-0 176 Edge smsm
249: 0 smp2p 0 Edge adsp
250: 0 smp2p 1 Edge adsp
251: 0 smp2p 2 Edge adsp
252: 0 smp2p 3 Edge adsp
IPI0: 0 CPU wakeup interrupts
IPI1: 0 Timer broadcast interrupts
IPI2: 652 Rescheduling interrupts
IPI3: 5 Function call interrupts
IPI4: 0 CPU stop interrupts
IPI5: 0 IRQ work interrupts
IPI6: 0 completion interrupts
Err: 0
To be more precisely:
volume_up, volume_down, pwrkey and usb-valid are detected and working.
Unfortunately no reaction from the host and no kernel message, when micro usb cable is attached or detached...
Whatever...
Regards,
scholbert

scholbert said:
[..]
I would like to get a working usb connection and use adb to communicate with the phone.
This would possibly increase the amount of interested people to check out a console based system on their phone and do some experiments.
I guess there are only a few people who got this earjack adapter or something.
At least the Nexus 5 is an interesting piece of embedded hardware to play with, even if the display got crashed.
[...]
Click to expand...
Click to collapse
Nice, I hope to have time to seriously play with it and maybe make something work.
scholbert said:
[...]
Anyway... always remember this is a just for fun thing.
Could be some educational project if your like, but without all the binary blobs adopted to kernel 4.11 there will never be a working Android.
[...]
Click to expand...
Click to collapse
I know, I know, sometime I follow my enthusiasm . Yes, blobs are a big problem for a working Android and when I think about how address it, and how much time it will require I die inside

Wow!!!
Hey there,
i just wondered how time goes by
I'm still using my hammerhead for daily use and from time to time i'm searching the web how things are evolving.
This is the coolest project i've seen for a while:
https://github.com/flto/linux/wiki/hammerhead-upstream
Need to do some research who's behind it
Have a nice day!
scholbert

Related

How do you use Compcache with linux-swap as a backup

How do you use Compcache with linux-swap as a backup? I dont understand the thread correctly that explains it I already have compcache.
You have to edit the userinit.sh file. Open it with notepad, then change the line to look like this:
insmod ramzswap.ko memlimit_kb=32000 backing_swap=/dev/block/mmcblk0p3;
then reboot, and you should be good.
blackfire1 said:
How do you use Compcache with linux-swap as a backup? I dont understand the thread correctly that explains it I already have compcache.
Click to expand...
Click to collapse
There are two ways to use an existing linux-swap as a backup to Compcache.
Let linux manage compcache and the linux-swap partition/file directly
Let compcache manage the linux-swap partition. *As of this writing, cyanogen has only included the .5 series of compcache which will not support a linux-swap file.
You need to first create the compcache swap device. I assume you are running a cyanogen kernel and you have compiled modules. Also I assume you know what your swap partition or swap file is called. e.g. A swap file looks like /system/sd/swapfile.swp, a swap partition looks like /dev/block/mmcblk0p3.
1. Linux managed:
Pros: Supports linux-swap file. Relies on established linux swapping priorities.
Cons: compcache wastes space as incompressible data remains in the compcache swap. Linux uses compcache until its full, then places everything in the backing swap.
First we enable the compcache swap device.
Code:
insmod /system/modules/lib/modules/2.6.29-cm/compcache/xvmalloc.ko; #load the compcache memory allocator
insmod /system/modules/lib/modules/2.6.29-cm/compcache/ramzswap.ko disksize_kb=24576; #create a compressed swap device with disk size 24576 kB
mknod /dev/ramzswap0 b 253 0; #initialize ramzswap0
swapon /dev/ramzswap0; #turn on compcache swap first so it has higher priority. (defaults as -1)
Next we either enable the swap file or the swap partition.
If you have a swap file then the next line is.
Code:
swapon /system/sd/swapfile.swp; #turns on second swap as priority -2, lower priority than above.
or
Code:
swapon /dev/block/mmcblk0p3; #turns on second swap as priority -2, lower priority than above.
To check to see whether it works, you will type:
cat /proc/swaps/
and see either
Code:
# cat /proc/swaps
Filename Type Size Used Priority
/dev/ramzswap0 partition 24464 6584 -1
/system/sd/swapfile.swp file 31596 0 -2
or
Code:
# cat /proc/swaps
Filename Type Size Used Priority
/dev/ramzswap0 partition 24464 6584 -1
/dev/block/mmcblk0p3 partition 31596 0 -2
2. Compcache .5.3 managed:
Pros: compcache can attempt to maximize compressed data in compcache and intelligently allocate to backing swap.
Cons: Relies on newer algorithms. Does not support swap files yet.
When cyanogen updates to compcache .6.x, you can use the swap file, until then, its just the swap partition.
Code:
insmod /system/modules/lib/modules/2.6.29-cm/compcache/xvmalloc.ko; #load the compcache memory allocator
insmod /system/modules/lib/modules/2.6.29-cm/compcache/ramzswap.ko [b]backing_swap=/dev/block/mmcblk0p3 memlimit_kb=24576; [/b] #create a compressed swap device with disk size 24576 kB #NOTE! Memlimit currently ignored in current build. Default to 14 megs (15% memory)
mknod /dev/ramzswap0 b 253 0; #initialize ramzswap0
swapon /dev/ramzswap0; #turn on compcache swap, this includes the backing swap which should be invisible to linux.
NOTE: There is no need to enable any other swaps afterward unless you want a linux managed backing swap
If you type
cat /proc/swaps/
you will see:
Code:
# cat /proc/swaps
Filename Type Size Used Priority
/dev/ramzswap0 partition 24464 6584 -1
Use
cat /proc/ramzswap
and if you don't have a backing swap you will see.
Code:
# cat /proc/ramzswap
DiskSize: 24468 kB
NumReads: 1260
NumWrites: 2042
FailedReads: 0
FailedWrites: 0
InvalidIO: 0
PagesDiscard: 0
ZeroPages: 113
GoodCompress: 74 %
NoCompress: 3 %
PagesStored: 1929
PagesUsed: 630
OrigDataSize: 7716 kB
ComprDataSize: 2482 kB
MemUsedTotal: 2520 kB
if you do, it should say
Code:
# cat /proc/ramzswap
DiskSize: 31250 kB
MemLimit: 14680 kB
NumReads: 5186
NumWrites: 9229
FailedReads: 0
FailedWrites: 0
InvalidIO: 0
PagesDiscard: 0
ZeroPages: 578
GoodCompress: 100 %
NoCompress: 0 %
PagesStored: 5313
PagesUsed: 1425
OrigDataSize: 21252 kB
ComprDataSize: 5532 kB
MemUsedTotal: 5700 kB
[b]BDevNumReads: 1185
BDevNumWrites: 2145
[/b]
3. Miscellaneous Notes:
As I typed this I realized I was pulling information from the .6.x tree and the .5.x tree. It's possible that the syntax for compcache has changed.
Also, if anyone wants to update the wiki with this, I'd appreciate it. I don't feel like formatting for the wiki right now.
Wow, excellent answer. Wiki material for sure - if no one's gotten it a little later, I'll take care of it. Gotta pretend I'm actually working awhile first.
overpower said:
2. Compcache .5.3 managed:
Pros: compcache can attempt to maximize compressed data in compcache and intelligently allocate to backing swap.
Cons: Relies on newer algorithms. Does not support swap files yet.
When cyanogen updates to compcache .6.x, you can use the swap file, until then, its just the swap partition.
Code:
insmod /system/modules/lib/modules/2.6.29-cm/compcache/xvmalloc.ko; #load the compcache memory allocator
insmod /system/modules/lib/modules/2.6.29-cm/compcache/ramzswap.ko [b]backing_swap=/dev/block/mmcblk0p3 memlimit_kb=24576; [/b] #create a compressed swap device with disk size 24576 kB #NOTE! Memlimit currently ignored in current build. Default to 14 megs (15% memory)
mknod /dev/ramzswap0 b 253 0; #initialize ramzswap0
swapon /dev/ramzswap0; #turn on compcache swap, this includes the backing swap which should be invisible to linux.
Code:
# cat /proc/ramzswap
DiskSize: 31250 kB
MemLimit: 14680 kB
NumReads: 5186
NumWrites: 9229
FailedReads: 0
FailedWrites: 0
InvalidIO: 0
PagesDiscard: 0
ZeroPages: 578
GoodCompress: 100 %
NoCompress: 0 %
PagesStored: 5313
PagesUsed: 1425
OrigDataSize: 21252 kB
ComprDataSize: 5532 kB
MemUsedTotal: 5700 kB
[b]BDevNumReads: 1185
BDevNumWrites: 2145
[/b]
3. Miscellaneous Notes:
As I typed this I realized I was pulling information from the .6.x tree and the .5.x tree. It's possible that the syntax for compcache has changed.
Also, if anyone wants to update the wiki with this, I'd appreciate it. I don't feel like formatting for the wiki right now.
Click to expand...
Click to collapse
I don't see adding memlimit_kb=24576 after backing_swap=/dev/block/mmcblk0p3 having any effect-- as you see, it is still limiting the size to 15% of the physical RAM.

[Q] Overclock omap4470 Kernel.

Has anyone tried this? Seems to be easy enough.
Code:
@@ -545,6 +546,8 @@
OPP_INITIALIZER("mpu", "virt_dpll_mpu_ck", "mpu", true, 1300000000, OMAP4470_VDD_MPU_OPPNITRO_UV),
/* MPU OPP4 - OPP-Nitro SpeedBin */
OPP_INITIALIZER("mpu", "virt_dpll_mpu_ck", "mpu", false, 1500000000, OMAP4470_VDD_MPU_OPPNITROSB_UV),
+ /*OVERCLOCK*/
+ OPP_INITIALIZER("mpu", "virt_dpll_mpu_ck", "mpu", false, 1600000000, OMAP4470_VDD_MPU_OPPNITROSB_UV),
/* L3 OPP1 - OPP50 */
OPP_INITIALIZER("l3_main_1", "virt_l3_ck", "core", true, 116000000, OMAP4470_VDD_CORE_OPP50_UV),
/* L3 OPP2 - OPP100 */
Not so sure this is needed, but doesn't hurt, I guess.
Code:
@@ -733,7 +736,10 @@
if (!trimmed)
pr_info("This is DPLL un-trimmed SOM. OPP is limited at 1.2 GHz\n");
if (omap4_has_mpu_1_5ghz() && trimmed)
+ omap4_opp_enable("mpu", 1100000000);
+ omap4_opp_enable("mpu", 1300000000);
omap4_opp_enable("mpu", 1500000000);
+ omap4_opp_enable("mpu", 1600000000);
GPU overclock
Code:
@@ -567,13 +570,13 @@
/* SGX OPP2 - OPP100*/
OPP_INITIALIZER("gpu", "dpll_per_m7x2_ck", "core", true, 307200000, OMAP4470_VDD_CORE_OPP100H_UV),
/* SGX OPP3 - OPPOV */
- OPP_INITIALIZER("gpu", "dpll_per_m7x2_ck", "core", true, 384000000, OMAP4470_VDD_CORE_OPP100_OV_UV),
+ OPP_INITIALIZER("gpu", "dpll_per_m7x2_ck", "core", true, 416000000, OMAP4470_VDD_CORE_OPP100_OV_UV),
/* BB2D OPP1 - OPP50 */
OPP_INITIALIZER("bb2d", "dpll_per_m6x2_ck", "core", true, 192000000, OMAP4470_VDD_CORE_OPP50_UV),
/* BB2D OPP2 - OPP100 */
OPP_INITIALIZER("bb2d", "dpll_per_m6x2_ck", "core", true, 307200000, OMAP4470_VDD_CORE_OPP100H_UV),
/* BB2D OPP3 - OPP-OV */
- OPP_INITIALIZER("bb2d", "dpll_per_m6x2_ck", "core", true, 384000000, OMAP4470_VDD_CORE_OPP100_OV_UV),
+ OPP_INITIALIZER("bb2d", "dpll_per_m6x2_ck", "core", true, 416000000, OMAP4470_VDD_CORE_OPP100_OV_UV),
/* FDIF OPP1 - OPP25 */
OPP_INITIALIZER("fdif", "fdif_fck", "core", true, 32000000, OMAP4470_VDD_CORE_OPP50_UV),
/* FDIF OPP2 - OPP50 */
So in making the following changes, if I go to /sys/devices/system/cpu/cpu0/cpufreq
and do a 'cat cpuinfo_max_freq' , I get 1600
a 'cat scaling_available_frequencies' gives:
396800 800000 1100000 1300000 1500000 1600000
I have been unable to test properly because my attempts to make a working boot.img have been unsuccessful.
If anyone could share on how to properly package a zImage and ramdisk.cpio.gz into a flashable boot.img, I would be forever thankful.
I've already extracted the "green loader"/cyanoboot and ramdisk from a working boot.img
I would love to get this working. It would also be fairly easy to tweak the Samsung lpddr ram timings. I also noticed the 'succulent' kernel turned down the core voltage slightly...
OK, so,... are you saying if I go into that folder and make that change it will overclock it?
cuz I'll just go and do that if its that easy.
I don't have any knowlege of compiling kernels so I can't help with that.
I believe it was verygreen who said that he experimented with overclock when building CM and determined it was of little benefit to our devices. That said, I would be most interested in seeing how far we can push the OC on these things, but so far no one with knowledge of Android inner workings wants to build anything for our devices.
Sent from my BN NookHD+ using XDA Premium HD app
I have more questions than answers about it myself.
Nook development seems to be from an "elite" group with closely guarded secrets.
I was actually able to get a "ram console"/last_kmsg
Code:
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 3.0.31-green+ ([email protected]) (gcc version 4.4.1 (Sourcery G++ Lite 2010q1-188) ) #6 SMP PREEMPT Sun Jan 26 09:22:35 EST 2014
[ 0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c5387d
[ 0.000000] CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine: OMAP4 ovation board
[ 0.000000] Ovation EVT1B detected - selecting Novatek panel
[ 0.000000] android_display: setting default resolution 1920*1280, bpp=4
[ 0.000000] android_display: tiler1d 56623104
[ 0.000000] android_display: setting fb0.vram to 39321600
[ 0.000000] android_display: setting vram to 39321600
[ 0.000000] android_display: ion carveouts: 77594624 tiler2d, 0 nonsecure
[ 0.000000] omap4_total_ram_size = 0x40000000
[ 0.000000] omap4_smc_size = 0x300000
[ 0.000000] omap4_ion_heap_secure_input_size = 0x3000000
[ 0.000000] omap4_ion_heap_secure_output_wfdhdcp_size = 0x1000000
[ 0.000000] omap4_ducati_heap_size = 0x3000000
[ 0.000000] omap4_ion_heap_tiler_mem_size = 0x4a00000
[ 0.000000] omap4_ion_heap_nonsec_tiler_mem_size = 0x0
[ 0.000000] omap4_smc_addr = 0xbfd00000
[ 0.000000] omap4_ion_heap_secure_input_addr = 0xbcd00000
[ 0.000000] omap4_ion_heap_secure_output_wfdhdcp_addr = 0xbbd00000
[ 0.000000] omap4_ducati_heap_addr = 0xb8d00000
[ 0.000000] omap4_ion_heap_tiler_mem_addr = 0xb4300000
[ 0.000000] omap4_ion_heap_nonsec_tiler_mem_addr = 0xb4300000
[ 0.000000] omap_ion_init: secure_input id=2 [bcd00000-bfd00000] size=3000000
[ 0.000000] omap_ion_init: secure_output_wfdhdcp id=5 [bbd00000-bcd00000] size=1000000
[ 0.000000] omap_ion_init: tiler id=1 [b4300000-b8d00000] size=4a00000
[ 0.000000] omap_ion_init: nonsecure_tiler id=3 [b4300000-b4300000] size=0
[ 0.000000] omap_ion_init: system id=0 [0-0] size=0
[ 0.000000] omap_ion_init: tiler_reservation id=4 [0-0] size=0
[ 0.000000] Reserving 39845888 bytes SDRAM for VRAM
[ 0.000000] Memory policy: ECC disabled, Data cache writealloc
[ 0.000000] OMAP4470 ES1.0
[ 0.000000] SRAM: Mapped pa 0x4030d000 to va 0xfe40d000 size: 0x1000
[ 0.000000] SMC: Allocated workspace of 0x300000 Bytes at (0xbfd00000)
[ 0.000000] PERCPU: Embedded 7 pages/cpu @c10a7000 s7136 r8192 d13344 u32768
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 197536
[ 0.000000] Kernel command line: androidboot.hardware=ovation androidboot.serialno=3024550263104319 boot.fb=b2200000
[ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Memory: 256MB 506MB 17MB = 779MB total
[ 0.000000] Memory: 778596k/778596k available, 269980k reserved, 18048K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] DMA : 0xffc00000 - 0xffe00000 ( 2 MB)
[ 0.000000] vmalloc : 0xf0800000 - 0xf8000000 ( 120 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xf0000000 ( 768 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .init : 0xc0008000 - 0xc0083000 ( 492 kB)
[ 0.000000] .text : 0xc0083000 - 0xc06ea000 (6556 kB)
[ 0.000000] .data : 0xc06ea000 - 0xc073ff00 ( 344 kB)
[ 0.000000] .bss : 0xc073ff24 - 0xc089bdf8 (1392 kB)
[ 0.000000] SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] NR_IRQS:410
[ 0.000000] omap_hwmod: dpll_mpu_m2_ck: missing clockdomain for dpll_mpu_m2_ck.
[ 0.000000] OMAP clockevent source: GPTIMER1 at 32768 Hz
[ 0.000000] sched_clock: 32 bits at 32kHz, resolution 30517ns, wraps every 131071999ms
[ 0.000000] Console: colour dummy device 80x30
[ 0.000000] console [tty0] enabled
[ 0.000915] Calibrating delay loop... 1590.23 BogoMIPS (lpj=6213632)
[ 0.007904] pid_max: default: 32768 minimum: 301
[ 0.031616] Mount-cache hash table entries: 512
[ 0.031616] Initializing cgroup subsys debug
[ 0.031616] Initializing cgroup subsys cpuacct
[ 0.032348] Initializing cgroup subsys freezer
[ 0.032409] CPU: Testing write buffer coherency: ok
[ 0.032928] L310 cache controller enabled
[ 0.032928] l2x0: 16 ways, CACHE_ID 0x410000c7, AUX_CTRL 0x5e470000, Cache size: 1048576 B
[ 0.111358] CPU1: Booted secondary processor
[ 0.181396] Brought up 2 CPUs
[ 0.181427] SMP: Total of 2 processors activated (3188.82 BogoMIPS).
[ 0.184509] omap_hwmod: _populate_mpu_rt_base found no _mpu_rt_va for emif_fw
[ 0.184509] omap_hwmod: _populate_mpu_rt_base found no _mpu_rt_va for l3_instr
[ 0.184509] omap_hwmod: _populate_mpu_rt_base found no _mpu_rt_va for l3_main_1
[ 0.184509] omap_hwmod: _populate_mpu_rt_base found no _mpu_rt_va for l3_main_2
[ 0.184509] omap_hwmod: _populate_mpu_rt_base found no _mpu_rt_va for l4_abe
[ 0.184509] omap_hwmod: _populate_mpu_rt_base found no _mpu_rt_va for l4_cfg
[ 0.184509] omap_hwmod: _populate_mpu_rt_base found no _mpu_rt_va for l4_per
[ 0.184509] omap_hwmod: _populate_mpu_rt_base found no _mpu_rt_va for l4_wkup
[ 0.184509] omap_hwmod: _populate_mpu_rt_base found no _mpu_rt_va for mpu_private
[ 0.184814] omap_hwmod: _populate_mpu_rt_base found no _mpu_rt_va for sl2if
[ 0.184814] omap_hwmod: _populate_mpu_rt_base found no _mpu_rt_va for thermal_sensor
[ 0.184906] omap_hwmod: _populate_mpu_rt_base found no _mpu_rt_va for usbhs_ohci
[ 0.184906] omap_hwmod: _populate_mpu_rt_base found no _mpu_rt_va for usbhs_ehci
[ 0.184906] omap_hwmod: l3_div_ck: missing clockdomain for l3_div_ck.
[ 0.184906] omap_hwmod: l4_div_ck: missing clockdomain for l4_div_ck.
[ 0.186859] _omap4_module_wait_ready: Timeout waiting for module enable (mcpdm_fck: clkctrl = 0x30002)
[ 0.189697] omap_hwmod: mcpdm: cannot be enabled (3)
[ 0.194641] print_constraints: dummy:
[ 0.194641] NET: Registered protocol family 16
[ 0.195312] GPMC revision 6.0
[ 0.195312] EMIF0 is enabled with IRQ142
[ 0.196380] EMIF1 is enabled with IRQ143
[ 0.196380] Last reset was cold reset (PRM_RSTST=0x1)
[ 0.196380]
[ 0.196624] OMAP GPIO hardware version 0.1
[ 0.197662] omap_mux_init: Add partition: #1: core, flags: 2
[ 0.199371] omap_mux_init: Add partition: #2: wkup, flags: 2
[ 0.199554] Samsung DDR Memory
[ 0.199645] kxtf9 i2c address = 0xe
[ 0.199920] ovation_touch_init: Registering touch controller device
[ 0.201629] Using Ovation ETV1A wifi configuration
[ 0.206634] OMAP DMA hardware revision 0.0
[ 0.206634] omap_rproc_get_pool: dsp - static memory is unavailable: 0x0, 0x0
[ 0.207031] omap_rproc_get_pool: ipu - carveout memory is unavailable: 0x0, 0x0
[ 0.212768] bio: create slab <bio-0> at 0
[ 0.212951] print_constraints: vdd_lcdtp: 3300 mV normal
[ 0.213531] print_constraints: vwl1271: 1800 mV
[ 0.213531] print_constraints: vsys-wlan: 3875 mV
[ 0.213714] i2c-core: driver [twl] using legacy suspend method
[ 0.213714] i2c-core: driver [twl] using legacy resume method
[ 0.213714] usbcore: registered new interface driver usbfs
[ 0.214172] usbcore: registered new interface driver hub
[ 0.214355] usbcore: registered new device driver usb
[ 0.214935] omap_i2c omap_i2c.1: bus 1 rev4.0 at 400 kHz
[ 0.214935] Skipping twl internal clock init and using bootloader value (unknown osc rate)
[ 0.217071] twl6030: PIH (irq 39) chaining IRQs 368..387
[ 0.218963] print_constraints: LDOUSB: 3300 mV normal standby
[ 0.221466] twl6030_usb twl6030_usb: Initialized TWL6030 USB module
[ 0.224090] print_constraints: VANA: 2100 mV normal standby
[ 0.224731] print_constraints: CLK32KG:
[ 0.225402] print_constraints: CLK32KAUDIO:
[ 0.226318] print_constraints: SYSEN:
[ 0.227203] print_constraints: REGEN1:
[ 0.227630] print_constraints: LDO5: 1200 <--> 3000 mV at 3000 mV normal standby
[ 0.228210] print_constraints: LDO1: 1800 <--> 2500 mV at 1700 mV normal standby
[ 0.228668] suspend_set_state: LDO7: No configuration
[ 0.228881] print_constraints: LDO7: 1800 mV normal standby
[ 0.229858] print_constraints: LDO6: 1800 mV normal standby
[ 0.230651] print_constraints: LDOLN: 1800 mV normal standby
[ 0.231506] print_constraints: LDO2: 1000 <--> 3000 mV at 2800 mV normal standby
[ 0.231903] print_constraints: LDO4: 1800 mV normal standby
[ 0.232696] print_constraints: LDO3: 1800 mV normal standby
[ 0.233123] omap_i2c omap_i2c.3: bus 3 rev4.0 at 400 kHz
[ 0.233825] omap-rproc omap-rproc.0: dsp is available
[ 0.233825] omap-rproc omap-rproc.1: ipu is available
[ 0.233825] Advanced Linux Sound Architecture Driver Version 1.0.24.
[ 0.234588] Bluetooth: Core ver 2.16
[ 0.234588] NET: Registered protocol family 31
[ 0.234588] Bluetooth: HCI device and connection manager initialized
[ 0.234588] Bluetooth: HCI socket layer initialized
[ 0.234588] Bluetooth: L2CAP socket layer initialized
[ 0.234771] Bluetooth: SCO socket layer initialized
[ 0.234771] Switching to clocksource 32k_counter
[ 0.236053] Switched to NOHz mode on CPU #0
[ 0.236083] Switched to NOHz mode on CPU #1
[ 0.241699] musb-hdrc: version 6.0, musb-dma, otg (peripheral+host)
[ 0.242248] musb-hdrc musb-hdrc: USB OTG mode controller at fc0ab000 using DMA, IRQ 124
[ 0.242675] NET: Registered protocol family 2
[ 0.242706] IP route cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.243774] TCP established hash table entries: 131072 (order: 8, 1048576 bytes)
[ 0.243774] TCP bind hash table entries: 65536 (order: 8, 1572864 bytes)
[ 0.243774] TCP: Hash tables configured (established 131072 bind 65536)
[ 0.243774] TCP reno registered
[ 0.243774] UDP hash table entries: 512 (order: 3, 32768 bytes)
[ 0.248352] UDP-Lite hash table entries: 512 (order: 3, 32768 bytes)
[ 0.248352] NET: Registered protocol family 1
[ 0.267456] Trying to unpack rootfs image as initramfs...
[ 0.359802] Freeing initrd memory: 1832K
[ 0.812927] omap_init_opp_table: no hwmod or odev for hsi, [26] cannot add OPPs.
[ 0.812927] omap_init_opp_table: no hwmod or odev for hsi, [27] cannot add OPPs.
[ 1.328552] ram_console: got buffer at 90000000, size 200000
[ 1.329376] ram_console: no valid data in buffer (sig = 0x08f9f706)
[ 1.329650] console [ram-1] enabled
[ 1.329650] omap-iommu omap-iommu.0: ducati registered
[ 1.329650] omap-iommu omap-iommu.1: tesla registered
[ 1.337341] highmem bounce pool size: 64 pages
[ 1.337646] ashmem: initialized
[ 1.344177] fuse init (API version 7.16)
[ 1.344787] msgmni has been set to 1489
[ 1.344787] Registering char device tf_driver (122:0)
[ 1.344787] SMCAG01.06p6.0 D
[ 1.346649] io scheduler noop registered
[ 1.346649] io scheduler deadline registered (default)
[ 1.346649] io scheduler cfq registered
[ 1.346771] start plist test
[ 1.350708] end plist test
[ 1.751861] OMAP DSS rev 4.1
[ 1.754333] Keyboard driver not present
[ 1.755004] novatek-panel display0: novatek_probe
[ 1.755065] novatek-panel display0: novatek_probe done
[ 1.755065] dsscomp: initializing.
[ 1.755065] misc dsscomp: display0=novatek-panel
[ 1.755065] misc dsscomp: display1=hdmi_panel
[ 1.755065] misc dsscomp: found 2 displays and 4 overlays, WB overlay 1
[ 1.755859] could not allocate slot
[ 1.756011] omap-rproc omap-rproc.1: powering up ipu
[ 1.756378] virtio_rpmsg_bus virtio0: rpmsg backend virtproc probed successfully
[ 1.756988] virtio_rpmsg_bus virtio1: rpmsg backend virtproc probed successfully
[ 1.756988] omap-rproc omap-rproc.0: powering up dsp
[ 1.757446] virtio_rpmsg_bus virtio2: rpmsg backend virtproc probed successfully
[ 1.757446] omap_uart.0: ttyO0 at MMIO 0x4806a000 (irq = 104) is a OMAP UART0
[ 1.758636] omap_uart.3: ttyO3 at MMIO 0x4806e000 (irq = 102) is a OMAP UART3
[ 1.759094] omap_ion_probe: adding heap secure_input of type 2 with [email protected]
[ 1.759094] omap_ion_probe: adding heap secure_output_wfdhdcp of type 2 with [email protected]
[ 1.759552] omap_ion_probe: adding heap tiler of type 4 with [email protected]
[ 1.759552] omap_ion_probe: adding heap nonsecure_tiler of type 4 with [email protected]
[ 1.759704] omap_ion_probe: adding heap system of type 0 with [email protected]
[ 1.759704] omap_ion_probe: adding heap tiler_reservation of type 5 with [email protected]
[ 1.759704] brd: module loaded
[ 1.766052] loop: module loaded
[ 1.766052] usbcore: registered new interface driver ub
[ 1.766052] (stk) :sysfs entries created
[ 1.766052] (stk) : debugfs entries created
[ 1.769134] (hci_tty): inside hci_tty_init
[ 1.769134] (hci_tty): allocated 251, 0
[ 1.799896] tun: Universal TUN/TAP device driver, 1.6
[ 1.799896] tun: (C) 1999-2004 Max Krasnyansky <[email protected]>
[ 1.799896] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 1.799896] usbcore: registered new interface driver usbserial
[ 1.802398] USB Serial support registered for generic
[ 1.802398] usbcore: registered new interface driver usbserial_generic
[ 1.802490] usbserial: USB Serial Driver core
[ 1.802490] USB Serial support registered for GSM modem (1-port)
[ 1.802490] usbcore: registered new interface driver option
[ 1.802490] option: v0.7.2:USB Driver for GSM modems
[ 1.802673] USB Serial support registered for pl2303
[ 1.802673] usbcore: registered new interface driver pl2303
[ 1.802825] pl2303: Prolific PL2303 USB to serial adaptor driver
[ 1.804382] android_usb gadget: Mass Storage Function, version: 2009/09/11
[ 1.804412] android_usb gadget: Number of LUNs=1
[ 1.804412] lun0: LUN: removable file: (no medium)
[ 1.804504] android_usb gadget: android_usb ready
[ 1.804504] musb-hdrc musb-hdrc: MUSB HDRC host driver
[ 1.804504] musb-hdrc musb-hdrc: new USB bus registered, assigned bus number 1
[ 1.804931] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 1.804931] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 1.805114] usb usb1: Product: MUSB HDRC host driver
[ 1.805114] usb usb1: Manufacturer: Linux 3.0.31-green+ musb-hcd
[ 1.805114] usb usb1: SerialNumber: musb-hdrc
[ 1.805694] hub 1-0:1.0: USB hub found
[ 1.805694] hub 1-0:1.0: 1 port detected
[ 1.806274] mousedev: PS/2 mouse device common for all mice
[ 1.806854] input: gpio-keys as /devices/platform/gpio-keys/input/input0
[ 1.807067] input: omap4-keypad as /devices/platform/omap/omap4-keypad/input/input1
[ 1.807800] usbcore: registered new interface driver xpad
[ 1.807861] FTX: ft5x06_module_init(): INFO: Initializing FT I2C Touchscreen Driver (Built Jan 26 2014 @ 09:05:13)
[ 1.807861] 3-0038: FTX: ft5x06_probe(): INFO: probing for ft5x06-i2c @ 3-0038 .
[ 2.079406] 3-0038: FTX: ft5x06_probe(): INFO: focaltech controller with Product ID=0x06 found @ 0x38.
[ 2.138580] 3-0038: FTX: ftx_input_device_initialize(): INFO: Successfully initialzed slots; using Type B protocol.
[ 2.138580] input: ft5x06-i2c as /devices/platform/omap/omap_i2c.3/i2c-3/3-0038/input/input2
[ 2.138580] twl6030_pwrbutton_probe: Enter
[ 2.139739] input: twl6030_pwrbutton as /devices/platform/omap/omap_i2c.1/i2c-1/1-0049/twl6030_pwrbutton/input/input3
[ 2.242523] kxtf9 1-000e: WHO_AM_I = 0x08
[ 2.242523] kxtf9(8) detected
[ 2.243164] input: kxtf9_accel as /devices/virtual/input/input4
[ 2.244049] input: twl6040_hskeys as /devices/platform/omap/omap_i2c.1/i2c-1/1-004b/twl6040-audio/twl6040-hskeys/input/input5
[ 2.247314] using rtc device, twl_rtc, for alarms
[ 2.247680] twl_rtc twl_rtc: rtc core: registered twl_rtc as rtc0
[ 2.247894] i2c /dev entries driver
[ 2.247894] Linux video capture interface: v2.00
[ 2.248321] usbcore: registered new interface driver uvcvideo
[ 2.248321] USB Video Class driver (v1.1.0)
[ 2.248321] dmm: probe base: fd300000, irq 145
[ 2.248321] finish bat_low irq. gpio_bat_low:42
[ 2.250579] bq27x00-battery 1-0055: support ver. 1.2.0 enabled
[ 2.466979] bq2419x driver init
[ 2.467041] bq2419x probe
[ 2.467254] bq24196 1-006b: read_reg=0x2a
[ 2.467254] bq24196 1-006b: identified chip BQ24196_REV_1_3
[ 2.467315] bq24196 1-006b: found chip at 0x6b
[ 2.468292] bq24196 1-006b: omap_get_clk_load: 0x821d6fff
[ 2.468780] bq24196 1-006b: resting registers
[ 2.469787] bq24196 1-006b: INTERRUPT 08=0, 09=0
[ 2.469787] bq24196 1-006b: S: Not Power Good
[ 2.469848] bq24196 1-006b: S: CHARGE STATE = 0 (NOT CHARGING)
[ 2.469879] bq24196 1-006b: S: VBUS STATE = 0 (Unknown)
[ 2.469909] device-mapper: uevent: version 1.0.3
[ 2.469909] device-mapper: ioctl: 4.20.0-ioctl (2011-02-02) initialised: [email protected]
[ 2.469909] Bluetooth: Bluetooth Driver for TI WiLink - Version 1.0
[ 2.473449] cpuidle: using governor ladder
[ 2.473480] cpuidle: using governor menu
[ 2.478057] Registered led device: omap4:green:debug0
[ 2.479034] usbcore: registered new interface driver usbhid
[ 2.479064] usbhid: USB HID core driver
[ 2.479095] usbip_core: USB/IP Core v1.0.0
[ 2.479370] vhci_hcd vhci_hcd: USB/IP Virtual Host Controller
[ 2.479431] vhci_hcd vhci_hcd: new USB bus registered, assigned bus number 2
[ 2.479888] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[ 2.479919] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 2.479949] usb usb2: Product: USB/IP Virtual Host Controller
[ 2.479980] usb usb2: Manufacturer: Linux 3.0.31-green+ vhci_hcd
[ 2.480010] usb usb2: SerialNumber: vhci_hcd
[ 2.480529] hub 2-0:1.0: USB hub found
[ 2.480560] hub 2-0:1.0: 8 ports detected
[ 2.480895] vhci_hcd: USB/IP 'Virtual' Host Controller (VHCI) Driver v1.0.0
[ 2.481079] usbcore: registered new interface driver usbip
[ 2.481109] usbip_host: USB/IP Host Driver 1.0.0
[ 2.481445] logger: created 256K log 'log_main'
[ 2.481567] logger: created 256K log 'log_events'
[ 2.481689] logger: created 256K log 'log_radio'
[ 2.481811] logger: created 256K log 'log_system'
[ 2.482147] pcb_temp_sensor pcb_temp_sensor.0: pcb_sensor : 'pcb_temp_sensor'
[ 2.485229] SDP4430 SoC init
[ 2.489685] twl6040-codec twl6040-codec: couldn't get VDDHF regulator -19
[ 2.521148] asoc: null-codec-dai <-> MultiMedia1 mapping ok
[ 2.522430] asoc: null-codec-dai <-> MultiMedia2 mapping ok
[ 2.527130] asoc: null-codec-dai <-> Voice mapping ok
[ 2.528259] asoc: null-codec-dai <-> Tones mapping ok
[ 2.529388] asoc: null-codec-dai <-> Vibra mapping ok
[ 2.530212] asoc: null-codec-dai <-> MODEM mapping ok
[ 2.530944] asoc: null-codec-dai <-> MultiMedia1 LP mapping ok
[ 2.532409] asoc: FM Digital <-> omap-mcbsp-dai.1 mapping ok
[ 2.533508] asoc: twl6040-dl1 <-> mcpdm-dl mapping ok
[ 2.535247] asoc: dmic-hifi <-> omap-dmic-dai-0 mapping ok
[ 2.537628] twl6040-codec twl6040-codec: ASoC: Failed to create Aux/FM Stereo In debugfs file
[ 2.538574] asoc: twl6040-dl1 <-> mcpdm-dl1 mapping ok
[ 2.539398] asoc: twl6040-ul <-> mcpdm-ul1 mapping ok
[ 2.540252] asoc: twl6040-dl2 <-> mcpdm-dl2 mapping ok
[ 2.541107] asoc: twl6040-vib <-> mcpdm-vib mapping ok
[ 2.541992] asoc: Bluetooth <-> omap-mcbsp-dai.2 mapping ok
[ 2.542877] asoc: Bluetooth <-> omap-mcbsp-dai.2 mapping ok
[ 2.543762] asoc: FM Digital <-> omap-mcbsp-dai.1 mapping ok
[ 2.544616] asoc: MODEM <-> omap-mcbsp-dai.1 mapping ok
[ 2.545501] asoc: dmic-hifi <-> omap-dmic-abe-dai-0 mapping ok
[ 2.546356] asoc: dmic-hifi <-> omap-dmic-abe-dai-1 mapping ok
[ 2.547210] asoc: dmic-hifi <-> omap-dmic-abe-dai-2 mapping ok
[ 2.548187] asoc: null-codec-dai <-> omap-abe-vxrec-dai mapping ok
[ 2.550445] input: Ovation Line-Out Jack as /devices/platform/soc-audio/sound/card0/input6
[ 2.550781] input: Ovation Headset Jack as /devices/platform/soc-audio/sound/card0/input7
[ 2.553558] asoc: hdmi-audio-codec <-> hdmi-audio-dai mapping ok
[ 2.554046] ALSA device list:
[ 2.554046] #0: TI OMAP4 Board
[ 2.554077] #1: OMAP4HDMI
[ 2.554168] GACT probability NOT on
[ 2.554199] Mirror/redirect action on
[ 2.554229] u32 classifier
[ 2.554229] Actions configured
[ 2.554260] Netfilter messages via NETLINK v0.30.
[ 2.554351] nf_conntrack version 0.5.0 (12194 buckets, 48776 max)
[ 2.555267] xt_time: kernel timezone is -0000
[ 2.556274] IPv4 over IPv4 tunneling driver
[ 2.557647] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 2.557739] TCP cubic registered
[ 2.557769] NET: Registered protocol family 17
[ 2.557800] NET: Registered protocol family 15
[ 2.557922] Bluetooth: RFCOMM TTY layer initialized
[ 2.557952] Bluetooth: RFCOMM socket layer initialized
[ 2.557983] Bluetooth: RFCOMM ver 1.11
[ 2.558013] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 2.558105] lib80211: common routines for IEEE802.11 drivers
[ 2.558135] lib80211_crypt: registered algorithm 'NULL'
[ 2.558166] Registering the dns_resolver key type
[ 2.558197] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
[ 2.558258] ThumbEE CPU extension supported.
[ 2.558288] Registering SWP/SWPB emulation handler
[ 2.561767] >>> setting nvalues for oh = smartreflex_core
[ 2.561828] >>> sr_set_nvalues v = 10145780, sr_efuse_offs = 254
[ 2.561828] >>> sr_set_nvalues v = 10126506, sr_efuse_offs = 257
[ 2.561859] >>> sr_set_nvalues v = 10126506, sr_efuse_offs = 257
[ 2.561889] >>> sr_set_nvalues v = 11198099, sr_efuse_offs = 25a
[ 2.562133] >>> setting nvalues for oh = smartreflex_iva
[ 2.562164] >>> sr_set_nvalues v = 10091001, sr_efuse_offs = 22c
[ 2.562194] >>> sr_set_nvalues v = 10063493, sr_efuse_offs = 22f
[ 2.562194] >>> sr_set_nvalues v = 11202269, sr_efuse_offs = 232
[ 2.562225] >>> sr_set_nvalues v = 11182739, sr_efuse_offs = 235
[ 2.562255] >>> sr_set_nvalues v = 11177602, sr_efuse_offs = 238
[ 2.562408] >>> setting nvalues for oh = smartreflex_mpu
[ 2.562438] >>> sr_set_nvalues v = 10141671, sr_efuse_offs = 240
[ 2.562469] >>> sr_set_nvalues v = 11205796, sr_efuse_offs = 243
[ 2.562500] >>> sr_set_nvalues v = 11190917, sr_efuse_offs = 246
[ 2.562530] >>> sr_set_nvalues v = 11247585, sr_efuse_offs = 249
[ 2.562561] >>> sr_set_nvalues v = 11245013, sr_efuse_offs = 24c
[ 2.562774] Reprogramming LPDDR2 timings to 466666666 Hz
[ 2.563018] sr_init: No PMIC hook to init smartreflex
[ 2.563201] smartreflex smartreflex.0: omap_sr_probe: SmartReflex driver initialized
[ 2.563415] smartreflex smartreflex.1: omap_sr_probe: SmartReflex driver initialized
[ 2.563598] smartreflex smartreflex.2: omap_sr_probe: SmartReflex driver initialized
[ 2.563903] SmartReflex class 1.5 driver: initialized (86400000ms)
[ 2.564117] cpufreq_interactive_input_connect: connect to ft5x06-i2c
[ 2.564178] 3-0038: FTX: ft5x06_resume(): INFO: driver is resuming.
[ 2.564575] Power Management for TI OMAP4.
[ 2.564727] OMAP4 PM: Static dependency added between MPUSS and DUCATI <-> L4_PER/CFG and L3_1.
[ 2.570953] mmc0: new high speed DDR MMC card at address 0001
[ 2.571380] mmcblk0: mmc0:0001 MBG4GA 29.1 GiB
[ 2.571563] mmcblk0boot0: mmc0:0001 MBG4GA partition 1 2.00 MiB
[ 2.571746] mmcblk0boot1: mmc0:0001 MBG4GA partition 2 2.00 MiB
[ 2.574066] Alternate GPT is invalid, using primary GPT.
[ 2.574188] mmcblk0: p1 p2 p3 p4 p5 p6 p7 p8 p9 p10
[ 2.576599] mmcblk0boot1: unknown partition table
[ 2.577514] mmcblk0boot0: unknown partition table
[ 2.579376] clock: disabling unused clocks to save power
[ 2.641052] sr_class1p5_calib_work: iva Stop sampling: Voltage Nominal=950000 samples=12
[ 2.641082] sr_class1p5_calib_work: iva: Calibration complete: Voltage Nominal=950000Calib=835600 margin=0
[ 2.714233] mmc1: host does not support reading read-only switch. assuming write-enable.
[ 2.727020] mmc1: new high speed SDHC card at address 1234
[ 2.727325] mmcblk1: mmc1:1234 SA16G 14.6 GiB
[ 2.728820] mmcblk1: p1 p2 p3
[ 2.729339] Enable wl12xx power
[ 2.821319] 3-0038: FTX: ft5x06_resume(): INFO: driver resumed.
[ 2.950256] mmc2: card claims to support voltages below the defined range. These will be ignored.
[ 2.953399] copying uboot splash: 39321600 bytes from 0xf5000000 to 0xf2000000
[ 2.985473] mmc2: queuing unknown CIS tuple 0x91 (3 bytes)
[ 2.986083] mmc2: new SDIO card at address 0001
[ 2.986694] Disable wl12xx power
[ 3.144378] cannot apply mgr(lcd) on inactive device
[ 3.163330] Console: switching to colour frame buffer device 240x80
[ 3.182678] cannot apply mgr(lcd) on inactive device
[ 3.182769] omapfb omapfb: failed to apply dispc config
[ 3.182861] cannot apply mgr(tv) on inactive device
[ 3.182983] omapfb omapfb: failed to apply dispc config
[ 3.183074] cannot apply mgr(lcd2) on inactive device
[ 3.183197] omapfb omapfb: failed to apply dispc config
[ 3.183258] novatek-panel display0: enable
[ 3.183319] novatek-panel display0: power_on
[ 3.183746] novatek-panel display0: power_on done
[ 3.184326] regulator_init_complete: LDO1: disabling
[ 3.185791] twl_rtc twl_rtc: setting system clock to 2014-01-27 04:13:49 UTC (1390796029)
[ 3.186096] Warning: unable to open an initial console.
[ 3.186218] Freeing init memory: 492K
[ 3.203613] sr_class1p5_calib_work: mpu: Calibration complete: Voltage Nominal=1380000Calib=1316680 margin=0
[ 3.219207] sr_class1p5_calib_work: core: Calibration complete: Voltage Nominal=1190000Calib=1076140 margin=0
[ 3.259979] init: cannot open '/initlogo.rle'
[ 3.280609] init: Unable to open persistent property directory /data/property errno: 2
[ 3.280883] 3-0038: FTX: ft5x06_suspend(): INFO: driver is suspending.
[ 3.289459] 3-0038: FTX: ft5x06_suspend(): INFO: driver suspended.
[ 3.311126] omap-rproc omap-rproc.0: rproc_loader_cont: failed to load tesla-dsp.bin
[ 3.311523] omap-rproc omap-rproc.1: rproc_loader_cont: failed to load ducati-m3.bin
[ 3.330047] HDCP: failed to load keys
[ 3.353820] android_usb: already disabled
[ 3.354064] init: using deprecated syntax for specifying property 'ro.product.manufacturer', use ${name} instead
[ 3.354278] init: using deprecated syntax for specifying property 'ro.product.model', use ${name} instead
[ 3.354492] init: using deprecated syntax for specifying property 'ro.serialno', use ${name} instead
[ 3.354766] android_usb: already disabled
[ 3.355957] adb_open
[ 3.355987] adb_bind_config
[ 3.356567] SysRq : Emergency Remount R/O
[ 3.356689] Emergency Remount complete
[ 3.357208] Disabling non-boot CPUs ...
[ 3.357666] CPU1: shutdown
[ 3.563873] 3-0038: FTX: INFO: Shutdown.
[ 3.579956] bq24196 1-006b: bq2419x_charger_shutdown
[ 3.595825] kxtf9: Shutdown.
[ 3.626617] omap_hsmmc omap_hsmmc.1: shutting down mmc
[ 3.667175] novatek-panel display0: disable
[ 3.685577] Restarting system with command 'bootloader'.
[ 3.700927]
[ 3.716278] Restarting Linux version 3.0.31-green+ ([email protected]) (gcc version 4.4.1 (Sourcery G++ Lite 2010q1-188) ) #6 SMP PREEMPT Sun Jan 26 09:22:35 EST 2014
[ 3.716278]
0 Corrected bytes, 218 unrecoverable blocks
I believe part of my problem is that (my) toolchain needs to match that with what CM was built with. (Which means I would probably have to build the whole CM package in order for it to work). I have an overclocked recovery, but that doesn't make much sense
There seems to be lots of discussion between conflicts between smartreflex and various governors.
Since these things normally run at 396 or 800 Mhz, I wonder if it would be more advantageous to tweak ram settings and such at those speeds
TBH, my main goal is to get Arch linux on this thing.
To that end, I plan on purchasing a Prolific PL2303 USB to serial adaptor so as to have a console.
This won't help me with any bootloader work, but I don't wish to disassemble my nook to solder in two wires to get a uart console (would still have to purchase a FT232RL USB to Serial breakout board for voltage level shifting).
Success! Check out the attached screenshots. First benchmark is stock CM10.1, second benchmark is with overclocked kernel. CM10.1 doesn't benchmark near as well as CM11 or Carbon, so I imagine I could great results using a Carbon rom.
Awesome man, I'm impressed. Were you modifying voltage as well? Also let us know how far you can take it.
Holy cr$$. Does actual use feel as fast as benchmark indicates? Is your nook hot? Does it crash all over the place? (I guess it's stable enough to finish the benchmark!) What does this do to your battery life?
This was mainly meant as a proof of concept, in trying to elicit kernel development discussion and trying to fish for more information on how to do it.
I was slightly frustrated in that there's overclock kernels available for the kindle fire hd (same proc as ours), but if you follow the links to source, the overclock code is always missing. They have AVAILABLE: CPU up to 1.7 and GPU up to 512. I don't think anyone is actually achieving that.
After playing with it for awhile my take is that these things are maxed out already. I did leave stock voltages alone.
1600 seems to work OK, instead of adding extra stepping, prolly easier just to change the two 1500's to 1600's.
GPU over clock is buggy in that it breaks video playback of certain formats (probably a timings issue). I've heard of people getting up to 440.
No overclock is bug free for me.
Samsung lpddr ram timings are interesting, but again not much leeway.
Here's some info to anyone interested.
I used the gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux.tar toolchain, available on the launchpad linaro toolchain binaries download page (after fighting with crosstool-ng).
A big help for me was using a hex editor, ended up compiling okteta.
Take a working boot.img open it in your hex editor. Cut 0000:0000 - 000F:FFFF, this is your "green loader". (I realize this can be done with dd, have at it).
After this has been cut out, your boot.img can be split into zImage and initramfs.cpio.gz using umkbootimg. This will also give the command to put it back together.
Code:
mkbootimg --kernel zImage --ramdisk initramfs.cpio.gz --base 0x80000000 --cmdline 'androidboot.console=ttyO0 console=ttyO0,115200n8 def_disp=lcd2' --pagesize 4096 -o new_boot.img
Then you will need to take your new_boot.img and append the green loader onto the beginning (turn off overwrite mode).
To fix ram_console turn on little endian support in kernel config (missing in official builds to date).
Good luck! I wish I had been given this tutorial....
Edit: I also played around with adding various I/O schedulers, I expect to do the same with governors as time permits.
These would probably make the most difference in battery life and performance.
Wrong boot.img. The one posted has IPv6 disabled in the kernel (as an experiment). Most everything google is broken (although browser still works). It does have some interesting logcat entries (googleconversionpings and such). It actually does a good job if you want a very basic secure tablet.
Here, this should be correct.
(1620/405)
mediafire<dot>com/download/6xjogrrbt1693ps/cm-10.1.3-ovation_OC2.zip
BTW, the config can be found in /proc/config.gz. Also compiled with kexec support.
Third version.
I believe this to be the smoothest, fastest, (and I dare say), most stable rom out there available for the HD+/ovation.
Give it a test run and tell me what you think.
Video playback performance is phenomenal.
mediafire<dot>com/download/6uvpqid45l5s99d/cm-10.1.3-ovation_OC3.zip
(kernel version should read Tue Mar 11 17:14, if I packed it correctly)
my kernel source:
mediafire<dot>com/download/d289cudx4pq6bvm/android_kernel_bn_omap-cm-10.1_v1.tar.gz
extra kernel modules, most users won't need these unless you're trying to set up a vpn or something:
mediafire<dot>com/download/670pzf1r2lu1dy8/extra_modules_ovation_cm10.1.3.tar.gz
A collection of linux tools for .img file work in case someone wants to make their own kernel
mediafire<dot>com/download/ny2209vapfi8ngg/bootimg_tools_ovation_1.tar.gz
What I have for pvr-sgx kernel module source.
mediafire<dot>com/download/04z6o0xlp513h4l/pvr_source.tar.gz
I think the kernel or the pvr source needs a patch (possibly something to do with remoteproc power management), as the versions I've compiled are unstable.
It could possibly be the command line I'm using?
make ARCH=arm CROSS_COMPILE=arm-eabi- BUILD=release TARGET_SGX=544sc
Click to expand...
Click to collapse
Could anyone help me on this? Being able to compile working pvr modules would help greatly with kernel development (so the pvr matches the kernel you're hacking).
Anyway I believe the above ROM is going to be my go-to daily driver.
Took a stab at fixing our ft5x06 touchscreen issues.
This is the result:
http://www.mediafire.com/download/he3reojs86oh0b3/ovation-kernel-cm10.1.3_v1.zip
(just the kernel- to be flashed over one of my previous roms).
Much better touchscreen performance (took out the twitch without using "fuzz", and I haven't experienced any more lockups with random/phantom touches, focus/selecting seems to work better too... but I'm still testing).
Surprisingly enough the issues seem to have been with kernel 3.0 i2c-core bus drivers rather than the touchscreen driver itself.
OCCCC
Although overclocking is obviously against CM policy, I'd love it for our Nooks to have access to modifying our CPU speeds.
But then I read awhile back that verygreen said that ocing the CPU didn't improve much and speculated that ocing the GPU would help more. o.o
I'm continuing to work on it and fine tune the results as time permits (until I'm happy with it).
This is my latest.
http://www.mediafire.com/download/hk136whf6f0ew60/ovation-kernel-cm10.1.3_v2.zip
(again kernel update only- to be flashed over one of my previous roms).
This one has lowered voltages. Slightly modified ram timings.
Same basic overclock and has the touchscreen fixes.
I ran into a problem where my browser was crashing and logs indicated libdrm/dalvik.
Wiping the dalvik cache took care of it. Just FYI, as it took me forever to figure out.
I haven't had a single crash on this kernel yet.
This one should run much cooler than even stock.
Jon Lee said:
I'm continuing to work on it and fine tune the results as time permits (until I'm happy with it).
This is my latest.
http://www.mediafire.com/download/hk136whf6f0ew60/ovation-kernel-cm10.1.3_v2.zip
(again kernel update only- to be flashed over one of my previous roms).
This one has lowered voltages. Slightly modified ram timings.
Same basic overclock and has the touchscreen fixes.
I ran into a problem where my browser was crashing and logs indicated libdrm/dalvik.
Wiping the dalvik cache took care of it. Just FYI, as it took me forever to figure out.
I haven't had a single crash on this kernel yet.
This one should run much cooler than even stock.
Click to expand...
Click to collapse
I flashed this over CM10.1 stable and got a bootloop. What do you mean with "flash over one my previous roms" - which ROMs?
EDIT: My bad, didn't see the links you posted. They weren't red like usual.
I will try it! Thanks!
EDIT2: Wow, it is really stable and fast. But i have extreme touchscreen twitching on the right hand side of the screen. Increasing Fuzz fixed that for me in other builds.
EDIT3: Got random reboot while restoring apps with Titanium Backup. It would be great it you could take a look at the log. I have been getting reboots on every ROM out there, maybe you know the problem.
last_kmsg: https://drive.google.com/file/d/0B5xpEXQcSQncMENxR3lyOXAwNlU/edit?usp=sharing
And do I have to flash the ROM, Kernel v1 and then v2 or does v2 include the changes from v1?
Here's a complete, to-date ROM. (So as to save from flashing multiple files).
http://www.mediafire.com/download/cifx5qa8xvv3u1j/cm-10.1.3-ovation_OC4.zip
Be sure to wipe dalvik cache!
I'm not sure if you can use titanium to restore apps from 10.2 to 10.1 without causing problems.
Just a note, you won't be able to flash my kernel updates on stock CM without being prepared to adb push /system/lib/modules/*
(IE bootloops, etc)
If you continue to have problems with wl12xx, I would take a look at your wireless access point settings (perhaps change encryption type, etc).
I see a lot of deauthenticated, reason 7. I would love to fix this but compiling my own working wl12xx drivers is a major PITA.
Jon Lee said:
Here's a complete, to-date ROM. (So as to save from flashing multiple files).
http://www.mediafire.com/download/cifx5qa8xvv3u1j/cm-10.1.3-ovation_OC4.zip
Be sure to wipe dalvik cache!
I'm not sure if you can use titanium to restore apps from 10.2 to 10.1 without causing problems.
Just a note, you won't be able to flash my kernel updates on stock CM without being prepared to adb push /system/lib/modules/*
(IE bootloops, etc)
If you continue to have problems with wl12xx, I would take a look at your wireless access point settings (perhaps change encryption type, etc).
I see a lot of deauthenticated, reason 7. I would love to fix this but compiling my own working wl12xx drivers is a major PITA.
Click to expand...
Click to collapse
This one has your kernel already in it correct? Any special recovery needed?
Jon Lee said:
Here's a complete, to-date ROM. (So as to save from flashing multiple files).
http://www.mediafire.com/download/cifx5qa8xvv3u1j/cm-10.1.3-ovation_OC4.zip
Be sure to wipe dalvik cache!
I'm not sure if you can use titanium to restore apps from 10.2 to 10.1 without causing problems.
Just a note, you won't be able to flash my kernel updates on stock CM without being prepared to adb push /system/lib/modules/*
(IE bootloops, etc)
If you continue to have problems with wl12xx, I would take a look at your wireless access point settings (perhaps change encryption type, etc).
I see a lot of deauthenticated, reason 7. I would love to fix this but compiling my own working wl12xx drivers is a major PITA.
Click to expand...
Click to collapse
Okay, I will try that.
So what exactly was the reason for my reboot? What is wl 12xx? I am not an expert
Slightly aggravated. Typed a long post, only to be logged out, and lost it, and I continue to have login/password issues.
Calling this project quits.
This is THE FINAL VERSION.
http://www.mediafire.com/download/x4cksy5scvi1874/cm-10.1.3-ovation_OC5.zip
WORKING PVR SOURCE.
http://www.mediafire.com/download/at6yl23jrvpweav/pvr_source_1.tar.gz
Kernel source than matches rom above.
http://www.mediafire.com/download/ohcxmrgz9j4ly8y/android_kernel_bn_omap-cm-10.1_v2.tar.gz
What this lacks.
http://processors.wiki.ti.com/index...1_compat_wireless_implementation_Architecture
Thank you.
Edit: BTW, that was a quick fix from OC4, which was no good (voltages). Working pvr_sgx source opens up a whole can of worms as far as having matching dpll_cascading symbols in the pvr module or not (as far as kernel updates go), which is a good enough reason to call it quits here to save on confusion. Seriously, the above is as good as I'm going to get it.
To put it another way, no other kernels will work on this ROM (pvr missing dpll_cascading symbols), and If I were to make any other kernel updates, they wouldn't work on any other roms (including the first ones I did).
Jon Lee said:
Here's a complete, to-date ROM. (So as to save from flashing multiple files).
cm-10.1.3-ovation_OC4.zip
Be sure to wipe dalvik cache!
I'm not sure if you can use titanium to restore apps from 10.2 to 10.1 without causing problems.
Just a note, you won't be able to flash my kernel updates on stock CM without being prepared to adb push /system/lib/modules/*
(IE bootloops, etc)
If you continue to have problems with wl12xx, I would take a look at your wireless access point settings (perhaps change encryption type, etc).
I see a lot of deauthenticated, reason 7. I would love to fix this but compiling my own working wl12xx drivers is a major PITA.
Click to expand...
Click to collapse
wow I don't know, what was wrong with my device or with CM10.2 (I had a lot of Reboots every day) but this release works like a charm :good:
actually i wasn't intrested in OC (becauce of Battery usage) but if this CM is the only stable release for my device I will keep it
thx man
Thanks, if it wasn't obvious, I was more interested in stability than I was in any overclock... (for me), because I'm wanting to use this too. I did try to take care of several kernel bugs that were common across all ROMS (l3_noc, mmc, I2C), without causing further problems.
That last version does seem stable (especially if you clear dalvik cache after installing). One thing I did notice is that I played with IVA clock a little (as an experiment), and although we don't use DSP/tesla, it seems to have slightly affected the I2C touchscreen bug. Perhaps the IVA clock is somehow connected to the I2C clock. I'm making one now where I reduced it instead of increasing it, and see if that further reduces any I2C jitters. Shouldn't affect performance because we don't use tesla (although as an experiment, I did get a tesla bin to load properly, and even had the rpmsg communication channel and everything).
I also managed to compile a compat.ko module last night. Still doesn't work properly. WIFI is going to kick my butt. That is really the last thing that remains to be done.
Eventually, if I could leave well enough alone, I would like to see how long I could go without a reboot, and we could prove "What is the Most Stable ROM" debate scientifically with a 'cat /proc/uptime', but at the moment I'm continually playing with it, so I'm not going to have a decent uptime.

Kernel is not booting at all

Hello,
I tried to build a kernel myself and it just fails to boot. I have UART access (through headphone adapter) and I just get nothing in the serial console.
I have CM 11.0 and I cloned CM's android_kernel_lge_hammerhead repo and checked out stable/cm-11.0 with hammerhead_defconfig.
I used google's arm-eabi-4.8 precompiled toolchain.
To boot:
Code:
ttouch android_kernel_lge_hammerhead> sudo fastboot boot arch/arm/boot/zImage-dtb
creating boot image...
creating boot image - 8583168 bytes
downloading 'boot.img'...
OKAY [ 0.375s]
booting...
OKAY [ 0.123s]
finished. total time: 0.498s
Here is what I get in UART:
Code:
welcome to hammerhead bootloader
[10] Power on reason 81
[10] DDR: elpida
[90] Loaded IMGDATA at 0x11000000
[90] Display Init: Start
[170] MDP GDSC already enabled
[170] bpp 24
[210] Config MIPI_CMD_PANEL.
[210] display panel: ORISE
[210] display panel: Default setting
[340] Turn on MIPI_CMD_PANEL.
[390] Display Init: Done
[390] cable type from shared memory: 8
[390] vibe
[590] USB init ept @ 0xf957000
[610] secured device: 1
[610] fastboot_init()
[660] splash: fastboot_op
FASTBOOT MODE
PRODUCT_NAME - hammerhead
VARIANT - hammerhead D821(E) 16GB
HW VERSION - rev_11
BOOTLOADER VERSION - HHZ11k
BASEBAND VERSION - M8974A-2.0.50.1.16
CARRIER INFO - None
SERIAL NUMBER - <blablablabla>
SIGNING - production
SECURE BOOT - enabled
LOCK STATE - unlocked
[770] splash: start
[1260] splash: bootloader
[1260] Fastboot mode started
[1260] udc_start()
�����l[60660] -- reset --
[60660] -- portchange --
[60820] -- reset --
[60820] -- portchange --
[60990] fastboot: processing commands
��[112660] fastboot: download:0082f800
downloading...
[113140] fastboot: boot
[113150] Found Appeneded Flattened Device tree
[113150] DTB: platform id 126, board id 150, soc rev 20002, board rev 11
[113160] get_display_kcal = 0, 0, 0, x
[113200] vibe
[113300] splash: boot
[113340] splash: unlocked
[113380] cmdline: uart_console=enable lcd_maker_id=primary lge.hreset=off lge.reset=unknown gpt=enable lge.kcal=0|0|0|x lge.rev=rev_11 androidboot.laf androidboot.emmc=true fastboot=true androidboot.serialno=<blablablabla> androidboot.bootloader=HHZ11k androidb[113400] Updating device tree: start
[113420] Updating device tree: done
[113420] booting linux @ 0x10008000, ramdisk @ 0x11000000 (0), tags/device tree @ 0x10000100
[113430] Turn off MIPI_CMD_PANEL.
[113430] Continuous splash enabled, keeping panel alive.
[113430] undefined abort, halting
[113430] r0 0x00000000 r1 0x00000000 r2 0x10000100 r3 0x003996e3
[113430] r4 0x10008000 r5 0x0f92607a r6 0x0f925d5b r7 0x0f925f89
[113430] r8 0x0f955652 r9 0x0f9556c7 r10 0x00000001 r11 0x10000100
[113430] r12 0x20000193 usp 0x00000000 ulr 0x00000000 pc 0x1000800c
[113430] spsr 0x40000193
I've never installed a kernel like that (via fastboot) and I had to look up the headphone UART adapter thing.
I don't have much to offer. I always use mkbootimg to link my kernel and ramdisk, then flash it via fastboot. Looking at your serial dump, the only thing I see is that the base, ramdisk, and tags offsets look completely different from the ones I use with mkbootimg.
BASE=0x00000000
PAGESIZE=2048
RAMDISK_OFFSET=0x02900000
TAGS_OFFSET=0x02700000
I'm playing around with my breadboard and an FTDI USB<-->Serial board I have to try and make a working serial console and I'll see what my N5 dumps.
Gene Poole said:
I've never installed a kernel like that (via fastboot) and I had to look up the headphone UART adapter thing.
I don't have much to offer. I always use mkbootimg to link my kernel and ramdisk, then flash it via fastboot. Looking at your serial dump, the only thing I see is that the base, ramdisk, and tags offsets look completely different from the ones I use with mkbootimg.
BASE=0x00000000
PAGESIZE=2048
RAMDISK_OFFSET=0x02900000
TAGS_OFFSET=0x02700000
Click to expand...
Click to collapse
Thanks, I'll try that.
Gene Poole said:
I'm playing around with my breadboard and an FTDI USB<-->Serial board I have to try and make a working serial console and I'll see what my N5 dumps.
Click to expand...
Click to collapse
I guess you're trying to build the N4 cable, but it does not work.
For the N5 to work you need to supply 3V3 and not 1V8 to the VCC
The RX though (serial input to the N5) should be 1V8 (done with a simple voltage divider, try 1K and 1.2K to GND) or there is a chance that you'll fry your serial.
Yeah, my search showed that the N5 version needed no resistors, but I used some anyway just to shunt some voltage. It worked. I got a dump and it does appear that your offsets are not right. Here's my dump up to the kernel taking over:
Code:
welcome to hammerhead bootloader
[10] Power on reason 80
[10] DDR: hynix
[90] Loaded IMGDATA at 0x11000000
[90] Display Init: Start
[170] MDP GDSC already enabled
[170] bpp 24
[210] Config MIPI_CMD_PANEL.
[210] display panel: ORISE
[260] Found Appeneded Flattened Device tree
[260] DTB: platform id 126, board id 150, soc rev 20002, board rev 11
[300] Set panel ON cmds [35]
[420] Turn on MIPI_CMD_PANEL.
[470] Display Init: Done
[470] cable type from shared memory: 8
[470] reboot_mode restart reason = power_on
[520] vibe
[620] splash: boot
[660] splash: unlocked
[700] use_signed_kernel=0, is_unlocked=1, is_tampered=0.
[700] Loading boot image (9226240): start
[1030] Loading boot image (9226240): done
[1030] Found Appeneded Flattened Device tree
[1040] DTB: platform id 126, board id 150, soc rev 20002, board rev 11
[1040] get_display_kcal = 0, 0, 0, x
[1050]
Booting Linux
[1050] cmdline: console=ttyHSL0,115200,n8 androidboot.hardware=hammerhead user_debug=31 maxcpus=2 msm_watchdog_v2.enable=1 selinuxt
[1090] Updating device tree: done
[1090] booting linux @ 0x8000, ramdisk @ 0x2900000 (714802), tags/device tree @ 0x2700000
[1100] Turn off MIPI_CMD_PANEL.
[1100] Continuous splash enabled, keeping panel alive.
[ 0.000000] Booting Linux on physical CPU 0
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 3.4.0-hoxnet-gd745771 ([email protected]) (gcc version 4.6.x-google 20120106 (prerelease) (GCC) ) #7 SMP PREE5
[ 0.000000] CPU: ARMv7 Processor [512f06f0] revision 0 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
...
I see a fastboot option, -b, for specifying the kernel base address. Try with -b 0x8000.
Edit: maybe it's -b 0. looks like the address gets 0x8000 added by default.
Gene Poole said:
Yeah, my search showed that the N5 version needed no resistors, but I used some anyway just to shunt some voltage. It worked. I got a dump and it does appear that your offsets are not right. Here's my dump up to the kernel taking over:
Code:
welcome to hammerhead bootloader
[10] Power on reason 80
[10] DDR: hynix
[90] Loaded IMGDATA at 0x11000000
[90] Display Init: Start
[170] MDP GDSC already enabled
[170] bpp 24
[210] Config MIPI_CMD_PANEL.
[210] display panel: ORISE
[260] Found Appeneded Flattened Device tree
[260] DTB: platform id 126, board id 150, soc rev 20002, board rev 11
[300] Set panel ON cmds [35]
[420] Turn on MIPI_CMD_PANEL.
[470] Display Init: Done
[470] cable type from shared memory: 8
[470] reboot_mode restart reason = power_on
[520] vibe
[620] splash: boot
[660] splash: unlocked
[700] use_signed_kernel=0, is_unlocked=1, is_tampered=0.
[700] Loading boot image (9226240): start
[1030] Loading boot image (9226240): done
[1030] Found Appeneded Flattened Device tree
[1040] DTB: platform id 126, board id 150, soc rev 20002, board rev 11
[1040] get_display_kcal = 0, 0, 0, x
[1050]
Booting Linux
[1050] cmdline: console=ttyHSL0,115200,n8 androidboot.hardware=hammerhead user_debug=31 maxcpus=2 msm_watchdog_v2.enable=1 selinuxt
[1090] Updating device tree: done
[1090] booting linux @ 0x8000, ramdisk @ 0x2900000 (714802), tags/device tree @ 0x2700000
[1100] Turn off MIPI_CMD_PANEL.
[1100] Continuous splash enabled, keeping panel alive.
[ 0.000000] Booting Linux on physical CPU 0
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 3.4.0-hoxnet-gd745771 ([email protected]) (gcc version 4.6.x-google 20120106 (prerelease) (GCC) ) #7 SMP PREE5
[ 0.000000] CPU: ARMv7 Processor [512f06f0] revision 0 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
...
I see a fastboot option, -b, for specifying the kernel base address. Try with -b 0x8000.
Edit: maybe it's -b 0. looks like the address gets 0x8000 added by default.
Click to expand...
Click to collapse
Didn't work.
I also tried to build a boot.img, I flashed it (just to be sure) and I get all the same results.
My tags/device tree is different and I don't know how to change it. There is no available option in fastboot or mkbootimg
ttouch said:
Didn't work.
I also tried to build a boot.img, I flashed it (just to be sure) and I get all the same results.
My tags/device tree is different and I don't know how to change it. There is no available option in fastboot or mkbootimg
Click to expand...
Click to collapse
mkbootimg has an undocumented --tags_offset option. I don't know why it doesn't show up in the --help. I found it in the source for mkbootimg (in the AOSP tree) when I first ran the unpackbootimg and noticed that it dumped text files containing info about the offsets.
I have a shell script I use to make boot images. Here it is:
Code:
#!/bin/sh
RAMDISK=ramdisk
KERNEL=zImage
BASE=0x00000000
PAGESIZE=2048
RAMDISK_OFFSET=0x02900000
TAGS_OFFSET=0x02700000
CMDLINE="console=ttyHSL0,115200,n8 androidboot.hardware=hammerhead user_debug=31 maxcpus=2 msm_watchdog_v2.enable=1 selinux=1"
echo Making ramdisk image ...
(cd ${RAMDISK} ; mkbootfs . | gzip -9c > ../${RAMDISK}.cpio.gz )
echo Making boot image ...
mkbootimg --kernel ${KERNEL} --ramdisk ${RAMDISK}.cpio.gz --cmdline "${CMDLINE}" -o boot.img --base ${BASE} --pagesize ${PAGESIZE} --ramdisk_offset ${RAMDISK_OFFSET} --tags_offset ${TAGS_OFFSET}
"ramdisk" is a directory containing the unpacked AOSP stock ramdisk (plus my modifications). These offset values were obtained from unpackbootimg executable but I can't remember where I found the source. I'll send you a copy if you want it.
Gene Poole said:
mkbootimg has an undocumented --tags_offset option. I don't know why it doesn't show up in the --help. I found it in the source for mkbootimg (in the AOSP tree) when I first ran the unpackbootimg and noticed that it dumped text files containing info about the offsets.
I have a shell script I use to make boot images. Here it is:
Code:
#!/bin/sh
RAMDISK=ramdisk
KERNEL=zImage
BASE=0x00000000
PAGESIZE=2048
RAMDISK_OFFSET=0x02900000
TAGS_OFFSET=0x02700000
CMDLINE="console=ttyHSL0,115200,n8 androidboot.hardware=hammerhead user_debug=31 maxcpus=2 msm_watchdog_v2.enable=1 selinux=1"
echo Making ramdisk image ...
(cd ${RAMDISK} ; mkbootfs . | gzip -9c > ../${RAMDISK}.cpio.gz )
echo Making boot image ...
mkbootimg --kernel ${KERNEL} --ramdisk ${RAMDISK}.cpio.gz --cmdline "${CMDLINE}" -o boot.img --base ${BASE} --pagesize ${PAGESIZE} --ramdisk_offset ${RAMDISK_OFFSET} --tags_offset ${TAGS_OFFSET}
"ramdisk" is a directory containing the unpacked AOSP stock ramdisk (plus my modifications). These offset values were obtained from unpackbootimg executable but I can't remember where I found the source. I'll send you a copy if you want it.
Click to expand...
Click to collapse
My mkbootimg does not have the tags_offset.
When I try to build the boot image with tags_offset, mkbootimg shows me the help message, which means it got no tags_offset option.
EDIT: Nevermind, I cloned and compiled the latest mkbootimg from here. Trying to boot it now...
EDIT2: IT WORKS!!
Since the AOSP build has to create a boot image, it is included in the utilities. I always use the one native to the build tree. It is in:
[aosp_root]/out/host/linux-x86/bin/mkbootimg
and the source is in:
[aosp_root]/system/core/mkbootimg/

[ROM][UNOFFICIAL]LineageOS 14.1 for One Mini 2

Introduction
This is UNOFFICIAL LineageOS 14.1 for HTC One Mini 2.
Please use this thread to report bugs, request features, and offer feedback.
Installation instructions
You must unlock your bootloader or be S-OFF.
You must have a custom recovery installed. (TWRP)
Fully wipe your device from Recovery (Data, Dalvik and Cache!) and install the LineageOS 14.1 ROM.
If you would use Gapps install it now and than reboot.
The first boot will take a while!
Disclaimer
OFFICIAL DISCLAIMER
/*
* Your warranty is now void.
*
* I am not responsible for bricked device, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*/
Click to expand...
Click to collapse
Changelog
Release V0.8 (21.06.2018)
Update to latest LOS upstream
Added latest WCNSS firmware
EGL buffer_age extension support disabled
exFAT support added
Amplifier deadlock fixed
wcnss_service added to set the correct HTC MAC address during initialization
Default USB mode removed
ZRAM max. compression streams have been increased to 4
Switched ZRAM compression algorithm to LZ4
Switched to ADB over FunctionFS
Kernel: Added many patches to ZRAM, zsmalloc and zpool which improve functionality and performance
Kernel: Switched to new prima wifi driver
Kernel: Added exFAT and sdFAT drivers
Kernel: Added FunctionFS support
Kernel: Pgtable mapping for zsmalloc enabled
Kernel: RCU boost enabled
Kernel: Linux regulatory feature enabled
Kernel: Added some patches to sdcardfs and USB gadget driver
Look here for full kernel changelog (Last commit from previous release: 0d4c423)
Older changelogs:
Release V0.7 (20.01.2018)
Update to latest LOS upstream
Shrink USB Charging Images to fit 720p screen properly
Rework init power script a bit
Unbreak perfd
Hide sRGB toggle in developer options
nfc: Advertise extended length support for IsoDep frames (Thanks to stkl)
Kernel: ANDROID: sdcardfs: notify lower file of opens
Kernel: ANDROID: sdcardfs: Add default_normal option
Kernel: Enable some perf-related configs
Kernel: drivers: touchscreen: Fix active touchscreen during calls and power button camera shortcut
Kernel: drivers: i2c: Use older QUP bus driver to fix wakeup issues on memul
Look here for full kernel changelog (Last commit from previous release: 2d22c8c)
Release V0.6 (25.11.2017)
Fix USB Accessory mode
Add ANT+ support
Swappiness has been set to 100
Kernel: Pocket check added for dt2w
Kernel: Fixed non-working microphone during a call on loudspeaker
Kernel: Improved the bus recovery procedure in qup i2c driver
Kernel: Register SPS IRQ with IRQF_NO_SUSPEND flag
Kernel: Reworked kernel config
Kernel: Merged Tag "v3.4.100"
Kernel: Merged Tag "v3.4.113"
Kernel: Max readahead size changed to 512KB
Kernel: Fix high load average from uninterruptible waits
Kernel: Do not allocate new hw_event if event is duplicate
Kernel: interactive: turn boost_pulse off on boost off
Kernel: interactive: Remove unnecessary cpu_online() check
Kernel: ablk_helper - Replace memcpy with struct assignment
Kernel: Don't plug the I/O queue in do_io_submit()
Look here for full kernel changelog (Last commit from previous release: 4e5b7fb)
Release V0.5 (04.11.2017)
Amplifier HAL improvements
Removed useless button backlight support on liblights
GPS HAL cleanup
Enabled CLANG compilation for GPS HAL
Removed some deprecated flags
Fix tombstones creation
Root directories now created on early-init
Missing directories under /data are now created
Cleaned up main QC init script
XTRA download now uses https
Cleaned up OMX codecs packages
Added GPS configuration for China
DRM ClearKey plugin is now builded from source
Fix gpuclk and reset_count denials
Added missing OMX codecs decoders
Removed deprecated media blobs
Cleaned up bluetooth config
Decreased in call volume to about 74dB
Enabled GLONASS support
Kernel: Added Himax touchscreen driver
Look here for full kernel changelog (Last commit from previous release: 2fc6b22)
Release V0.4 (13.09.2017)
"New" CAF based kernel on version 3.4.90
AptX Support added
Earpiece volume Increased
startOffsetMs removed from media_profile to avoid capturing the video record tone while recording the video with camcorder
Sepolicy rework
thermal-engine moved to vendor/bin
Amplifier: removed a forgotten debug
Build rild and libril from caf source
Compile libril with GCC instead of Clang to avoid RIL crash while establishing outgoing calls
Fix crashing RIL when trying to print "Create UIM thread on SUB%d with name %s" with Clang libc
media codecs config updated
Addded media codecs performance config
Adreno blobs updated to LA.BF.1.1.3_rb1.12
Build GPS HAL from source
Added overlay-based GPS configs
A-GPS re-enabled
Changed from 2 to 3 FramebufferSurface buffers to avoid tearing because of invalid fence semantics
Fixed null pointer de-reference klocwork error in liblight
fstab cleaned up
Added device model information to the USB config
Removed the "KERNEL_MISSING_CLOCK_BOOTTIME_ALARM" because our kernel now has the proper support
USB config cleaned up
Removed unused CameraParameters_EXT header
Disabled face detection in the params In addition to making the UI saner. This should fix manual focussing the camera when in auto-focus mode.
All changes to support our One Mini 2 on the new CAF based kernel can be found here: https://github.com/nightcore500/android_kernel_htc_msm8974-caf_rebase/commits/lineage-14.1
Release V0.3 (08.07.2017)
Enable Ambient Display
Increase ZRAM to 400MB
Set default USB mode to charged to fix the USB mode bug on switching from "charging" to "MTP" mode
Rework on init.qcom.bt.sh
Remove DAC override permission which would allow rmt_storage daemon unix permissions to everything and add the system and wakelock group to these service
Adjust mpdecision service permissions to access procfs filesystem
Remove writes to non-existent IPv6 nodes
Remove useless property triggers
Properly set thermal control flags
Ensure boot-with-noop as this results in much shorted boot times
Adjust power config (Starting mpdecision later in boot to improve boot time and some more minimal changes)
Remove some permissions these are allready globally defined in device/qcom/sepolicy
Enable blur
Remove some unused permissions
Update to latest LOS upstream
Kernel: Only expose su when daemon is running
Kernel: Add some filesystem, net etc. patches (look here for full changelog)
Release V0.2-himax hotfix (12.05.2017)
Kernel: Enable himax touchscreen driver
Release V0.2 (11.05.2017)
switch to userdebug
switch to enforcing mode
fix NFC
switch to Jelly Browser
switch to Moto 8226 Thermal Engine
Update Qualcomm MSM Interface, Radio Interface Layer, GPS blobs
Update Camera & Sensor blobs
Update Widevine DRM blobs
Update graphics blobs
remove unused proprietary files
selinux: fix some denials
Kernel: re-add DT2W
Kernel: re-add our RT5506 changes
Kernel: fix SDCard driver
Release V0.1-Alpha (06.05.2017)
(Based on the source of CM13)
eng build
disable pre-odex for now
rename to lineageos
fix some platform configs
Update bootloader message offset flag
enable sdclang
enable legacy camera HAL1
Add GraphicBuffer shim for camera hal
enable text relocations for camera blobs
remove some configs
enable GCC LIBC for rild blobs
re-enable jemalloc for low-memory
set selinux to permissive for now
set media.stagefright.legacyencoder
remove old unused dhcp inits and configs
remount debugfs
some changes on core framework configs
some changes on init script
move chargeled to c++
set KERNEL_MISSING_CLOCK_BOOTTIME_ALARM because our kernel does not have support for it
some changes on media codec config
set NXP_CHIP_TYPE
changes on Permission configs
set Qualcomm Bluetooth SOC ID
remove enhanced NFC feature
switch to shared graphics driver repo
use prebuild rild from the last cm13 release for now
disable agps for now
some more changes
Kernel - clone the msm8974 kernel source from lineageos and change to our last kernel config
Kernel - enable RPFILTER
Kernel - signal: allow to send any siginfo to itself (to get debuggerd back to running)
Kernel - switch back to our Prima WLAN driver
Downloads
ROM v0.8 LineageOS 14.1 21.06.2018
md5sum for ROM v0.8 LineageOS 14.1 21.06.2018
Older releases:
ROM v0.7 LineageOS 14.1 20.01.2018
md5sum for ROM v0.7 LineageOS 14.1 20.01.2018
ROM v0.6 LineageOS 14.1 25.11.2017
md5sum for ROM v0.6 LineageOS 14.1 25.11.2017
ROM v0.5 LineageOS 14.1 04.11.2017
md5sum for ROM v0.5 LineageOS 14.1 04.11.2017
ROM v0.4 LineageOS 14.1 13.09.2017
md5sum for ROM v0.4 LineageOS 14.1 13.09.2017
ROM v0.3 LineageOS 14.1 08.07.2017
md5sum for ROM v0.3 LineageOS 14.1 08.07.2017
ROM v0.2-himax_hotfix LineageOS 14.1 12.05.2017
md5sum for ROM v0.2-himax_hotfix LineageOS 14.1 12.05.2017
ROM v0.2 LineageOS 14.1 11.05.2017
md5sum for ROM v0.2 LineageOS 14.1 11.05.2017
ROM v0.1-Alpha LineageOS 14.1 06.05.2017
Root add-on: su (arm)
Open Gapps for all ROMs: Gapps
Thanks
Big thanks to MrAnswer for his one mini 2 that i can use for development purposes.
XDA:DevDB Information
LineageOS 14.1 for One Mini 2, ROM for the HTC One Mini 2
Contributors
nightcore500
Source Code: https://github.com/nightcore500
ROM OS Version: 7.x Nougat
ROM Kernel: Linux 3.4.x
ROM Firmware Required: Latest stock
Based On: LineageOS
Version Information
Status: Stable
Current Stable Version: 0.8
Stable Release Date: 2018-06-21
Current Beta Version: 0.6
Beta Release Date: 2017-11-25
Created 2017-05-06
Last Updated 2018-06-21
Reserved
Amazing! Thanks for your dev!
As you know I don't own this device but is good to know 8974 is not dead
Feel free to highlight me here or on IRC if you need something. Also I have some contacts which can help to become official when you will be ready
Cool. gonna try this
---------- Post added at 03:35 PM ---------- Previous post was at 03:30 PM ----------
Is it 7.0 or 7.1?
---------- Post added at 03:36 PM ---------- Previous post was at 03:35 PM ----------
oh nvm
---------- Post added at 03:59 PM ---------- Previous post was at 03:36 PM ----------
When theres a new update will i have to wipe data? I am kind of a newbie to roms.
Andruxcx said:
Is it 7.0 or 7.1?
Click to expand...
Click to collapse
7.1.2
Andruxcx said:
When theres a new update will i have to wipe data? I am kind of a newbie to roms.
Click to expand...
Click to collapse
If you are already on lineageos 14.1 you don't need a full wipe.
nightcore500 said:
7.1.2
If you are already on lineageos 14.1 you don't need a full wipe.
Click to expand...
Click to collapse
Thanks. So i tried the rom and everything seems fine for now except that i cant get out of strict mode with dev options. Is there a way to turn strict mode off?
---------- Post added at 05:45 PM ---------- Previous post was at 05:43 PM ----------
For those who want root dont install super su it will bootloop your device. just download it from this link ~ https://download.lineageos.org/extras ~ and flash it in twrp :good:
---------- Post added at 06:04 PM ---------- Previous post was at 05:45 PM ----------
Not sure if this is a bug but i cant see any contacts when i go to the import from sim window
Andruxcx said:
Thanks. So i tried the rom and everything seems fine for now except that i cant get out of strict mode with dev options. Is there a way to turn strict mode off?
Click to expand...
Click to collapse
No, its a debugging feature thats automatic enabled on eng builds. This build is currently only for development purposes. I switch to userdebug on the next releases.
nightcore500 said:
No, its a debugging feature thats automatic enabled on eng builds. This build is currently only for development purposes. I switch to userdebug on the next releases.
Click to expand...
Click to collapse
Okay
Does this need TWRP version 3 to flash or the 2.8.5.0 flashes as well ?
Awesome. Did a clean install after full wipe (using TWRP 3) and started testing.
Working:
System UI, GApps
Stable networking (WiFi 2.4 + 5 GHz), Cellular 3G and 4G
Bluetooth (audio, data)
Simple NFC tag
Camera, flash, torch
Audio in/out (loud and clear)
GPS
Sensors (magnetic, light, proximity - proximity little buggy, but that problem existed before)
Running much smoother than the latest CM13 build overall
Problems / Not Working:
DT2W
16GB SanDisk SD card not working - worked before and also with another Android 7.1 device (older 8GB SanDisk works - have to figure out why)
Some root issues, most lilkely due to eng build incompatibilities with my apps
Just played around for an hour and so far it's running pretty stable (not a single app crash). Looks like we're on the right track.
The issued I experienced before (CM13) with OTG are still the same - surprise - but that's not of priority.
Received ERROR when flashing via twrp, both 2.8.5.0 and 3.0.2:
Can't install this package on top of incompatible data. Please try another package or run a factory reset.
Updater process ended with ERROR: 7
ERROR installing zip file '/externl_sd/lineage_memul-ota.zip'
I tried dirty flash with STOCK ROM installed, so I did a complete wipe of SYSTEM, CACHE, DALVIK CACHE and DATA and installed successfully.
Also I have this Red Screen border flash when touching screen at times, NOT always but mostly, I have checked developer options all settings are off but still it wont go away. I read about strict mode but there is no options in settings, any ideas, I even turned off developer options but still remains.
INITIAL REVIEW.
Way better than CM13
Slightly laggy, I will assume due to alpha state
Crystal clear audio
Camera is crisp clear with photos compared to CM13
Boot/reboot more than once tried is a bit slow
SD read in gallery is too slow could be due to slow MMC read/write and first time reading too many images - fine after it loads all images
TryllZ said:
Received ERROR when flashing via twrp, both 2.8.5.0 and 3.0.2:
Can't install this package on top of incompatible data. Please try another package or run a factory reset.
Updater process ended with ERROR: 7
ERROR installing zip file '/externl_sd/lineage_memul-ota.zip'
I tried dirty flash with STOCK ROM installed, so I did a complete wipe of SYSTEM, CACHE, DALVIK CACHE and DATA and installed successfully.
Also I have this Red Screen border flash when touching screen at times, NOT always but mostly, I have checked developer options all settings are off but still it wont go away. I read about strict mode but therte is no options in settings, any ideas.
Click to expand...
Click to collapse
Look at https://forum.xda-developers.com/showpost.php?p=72190216&postcount=7
nightcore500 said:
Look at https://forum.xda-developers.com/showpost.php?p=72190216&postcount=7
Click to expand...
Click to collapse
Thanks, missed that.
:good::good::good: ROM
stkl said:
16GB SanDisk SD card not working - worked before and also with another Android 7.1 device (older 8GB SanDisk works - have to figure out why)
Click to expand...
Click to collapse
Seems to be an issue with die SD card driver, UHS-1 cards (tested with SanDisk Ultra) are not supported by our current kernel.
The same card (verified genuine btw.) has been working with CM13.
kmsg:
[ 7841.388709] c0 22066 mmc1: slot status change detected (0 -> 1), GPIO_ACTIVE_LOW
[ 7841.775759] c0 18205 mmc1: new ultra high speed DDR50 SDHC card at address aaaa
[ 7841.781131] c0 18205 mmcblk1: mmc1:aaaa SU16G 14.8 GiB
[ 7841.803148] c0 0 mmc1: data txfr (0x00200000) error: -84 after 16 ms
[ 7841.803201] c0 0 sdhci: =========== REGISTER DUMP (mmc1)===========
[ 7841.803247] c0 0 sdhci: Sys addr: 0x00000000 | Version: 0x00003e02
[ 7841.803292] c0 0 sdhci: Blk size: 0x00007200 | Blk cnt: 0x00000008
[ 7841.803336] c0 0 sdhci: Argument: 0x00000000 | Trn mode: 0x00000033
[ 7841.803381] c0 0 sdhci: Present: 0x03f80206 | Host ctl: 0x00000017
[ 7841.803425] c0 0 sdhci: Power: 0x0000000f | Blk gap: 0x00000000
[ 7841.803469] c0 0 sdhci: Wake-up: 0x00000000 | Clock: 0x00000007
[ 7841.803512] c0 0 sdhci: Timeout: 0x00000008 | Int stat: 0x00000000
[ 7841.803557] c0 0 sdhci: Int enab: 0x03ff800b | Sig enab: 0x03ff800b
[ 7841.803600] c0 0 sdhci: AC12 err: 0x00000000 | Slot int: 0x00000000
[ 7841.803645] c0 0 sdhci: Caps: 0x2329c8b2 | Caps_1: 0x00008007
[ 7841.803689] c0 0 sdhci: Cmd: 0x0000123a | Max curr: 0x00000000
[ 7841.803734] c0 0 sdhci: Resp 1: 0x5b590000 | Resp 0: 0x00000900
[ 7841.803779] c0 0 sdhci: Resp 3: 0x0a404012 | Resp 2: 0x76b27f80
[ 7841.803820] c0 0 sdhci: Host ctl2: 0x0000000c
[ 7841.803859] c0 0 sdhci: ADMA Err: 0x00000003 | ADMA Ptr: 0x2e300008
[ 7841.803909] c0 0 mmc1: clk: 50000000 clk-gated: 0 claimer: mmcqd/1 pwr: 14
[ 7841.803957] c0 0 mmc1: rpmstatus[pltfm](runtime-suspend:usage_count:disable_depth)(0:0:0)
[ 7841.804003] c0 0 sdhci: ===========================================
[ 7841.810959] c0 27665 mmcblk1: error -84 transferring data, sector 0, nr 8, cmd response 0x900, card status 0xb00
[ 7842.098945] c0 18205 mmcblk1: p1
stkl said:
Seems to be an issue with die SD card driver, UHS-1 cards (tested with SanDisk Ultra) are not supported by our current kernel.
The same card (verified genuine btw.) has been working with CM13.
kmsg:
[ 7841.388709] c0 22066 mmc1: slot status change detected (0 -> 1), GPIO_ACTIVE_LOW
[ 7841.775759] c0 18205 mmc1: new ultra high speed DDR50 SDHC card at address aaaa
[ 7841.781131] c0 18205 mmcblk1: mmc1:aaaa SU16G 14.8 GiB
[ 7841.803148] c0 0 mmc1: data txfr (0x00200000) error: -84 after 16 ms
[ 7841.803201] c0 0 sdhci: =========== REGISTER DUMP (mmc1)===========
[ 7841.803247] c0 0 sdhci: Sys addr: 0x00000000 | Version: 0x00003e02
[ 7841.803292] c0 0 sdhci: Blk size: 0x00007200 | Blk cnt: 0x00000008
[ 7841.803336] c0 0 sdhci: Argument: 0x00000000 | Trn mode: 0x00000033
[ 7841.803381] c0 0 sdhci: Present: 0x03f80206 | Host ctl: 0x00000017
[ 7841.803425] c0 0 sdhci: Power: 0x0000000f | Blk gap: 0x00000000
[ 7841.803469] c0 0 sdhci: Wake-up: 0x00000000 | Clock: 0x00000007
[ 7841.803512] c0 0 sdhci: Timeout: 0x00000008 | Int stat: 0x00000000
[ 7841.803557] c0 0 sdhci: Int enab: 0x03ff800b | Sig enab: 0x03ff800b
[ 7841.803600] c0 0 sdhci: AC12 err: 0x00000000 | Slot int: 0x00000000
[ 7841.803645] c0 0 sdhci: Caps: 0x2329c8b2 | Caps_1: 0x00008007
[ 7841.803689] c0 0 sdhci: Cmd: 0x0000123a | Max curr: 0x00000000
[ 7841.803734] c0 0 sdhci: Resp 1: 0x5b590000 | Resp 0: 0x00000900
[ 7841.803779] c0 0 sdhci: Resp 3: 0x0a404012 | Resp 2: 0x76b27f80
[ 7841.803820] c0 0 sdhci: Host ctl2: 0x0000000c
[ 7841.803859] c0 0 sdhci: ADMA Err: 0x00000003 | ADMA Ptr: 0x2e300008
[ 7841.803909] c0 0 mmc1: clk: 50000000 clk-gated: 0 claimer: mmcqd/1 pwr: 14
[ 7841.803957] c0 0 mmc1: rpmstatus[pltfm](runtime-suspend:usage_count:disable_depth)(0:0:0)
[ 7841.804003] c0 0 sdhci: ===========================================
[ 7841.810959] c0 27665 mmcblk1: error -84 transferring data, sector 0, nr 8, cmd response 0x900, card status 0xb00
[ 7842.098945] c0 18205 mmcblk1: p1
Click to expand...
Click to collapse
Thanks, I have fixed the problem yesterday evening: https://github.com/nightcore500/and...mmit/08a899fdb120982aaad42c6c6ea9315a60a908e5
Its included in the next release.
OK, I should have pulled fresh sources... anyway, great
As far as I can judge, nightcore uses the latest msm8974 kernel source from lineage? Invisiblek has here synced the mmc driver some time ago to caf/LA.BF.1.1.1_rb1.26. (https://github.com/LineageOS/androi...mmit/b7a99c094be02d78d1a9f7f8e5898bd702df82c7) That problem was already announced by some people to the devs. But nobody had ever cared about it. Or what do you mean stkl?
Yes, exactly. Same code snippet referenced be nightcore. Should be fixed now. Just started a new build, will test tomorrow.
The UHS problem has been fixed and reverted numerous times in the past, not only for CM/LOS...
When I select image(s) for deletion, sometimes the delete button shows sometimes it doesn't.
Anyone knows how to make a flashable zip of stock apps, Thanks..
Finusfix said:
As far as I can judge, nightcore uses the latest msm8974 kernel source from lineage? Invisiblek has here synced the mmc driver some time ago to caf/LA.BF.1.1.1_rb1.26. (https://github.com/LineageOS/androi...mmit/b7a99c094be02d78d1a9f7f8e5898bd702df82c7) That problem was already announced by some people to the devs. But nobody had ever cared about it. Or what do you mean stkl?
Click to expand...
Click to collapse
Yeah the git entry I always revert when building the One Mini 2 is the following commit:
b7a99c094be02d78d1a9f7f8e5898bd702df82c7
This is when all the MMC stuff changed to fit the M8 and similar and stopped working for the Memul.

flash recovery partition from android system/userland

I'm having trouble with fastboot (see my thread here: https://forum.xda-developers.com/xperia-xz1-compact/help/issues-fastboot-t3971227, maybe you can help). However, I can seem to flash sony signed software in sony-service mode using newflasher. That's nice, but I haven't used stock android in years. I am very used to lineageos without gapps---nice and clean. So, for me, until I get rid of stock and get a clean flash of lineage, I'm really not happy.
Given my state of affairs, I'm wondering about flashing one of the exploitable sony stocks and to get root, then flashing the recovery partition with twrp from userland. Then, potentially, i could boot to that recovery and maybe (idk) flash a new system ROM. Does anyone have any tips or suggestions?
It should work as you outlined.
Still having BL unlocked and not usable fastboot seems like a major disadvantage to me.
Did you try with different PC to see if it is not due to usb chipset or something?
Preferably using usb 2.0 only chipset?
Maybe trying that from different OSes too - linux vs win?
Thanks for the reply. I got the exploitable firmware downloaded and flashed as well as your renosploit kit. Hasn't found a root shell yet although I'm hopeful it will eventually (I haven't read the details but I understand that the underlying vuln is a race condition).
One question: I suppose that given that tmp root status, it should be possible to copy a su binary over and make root permanent, that would make experimentation easier, I think. And if whatever I try fails the first time I wouldn't want to have to wait for the race condition exploit every time I wanted to reboot. Am I on the right track? If so, I suppose I need to either compile or download a su binary and possibly a supersu.apk in order to manage it. Are those already available for the xz1 compact?
@apexofservice, planting su binary is possible into /oem for example, it would switch the user to root, but without any better permissions, due to selinux, so it is useless.
But since you have your BL unlocked, you do not need that. As soon as you have twrp, you can flash magisk to have root on runtime easily. Or just enter twrp to have root in recovery.
j4nn said:
@apexofservice, planting su binary is possible into /oem for example, it would switch the user to root, but without any better permissions, due to selinux, so it is useless.
But since you have your BL unlocked, you do not need that. As soon as you have twrp, you can flash magisk to have root on runtime easily. Or just enter twrp to have root in recovery.
Click to expand...
Click to collapse
Got it. Thank you for this detail. So you think my best bet is to just use the root shell to `dd` the twrp image directly to some /dev? And then I would just `adb reboot recovery` and in theory I'm good to go.
Cool. I got a root shell with your exploit kit. I've got two questions at this point.
1) If my bootloader unlock had fully succeeded, would I have expected to find all 0x0 in the TA partition? In fact, there is data in there, so I went ahead and downloaded it. I skimmed the data with xxd and there are some sections of 0x0 as well though.
2) Second question, I've read that xperia's don't have a proper "recovery" partition the way some other boards do. So is FOTAkernel actually where I want to write twrp.img? Also, it would seem that this info is actually encoded somewhere in the fastboot client since on a working fastboot, you can just say "flash recovery" and it knows what part of the disk to write to. Any info about partition layouts on lilac and xperia's in general would be greatly appreciated.
apexofservice said:
Cool. I got a root shell with your exploit kit. I've got two questions at this point.
1) If my bootloader unlock had fully succeeded, would I have expected to find all 0x0 in the TA partition? In fact, there is data in there, so I went ahead and downloaded it. I skimmed the data with xxd and there are some sections of 0x0 as well though.
2) Second question, I've read that xperia's don't have a proper "recovery" partition the way some other boards do. So is FOTAkernel actually where I want to write twrp.img? Also, it would seem that this info is actually encoded somewhere in the fastboot client since on a working fastboot, you can just say "flash recovery" and it knows what part of the disk to write to. Any info about partition layouts on lilac and xperia's in general would be greatly appreciated.
Click to expand...
Click to collapse
1 - The TA partition contains significant amounts of other information as well. So it won't be empty.
The standard way of dealing with it is to not mess with it at all.
2 - The FOTAkernel is the recovery.
2a - The partition layout can be found from the stock firmware image in the "partition-image-LUNZ_X-FLASH-ALL-C93B.sin" file where "Z" is the LUN number. Once you extract the SIN file, you're left with an EFI partition header.
I've attached a CSV file that contains the layout as specified in the "partition-image-LUN0_X-FLASH-ALL-C93B.sin" file.
The layout for LUNs 1 and 2 both contain a single 4MB partition for "xbl" and "xblbak" respectively, so they're not as interesting.
@pbarrette, thanks! I tried the naive approach:
Code:
d if=twrp-3.2.1-0-lilac-10-patchlevel-2018-05-05.img of=/dev/block/bootdevice/by-name/FOTAKernel <
60128+0 records in
60128+0 records out
30785536 bytes transferred in 2.100 secs (14659779 bytes/sec)
G8441:/data/local/tmp # sync
G8441:/data/local/tmp # sync
G8441:/data/local/tmp # reboot recovery
Alas, it just rebooted back to system. It did seem to take a bit longer, so it's possible that it tried to boot from FOTAKernel and failed then fell back to system. I've just got a new root shell so I can look in startup logs from dmesg to see if there's anything of interest.
Also, I'm probably missing something really obvious. Thanks for any insight!
Reading dmesg now, this seems quite relevant (I recall booting to recovery on my z3 compact by touching a file in /cache/recovery). I'll post it here but I'm still reading the dmesg.
Code:
[ 7.406109] bs_roots: recovery filesystem table
[ 7.406120] bs_roots: =========================
[ 7.406125] bs_roots: 0 /data ext4 /dev/block/bootdevice/by-name/userdata
[ 7.406130] bs_roots: 1 /oem ext4 /dev/block/bootdevice/by-name/oem
[ 7.406134] bs_roots: 2 /cache ext4 /dev/block/bootdevice/by-name/cache
[ 7.406139] bs_roots: 3 /rca ext4 /dev/block/bootdevice/by-name/appslog
[ 7.406143] bs_roots: 4 /idd ext4 /dev/block/bootdevice/by-name/diag
[ 7.406148] bs_roots: 5 /storage/sdcard1 vfat /devices/soc/c0a4900.sdhci/mmc_host*
[ 7.406153] bs_roots: 6 none swap /dev/block/zram0
[ 7.406157] bs_roots: 7 /persistent emmc /dev/block/bootdevice/by-name/frp
[ 7.406162] bs_roots: 8 /misc emmc /dev/block/bootdevice/by-name/misc
[ 7.406167] bs_roots: 9 /firmware vfat /dev/block/bootdevice/by-name/modem
[ 7.406172] bs_roots: 10 /bt_firmware vfat /dev/block/bootdevice/by-name/bluetooth
[ 7.406177] bs_roots: 11 /dsp ext4 /dev/block/bootdevice/by-name/dsp
[ 7.406182] bs_roots: 12 /persist ext4 /dev/block/bootdevice/by-name/persist
[ 7.406187] bs_roots: 13 /boot/modem_fs1 emmc /dev/block/bootdevice/by-name/modemst1
[ 7.406191] bs_roots: 14 /boot/modem_fs2 emmc /dev/block/bootdevice/by-name/modemst2
[ 7.406195] bs_roots: 15 auto auto /devices/soc/a800000.ssusb/a800000.dwc3/xhci-hcd.0.auto/usb*
[ 7.406199] bs_roots: 16 /qns ext4 /dev/block/bootdevice/by-name/Qnovo
[ 7.406203] bs_roots: 17 /tmp ramdisk ramdisk
[ 7.406206] bs_roots:
[ 7.408585] MR: Mounting /cache ourselves
[ 7.412318] EXT4-fs (sda53): recovery complete
[ 7.412666] EXT4-fs (sda53): mounted filesystem with ordered data mode. Opts:
[ 7.413213] MR: fopen() failed -/cache/recovery/command (No such file or directory)
[ 7.413219] MR: Unmounting /cache
[ 7.413959] MR: Fail to get command from /cache/recovery/command, trying /misc
[ 7.414272] MR: Unknown wipe command
[ 7.414280] MR: Buffer is empty from /dev/block/bootdevice/by-name/misc with command 0
[ 7.417568] MR: TA_MASTER_RESET value = 0
[ 7.418475] init: Service 'exec 3 (/sbin/mr)' (pid 605) exited with status 0 waiting took 0.022997 se
conds
[ 7.418513] init: starting service 'exec 4 (/sbin/ffu)'...
[ 7.418846] init: SVC_EXEC pid 609 (uid 0 gid 0+0 context u:r:recovery:s0) started; waiting...
[ 7.419833] init: Service 'exec 4 (/sbin/ffu)' (pid 609) exited with status 255 waiting took 0.001316
seconds
------
One more update, I did a sanity check that that dd command is actually overwriting FOTAkernel. It doesn't look like it's working:
Code:
G8441:/data/local/tmp # dd if=/dev/block/bootdevice/by-name/FOTAKernel of=FOTAKernel-extracted.img
131072+0 records in
131072+0 records out
67108864 bytes transferred in 0.812 secs (82646384 bytes/sec)
G8441:/data/local/tmp # chown shell:shell FOTAKernel-extracted.img
G8441:/data/local/tmp # dd if=twrp-3.2.1-0-lilac-10-patchlevel-2018-05-05.img of=/dev/block/bootdevice/by-name/FOTAKernel
60128+0 records in
60128+0 records out
30785536 bytes transferred in 2.037 secs (15113174 bytes/sec)
G8441:/data/local/tmp # sync
G8441:/data/local/tmp # sync
=/dev/block/bootdevice/by-name/FOTAKernel of=FOTAKernel-extracted-2.img <
131072+0 records in
131072+0 records out
67108864 bytes transferred in 0.846 secs (79324898 bytes/sec)
And there's no `diff` on the device, so I pulled the files back to a laptop then:
Code:
$ diff FOTAKernel-extracted-2.img FOTAKernel-extracted.img
$ diff FOTAKernel-extracted.img twrp-3.2.1-0-lilac-10-patchlevel-2018-05-05.img
Binary files FOTAKernel-extracted.img and twrp-3.2.1-0-lilac-10-patchlevel-2018-05-05.img differ
@j4nn @pbarrette doing some more reading, I found some interesting details about booting to recovery stored on FOTAKernel here:
https://twrp.me/sony/sonyxperiaxz.html
https://twrp.me/sony/sonyxperiaz3compact.html
Looks like you really need a kernel that has the ramdisk extraction setup. So I'm guessing that once I figure out why dd isn''t working as I expected (see above) that I need to overwrite the main stock kernel with an alternative.
Yes, a dd extraction of the partition will be different than the TWRP image.
That's because the TWRP image is only ~35MB, while "dd" is extracting the entire 64MB partition.
So, if you do a visual diff on the files, you should see that what's actually different is the fact that the partition extraction is filled with zeros after the end of the TWRP image.
You're doing a "reboot recovery", but have you tried:
1 - Turn the phone off
2 - Press and hold [Vol-Down].
3 - Press and hold [Power].
4 - Release [Power] at power on.
5 - Release [Vol-Down] when you see an actual boot screen (after the bootloader unlocked screen).
I don't remember the "reboot recovery" command ever working right for me.
Edit to add: That's also a really old version of TWRP that you seem to be using.
pbarrette said:
Yes, a dd extraction of the partition will be different than the TWRP image.
That's because the TWRP image is only ~35MB, while "dd" is extracting the entire 64MB partition.
So, if you do a visual diff on the files, you should see that what's actually different is the fact that the partition extraction is filled with zeros after the end of the TWRP image.
You're doing a "reboot recovery", but have you tried:
1 - Turn the phone off
2 - Press and hold [Vol-Down].
3 - Press and hold [Power].
4 - Release [Power] at power on.
5 - Release [Vol-Down] when you see an actual boot screen (after the bootloader unlocked screen).
I don't remember the "reboot recovery" command ever working right for me.
Edit to add: That's also a really old version of TWRP that you seem to be using.
Click to expand...
Click to collapse
Hot damn. Thanks, I'm booted to twrp!
Note: i was using the older version for android 8 since I'm currently on the android 8 exploitable rom!
apexofservice said:
@j4nn @pbarrette doing some more reading, I found some interesting details about booting to recovery stored on FOTAKernel here:
https://twrp.me/sony/sonyxperiaxz.html
https://twrp.me/sony/sonyxperiaz3compact.html
Looks like you really need a kernel that has the ramdisk extraction setup. So I'm guessing that once I figure out why dd isn''t working as I expected (see above) that I need to overwrite the main stock kernel with an alternative.
Click to expand...
Click to collapse
XZ1 compact never needed the recovery with this extraction stuff. But according to
https://twrp.me/sony/sonyxperiaxzpremium.html
XZ Premium (which is also yoshino platform, the same as xz1c is) seems to need that - but I am not sure if it is still valid.
It might got fixed even in xzp case with some bootloader update to have it working the same as with other yoshino phones.
Sorry for my late answer, it's good you already have it working.
But I still wonder about that usb problem with fastboot - have you tried a different pc with different usb controller, preferably usb 2.0 type (not 3.0 one)?
j4nn said:
XZ1 compact never needed the recovery with this extraction stuff. But according to
https://twrp.me/sony/sonyxperiaxzpremium.html
XZ Premium (which is also yoshino platform, the same as xz1c is) seems to need that - but I am not sure if it is still valid.
It might got fixed even in xzp case with some bootloader update to have it working the same as with other yoshino phones.
Sorry for my late answer, it's good you already have it working.
But I still wonder about that usb problem with fastboot - have you tried a different pc with different usb controller, preferably usb 2.0 type (not 3.0 one)?
Click to expand...
Click to collapse
I haven't yet. Well, I have sorta. When I first ran into issues, I tried it with a different laptop, got the same result. Now that laptop was also a thinkpad (although a newer model) and was also running debian linux. I don't have any computers with Windows. I was going to reboot this laptop with usb3.0 kernel mod blacklisted and only using hci but I didn't get around to it yet (especially once I got twrp flashed and working, then I mainly wanted to get started actually using the phone i bought ). However, if it were a usb thing, wouldn't we expect that newflasher would fail too? Still, it is very curious about the fastboot thing, however, so I'm willing to keep playing with it.
@apexofservice, I am not sure if blacklisting usb3 drivers would help. Sometime there may be present multiple usb ports, some connected to usb 3.0 host controller, others just usb 2.0 controller.
Even if newflasher works, it is not that simple, that fastboot should work too.
Fastboot (including it's usb support) is implemented in UEFI bootloader, the ABL component of it (Android Boot Loader).
So usb stack is implemented by UEFI fw.
While newflasher uses flash mode, which is running XFL - a linux (bare bone android) kernel, running the lilo/loader userspace application. So there is in my opinion quite good usb stack implemented by linux kernel.
So it can easily be some incompatibility within UEFI usb stack implementation used with fastboot.

Categories

Resources