What it is
Disclaimer
Who can use it
The bootloader/reboot pain
From my experience there is 3 versions of the s1 bootloader for D66x3:
s1 D66x3 features:
Check the s1 version:
What is working
Everything =)
What is not working
What is not tested
ToDo
How to build
2017-03-17: change manifest
2016-11-05: change manifest
2016-04-14: added the manifest repo url.
2016-03-07: update manifest.xml
2016-02-14: update manifest.xml
2016-02-07: switch to omnirom build tree (except kernel due to f2fs). Manifest is no more up-to-date
2016-01-15: change manifest to include z1&z1c
2016-01-13: add github fork links
2016-01-09: new twrp.fstab
2016-01-07: add patch link for the device/sony/shinano-common
2015-12-26: twrp.fstab & BoardConfigCommon.mk are no more up-to-date. I need to publish it on a public VCS but for now it's q&d. When job is done in a cleaner way a publish all the sources. If you need/want it before ask me and a provide a zip.
How to install
With a first rom installation with extract_elf_ramdisk support:
Ex: Coming from stock rom and installing CyanogenMod:
Follow the cm installation guide, and replace step 4 by:
Via fastboot:
Via zip:
Thanks to
Version Information
Report a problem link
Releases
Before flashing, read carefully the 'Who can use it' part and 'How to install'. If you are unsure, feel free to ask.
Old releases:
bootloop workaround kernel:
2016-02-08:
FOTAKernel/recovery binary:
FOTAKernel/recovery binary:
flashable zip:
FOTAKernel/recovery binary:
flashable zip:
It is a self twrp build from the official 3.0.2-0 git sources on a omnirom tree with data decryption support. Also some flags are tuned to enable booting for newbootloaders (> 15.4)
This recovery is fully working for my sony xperia z3 (D6603) since september 2015. I give it 'as it is'.
This recovery is fully working for my sony xperia z3 (D6603) since september 2015. I give it 'as it is'.
Disclaimer
Code:
#include <std_disclaimer.h>
/*
* Your warranty is now void.
*
* We are not responsible for bricked devices, 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.
*
*/
Who can use it
it is only for z3 and unlocked bootloaders. It should work with
- phone where the sony TA update patch is applied
or- all AOSP based rom which support FOTAKernel recoveries extraction (extract_elf_ramdisk), ask your rom maintainer.
Since 2017-03-16 release this recovery use apps_logs partition as a workaround for N based roms, this will break stock roms!
(tested only on D6603 version but should work on D6602,D6643,D6653) let me know if it work for you
Actually it had been tested with CyanogenMod, and SlimRom as I know.Sony Xperia devices don't have recovery partition. Instead of this in custom kernels is used recovery-in-boot conception with two-stage boot (ramdisk-recovery is packed inside main ramdisk). And there is partition called FOTAKernel that is used for installing official FOTA (firmware-over-the-air) updates. After unlocking your bootloader it partition becomes redundant, because you cannot use OTA function anymore. So it may be used for storing recovery ramdisk. And this very useful future was implemented by a xda member, he developed utility extract_elf_ramdisk https://github.com/Dees-Troy/extract_elf_ramdisk (it is merged to almost all kernels for Sony devices), it extracts recovery ramdisk from FOTA partition instead of using regular one from boot image. So even after updating or changing your kernel or ROM you don't lose your current recovery!
(tested only on D6603 version but should work on D6602,D6643,D6653) let me know if it work for you
The bootloader/reboot pain
From my experience there is 3 versions of the s1 bootloader for D66x3:
s1 D66x3 features:
LA3.0_L_15.4 : provide basic boot functionality, you can only boot in your boot partition.
LA3.0_L_37 : provide normal boot & recovery boot functonality (boot partition & FOTAKernel partition) but doesn't provide reboot to recovery functionality.
LA3.0_L_Hero_17 : (not yet tested): same as l_37 but correct the reboot in recovery bug.
s1 D66x3 installation: LA3.0_L_37 : provide normal boot & recovery boot functonality (boot partition & FOTAKernel partition) but doesn't provide reboot to recovery functionality.
LA3.0_L_Hero_17 : (not yet tested): same as l_37 but correct the reboot in recovery bug.
LA3.0_L_15.4 : is preinstalled. (.200 and above)
LA3.0_L_37 : is installed with M (.575)
LA3.0_L_Hero_17 : is installed with N preview (.?)
Some roms flash other version of s1 that i never test (i only upgrade my bootloader with emma)LA3.0_L_37 : is installed with M (.575)
LA3.0_L_Hero_17 : is installed with N preview (.?)
Check the s1 version:
Code:
getprop ro.boot.s1boot
What is working
Everything =)
- backups
- backups on encrypted partitions
- restore
- restore on encrypted partitions
- all settings
- change partitions type (f2fs/ext4)
- flash zip
- reboot
- phone doesn't overheat and battery consumption is reasonable
- /data decrypt
- accessing recovery with new bootloader version (S1_Boot_MSM8974AC_LA3.0_L_37)
- Brightness
- usb otg
- f2fs partition decryption
What is not working
-
wipe data buton (workaround by format, change type)--> should be ok since 2016-07-14 release. -
reboot to recovery. I'm looking for documentation on new bootloader... --> workaround in progress--> should be ok for kernel with extract_elf_ramdisk -
with old bootloader (< 15.4: check your cmdline) --> in progress--> should be ok for kernel with extract_elf_ramdisk. Let me know
What is not tested
-
f2fs partition decryption--> ok on 2016-07-16 - what I forget, ask and I test asap
ToDo
-
create a zip to update this recovery--> re self signed zip since 2015-12-26 builds -
change the 'power profile' in use when in recovery mode--> governor changed to 'ondemand' (2015-12-19) -
create a VM for weekly builds--> done with jenkins (2016-02-17) -
create a folder on webserver for weekly build--> Url will come soon (2016-02-17) -
publish my files on a VCS--> https://github.com/nailyk-fr -
update my blog to make a full (french) compiling guide-> ENOTIME. Ask here if you need. -
make recovery functional for the 'full boot' process released by sony--> ok since 2016-01-09 builds
How to build
- Follow the official twrp compiling guide (I start from omnirom tree),
- If you are building from omni trees you do not need to change something as device have now official support.
- breakfast z3
- mka recoveryimage
- wait a half hour and it's done
2017-03-17: change manifest
2016-11-05: change manifest
2016-04-14: added the manifest repo url.
2016-03-07: update manifest.xml
2016-02-14: update manifest.xml
2016-02-07: switch to omnirom build tree (except kernel due to f2fs). Manifest is no more up-to-date
2016-01-15: change manifest to include z1&z1c
2016-01-13: add github fork links
2016-01-09: new twrp.fstab
2016-01-07: add patch link for the device/sony/shinano-common
2015-12-26: twrp.fstab & BoardConfigCommon.mk are no more up-to-date. I need to publish it on a public VCS but for now it's q&d. When job is done in a cleaner way a publish all the sources. If you need/want it before ask me and a provide a zip.
How to install
With a first rom installation with extract_elf_ramdisk support:
Ex: Coming from stock rom and installing CyanogenMod:
Follow the cm installation guide, and replace step 4 by:
- download and check md5/sha1,
- flash cyanogenmod kernel with:
-
Code:
fastboot flash boot boot.img
- flash recovery by using command:
-
Code:
fastboot flash FOTAKernel <filename>
- then reboot with
-
Code:
fastboot reboot
Via fastboot:
- download and check md5/sha1,
- reboot your phone in fastboot mode,
- flash recovery by using command:
-
Code:
fastboot flash FOTAKernel <filename>
-
Code:
fastboot flash recovery <filename>
- You need a custom recovery (like twrp/cwm) supporting flashing zip files,
- Download zip to your internal/external sd,
- Check md5/sha1,
- Reboot to recovery,
- flash zip.
Thanks to
Version Information
Created: 2015-12-18
Last Updated: 2018-03-28
Status: Work in progress --> stable (since 2016-07-16 build)
Last Updated: 2018-03-28
Status: Work in progress --> stable (since 2016-07-16 build)
It's a self build version of twrp. I follow the official twrp compiling guide and add files for z3 (D6603 version in this case) and some 'compiling tricks' to add keymaster/keystore support in recovery to finally support encrypted /data partitions.
( From @LeonidasTurk's kernel thread, this build should work with other models but it not tested! Use it at your own risk, unlocked bootloaders only obviously)
official twrp compiling guide: http://xdaforums.com/showthread.php?t=1943625
official CynogenMod z3 (D6603) thread: http://xdaforums.com/z3/development/rom-cyanogenmod-12-nightlies-xperia-z3-t3010201
I'm not affiliated to TeamWin or CyanogenMod.
( From @LeonidasTurk's kernel thread, this build should work with other models but it not tested! Use it at your own risk, unlocked bootloaders only obviously)
official twrp compiling guide: http://xdaforums.com/showthread.php?t=1943625
official CynogenMod z3 (D6603) thread: http://xdaforums.com/z3/development/rom-cyanogenmod-12-nightlies-xperia-z3-t3010201
I'm not affiliated to TeamWin or CyanogenMod.
Report a problem link
Releases
Before flashing, read carefully the 'Who can use it' part and 'How to install'. If you are unsure, feel free to ask.
2018-03-28 single/unified:
FOTAKernel/recovery binary:
FOTAKernel/recovery binary:
md5: 24cb9f0f64b2d62ef7798957932cc918
sha1: dd61d3f145f25a22b9f4eb9a6c0ec7a6eb92af0e
download mirror (fr)
sha1: dd61d3f145f25a22b9f4eb9a6c0ec7a6eb92af0e
download mirror (fr)
Changelog
[*] Old boot process is broken. Will only works with new bootloader (See OP top)- Fix Oreo encryption. Need working /system!
[*] Warning this recovery cannot be used with stock roms as it use /misc for rom/recovery communication.
Old releases:
2017-10-02 Single:
FOTAKernel/recovery binary:
[/INDENT]FOTAKernel/recovery binary:
Changelog
- Codename fix
[*] Warning this recovery cannot be used with stock roms as it use /misc for rom/recovery communication.
2017-09-28 Single:
FOTAKernel/recovery binary:
[/INDENT]FOTAKernel/recovery binary:
Changelog
- Lots of improvement (twrp side)
- Lots of changes on trees
- adb backups are broken for now, don't use them!
- Adjusted functionalities for our device
[*] Warning this recovery cannot be used with stock roms as it use /misc for rom/recovery communication.
2017-07-27 Single:
FOTAKernel/recovery binary:
FOTAKernel/recovery binary:
md5: ad3279f0f4e761c193f2c1296789ac98
download
flashable zip: download
2017-07-27 Dual:
FOTAKernel/recovery binary:
FOTAKernel/recovery binary:
md5: 7dea87dd9ab920931a769632dc054620
download
flashable zip: download
Changelog
- Don't remember
[*] Warning this recovery cannot be used with stock roms as it use /misc for rom/recovery communication.
2017-03-17:
FOTAKernel/recovery binary:
flashable zip:
FOTAKernel/recovery binary:
flashable zip:
md5: f5984afeb6dc1f2b4bed570950b67445
sha1:
download
[*] Warning this recovery will break stock roms as it use /misc for rom/recovery communication.
sha1:
download
- Switch back to 3.4 kernel (LineageOS 14.1)
- Resolve some apps_logs partition problem
[*] Warning this recovery will break stock roms as it use /misc for rom/recovery communication.
2016-12-23:
FOTAKernel/recovery binary:
flashable zip:
FOTAKernel/recovery binary:
flashable zip:
md5: 7c20318900825eb6e7b814bc433d6c1c
sha1: 75d9e650811b4067b2d8beac26b6e11faca8d3ac
download
sha1: 75d9e650811b4067b2d8beac26b6e11faca8d3ac
download
- Switch to 3.10 1.3.3 (if you experienced problem use the 2016-10-17 version and report with log please)
- Add app_log to fstab
2016-10-17:
FOTAKernel/recovery binary:
flashable zip:
FOTAKernel/recovery binary:
flashable zip:
md5: ba7abccc3a36dd2ad843b671c0935a44
sha1: faf863efd5a2e19c341e76d4e3bb8e26355a4c7a
download
sha1: faf863efd5a2e19c341e76d4e3bb8e26355a4c7a
download
- Periodical build (some corrections bugs from twrp, init problem correction from cm)
- still on 3.10 kernel, switch to 3.4 planned.
[*] Maybe a bug into twrp for android <= 5.1 flashing/restore into empty /system partition. Be careful!
2016-07-16:
FOTAKernel/recovery binary:
flashable zip:
FOTAKernel/recovery binary:
flashable zip:
md5: abda5283b200eab0c115e8fd0a5e2196
sha1: e02bb10f69e71df10948a9f124c15ab0a627dad8
download
sha1: e02bb10f69e71df10948a9f124c15ab0a627dad8
download
- Correct fstab errors
[*] Apparently there is delay in partition opening due to the twrp implementation of adopted storage. I'm currently trying to fix it.
2016-07-14:
FOTAKernel/recovery binary:
flashable zip:
FOTAKernel/recovery binary:
flashable zip:
md5: 1da3efe239917ed8872638d4d07d7b9d
sha1: 23ff50355b70495dbf4a6b0ef72acadc324ee832
download
sha1: 23ff50355b70495dbf4a6b0ef72acadc324ee832
download
- change fstab to make wipes easier
- lots of improvements/corrections in twrp tree from TeamWin team
2016-04-14:
FOTAKernel/recovery binary:
flashable zip:
FOTAKernel/recovery binary:
flashable zip:
md5: f07e9d242b249d2c39388203e6a9eb70
sha1: 44f8a91b0c10b3c667246bd664e923d6d884dbdb
download
sha1: 44f8a91b0c10b3c667246bd664e923d6d884dbdb
download
- Change selinux policies (use xen0n repo)
- Twrp flags to restore compatibility with old boot process
- This build is a major' release which should restore compatibility with old bootloader.
- please report feedback as I can know if I need to continue this way .
- create a git repo to push local manifests files
- for now my Jenkins is off --> added to the todo list
bootloop workaround kernel:
2016-03-07:
md5: b674a8aa843d9be6d801ada018006141
sha1: 22f7b9ecacb262dd6788fc22ac27e1a7c7265226
download
This is a cyanogenmod kernel where I remove the Dees_Troy 'extract_elf_ramdisk'. This way, if there is a soft reboot to recovery the phone restart cyanogenmod and doesn't go to bootloop. I don't try other rom with with kernel.
md5: b674a8aa843d9be6d801ada018006141
sha1: 22f7b9ecacb262dd6788fc22ac27e1a7c7265226
download
This is a cyanogenmod kernel where I remove the Dees_Troy 'extract_elf_ramdisk'. This way, if there is a soft reboot to recovery the phone restart cyanogenmod and doesn't go to bootloop. I don't try other rom with with kernel.
2016-03-07:
FOTAKernel/recovery binary:
flashable zip:
FOTAKernel/recovery binary:
flashable zip:
2016-02-14:
FOTAKernel/recovery binary:
FOTAKernel/recovery binary:
md5: 69f3852c616472e49c5aaa1120a02a64
sha1: b62bc394849d6c0d918492b4472891a1a2128910
download alternative
flashable zip: sha1: b62bc394849d6c0d918492b4472891a1a2128910
download alternative
md5: 0aebbbc8e2f881ebef5dc5856060c668
sha1: a6979856c31f0efbf34a8470d7155d5c2a4fbcd5
download alternative
sha1: a6979856c31f0efbf34a8470d7155d5c2a4fbcd5
download alternative
- A few releases ago (2016-02-07) device was named leo instead of z3 so flashing zip could fail!
- Improve display enabling hardware acceleration
- tune some twrp flags
- cleanup device tree
2016-02-08:
FOTAKernel/recovery binary:
md5: 6326926e5c46acc80fb925cb2838b05d
sha1: 3fb1a375121fef9b7690c6d556d5af934879ff66
download alternative
flashable zip: sha1: 3fb1a375121fef9b7690c6d556d5af934879ff66
download alternative
md5: 0cdac0861f1a395706616ff75dbe00c7
sha1: e865ec398ed3c3b9a69735f4ccd51c4ea51fb3ba
download alternative
2016-02-07: sha1: e865ec398ed3c3b9a69735f4ccd51c4ea51fb3ba
download alternative
- On precedent release (2016-02-07) device was named leo instead of z3 so flashing zip could fail!
- Move device tree to correct the ro.product.device
- ! As twrp 3.0.0-0 is a new release for me I only test 'basic' things. Feel free to report your experience. (decryption and f2fs always working)
FOTAKernel/recovery binary:
flashable zip:
md5: 816da3715c82c2f77b3ab5a6aca1612e
sha1: 26f09b99a65ad2100070f29edd8510d4da76a91e
download
2016-01-14: sha1: 26f09b99a65ad2100070f29edd8510d4da76a91e
download
- Device name was 'leo' instead of 'z3'!
- Switch to omnirom android-6.0 sources
- twrp 3.0.0-0 release
- kernel 3.10
- ! As twrp 3.0.0-0 is a new release for me I only test 'basic' things. Feel free to report your experience. (decryption and f2fs always working)
FOTAKernel/recovery binary:
flashable zip:
md5: 52bfd146b0cb69bd0c29ce42b42cf995
sha1: 6f7e7b9ec51f662ef0ccb39a1e63567490485125
download
sha1: 6f7e7b9ec51f662ef0ccb39a1e63567490485125
download
- Custom governor to reduce heating
- Revert board-name-change commit
2016-01-09:
FOTAKernel/recovery binary:
FOTAKernel/recovery binary:
md5: a50f9b48d89db94bc5ffa5f791a7cd56
sha1: 2b9848d6f1b7cbdc04a6bb28590ae95265f5b2d0
download: http://s000.tinyupload.com/?file_id=47292896408680539327
flashable zip: sha1: 2b9848d6f1b7cbdc04a6bb28590ae95265f5b2d0
download: http://s000.tinyupload.com/?file_id=47292896408680539327
md5: 2e8766e3a6be34c11470099f4638dd01
sha1: ca1ec7f53d308980e82c09c586882a6a464dbaf5
download: http://s000.tinyupload.com/?file_id=78086454241793216639
sha1: ca1ec7f53d308980e82c09c586882a6a464dbaf5
download: http://s000.tinyupload.com/?file_id=78086454241793216639
- Minor changes (cmdline) to be bootable from new bootloader
2016-01-09:
FOTAKernel binary:
FOTAKernel binary:
md5: 2aaf2d85bbaf40e0118fae9173b2fb69
sha1: c6ca54aafebde25a32a080d5d44172289a1c707e
download: http://s000.tinyupload.com/?file_id=08765682926169309050
flashable zip: sha1: c6ca54aafebde25a32a080d5d44172289a1c707e
download: http://s000.tinyupload.com/?file_id=08765682926169309050
md5: d56266b1df54d2731fd0f0a2e1b1eee6
sha1: 243e1f78c9409b638f68616a01c2f28d34cc4981
download: http://s000.tinyupload.com/?file_id=33880692705595869190
sha1: 243e1f78c9409b638f68616a01c2f28d34cc4981
download: http://s000.tinyupload.com/?file_id=33880692705595869190
- Updated build from sources
2015-12-26:
FOTAKernel binary:
FOTAKernel binary:
md5: 0cf55faa541f861652e73fa62dbfb80a
sha1: 64a5672198b9a0031ecd663cc62cf2b05cd8a482
download: http://s000.tinyupload.com/?file_id=77779745124843827613
flashable zip: sha1: 64a5672198b9a0031ecd663cc62cf2b05cd8a482
download: http://s000.tinyupload.com/?file_id=77779745124843827613
md5: 7bf41589eda189c4646ca979e93da047
sha1: 9a109fe526b1eb616acfed1f85f6438a8b0eb278
download: http://s000.tinyupload.com/?file_id=16394970444867985651
sha1: 9a109fe526b1eb616acfed1f85f6438a8b0eb278
download: http://s000.tinyupload.com/?file_id=16394970444867985651
- add keystore support in a cleaner way
- add /system symlinks so mounting /system is no more needed to decrypt /data
- make a 'updater-script' to automate flashing-zip generation
2015-12-24:
md5: 8993fdb30ce00e431a59068f9f014e41
sha1: 5a8dfe7b4cba0b79ba1beea70656e2318dbdc9a2
download: http://s000.tinyupload.com/?file_id=10791233217780154379
sha1: 5a8dfe7b4cba0b79ba1beea70656e2318dbdc9a2
download: http://s000.tinyupload.com/?file_id=10791233217780154379
- Add qcom msm8974 keymaster blobs
- uncrypt data now working with workaround
2015-12-19:
md5: c6e3859eae39597f984852c41a183620
sha1: b42aa840637640c3934684b3cb1fa992ea5b383a
download: http://www.datafilehost.com/d/e46f08c4
sha1: b42aa840637640c3934684b3cb1fa992ea5b383a
download: http://www.datafilehost.com/d/e46f08c4
- Add qcom msm8974 hardware crypto support
- Try to add uncrypt capabilities (failed)
- add governor_scaling to 'ondemand'
2015-12-18:
md5: 13b1d5de4e69e4bb49621fbe87b8ae9b
sha1: 9ed93f895897c885d139d723180d50a33ec0a719
download: http://www.datafilehost.com/d/abe4ced7
sha1: 9ed93f895897c885d139d723180d50a33ec0a719
download: http://www.datafilehost.com/d/abe4ced7
- Initial release
Last edited: