Update: ThunderZap 4.7 for Sony Xperia L released

https://cdn1.thunderzap.in/wp-content/uploads/2014/09/logo_zps2065a3d0.png As I was focusing on Mi3 for last month I wasn’t able to pay enough attention to Sony Xperia L. It has been around  1.5 months since the last kernel update so here is an update for everyone who has been waiting for it. The change-log goes pretty big:
  • Updated exFAT to latest upstream version
  • Huge bunch of Samsung F2FS updates
  • TWRP
  • Philz Touch 6.57.5 Updated
  • Dual recovery is here!New – TWRP+Philz Touch
  • Fixed in-recovery 1970 timing mismatch
  • Optimizations to cpufreq driver
  • New governor: SmartMax: This is my new favorite governor, an ideal choice for optimum performance and battery backup
  • New IOScheduler: TripNDroid: My second favorite scheduler after BFQ!
  • Optimized GPU flags
  • Sysfs interface to control GENTLE_FAIR_SLEEPERS on the fly
  • BFQ scheduler optimized for SSD
  • Disabled add_random method for improved IO performance
  • Moved to Linaro 4.7 from Linaro 4.6
  • Enabled aggressive multi-core power savings
  • Updated base CAF sources with over 100 new patches that go to VIDC, Adreno GPU driver, qssecom daemon, touchscreen driver etc
  • Updated wifi driver from latest CAF sources
  • Speedup in /proc/net/unix access
  • Optimizations to ext4 filesystem from upstream.
  Changelog of Philz Touch from 6.48.4 to 6.57.5

merge: "sr: Force format /data when wipe_media option is given"

merge: Tell vold to use the fstype defined in fstab when formatting

If, for whatever reason, a voldmanaged volume had a different filesystem
than the one defined in the fstab, then this filesystem was kept when
formatting. Change the logic to use the filesystem defined in the fstab when

do not unmount partitions before starting aroma file manager from default locations

On some devices, if /system and /data are unmounted before installing aroma package, aroma will fail to auto-mount the partitions


SuperSU 2.02

Merge pull request #56 from JustArchi/patch-3

Tweak default recovery keys

derp: perror format


do not print errors to stdout

merge "libtar: Fix hardlink extract"


merge external/libtar changes


use built in busybox tar instead of libtar


fix compiler warnings introduced by new scroll sensitivity code

better handling of errors in show battery level

6.56.6 / libtouch_gui 1.41

display total menu height and not only the increase value

easier editing of default menu height at compile time

merge aosp/sr fixes:
- updater: add missing header to fix compiler warnings
- updater: merge SR "Don't abort on read_file if the file is missing."
- merge SR "fix unnecessarily slow writing of EMMC partitions"


fix recovery hang on boot cause vold_connect() failed on some devices

new line


fix potential compile failure when board uses custom graphics.c due to new screen shot function (BOARD_CUSTOM_GRAPHICS)
  - drop to fb2png mode if possible
  - to enable native screen capture, read the comments


enable screen capture through adb shell

this restores fb2png as a built in library
fb2png is now a recovery symlink: this spares +100Kb
fb2png library is only used for adb shell screen capture
touch shortcut uses the new inline code from previous commits

clean up code

drop fb2png binary support

merge: TWRP screen capture function

Many thanks to @Tasssadar for bringing up this:

We will drop fb2png use in next commits

always build updater binary along recovery

merge recovery-cm changes to bootloader message:

- merge "Do not wipe block misc on bootloader msg update"
- merge "Allow custom bootloader msg offset in block misc"
- merge "updater: Use custom bootloader msg offset for stage functions"
- merge "updater: Fix multi-stage docs and code"

clean up


restore custom rom: preserve selinux attributes


add option to disable md5 from edify restore_rom command line
this fixes restore of custom roms

6.54.9 - libtouch_gui 1.40

fix compiling for devices with custom recovery key or ui files


improve using legacy lun haring on vold volumes

fix mistype: primary path and data media detection

clean up

always use if is_data_media_volume_path() to handle /data/media volume check

standardize logging to stdout

do not wipe /data/media on wipe_data recovery start command

clean up code

do not show mount/unmount /sdcard on /data/media devices

applies to old recovery.fstab with /sdcard entry having fs_type = datamedia

always unmount /data when requested

properly write mtd/bml entries to /etc/fstab

do not log failure to write fstab entry for ramdisk

better support storage volumes (adapted from CyanogenMod SR)


fix loki action was set incorrectly

When it was enabled in GUI, it was acting like disable and the inverse when set to disabled
Also, on device /data wipe, behaviour should now be saved to last user choice

support more moint points for /data/media detection

enhance code to toggle /data/media multi user support

clean up code


clean up

fix wake-up screen could fail or take a few seconds to reset brightness

enhance code to mount auto file system

resurrect lun support for non vold managed devices


Enhance highlight of virtual keys

Tweak default recovery keys

I'm not sure but I think that all devices with camera buttons (KEY_CAMERA or KEY_CAMERA_FOCUS) also have power button (KEY_POWER), so actually we can use additional camera but
Merge pull request #55 from JustArchi/patch-1

Add support for Sony Xperia M (nicki)
Add support for Sony Xperia M (nicki)

fix regression bug in Advanced menu


do not confuse with LOGE when reading logs


fix crash by calling ui_print or LOGE on early recovery init


add more libraries to clean up on compiling

loki: fix compiler warnings

clean up code and headers

- we move all recovery system related functions to advanced_functions.c and extendedcommands.c handles recovery menus and related functions
- move all settings functions to recovery_settings.c
- clean up headers and add needed dependencies inside them

do not double confirm formatting /data/media during ext4  f2fs conversion

text formatting

add function to free only array contents

move partition sdcard to wipe and format menu

Code readability

code formatting: keep cast of malloc return as we're moving to C++ later

don't show mount usb storage menu when it is not available

adapted from https://github.com/CyanogenMod/android_bootable_recovery/commit/2ee8640a8ce835199030e87310ada0b5cc68dfe5

We do not check volume labels to exclude as these are prone to issues and device specific

don't malloc where it is not needed

optimize code

Fix memory overflow potential issue

Allocating memory to the MFMatrix struct without allocating its pointer member could end up with memory overflow
Remove all useless memory allocation and simplify code

revert renaming of Reboot System Now menu

code clean up


code clean up

properly memset arrays to 0

reverting use of static arrays revealed this memory overflow bug since our arrays are no more initialized by default to 0
properly use memset to 0 all the array

for portability, we should write our own memset_to_null() function since memset 0 is not gurantied to give NULL to all array member pointers


Enhance menu titles

Keep only mount and storage options in the corresponding menu
Move f2fs toggle options to the Wipe and formats menu

loop into wipe options menu

optimize memory resources

- limit static variables inside scopes
- misc code formatting


group all wipe otions under a same menu

add function to confirm using multiple header lines

optimize code

don't confuse volume with path


mounts and storage: allow wiping regular partitions with fstype auto

code clean up

clean up


reduce logging

remove now outdated code

This also reverts true dual boot support: https://github.com/PhilZ-cwm6/philz_touch_cwm6/commit/bda70fd738f152f2bbf13e4c6d70b3bb35dbf06f
Please push a dedicated commit if you want it back

- support moto_msm8960dt unified

6.50.7: support multi slot touch driver


Merge branch 'tomkwok-patch-1' into cm-11.0

Merge branch 'patch-1' of https://github.com/tomkwok/philz_touch_cwm6 into tomkwok-patch-1


support wipe_cache and clear_display edify script commands

always show text in sideload mode

never confirm wipe in ors scripts

clean up

fix potential failure to reboot

loki recovery: clean up code

- loki recovery: cleanup code

Fix build error caused by 96b499d

add new tracked files

fix potential failure of TWRP backups

- not calling scan_mounted_volumes() could cause some issues here

mounts: match aosp sources

When we move to c++, the header can completely match AOSP


fix crash on boot when no extra.fstab file was included

Merge branch 'cm-11.0-beta' of https://github.com/PhilZ-cwm6/philz_touch_cwm6 into cm-11.0-beta

6.50.1 / libtouch_gui 1.31

Expose this as final for larger testing / feedback

To do:
- continue merging AOSP source (install package, minui...)
- move to C++

do not unmount vold managed devices when installing update packages


derp: properly fix useless logging when finding Partition Size


on recovery start, add a delay before mounting /data

this reduces log warnings when setting up /data/media link on start



AOSP / CM cherry pick + code clean up:

- move all partitions code to roots.c
- clean-up fstb creation code and match CyanogenMod recovery sources
- fix potential bugs related to non proper /data/media linking to /sdcard
- enhance logging on failure to detect fstype for f2fs conversion (case sd-ext defined in fstab but not existing)
- fix Find_Partition_Size() trying to get device link when not needed
- when Find_Partition_Size() found the size, do not continue parsing other partition entries
- Find_Partition_Size(): always free up resources

fix poweroff and reboot commands using property environement

fix various issues with partition size detection:
- always free up allocated memory
- when size is found, do not parse remaining partition entries
- do not resolve partition symlink when not actually needed

explicit bootloader message:

not all devices have a /misc partition.
give more explicit info about the log message

AOSP cherry picks


mako, deb and mako: enable f2fs and exfat kernel drivers


Format device source fixes:

- merge CM Recovery sources to recursive delete
- clean up and potential bug fixes for format volume functions

clean up

fix touch debug could not be enabled


work in progress...

match CM recovery

fix potential menu hang when wipe cache

This could happen for devices using device specific templates

support wipe_media recovery command

add wipe /data/media menu

6.48.8 (work in progress)

Latest stable is 6.48.4
We're moving to AOSP compatibility to no more depend on now poorly supported CWM

Always reboot on timed out key input

This also fixes a bug where time out would validate first menu

Intsall zip: start with indeterminate progress

This offers a nice GUI when installing packages without set_progress commands

ui: aosp cherry pick

reboot: match aosp / cm boot code

we still allow compatibility with older boot commands

AOSP cherry pick:

- remove OTA firmware update pre-Froyo compatibility
- Install Zip: more AOSP cherry picks

revert legacy path workaround:

We no longer need this as recovery can properly mount the legacy /sdcard path


fix compile error

sideload: aosp/sr cherry picks and fixes

fix potential segfault

aosp / sr cherry pick

6.48.5: CWM dies here
    Changelog for TWRP as stated by TeamWin
  • Add MTP support to recovery thanks mostly to bigbiff with a little help from Dees_Troy
  • Add command line capabilities – you can now execute various TWRP features via adb instead of the touchscreen
  • Add support for color in the console and give error, warning, and highlight lines different colors
  • Track backup and restore progress based on file sizes to provide a much more accurate indication of progress
  • Improve handling of /misc thanks to mdmower
  • Improve setting of time on Qualcomm devices thanks to [NUT]
  • Allow using images on slidervalue GUI objects thanks to Tassadar
  • Allow using variables and addition and subtraction in variables for easier theming
  • Add support for 1440×2560, 280×280, and 320×320 resolutions and update 240×240
  • Allow ui.xml file to include additional xml files to help break up the theme and make TWRP easier to maintain
  • Other minor fixes and improvements
  How to use dual recovery? When you see pink led after you power on the phone press volume up to access Philz Touch OR press power button to open TWRP recovery   Download                                                            Sources                                                                       Support                                                                                                                    
Share this post
  • 47

You may also like...

13 Responses

  1. Paulo says:

    Thanks man,

    I was waiting a long time for this.

    The Best Kernel

  2. Sibi says:

    Great update.. Thanks varun…i m waiting for cm 11 new release for XL

  3. arjun says:

    Great work dude..!!
    Waiting for new CM11 Xperia L Nightly

  4. Adil says:

    Amazing kernel thanks for supporting our device and love the new website

  5. Paulo says:

    Thunderzap 5.0, any news?

  6. Franckx says:

    Does this kernel works for Jelly Bean 4.2 stock rom?

  7. Alucard1989pl says:

    THis kernel works awesome with PAC-MAN-ROM RC3 :). I can’t wait for TZ 5.0 :3.

  8. scott says:

    what is the passkey in the thunderzap kernel . help me please

  9. Algoex says:

    what are the best settings for best battery ……i dont require performance. Plz if u have time, publish a guide on it.

  10. Anand says:

    I’m using cm12.1 with tz 4.16. I can’t update the tz kernel version via tz control app that shows no update available. So I downloaded tz4.7 and tz4.8 zip and flashed using recovery but both are stucked at tz logo. Can you please guide me to update tz kernel?

  11. odang says:

    How flash it? ?
    I have cwm recovery?

Leave a Reply

Your email address will not be published. Required fields are marked *