(EOL) [Kernel][04.10.21][Q:1.6.3][R:2.6.0] JimboK - Kernel for SM-8250 (S20 and Note 20 Snapdragon) - Samsung Galaxy [SNAPDRAGON] S20 / S20+ / S20 Ultra

Hello!
I want to introduce my first custom kernel for the SM8250 family of Snapdragons. This is based of latest Samsung OneUI 2.5 Sources and I cherry-picked commits to make improvements to the stock base. I'm not a developer, but i really like to port stuff over .
I will try to have this Kernel updated as soon as new source tarballs are drop by Samsung. If you want to request for specific features, let me know and i'll do my best to bring them over.
Special Features:
Changelog is in post #2
How to Install:
First, make sure you are in any OneUI 2.5 (BTH* or BTI*) ROM and have TWRP on the device. Make sure you take a backup of your current boot partition in twrp, now install either the boot.img (extract from the tar file) or use ODIN to flash in Dowload mode. Please make sure to read Post #3 regarding issues with the current OS Patch Level. Images from 1.5.0 onwards are pre-rooted but you will probably need to update magisk either manually or by flashing latest magisk.zip file.
Keep in mind the following table to determine your phone model:
x1q = S20 - G981X
y2q = S20+ - G986X
z3q = S20U - G988X
r8q = S20 FE - G781B
c1q = Note 20 - N981X
c2q = Note 20U - N986X
IMPORTANT NOTE: It seems some users need to flash a vbmeta image file provided by Google in order to boot and user the Custom Kernel. If you find yourself in a situation were you are not able to boot, please flash the attached vbmeta img along with the Kernel and if still bootlooping share the last_kmsg to determine what's driving the issue.
Download:
Disclaimer: I am not responsible if you use this and brick your device or if your device blows up, implodes, flames start shooting from it or it kills your neighbor's dog. Flash at your own risk. I am not responsible.... It was the other guy... I swear....
You can use THIS link to get the latest builds. These and other downloads can also be found in the Telegram Group.
Sources for Q? https://github.com/Jimbo77/JimboK_common_sm8250
Sources for R? https://github.com/Jimbo77/Jimbok_common_sm8250-R
Join the Telegram Group for additional discussions and downloads - HERE
Special thanks to:
Afaneh
Ianmcd
0smosis
flar2
Lord Boeffla
jesec
elliwigy
pappasmurf
For their work and dedication to development!

Changelog or features or whatever
04.10.21 - JimboK-R-2.6.0
Upstreamed to .185
04.05.21 - JimboK-R-2.5.0[/B]
Sync code to add missing changes in upstreamed branch
Reworked the DEVFREQ_BOOST driver
Tweaked SchedHorizon default freqs
Tweaked DEVFREQ_BOOST defaults in defconfig
03.31.21 - JimboK-R-2.4.0[/B]
Upstreamed to Stable Linux 4.19.184
Built with cortex-a55 specific optimizations
removed facebook process from 'kill-in-the-background' mod. This was affecting the user experience (for those that use Facebook a lot, like my wife lol)
02.24.21 - JimboK-R-2.3.0[/B]
Upstreamed to Stable Linux 4.19.176
Switched from G988U source as base to N986N source drop for OneUI 3.1
Removed a lot of unused configs from defconfig. This resulted in a reduction of Kernel size and will have an impact on the overall performance and resource utilization.
Reworked the DEVFREQ and CPU_INPUT_BOOST drivers
Added and Enabled schedhorizon governor
Imported the option to edit the CPU Frequency table
Performance Governor is default for LITTLE Cluster now
02.03.21 - JimboK-R-2.1.0[/B]
Upstreamed to Stable Linux 4.19.172
Moved to KOR dts to improve on stability for custom DTBO's
Added Flicker-Free or DC Dimming. There are two versions of the Kernel and this will be the only version with Flicker Free. After this, there will not be added since i don't like how it messes the Screen Colors/Performance.
Disabled Bootstats
Enabled MPTCP
01.25.21 - JimboK-R-2.0.0[/B]
Upstreamed to Stable Linux 4.19.169
Disabled several not needed debug Samsung Configs
CPU ASSIST Feature
Disabled ZRAM and SWAP
DTS (dtb and dtbo) updates for all variants to their latest source drops
General CLANG and LLVM optimizations
01.01.21 - JimboK-R-1.8.0
Reworked both DEVFREQ and CPU_INPUT Boost functionalities
finetuned for SM8250 (Samsung) specific frequencies/values
added and enabled Simple Low Memory Killer (SLMK)
added: CIFS, NTFS and ISO9660 FS in-kernel Support
added Wireguard Support
Several 'under the hood' improvements to task/memory management.
12.28.20 - JimboK-R-1.7.0
Added BBR2 TCP Config and made Default
Several updates to NET protocols and BBR2
Added PROC_MAGISK_HIDE_MOUNT
Added a script to fix Shealth, Smart View and set ZRAM parameters.
12.25.20 - JimboK-R-1.6.0
Added Dynamic Fsync
Tweaks for Memory Management
Updated LZ4 compressor
Enabled ZSTD Compressor for ZRAM - Default now
12.21.20 - JimboK-R-1.5.1
Fixed Wifi Calling
12.20.20 - JimboK-R-1.5.0
Fsync On/Off Support
Readahead 0
Slimbus OC
Toggle to enable/disable CRC
Turned off several debug options within the tree
added EAS related commits
12.16.20 - JimboK-R-1.4.0
Added Kcal Color Control Driver
Added KLAPSE Driver
Disabled Gentle Fair Sleepers
Added Boeffla Wakelock Blocker
Disabled AVB Flag for better protector in terms of SafetyNet
Misc fixes and addons to dtb
12.15.20 - JimboK-R-1.3.0
Skipped, no public Release xD
12.13.20 - JimboK-R-1.2.0
Added IO-SCHED drivers like: ZEN, FIOPS, MAPLE etc...
Added DevFreq Boost Driver and tuned based off OP8
Added Adreno Boost Driver
12.12.20 - JimboK-R-1.0.0
Initial Android R (OneUI 3.0) bring up
Source is based off the G988U source drop. This includes all other variant files, i have added support to all previous phones from day one now
Disabled Samsung Security useless stuff (DM Verity for example)
11.01.20 - JimboK-1.6.3
Added a fix to hide Magisk Mount for Isolated Processes. This is a critical leak in MagiskHide that can be exploited by apps trying to determine if the device is rooted. I had an issue with two payment apps that after applying this fix, they work. Not sure if they were finding magisk with this method lol. Read more here https://darvincitech.wordpress.com/2019/11/04/detecting-magisk-hide/
Finally removed the warning upon boot. EdXposed compatibility was not affected by the removal of it.
10.27.20 - JimboK-1.5.0
Rebased to S20 FE source as baseline for all models. This is to ensure support for the S20 FE is added and to keep the most up date source from Samsung
Streamlined even further the 'common' defconfig and updated all other variant defconfigs to make it easier to build individual Kernels.
Removed GPU OC - This is to test drive if performance takes a small hit but battery is gained. I have this as *temp change* consider it a 'test' phase so i will need your feedback on it to see whether if we keep it or not. Also, the OC was causing issues to boot in N20 units and some weird hiccups in the System-UI for my S20U.
Added BBR2 TCP CONG protocol. By far, the best TCP CONG to speed up the network connections overall. Read out more here: http://dl.ifip.org/db/conf/networking/networking2018/2B1-1570416152.pdf
BBR2 is now default TCP CONG for the Kernel. I recommend ya'll to make the switch
Several Upstreams to NET/TCP in order to improve Network Connectivity and Speed.
Kernel comes pre-rooted now (via ramdisk). In the event of a magisk update you will only need to update through Magisk Manager. This is for the sake of simplicity
10.16.20 - JimboK-1.4.0
Removed several DEBUG options from defconfig that should not be present in a Production Kernel
Disabled ZSWAP and VBSWAP (this will create conflict with ZRAM) and ZRAM has proven to be more effective and create less wear than ZSWAP
Disabled LZO, updated LZ4 compression algorithms
Enabled ZSTD Compression, it is recommended to enable this for ZRAM moving forward
Disabled KPERFORM in defconfig
Enabled .gz compression for Kernel. Kernel is now almost 1/3 in size of what it used to be
Added and Enabled HID: NINTENDO SWITCH controllers support
10.13.20 - JimboK-1.3.0
Unified Sources a bit more. Removed the individual defconfigs to have one single plus each variant
for X1Q and Y2Q moved dts sources from CHN OPEN to KOR to keep it in line with main (Z3Q) sources and also for CXQ sources. BTI3 (latest software release) is now used for those models.
Enabled a few drivers inside of Kernel: CDC, NTFS, CIFS and some native gaming devices as well
Disabled DM_VERITY checks. This will help with the booting times
JimboK-1.2.0 and before:
Build with latest LLVM Clang 11
Disabled Samsung Security useless stuff (DM Verity for example)
GPU OC up to 895mhz
Adreno Boost
Boeffla Wakelock Blocker Driver
Disabled ZRAM and moved to ZSWAP and VBSWAP
KCAL Color Control Driver (Up to date)
KLAPSE Driver (check out https://forum.xda-developers.com/an...apse-kernel-level-livedisplay-module-t3907025)
Added IO-SCHED drivers like: ZEN, FIOPS, MAPLE etc...
Latest Wireguard Driver
BBR TCP Congestion algorithm by Default
built-in Kernel Westwood and other modules
SLIMBUS OC to improve the Audio Mods
Several Debug Options removed from driver and all over the Kernel itself
QCACLD-3.0 Support
Dynamic Sync Control
Fsync On/Off Toggle
Several EAS commits for balancing power+efficiency
OS PATCH LEVEL set as 2099-12 (Read post #3 - Mandatory)

OS PATCH LEVEL PROBLEM
This is a modified version of @evdenis post HERE
My Kernel uses an OS Patch Level of 2099-12 to maximize its compatibility among all releases by Samsung across all the supported phones. That's it. No other reason as to why choose that date, now, when you continue using my Kernel update after update there will be no issue, but if you change the kernel to any other (specially stock) chances are that Kernel is using the current month OS PATCH LEVEL which will cause two things:
You will not be able to pass beyond your lockscreen. No matter what you try, it won't let you unlock upon reboot
Your Samsung Account will warn you to log off and log back in but you will not be able to do so
The problem is not in sources. It's due to os_patch_level mismatch with you current kernel. As mentioned JimboK Kernel does not uses common security patch date to be in sync with the official samsung firmwares. You can check the default os_patch_level in build.mkbootimg.* files. However, this date can be higher than other kernels use. When you flash a kernel with an earlier patch date on top of the previous one with a higher date, android activates rollback protection mechanism and you face the problems stated earlier. It's impossible to use a "universal" os_patch_level because different users use different custom kernels and different firmwares. JimboK Kernel uses a highest date by default in order to suite most of users.
How can you solve the problem? 6 ways:
You can restore my kernel and the problems will be gone
You can flash the attached zip file. backtothefuture-2099-12.zip, it will make your new Kernel Patch OS Level 2099-12 thus avoiding the issues above. - read more about the zip HERE. You will have to flash this with any new kernel if you ever use mine (unless you do a full wipe as mentioned at the end of this list).
You can check the os_patch_level date of your new kernel here https://cruelkernel.org/tools/bootimg/ and patch the kernel image image to the same date. If your previous kernel is mine (JIMBOK), patch your new Kernel to 2099-12 date.
You can reboot to TWRP, navigate to data/system and delete 3 files those names starts with 'lock'. Reboot. Login, set a new pin. To fix samsung account login, reinstall the app
You can rebuild JimboK Kernel with os_patch_level that suites you. To do it, you need to change the OS PATCH LEVEL to the desire date when using mkbootimg.
You can do the full wipe during the new Kernel flashing
Update 10.20.20
Updated the zip file to add support for W models.
Update 10.19.20
Updated the zip file to remove Exy devices and focus solely in N20 and S20 Snap line.

Finally kernel for s20 thanks a lot.

Works great!

I've got bootloop with my S20U G9880 after flashing this kernel even with a full wipe

Working
It works on my G9810 Thanks!!!

stszf9124 said:
I've got bootloop with my S20U G9880 after flashing this kernel even with a full wipe
Click to expand...
Click to collapse
Strange I have G988N which is just about the same and I don't have that issue. Did you come from a rooted device? Were you in a custom ROM before?
Can you tell me a bit more of your setup?
Are there any other G9880 users with the same issue?

I have s20+ 5g g986u
Unlocked bl
Flashing twrp
Flashed the kernel
Flashed vmbeta disabler
Flashed magisk
Boot
All ok
Thank you

thank you

my device is running custom Rom and stock kernel, the firmware is BTH6 , last night I installed the latest version of TWRP and format data and flashed the multiple disabler, the device booted , but it got this issue after the kernel was installed even with a full wipe again

has battery life been improved?

can i flash this and then magisk to get root?

Smartphones13 said:
can i flash this and then magisk to get root?
Click to expand...
Click to collapse
Yes, you can do that.

Viet.molet said:
has battery life been improved?
Click to expand...
Click to collapse
I flashed this and did a minor debloat and gained roughly 30 minutes of screen on time.
I also noticed the animation from recents to home screen is slightly snappier.
Could be placebo but I like it.

@jimbo77 what kind of benefits do I get by flashing your Kernel?

chieco said:
@jimbo77 what kind of benefits do I get by flashing your Kernel?
Click to expand...
Click to collapse
Disabled some Samsung Security, you will be able to run edxposed if you are into that. Also a few changes and add-ons, read the op for some of the features added to the Kernel

Works on sm-g9810?

jucin said:
Works on sm-g9810?
Click to expand...
Click to collapse
It should. Although I haven't personally tried since I own a G988N

jimbo77 said:
Yes, you can do that.
Click to expand...
Click to collapse
Hey man, how's it going? Did you do anything special to get kcal working on the kernel? Mental made a kernel for the Note 20 Ultra but said he could not get Kcal working.
Also, even better, would you consider making a common kernel for the Note 20 Ultra Snapdragon? I'd definitely send a donation your way.

Related

[Kernel] [.38.8] intersectRaven's Kernel (AVS/CAVS)01/08/2011 22:00

This is my own personally compiled kernel based on the latest kernel from Cyanogen's Github repository with Kmobs' undervolt modifications, CodeAurora's AVS code, pershoot and rotohammer's audio gain mod and several compiler optimizations based on initial idea from psyq.
Only major releases will be advertised here.
All changes since 05/05 can be found at my Euroskank host:
http://intersectraven.euroskank.com/kernels/
*Thanks to RyanMacG for the free hosting!
Old uploads with minor changes can be found at my MediaFire folder or my Bitpad folder:
http://www.bitpad.co.uk/intersectraven
http://www.mediafire.com/intersectRaven
Major features:
- based on latest Cyanogen Mod kernel source from his GitHub repository
- numerous compiler optimizations with a custom compiler by redstar3894
- all CPU power governors for user dependent tweaking of power saving method
- Hybrid AVS (Adaptive Voltage Scaling combined with Static Voltage Scaling) support for maximum possible power savings dependent on CPU requirements and a customizable version (CAVS) for people who like to tweak how far their N1s can go
- universal update.zip template made by Koush
Instructions:
1.) Reboot to recovery and flash the update.zip directly.
OR
Instructions for zImage and bcm4329.ko driver extracted from the update.zip(from command line):
1.) adb remount
2.) adb push bcm4329.ko /system/lib/modules
3.) adb reboot bootloader
4.) fastboot flash zimage zImage
5.) fastboot reboot
OR
Use ADB GUI by minooch found here:
http://forum.xda-developers.com/showthread.php?t=666964
*please note the instructions...push the wifi driver BEFORE rebooting for flashing zImage...if your wifi is turned on when you reboot before you pushed the wifi driver for the kernel, there is a chance that you will go into a bootloop due to the incompatible wifi driver!
Changelog:
20120108_2143:
- just merged pershoot's commits
20111203_11XX:
- enabled MSM EHCI
20111114_23XX:
- integrated CM's commits (mainly bluetooth and WiFi fixes)
20111111_19XX:
- compiled using updated Mjolnir/Linaro compiler hybrid (having problems with our Mjolnir GCC)
- enabled SYN_COOKIES as requested
- some tweaks to the VFS settings
- switched network scheduler to SFB
- switched TCP congestion to Veno from YeaH (seems it's better for devices with a greater chance of random drops of packets)
20111010_11XX:
- disable CleanCache for YAFFS (too complex to change)
- more proper reapplication of changes from 3.0
20111009_22XX:
- enabled CleanCache for YAFFS, EXT3 and EXT4 (experimental)
20111008_23XX:
- ported BogoMIPS calibration from 3.0
- added CleanCache from 3.0
- switched to SIO from BFQ
- block IO batching from 3.0
- activate_pages batching from 3.0
20110904_07XX:
- added SmartAssV2 CPU governor
20110828_13XX:
- fix AVS to actually work (see previous latest post for apology... )
*this should restore the instability on some devices that can't handle AVS
20110828_00XX:
- prevent excessive suspend attempts
- optimized sha1 implementation
20110813_15XX:
- increased NAND buffer to 8k similar to codeaurora's version
- enabled 8-bit transfers for when the MMC card supports it
20110724_20XX:
- SmartAss improvement from the test kernels
- AVS code improvement also from the test kernels (hopefully improved the stability)
- RCU optimizations
- updated Mjolnir compiler
20110713_10XX:
- re-hauled SmartAss governor:
* interactive threads instead of workqueues to improve responsiveness when ramping-up frequencies
* reduced stepping frequency to use lower frequencies more
20110707_08XX:
- fixed the Voice Search problem
20110706_09XX:
- code cleanup
- additional tweaks
20110628_09XX:
- ARM improvements to memcpy and memmove operations from Wildfire (arco's kernel source)
- cherry-picked serial number commit from CM kernel
20110608_21XX:
- rebased everything together with removal of worthless commits
- added 2 new governors from SavagedZen kernel (SavagedZen & InteractiveX)
- updated code of Smartass governor to the one in SavagedZen since it seems more updated than the one I found
20110527_21XX:
- new method for addressing slow writes on USB from CodeAurora (although it's still slow using native USB mount and I didn't test using another mounter)
- some SIRC potential bug fixes
- input event handling modification from Google
20110523_08XX:
- compiled using updated Mjolnir
20110522_11XX:
- upgraded to v2.6.38.7
20110521_15XX:
- interrupt masking
- smd_tty buffer limit implementation
20110519_22XX:
- fix for potential bug and power leak improvement in DSP driver
- GPIO tweaks
20110516_19XX:
- increased DMA zone to 14MB (may speed some things or may not)
- timer workarounds have been removed as they're unneccessary on Scorpion
- prevent reading from write-only registers (just silly)
- used relaxed access functions for some functions
- remove extra interrupts sent from the SMD channel
20110515_21XX:
- added another commit from android unmerged which implements a watchdog to catch lockups during device resume
- fix for wakelocks which addresses the problem where while being connected to a computer, any attempt to power up will result in display immediately shutting off with touchscreen buttons still on
- uses an updated Mjolnir compiler
20110514_17XX:
- rebased everything
- removed some commits which were useless on the N1
- more zen branches merged
- WiFi-Fast patch has been integrated in all kernels since it seems to have no effect on battery (no more separate WiFi-Fast release)
20110511_22XX:
- reverted a change made to PMEM driver since the commit it was reliant to was reverted (sorry! didn't notice this...I wasn't too critical of my earlier cherry-picks... )
Link to a file which contains all kernels:
http://hotfile.com/dl/117478444/390f688/intersectR_-_20110511_22XX.zip.html
20110510_18XX:
- updated to 2.6.38.6
- committed some more video driver commits from CodeAurora
Link to a file which contains all kernels:
http://hotfile.com/dl/117350839/0a9a504/intersectR_-_20110510_18XX.zip.html
20110509_14XX:
- merged some commits from Android repositories that were still unmerged yet may prove useful for Ashmem and RPC
Link to a file which contains all kernels:
http://hotfile.com/dl/117209820/5b7fe7b/intersectR_-_20110509_14XX.zip.html
20110507_21XX:
- even more improvements from CodeAurora
Link to a file which contains all kernels:
http://hotfile.com/dl/117048553/0831385/intersectR_-_20110507_21XX.zip.html
20110506_15XX-16XX:
- enabled cache error reporting as this is indicative of how tolerant your N1 is to AVS undervolting
- smartass governor (from Temasek)
*this was mistakenly included in the previous release
- a minor kernel scheduling statistic commit
Link to a file which contains all kernels:
http://hotfile.com/dl/116922979/5fb2ec0/intersectR_-_20110506_15XX-16XX.zip.html
20110505_16XX-17XX:
- updated Mjolnir compiler
Link to a file which contains all kernels:
http://hotfile.com/dl/116827854/5839b43/intersectR_-_20110505_16XX-17XX.zip.html
20110505_08XX-09XX:
- AVS and CAVS now both allow changing of voltages on-the-fly. The only difference now is that AVS is undervolted by default while CAVS is undervolted to the same voltages that CM uses in his SVS kernel
- uses eviollet's on-the-fly voltage modification system instead of the previous one I had which is a lot more flexible
Link to a file which contains all kernels:
http://hotfile.com/dl/116798881/0d5b5bf/intersectR_-_20110505_08XX-09XX.zip.html
20110503_09XX:
- updated to version 2.6.38.5
Link to a file which contains all kernels:
http://hotfile.com/dl/116600585/b76a4b6/intersectR_-_20110503_09XX.zip.html
20110502_10XX:
- synced with pershoot's latest modifications which mirror CM's latest addition with regards to USB accessory function (not too important I think since it seems to be for future ADB use)
- uses an updated Mjolnir compiler (20110429)
Link to a file which contains all kernels:
http://hotfile.com/dl/116528049/1865aa6/intersectR_-_20110502_10XX.zip.html
20110424_11XX:
- reverted WiFi driver to same version CM uses for mainline kernel to fix channel 11 issues with the newest one
20110422_12XX:
- updated to 2.6.38.4
- compiler updated
20110421_15XX-16XX:
- first files to be hosted by Bitpad (http://www.bitpad.co.uk/intersectraven/)
*Thanks to MajorProbes
- just a minor release since I only updated the compiler
20110416_20XX:
- several compiler optimizations enabled (loop unrolling, peeling, etc.)
- zen-kernel cherry-picks for memory and fs optimization
20110415_23XX:
- updated to 2.6.38.3
- compiled using latest Mjolnir with an experimental merge by redstar
20110409_23XX:
- integrated a bluetooth fix and MMC quirks improvement from official Google repositories
20110407_13XX-14XX:
- integrate CM commits on futex optimization and removal of dodgy optimizations
20110403_12XX:
- fix for USB transfer speed (should now hold at 1MB/s without dropping)
20110401_22XX-23XX:
- first 2.6.38.2 release based on pershoot's 2.6.38
- added the usual mix (AVS, SLQB, CodeAurora patches, etc.)
- compiled using Mjolnir GCC 4.6.1
- changed FPU optimization to NEON
20110328_08XX-09XX:
- updated to 2.6.37.6
20110328_07XX:
- compiled using Mjolnir GCC4.6.0
- enabled Link Time Optimization and Graphite Optimization (use Google for definitions)
20110326_08XX:
- updated BFQ to v2-r1
20110324_18XX:
- updated to 2.6.37.5
20110320_17XX:
- merged Nick Piggin's RCU patches which were originally for 2.6.38 (one of the things Linux was excited about according to Phoronix)
20110319_09XX:
- merged latest CM kernel commits which enables the ff:
- enabled RCU boost
- enabled touchscreen filter (reduce CPU load made by touchscreen)
20110315_22XX:
- updated to 2.6.37.4
20110312_23XX:
- round 2 of CM's wonk fix attempt integrated
- toolchain update
*for links, go to my MediaFire folder as specified above
20110311_1623:
- integrated cyan's wonk fix attempt
- VPN "fix" (I don't like this one since it's just a backport of the old PPP interfaces)
*for links, go to my MediaFire folder as specified above
20110308_2246:
- updated to .37.3
- based on CM's latest kernel source
- with SLQB and BFQ v2
- regular and customizable AVS
- some CodeAurora patches
*for links, go to my MediaFire folder as specified above
20110213_1506:
- corrected minimum voltage value to 800mV
CFS-HAVS-CM7-NOBOOST -> http://www.mediafire.com/?m32mi1744ksb55m
20110213_1035:
- test release for new AVS-CUSTOMIZEABLE build which allows for runtime customization of AVS minimum and maximum limiters for more flexible AVS voltages depending on your CPU tolerance (/sys/module/avs/parameters/avs_adjust)
- AVS debugging outputs can also be toggled in runtime (/sys/module/avs/parameters/avs_debug -> set to 0 to not display, 1 to display)
CFS-HAVS-CM7-NOBOOST -> http://www.mediafire.com/?bt7mmtlmg407ne1
*format for avs_adjust is:
frequency,minimum voltage,maximum voltage
e.g.
echo 245000,925,975 > avs_adjust
**AVS debugging output will be enabled by default when you modify the limits
Finally created a github to store all of my kernel modifications:
http://github.com/intersectRaven/
To follow me for updates on Twitter:
http://www.twitter.com/intersectRaven
[Kernel] [.35.10, .37] intersectRaven's Kernel (HAVS-AXI-FM-720p-Zen)1/9/2011 10:13
Reserved for intersectRaven - Added 2post to allow OP to have more place for futur update
Finally a thread!
been using your kernels for some time now, good work!
---------------------------------------------------------------
Updates: I thought I'll use this space to provide some info since its right next to the OP
BFS:
BFS is the Brain **** Scheduler. It was designed to be forward looking only,
make the most of lower spec machines, and not scale to massive hardware. ie
it is a desktop orientated scheduler, with extremely low latencies for
excellent interactivity by design rather than "calculated", with rigid
fairness, nice priority distribution and extreme scalability within normal
load levels.
http://ck.kolivas.org/patches/bfs/bfs-faq.txt
CFS
Completely Fair Scheduler is the name of a task scheduler which was merged into the 2.6.23 release of the Linux kernel. It handles CPU resource allocation for executing processes, and aims to maximize overall CPU utilization while maximizing interactive performance.
http://en.wikipedia.org/wiki/Completely_Fair_Scheduler
Comparison of BFS vs CFS: http://www.cs.unm.edu/~eschulte/data/bfs-v-cfs_groves-knockel-schulte.pdf
Conclusion
The results indicate that CFS outperformed BFS with minimizing turnaround time but that BFS
outperformed CFS for minimizing latency. This indicates that BFS is better for interactive tasks
that block on I/O or user input and that CFS is better for batch processing that is CPU bound.
Click to expand...
Click to collapse
can i use this kernel along with the desire camera app?
britoso said:
Finally a thread!
been using your kernels for some time now, good work!
Click to expand...
Click to collapse
Had my dog press the enter key to prevent me from chickening out.
jblazea50 said:
can i use this kernel along with the desire camera app?
Click to expand...
Click to collapse
I haven't tested it so I don't know if it needs something from the kernel to work.
@intersectRaven - in the http://forum.xda-developers.com/showthread.php?p=6003800#post6003800Audio Mod thread rotohammer incorporated settings that increased both the bluetooth and in-call/earpiece volume. is your audio fix for a headset/bluetooth headset and/or does it incorporate higher values for in-call volume as well? thanks!
cortez.i said:
@intersectRaven - in the http://forum.xda-developers.com/showthread.php?p=6003800#post6003800Audio Mod thread rotohammer incorporated settings that increased both the bluetooth and in-call/earpiece volume. is your audio fix for a headset/bluetooth headset and/or does it incorporate higher values for in-call volume as well? thanks!
Click to expand...
Click to collapse
Hmmm...thanks for pointing that out. I'll probably release a new version later which will have this. (loading my Nexus Compilation Environment VM now...)
*Edit: I recompiled with the .min and .max settings he specified but reading further back it seems he changed some other things so I can't be sure if just this will provide the volume increase desired.
cortez.i said:
@intersectRaven - in the http://forum.xda-developers.com/showthread.php?p=6003800#post6003800Audio Mod thread rotohammer incorporated settings that increased both the bluetooth and in-call/earpiece volume. is your audio fix for a headset/bluetooth headset and/or does it incorporate higher values for in-call volume as well? thanks!
Click to expand...
Click to collapse
Hmmm...thanks for pointing that out. I'll probably release a new version later which will have this. (loading my Nexus Compilation Environment VM now...)
*Edit: I recompiled with the .min and .max settings he specified but reading further back it seems he changed some other things so I can't be sure if just this will provide the volume increase desired.
intersectRaven said:
I haven't tested it so I don't know if it needs something from the kernel to work.
Click to expand...
Click to collapse
It works. I thought you incorporated the audio fix yesterday too!
britoso said:
It works. I thought you incorporated the audio fix yesterday too!
Click to expand...
Click to collapse
I just compiled one with higher settings based on rotohammer's research. I think I'll stick with the default ones in my previous version though so its okay to skip this latest one.
For those who wanted to try out the modified values:
http://www.mediafire.com/?dqynw1inh3y <= 2.6.32
http://www.mediafire.com/?mmjwxzjlmmw <= 2.6.33
I'm working on a mod that will allow us to change the min_vol and max_vol from a file. Kernel SOP dictates this not advised, but I don't have time to learn how to implement a procfs hook.
I also used the voltages specified by kmobs so there should be no difference with the voltages. .32 is from the android kernel source while .33 is from cyanogen's. .32 is the stable kernel while .33 is still in its experimental stage.
Thanks a lot I've been looking for something like this!
intersectRaven, any chance to release Overclock kernel ?
1267Mhz on the nexus one will be great. hahahaha
rheza02 said:
intersectRaven, any chance to release Overclock kernel ?
1267Mhz on the nexus one will be great. hahahaha
Click to expand...
Click to collapse
haha...I'll think about it...I don't have the courage to try an OCed version though so you'll have to test it yourself if ever!
intersectRaven said:
I just compiled one with higher settings based on rotohammer's research. I think I'll stick with the default ones in my previous version though so its okay to skip this latest one.
For those who wanted to try out the modified values:
http://www.mediafire.com/?dqynw1inh3y <= 2.6.32
http://www.mediafire.com/?mmjwxzjlmmw <= 2.6.33
Click to expand...
Click to collapse
i'm currently using MoDaCo Alpha 19, which reports using a 2.6.33.1 kernel. so i would use the 2.6.33 version, correct? just to confirm, are your volume values the same as used by rotohammer? also, where is the zImage stored on my device, that is if it's actually saved at all (yes, i am a newbie, lol). thanks!
cortez.i said:
i'm currently using MoDaCo Alpha 19, which reports using a 2.6.33.1 kernel. so i would use the 2.6.33 version, correct? just to confirm, are your volume values the same as used by rotohammer? also, where is the zImage stored on my device, that is if it's actually saved at all (yes, i am a newbie, lol). thanks!
Click to expand...
Click to collapse
yes u would use the .33 if ever...the links u quoted does use rotohammer's values...and lastly, the zimage is flashed onto the image/kernel area in your device's boot partition...oh and no shame being a noob...we were all noobs once...
This kernel crash on my nexus one with desire camera when I try to see a video.
Anyone can confirm this?
www1 said:
This kernel crash on my nexus one with desire camera when I try to see a video.
Anyone can confirm this?
Click to expand...
Click to collapse
I just recorded a video with the desire camera app and played it back fine.

[KERNEL][ALL ROMS][SEP 14] Glitch for Flo/Deb - r574

These kernels are provided as-is without warranty. I'm not responsible for any problem you may encounter with your phone or tablet or if your cat suddenly dies.
Although, don't expect support even if I will eventually help because I love cats.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
​
Overview & features :
"With great power comes great responsibility". Don't go crazy with overclocking, only the best devices will be able to get 2.3 GHz stable or even bootable, though heat will be your main issue.
- Based on Google AOSP 3.4.0 and LineageOS's kernel sources for MSM devices
- CPU OC up to 2.3Ghz with OV/UV support / minimum frequency down to 81 MHz (configurable)
- L2/bus speed OC up to 1.49GHz / 4.8GBPS
- GPU OC up to 627 MHz with OV/UV support
- CPU governors : Faux's intellidemand, interactive, ondemand, smartmax, intelliactive, conservative, elementalx
- I/O schedulers: noop, deadline, cfq, fiops, sio, BFQ, zen
- Kernel based intelli-thermal driver by Faux123
- Kernel based msm hotplug driver by Fluxi
- tni.andro's battery life extender support
- Magnetic on/off setting
- USB fast charge support
- USB OTG charge hack support by flar2
- FauxSound support
- LineageOS's PCC color tweaking
- Fsync switch on/off
- Touchscreen patches by Showp1984
- Touchscreen wake/sleep gestures by flar2
- Kali Pwn Pad experimental support
- Optimized algorithms and libraries
- Various performance and power saving tweaks
- NTFS, NFS and exFAT support
- F2FS support up to all-F2FS with automatic ramdisk patching at flash time (reflash if you change partition format !)
- Kexec-hardboot support for Multirom compatibility
- Full package comes with Aroma installer to set core features at flash time (L2 OC level, CPU OC, etc.)
- Pure package will restore Aroma settings backup if present, or else will offer you a balanced preset for day to day usage
- Custom Synapse support with various settings and core features tweaks
- Compiled with Linaro 6.1.3 toolchain with various optimizations
- SELinux Permissive patch (Disabled by default, can be enabled in Aroma)
- Wifi firmware overrider to fix wifi on 4.4.3 & lower or on roms using old wifi firmware (up to r226 - Kitkat only)
CHANGELOGS IN #2 POST
You can tweak multiple options of this kernel with TricksterMod, FauxClock, Kernel Adiutor, Synapse(r500 and up, definitely recommended to get the most available options) or similar apps. (They are all available on the PlayStore)
Note to MultiROM users : don't use the kernel sharing feature. Flash the kernel on each rom instead. Also, it may take more time booting on secondary roms when using F2FS. Don't worry and wait for a bit ​
Downloads (all kernels are compatible with both flo and deb)
Grab your build from here :
Glitch kernel r574 download - For AOSP 6.0.1/7.x.x and LineageOS 14.1​
Mirror + older builds : Mediafire​
FAQ :
What are the differences between "Full" and "Pure" builds ?
The "Full" builds are using Aroma Installer so you can tweak various options at flash time. At the end of the process, a file containing your settings will be created (/sdcard/glitch-settings.conf). The "full" builds are also able to restore your settings from Aroma after a rom flash or wipe for example.
On the other hand, "Pure" builds aren't coming with Aroma and will try to restore your settings from your SDcard, or use a default profile if none is found. Both Full and Pure builds are coming with a custom Synapse support to let you tweak all the core options on the fly once booted.
If you flash a "Pure" build without a profile, the default preset will be applied. It's been tweaked for a good balance between performance, power consumption, stability and functionality for day to day usage. The default settings applied are as follow :
- 1.7GHz max CPU freq (from 1.5GHz stock) / 1GHz max CPU freq when the screen is off / "Balanced" L2 OC
- msm_hotplug driver in place of msm_mpdecision
- 450MHz max GPU freq (inline with other Snapdragon 600 devices - from 400MHz stock)
- Safe CPU and GPU undervolting for lower heat and power consumption
- Deadline I/O sched / Interactive CPU governor
- Doubletap to wake and fastcharge enabled (Doubletap to wake will slowly drain power during suspend, so disable it if not used)
- Everything else is kept stock
What do I have to do to use F2FS on one (or more) of my partitions ?
First, BACKUP your data if needed, especially if you're planning to use F2FS on DATA partition, as changing filesystem will wipe the partition. Change partition formats as needed in your recovery. It is NOT recommended to convert system partition as F2FS as it'll be slower than EXT4 to begin with (as the partition is mostly read only) and will alter compatibility with many roms (especially CM/LineageOS based). The last thing to do is to flash any Glitch kernel with a revision number past r150. You can restore your settings from SDcard if any, the install process will detect the partitions and modify the ramdisk accordingly so you can finally boot and use your fresh FS.
What L2/cache OC setting should I use ?
This setting will overclock bus speed and RAM so it's a bit delicate to tweak, yet it can give a nice "free" global performance boost. A simple test to check for stability is to run the camera app 3 or 4 times in a row while waiting for 10 seconds between each launch. If your device freezes, it's unstable ! It's also the only setting you can't change on the fly once booted, either from Synapse or sysfs, and requiring a reflash (using Aroma or changing the value in /sdcard/glitch-settings.conf).
Let me give you some details about the available settings so you can choose wisely :
Stock (1.13GHz-4.26GBps) is the regular, out of the box, non OC setting.
Improved (1.19GHz-4.26GBps) is the same as "ElementalX" setting in Flar2's kernel.
Balanced (1.22GHz-4.66GBps) is the same as "Ultra" setting in Flar2's kernel.
Fast (1.35GHz-4.66GBps) is a nice jump over "Balanced", yet stable for most devices. A kind of sweet spot.
Extreme (1.43GHz-4.80GBps) is were most users will start to get issues. Provides a great boost if stable.
Glitchy (1.49GHz-4.80GBps) pushes your hardware to the limits. Will be unstable for most devices.​
Thanks to everyone helping me to debug and find new useful things to integrate !
Without all of you, this kernel wouldn't be !​
XDA:DevDB Information
Glitch kernel for Flo, Kernel for the Nexus 7 (2013)
Contributors
Tk-Glitch, Google, animania260, CyanogenMod, TeamDouche, flar2, Faux123, franciscofranco, Showp1984, Team-Hydra, sixstringsg, Poondog, ZeroInfinity, Fluxi, arter97, neobuddy89, alesaiko, 228aye, AndreiLux, amarullz ,followmsi, and all my community
Source Code: https://github.com/Tk-Glitch/Flo_AOSP
Kernel Special Features: CPU OC/UV 2.3 GHz, GPU OC/UV 627MHz, FauxSound, S2W/S2S/DT2W, Bus speed OC
Version Information
Status: Stable
Created 2013-09-19
Last Updated 2017-09-13
logs
Git commits for nerdz & lolcats​
Latest release's changelog with words for humans :
14/09/2017 - r574 :
- Synced with latest LineageOS 14.1;
- Updated toolchain to Linaro GCC 7.1.1-2017.08;
- Added touchscreen-calibration fix patch by parrotgeek1;
Previous changes below :
17/07/2017 - r572 :
- Synced with latest LineageOS 14.1;
11/07/2017 - r571 :
- Synced with latest LineageOS 14.1;
29/06/2017 - r570 :
- Synced with latest LineageOS 14.1;
- Updated toolchain to Linaro GCC 7.1.1-2017.05.
03/06/2017 - r566 :
- Synced with latest LineageOS 14.1;
- Changed the behaviour of the permissive/not permissive switch to either force permissive or keep rom default (instead of forcing enforcing before) to prevent issues with some implementations;
- Added a service that restarts GMS (Google Mobile Services) post boot to fix memory leak/battery drain linked to them - Curently working in permissive mode only (like init.d and some advanced Synapse settings);
- Updated toolchain to Linaro GCC 6.3.1-2017.05.
07/05/2017 - r565 :
- Synced with latest LineageOS 14.1;
- Added a simple check for the MPDecision service starting mechanism used by your rom : If it's using the same trigger as LineageOS (init.flo.power.rc), you'll be able to enable/disable the service at will after boot. If it's using a different trigger, the binary will be nuked the old way (renamed to mpdecision_bck) if you're using the in-kernel msm_hotplug driver (effectively preventing you to play with it after boot). It's not a solution that pleases me, but it will fix cases of both hotplug drivers loaded at the same time on non-LOS-based roms, and that's all that counts for now.
14/04/2017 - r564 :
- Synced with latest LineageOS 14.1;
- Corrected HZ reference in touchscreen driver.
30/03/2017 - r563 :
- Fix potential touchscreen inconsistencies on some panel revisions
- Fix gesture switch (S2S/S2W/timeout)
27/03/2017 - r561 :
- Synced with latest LineageOS 14.1;
- Backported high-resolution support for sched-clock;
- Fixed CPU detection on subsystem_restart;
- Make rpm clocks sleeping clocks;
- Pushed updates from franco kernel regarding GPU, CPU freq and video;
- Added Zen I/O scheduler (pretty nice sched to say the least);
- Enabled I/O is busy flag for msm_hotplug driver by default (boosts CPU freq during heavy I/O load -> big smoothness gains in many apps and games);
- Added compiler fixes and optimizations from alesaiko (breakfast kernel);
- Moved to latest Linaro GCC 6.3.1 compiler (as the changes above fixed high power consumption issues on GCC5+);
- Consolidated Synapse support. The path of the generated config file is now /data/synapse instead of ramdisk to keep it safe during rom upgrades and reboots. If you get a "No UCI support" message on first Synapse launch, just kill the app and relaunch it. It'll not happen again after that unless you wipe data or I'm forcing a regen in a future update.
- Fixed init.d injection not using the correct path for busybox since a few releases and updated the execution process to N standards;
- Changed the way we get rid of mpdecision to prevent the service from starting in the init process instead of renaming the binary. This enables the possibility to enable or disable mpdecision on the fly after boot, even if using msm_hotplug as default hotplug driver.
- Fixed missing options in Synapse;
- Added various smaller performance patches and optimizations as well as a few more variables to play with for nerdz and lolcats (see github commits);
- Tweaked debugging config;
12/03/2017 - r544 :
- Sync with latest LineageOS 14.1
- Disabled backlight dimmer by default - Added a note to Aroma installer about potential issues with some panel revisions
23/12/2016 - r543 :
- Sync with latest CM14.1
18/12/2016 - r542 :
- Enable RPFILTER (CM14.1 tethering fix)
05/12/2016 - r541 :
- SElinux switch now works on boot without needing root access. As a result, also removed related post-boot script hooks
- Added prebuilt config file for Synapse for faster launch and fix possible error on first launch (clear Synapse data if you get issues)
04/12/2016 - r540 :
Due to some of the changes in this build, restoring settings from sdcard backup (by flashing Pure Edition or restoring through Aroma) may lead to different settings being applied depending on what you set before. It is strongly suggested to use the Full installation at least once to update your settings or delete glitch-settings.conf on the root of your sdcard before flash to use the default preset.
- Post CM14.1 merge cleanup pass. It was definitely needed ! Including, but not limited to :
- Removed Lazyplug and Intelliplug hotplug drivers (due to conflicts leading to performance issues)
- Removed Dynamic Fsync / Added switch to disable Fsync (after corrupting ~15 installations with DynFsync, I don't feel like it's worth the slight I/O perf boost)
- Replaced Showp1984's DT2W by flar2's S2W/S2S/DT2W (the touchscreen issues I faced with it aren't reproducible anymore)
- Removed LZ4 and use XZ compression instead
- Removed WQ_POWER_EFFICIENT (couldn't see a measurable gain with it enabled)
- Removed ROW ioshed
- Rollback'd to older Intellidemand governor​- Reworked settings application and restoration system to work with CM14.1/without SuperSU and load it early during boot by init hooking (CM14.1 PCC livedisplay related race condition "fix" included). Note : MultiROM users, you may want to disable MultiROM menu if you have it enabled to further reduce the chances to trigger the issue (completely fixed it on my side). Feel free to report your findings on the matter.
- Added flar2's ElementalX governor
- Updated default profile (the one you get while flashing Pure package or using restoration option in Aroma without sdcard backup)
- Updated thermal profiles
- Updated available options in Aroma
- Updated busybox to 1.25.1 YDS and moved from /sbin to the more convenient and standard /system/xbin
- Updated Selinux switches to work with more roms (now working on CM14.1)
- Moved Synapse files from /data/synapse to /res/synapse in ramdisk
- Updated Synapse presets
- Updated Synapse settings (Aroma installer will give more gestures-related options though, at least for now)
29/11/2016 - r534 :
This kernel will only work with AOSP 7.x and latest CyanogenMod 14.1 based roms. If you get incorrect colors and slow UI, rollback to r533 CM.
- Rebased using CM14.1 tree
- Updated color controls to mimic CM's PCC implementation (Thanks @flar2)
07/11/2016 - r533 :
- Added SDCardFS support
- Fix for CVE-2016-3903
- Fix for CVE-2016-3934
- Fix for CVE-2016-7117
- Added LazyPlug switch and settings to Synapse (hotplug tab)
- Added DT2W switch to Synapse (misc tab)
- Fix GPU voltage range formatting in Synapse
- Fixes regarding power efficiency
- Contextual fixes and speedups
- Now building CM variant of the Nougat kernel too. AICP is the first N rom on this device to require a CM compatible kernel.
14/09/2016 - r530 :
- Modified rom injection/flash time mods logic to be more robust and universal. Fixes inconsistent boot or even bootlooping on hybrid F2FS roms like CyanogenMod or PureNexus THIS CHANGE MAY FORCE YOU TO REFLASH YOUR ROM TO BE ABLE TO BOOT (even on a non-hybrid rom - no wipe required)
- Fixed settings not applying after setting them through Aroma/glitch-settings.conf
- Security patch to avoid invalid access to ashmem area
- Security patch for vulnerability CVE-2016-2059
- Removed deprecated binary injection code
- Default thermal presets calibrated for better efficiency and performance (they were too aggressive in r520)
- Little naming change for the builds. Full is still "Full", but "Restore" is now "Pure". Pure edition is now fully standalone and doesn't require a previously generated profile from Full edition (but will gladly restore it as before if found during install). It can be fully tweaked through config file and/or Synapse like Full edition.
- Nougat build "Full edition" now has a Nougat themed splash screen for Aroma
- Synapse presets are now working. Make sure to press apply when Synapse comes back if you want to keep it ! (Make sure to clear Synapse data after first boot to force a regeneration !)
- Small things you won't notice
24/08/2016 - r520 :
- Rebase from latest AOSP sources
- Synapse support with many more features and personnalization available than ever before ! Aroma settings are a joke compared to what you'll have in Synapse. Don't flash UKM on top by the way, and make sure to clear Synapse data if you've flashed one of the previews. Even more to come soon.
- Updated Neobuddy89's msm_limiter driver to latest from Nexus 6
- Updated Neobuddy89's state_notifier driver to latest from Nexus 6
- Moved to Faux123's Intelli-thermal driver
- Added some memutils optimizations and more for performance
- Updated Xbox One gamepad driver
- Removed loads of dead code and buggy merges
- Switched to Linaro 4.9.4 toolchain - After weeks of testing, my tab runs cooler, stabler, and longer than with 5.x for an invisible performance difference. Worth it !
10/08/2016 - Preview r516 is available here. More options available in Synapse which is now also enabled with the "full" build, merged android-6.0.1_r0.105, and various other tweaks for speed and power savings. Full changelog here.
04/08/2016 - A preview (r513) is available here. Synapse part still needs some work. Notably, some hotplug drivers options are missing and you can't apply presets. The kernel itself should be stable enough for day to day usage.
12/07/2016 - r499 :
- Fix for glitch settings not applying if the rom doesn't use the init.trace.rc file (Dirty Unicorns is one of them)
- Sync fstab with latest cm13 (may fix usb otg on cm13 based roms in some specific configurations)
11/07/2016 - r478 r498 :
- Synced source up to android-6.0.1_r0.98 changes (latest)
- Getting ready for rebase and Synapse-compatible release
- Removed deprecated libs from r478 installer (fixes setperm errors on some custom/recent roms)
- Fixed CM compatibility
10/12/2015 - r412 :
- Merged with android-6.0.1_r0.1 changes
- PowerHAL patch to fully disable touchboost calls when Qualcomm MPdecision isn't used. This gets rid of the touchboost log spam and (small) overhead.
- Updated F2FS
- Installer scripts fixes and cleanups
- Added back CM build - untested
02/12/2015 - r410 :
- Updated base to linux 3.4.110
- Merged with android-6.0.0_r0.1 changes
- Added Neobuddy89's MSM Limiter driver, enabling max/min/suspend frequencies tweaking on the fly. No more need to reflash for that (/sys/kernel/msm_limiter/ for who's interested). Also added his state notifier driver for further tweaking.
- Removed MSM Sleeper as it's covered by MSM Limiter already
- Changed how settings are applied (moved from init.d script to service) to prevent permission denied issues (Thx Flar2). Due to changes to the way your settings are handled, it's recommended to make a full installation. Settings aren't retrocompatible with previous Glitch kernels !
- Performance and stability improvements by removing coresight from Adreno drivers and better CPU management/scaling through MSM Limiter
- Aroma slight changes to reflect internal changes (note : CPU uV is now applied for both 384MHz step and lower ones)
15/09/2015 - r361 :
- Fixed no mobile network issue on DEB
- Disabled unnecessary debugging
13/09/2015 - r360 :
- Merged with android-5.1.1_r0.17 changes
- Added Lazyplug hotplug driver by Arter97 (you may need to make a full installation if you want to switch to this driver)
- Updated F2FS
- Updated BFQ to v7r8
- Added experimental Nvidia relaxed power savings
- More fixes and various optimizations regarding performance and efficiency
09/09/2015 - r353 :
Note : CM related issues some are encountering aren't adressed with this update. CM team is breaking more and more stuff while using AOSP bases for the kernel and I won't make a CAF based version again. The updated toolchain and added fixes in this release may or may not help, but I won't provide support for CM related issues anymore. Sorry for the inconvenience.
- Fixed SELinux switches (You'll need to use the restore function in full package or just the restore package to switch between permissive and enforcing modes. Enabling it in glitch-settings.conf isn't enough for it to work.)
- Disabled Android Logger by default for less overhead
- Updated toolchain to Linaro GCC 5.2.0 with LTO support
- Tiny fixes
02/07/2015 - r350 :
- Merged with android-5.1.1_r0.13 changes
- Fixed missing governors from previous release
- Added native support for Xbox One controller from Linux 3.17
- Fixed a potential instability case in idle state
- Updated base to linux 3.4.108
- Under the hood fixes
- CM and AOSP kernels are now sharing the exact same base for better stability and maintenance
08/05/2015 - Hotfix - r344 :
- Rolled back various GPU driver patches to fix some Chrome scrolling lockups and possible RR linked to the underlying bug linked to them
- Send enforcing=0 to kernel command line if you're using the permissive ramdisk mode (may fix boot on some non-standard roms - AICP still not booting for me though.. If you know why I'm all ears)
- Modify fstab.flo file in ramdisk even when using CM kernel (enables some non-standard CAF based roms with no "multi-mount fstab" support to boot - it mustn't exist, but better safe than sorry)
08/05/2015 - r343 :
- Merged with android-5.1.1_r0.10 changes
- Removed UKSM
- Disabled KSM
- Removed transparent compression support
- Replaced Flar2's S2W/DT2W by showp1984's DT2W
- Various F2FS changes from arter97 and Jaegeuk Kim
- Various backported drivers from arter97
- Updated Intelli-Plug
- Cleaned up base and bumped back to latest 3.4.y (3.4.107 atm)
- Enabled back kernel mode NEON
- Removed PIE bypass patch from Aroma
- Added Motorola's Qualcomm optimized memutils
- Added BFQ v7r7 ioshed
- Updated Intelliactive governor
- Fstab patching changes to fix boot on some non-standard roms
- Updated Random
- Updated toolchain to Linaro GCC 5.1.0 with LTO support
- Added LTO optimizations
19/04/2015 - r330 :
After breaking my partitions while attempting to improve F2FS mounting time, I was forced to format everything. After my backup restoration and system reinstallation, r327 F2FS implementation is now booting faster than EXT4 on my tab (with mounting times of ~5sec versus 30+ before). So I've then decided to revert the planned F2FS changes for r330 (which made it 1sec faster before formatting, but much slower after) as it didn't make sense. If F2FS mounting time is bothering you, fully formatting your partitions and restoring your data will give you a nice performance reward in return.
- Added flush_merge to F2FS mount options for faster flushing
- Added "transparent compression" support (CM sync)
- Added back optimized ARM RWSEM algorithm
- Enabled back unaligned memory access
- Switched to SIO ioshed (from ROW) at boot time as well as others small tweaks for possible further boot time improvements and smaller file size
16/04/2015 - r327 :
- Merged with android-5.1.0_r0.10 changes
- Updated F2FS implementation using Motorola's sources
- Cleaned up permissive ramdisk patches (fixed related SODs with it enabled)
- Introducing "restore" builds. You can now update your Glitch setup without Aroma using these builds. Your settings will be restored from the SDcard backup made by a previous Glitch installation, so if you don't have a "glitch-settings.conf" file in the root of your SDcard, please use a full build first to generate it ! The "full" builds are using Aroma as before.
- Updated toolchain to Cortex A15 optimized Linaro GCC 4.9.3-2015.03
07/03/2015 - r320 :
THIS UPDATE WILL NEED YOU TO REINSTALL YOUR ROM AND TO MAKE A FULL INSTALLATION OF THE KERNEL IF YOU'RE COMING FROM A PREVIOUS GLITCH RELEASE
- Updated F2FS implementation and bumped to latest
- Various scheduler optimizations - Better hardware use means potentially lower max OC !
- Improved boot times (At least with EXT4. F2FS mounting time feels a bit longer with the updated F2FS implementation)
- Reverted Slimbus OC as some users got issues with it
- Removed some ramdisk mods interfering with permissions
- F2FS/EXT4 detection script rewrite to preserve rom's fstab structure
- Added another permissive switch to disable SELinux enforcing (it will be enabled if you tick the permissive patch in aroma)
- Removed wifi patch from Aroma as it's now useless with lollipop
- Added some security patches from CM source
- CM kernel rebased on Glitch AOSP (again) - Looks good after a few days of intensive use
- A few little glitchy tweaks
- Updated toolchain to Cortex A15 optimized Linaro GCC 4.9.3-2015.02
16/01/2015 - r307 :
- Disable wake gestures by default
- Fix for a little color tweaking bug
- Updated CAF variant for CM12 support & sync with Glitch AOSP r307
Note : r307-CM is NOT compatible with CM11. It must be used with CM12 only.
12/12/2014 - r306 :
- Added vmalloc setting to command line to fix some video playback issues. Thanks to @szale9001 for pointing this out !
16/11/2014 - r303 :
- Added Chainfire's partial root ramdisk patch by default
- Added cernekee's PIE patch to Aroma (allows third party native executables to run, lowering security. Fixes various apps)
- Added SELinux permissive + sepolicy ramdisk patch to Aroma (enables full root access but lowers security. Fixes various apps)
15/11/2014 - r300 :
- Updated AOSP kernel with lollipop-release - BREAKS COMPATIBILITY WITH 4.4.x due to GPU driver changes !
- Removed interactive GPU governor
- Merged GPU patches from codeaurora & franciscofranco for better responsiveness and battery life
- Cleanups
26/09/2014 - r226-disabledAVS :
- r226 variant with disabled AVS for users with recurrent instability issues. Higher power consumption than standard build when used without uV.
Follow up to this post : http://forum.xda-developers.com/showpost.php?p=55566837&postcount=1943
22/09/2014 - r226 :
- Added experimental support for Kali Pwn Pad (as it was requested by some - Thanks for the list Flar2 )
- Disabled compaction (a little higher RAM consumption for higher performances - Doesn't seem to affect multi-tasking in a negative way)
- Disabled MSM hardware adaptive voltage scaling (should fix the last remnants of SoDs/RR happening for some even on other kernels - May lead to higher power consumption) I will make a test build with it disabled for who wants to try in the next days
- Updated Faux Sound to 3.6
- Enabled more TCP congestion-avoidance algorithms
- Enabled NFS support
- Moved exfat to built-in instead of module
- Added black magic
17/09/2014 - r223 :
- Better hotplug driver settings in 99glitchsetup script / Fix Qualcomm MPDEC activation
- Lowered "Glitchy" L2/bus settings to make it usable by more users
- Enabled various compiler optimizations (like some GCC graphite optimizations)
- Updated toolchain to Cortex-A15 optimized Linaro 4.9.2 2014.09
- Echo touch firmware version to logfile (/data/local/tmp/glitch-kernel.log)
10/09/2014 - r220 :
AOSP kernel only (CAF kernel will follow as soon as possible) :
- Rebase using latest Google source (fixing various bugs like SoD, random shutdown, slowdowns etc.) and staying on 3.4.0 base for now to prevent issues til I'm able to fix them all with latest Linux upstream
- Aroma Installer rework for less pages on fresh installation mode, similar to Flar2's presentation
- Added new options to Aroma installer
- Updated Flar2's S2W/DT2W system, enabling gesture support
- Replaced Showp1984's MPDecision by Fluxi's MSM Hotplug driver - new default
- Updated Faux123's Intelliplug hotplug driver as well as intellidemand & Intelliactive governors
- Updated/fixed Smartmax and Smartmax EPS (extreme power saving) governors
- Updated FauxSound
- Updated Flar2's msm_sleeper
- Added a backlight dimmer function
- Cleaned up/removed a vast amount of old patches
- Added release number to internal kernel naming so you know what version you're on
- Added a wlan firmware override setting in Aroma. This is basically the same as using 4.4.4 PRIMAtor to enable 4.4.3 or lower support or to fix wifi on a few roms that are using older wifi blobs
- Slight tweaking here and there
- Removed kernel-based NEON support - Needs more testing
- Switched to LZ4 kernel compression - Higher kernel size but faster boot times
- Updated toolchain to Cortex-A15 optimized Linaro 4.9.2 2014.08
05/07/2014 - r151 :
AOSP kernel only :
- Base update from Linux 3.4.86 to 3.4.96
- Removed some unnecessary Aroma pages for faster navigation
- Removed Qualcomm-Optimized Dalvik/Bionic from Aroma to prevent users from softbricks when used on incompatible ROM
- Added F2FS support
- Added F2FS partition detection script to modify ramdisk accordingly at flash time. You will need to launch Aroma installer each time you change FS on supported partitions (DATA, CACHE & SYSTEM) to refresh the ramdisk configuration (you can restore your glitch settings to do that btw, no need to clean install). You can use all of them as F2FS, or just one, you decide.
- Enabled Intelliactive governor
- Added CTCaer's patch to restore forced TS firmware update sysfs
05/06/2014 - r147 :
AOSP kernel only :
- Merged with 4.4.3
- Base update from Linux 3.4.82 to 3.4.86
- Switch to Cortex-A15 optimized Linaro 4.9.1 toolchain
25/02/2014 - r142 :
- Base update from Linux 3.4.79 to 3.4.82
- Added 81 MHz CPU frequency
- Updated ondemand governor
- Switch to Cortex-A15 optimized Linaro 4.8.3 toolchain
- Disable input-boost by default in Aroma
07/02/2014 - r140 :
- Update to Linux 3.4.79
- Switch to XZ compression
- Add kernel mode NEON support as well as NEON accelerated AES & XOR implementations
- Fix CPU load miscalculation
- jbd2 and ext4 optimizations
- Add max screen off frequency support - Thanks to Flar2 (if disabled in Aroma, changing frequency in apps won't have any effect)
- Add UKSM 0.1.2.2 support
- Add dynamic management of dirty page writebacks
- Enable Wiimote HID support
- Enable USB printer support
- Bugfixes
Aroma installer overhaul :
- Reworked installation process to be clearer and more customizable
- Added an automatic backup of your settings to the root of your internal SDcard
- Added a restoration mode to get your settings from internal SDcard backup back on any rom (cross-compatible with Glitch kernel variants)
- Renamed /system/etc/settings.conf to glitch-settings.conf to make it more obviously glitchy
- Removed the need to set CPU OC, L2/cache OC and auto-uV again when keeping previous settings (now reading it from your settings at flash time. Note : editing this part in /system/etc/glitch-settings.conf requires a reflash using the "already glitched" option)
- Added Qualcomm optimized Dalvik/Bionic libraries into the installer (bionic only on CM variant) so you can install/restore them with the kernel
- Added I/O scheduler, CPU governor, read-ahead buffer size, fast charge, max screen off frequency and maximum multi-core power savings to available settings
- Fixed how the min CPU clock is applied to make it more robust and work better with governors
- Fixed how the min CPU freq uV is applied to make it work independently of the min freq (by subtracting the uV amount to the original voltage instead of forcing plain values) - Also, make it capable of setting uV for all freqs for future use.
- Changed the auto-uV menu to reflect the internal changes
- Fixed some permissions issues
- Added hotplug driver check so it's possible to restore it as well from settings without interference
- Change theme
25/01/2014 - r132 :
Performance and stability improvements :
- Enhanced memory management
- Lower CPU overhead
- Improved I/O speed in many cases
- Improved ondemand governor behavior
- Fix a memory leak
- Fix some msm_bus bugs
- Fix a false error report in Aroma log
CM kernel only :
- Fixed the "black caterpillar" bug
- Improved GPU performance consistency
23/01/2014 - r130 :
- Faux123's LCD color control driver updated to Flo version (thanks to him to make it opensource), adding gamma control. (You'll need FauxClock to tweak it - color is still available from TricksterMod)
- Some GPU driver related bugfixes
- Implemented LoUIS API for cache maintenance operations
- Update base to Linux 3.4.77
- Revert some CAF updates (fixes some L2 corruption that could lead to random reboots / black screens)
- Battery life improvements
- Some cleaning
CM kernel only :
- Fixed color control
- Fixed random heavy GPU performance drop
- Changed memory allocation to be in line with CM
- Changed naming in Aroma to differentiate from "pure" AOSP
Older changelogs are available here
Looks like a nice kernel that will really show what this device can do
Sent from my Nexus 4 using Tapatalk 4
Thanks.
That's what I'm trying to make. And I *think* (may be wrong though) I'm the only one yet using a fully working GPU OC implementation on flo kernel. It's an adaptation of Galaxy S IV's (i9505) GPU OC code from Team Hydra.
It seems 627 MHz is around the max possible with stock voltage, probably even 600 MHz for many. I'll see what it can do with a bit more juice.
Other things to do : add more frequency steps for the CPU, lock the default freq, and make the L2/bus speed configurable.
After that I think we'll be able to push the thing to the limits if we want to.
Thanks for your hard work I'm going to try it on pacman ROM I'll let you know how it goes
Sent from my Nexus 7 using XDA Premium 4 mobile app
Thank you, I'm curious to know what results you'll get
Awesome so far .WOW
Sent from my Nexus 7 using XDA Premium 4 mobile app
---------- Post added at 12:20 AM ---------- Previous post was at 12:18 AM ----------
I wanna show u my settings, I use trickster, so sound and faux kernel app to get the results I need was going to show you pictures but all the sudden XDA premium has no picture button I'm a little lost their. Touch responses phenomenal and just like faux kernel the sound is this did really well I can finally listened stock sound sucks on this product even know what has supposedly way better speakers, thanks to people like you I can actually hear the videos I watch without headphones now. Thank you very much I've been using it for about 5 minutes swimming around on everything and everything smooth as hell
Sent from my Nexus 7 using XDA Premium 4 mobile app
---------- Post added at 12:21 AM ---------- Previous post was at 12:20 AM ----------
Add me on gtalk. [email protected]
Sent from my Nexus 7 using XDA Premium 4 mobile app
---------- Post added at 12:24 AM ---------- Previous post was at 12:21 AM ----------
I'm kinda pissed,paid XDA apk all of a sudden has no way to show pictures. Argggg
Sent from my Nexus 7 using XDA Premium 4 mobile app
The problem exists on the free app as well ^^
Try scrolling up and down away from the images and back on them, it'll eventually show up at some point.
Thanks for your work. I'll give this kernel a try.
Coming from N4 motley kernel I'll love to use init.d scripts to set up color "calibration", sleep states, etc. What do you think about implementing / documenting such features for your kernel?
Otherwise, let me see if I need something. Hm, what about USB OTG and ntfs/f2fs support?
USB OTG is working out of the box. NTFS/F2FS support isn't. I'll look into adding them =)
Your idea is nice, I'll think about it.
Thanks =)
Do you plan on adding Faux's color mod? I will give this kernel a shot and report back.
cyberprodigy said:
Do you plan on adding Faux's color mod? I will give this kernel a shot and report back.
Click to expand...
Click to collapse
When there will be some source, yeah why not =)
Tk-Glitch said:
When there will be some source, yeah why not =)
Click to expand...
Click to collapse
I am running the kernel right now. All I can say is "wow".
You did a fantastic job cherry-picking the best features from various kernels. I notice a slight increase in smoothness compared to Faux's kernel plus D2W and all the other great features you added so I think this may be my new main kernel.
I will use it over the next few days and report any issues I find and how the stability is. Thanks a lot for your work.
Edit: Also, I am running CleanROM and everything seems fine.
Thank you, so it may work with any rom then ! Good to know CM didn't break too much stuff leaving AOSP base.
sleep to wake, doubletap to wake disabled by default? don´t need it xD
need a fast stable kernel and especially want to disable fsynch. if u run a stable rom it justs takes useless power xD
i´m pretty new to the nexus7 like the most of us . is that kernel stable?
atm i´m using faux´s, also used franco. i dunno, but on franco´s i couldnt change gpu govenor and the 3dmark benchmark was about 3000points, stock is about 6000-7000. pretty strange.
i am a pretty minimalistic user, want best batterylife/performance ratio. only using psx, best rom for me
i think i´ll try that kernel
edit: what does "Snake Charmer" do?
edit2: read s2w stuff enabled by default, can it be disabled via trickster?
My N7 is running great with your kernel. Let's see what about perfomance and stability in two or three days. After checking and playing with trickster I miss a kind of dynamic fsync and a color calibration interface - compared to N4 m+ (motley) kernel.
Perhaps you can implement some upstream changes / patches directly from CAF or newer kernels.
It would be nice if you post some information about L2 speed hack, etc. So that everyone can see what this hacks do.
Which file are we supposed to use, they are all dated 20130919. I'm guessing the. 904.
airmaxx23 said:
Which file are we supposed to use, they are all dated 20130919. I'm guessing the. 904.
Click to expand...
Click to collapse
CM10.2-flo-Glitch-20130919.0904
2013 /09 /19/09:04
Year/Month/Day/time
dunno if latest point is time in this case when you compare it to upload date. but yes it seems to be latest. upload time and build date can be different, so i think it´s the time.
L-ViZ said:
CM10.2-flo-Glitch-20130919.0904
2013 /09 /19/09:04
Year/Month/Day/time
dunno if latest point is time in this case when you compare it to upload date. but yes it seems to be latest. upload time and build date can be different, so i think it´s the time.
Click to expand...
Click to collapse
Probably when it was compiled.
cyberprodigy said:
Probably when it was compiled.
Click to expand...
Click to collapse
Just a heads up for those who want to disable swipe2wake or doubletap2wake, you can turn them off with the Trickster app but I did not find a setting in the FauxClock app.

arter97 kernel for Galaxy S6

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
arter97 kernel for Galaxy S6 / S6 edge / Note 5 / S6 edge Plus​
/* Details */
Upgraded to the latest Linux 3.10
Latest Linaro LSK kernel fully merged
Based on the latest Galaxy S6 / Note 5 kernel sources
Fading LED by AndreiLux and other Note 4 developers
Proper, full support for f2fs & backported from latest stable Linux
CPU undervolt support with Synapse
Display color switcher implemented
- Original code from gokhanmoral's Siyah kernel for i9300
- Toggle by quadruply tapping the multitasking button
- This may not work on edge variants
Sound-control by AndreiLux offered for Galaxy S6
- Download soundcontrol zip file
- Control available at Synapse app
- You may encounter in-call audio issues with this
- Install the regular version if you don't need this
--- Performance & responsiveness improvements ---
UI lags fixed with binder patch
Full unaligned access enabled
Processor scheduler improvements from AndreiLux
Uses LZ4 with zswap
Dynamic fsync from faux123
Networking speed improvements
Random driver backported from mainline Linux
Westwood as default TCP network congestion control
Built with latest Linaro GCC toolchain with latest GNU linker
Entropy hook on storage removed
Default file-system mount option with noatime
ROW I/O scheduler added and set to default
Scheduler, workqueue, network drivers, file-system drivers, commits properly ported from mainline Linux and CodeAurora(Qualcomm)
Interactive CPU governor replaced with CodeAurora(Qualcomm)'s one
Reduced screen-on delay with boosted CPU cores on resume
--- Memory efficiency & management improvements ---
LowMemoryKiller source-code revamped
Various memory tweaks applied
Memory-management commits properly ported from mainline Linux and CodeAurora(Qualcomm)
--- Battery life improvements ---
Intelligently moves apps to LITTLE cores
Power-efficient workqueues from Linaro enabled
Interactive CPU governor patched for better battery life
NVIDIA's power-efficiency improvement commits applied
Power-managements commits properly ported from mainline Linux and CodeAurora(Qualcomm)
And many others... please read the changelog
/* Switch to f2fs */
As mentioned above, this kernel fully supports f2fs.
However, you are completely free to choose not to use f2fs.
You can selectively convert partitions to f2fs using TWRP provided in the downloads.
You should use the provided TWRP at all times after you switched to f2fs.
/* Disclaimer */
Your warranty is now void.
I am 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 kernel
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. Hard. A lot.
/* Supported devices */
--- Galaxy S6---
SM-G920F
SM-G920I
SM-G920S
SM-G920K
SM-G920L
SM-G920T
SM-G920W8
--- Galaxy S6 edge---
SM-G925F
SM-G925I
SM-G925S
SM-G925K
SM-G925L
SM-G925T
SM-G925W8
--- Galaxy Note 5 ---
SM-N920C
SM-N920I
SM-N920G
SM-N920S
SM-N920K
SM-N920L
SM-N920T
SM-N920W8
--- Galaxy S6 edge Plus ---
SM-G928F
SM-G928C
SM-G928I
SM-G928G
SM-G928S
SM-G928K
SM-G928L
SM-G928T
SM-G928W8
/* Warning */
Redistribution, modifying files used within this project's file or integrating with other projects are prohibited with no exceptions other than my projects.
Making mirrors, re-uploading to another servers are also prohibited with no exceptions.
/* Downloads and links */
I cannot test this kernel with TWRP.
Switching to the provided PhilZ Touch recovery is highly recommended for all users.
arter97.com
/* Thanks to */
AndreiLux
faux123
Linaro
MinL(xens0117)
hsk from Matcl
CodeAurora
/* Contact */
Email : [email protected]
Twitter : @arter97_dev
/* Known issues */
None
/* Installation */
1. Put the downloaded kernel on your internal storage
2. Enter ClockworkMod(or PhilZ) recovery
3. Flash kernel
XDA:DevDB Information
arter97 kernel for Galaxy S6, Kernel for the Samsung Galaxy S6
Contributors
arter97, AndreiLux
Source Code: https://bitbucket.org/arter97/android_kernel_samsung_exynos7420
Kernel Special Features:
Version Information
Status: Stable
Created 2015-08-03
Last Updated 2016-06-19
/* Changelog */
22.0 - EOL
Support for future firmwares are not guaranteed!
Fixed support for systemless SuperSU
Latest G920FXXU4DPGW sources merged
Linux 4.8 random drivers merged(12 times faster)
- Please remove Seeder if installed as it's completely unnecessary
TWRP rebuilt with latest f2fs-tools v1.7.0
I/O scheduler optimization for UFS(nr_requests)
Added support for Note 7(Grace UI) ROMs
- Please download the right kernel; it's in another directory
- Incomplete support. Few features might be broken as Samsung have not released the sources.
21.1 - EOL
Support for future firmwares are not guaranteed!
Added support for systemless SuperSU
ADB daemon replaced to stock ones
ADB switched to secure mode
TWRP rebuilt with stock adbd for better compatibility
Galaxy S6 flat - LDU correction disabled
21.0
Memory managements sources related to compression merged with Galaxy S7
Swappiness set to 190 for Galaxy S6
Reverted HMP scheduler commits that causes random kernel panic
Enabled HW accelerated SHA2, GHASH, AES_CCM, AES_NEON_BLK
Reverted cpuidle commits to improve performance
Recovery rebuilt to fix adb sideload, f2fs conversion
Fixed Synapse error for Galaxy Note 5, S6 edge Plus
Support added for Xbox game controller
20.0
Major memory leak fixed
Implemented new feature that moves background applications to LITTLE cores automatically to save power
- Default is set to move unimportant apps to 1 LITTLE core(cpu0)
- You can use Synapse to make it more aggressive - move all background apps(including apps like music player) to LITTLE cores(cpu0~3)
Applied upstream f2fs bug fixes
Revamped CPU governor to fix misc issues due to improper merges
ren_max_freq renamed to scaling_max_freq to fix apps like Kernel Aduitor
DVFS auto resetter implemented to workaround ROM's DVFS race-condition resulting in 1200 MHz clock stuck
Removed dynamic fsync for better reliability and memory efficiency
Re-applied previous Mali GPU commits (by AndreiLux)
- Fixes voltage control
- Adjusts throttling threshold
Merged latest memory management behaviors from Nexus 6P Android N and Galaxy S6 stock ROM
Latest Samsung kernel sources merged
Re-introduced sound-control by AndreiLux as a separate release for Galaxy S6
- You may encounter in-call audio issues with this
- Install the regular version if you don't need this
SysV IPC removed
LOAD_FREQ adjustment hack removed
Kernel tick clock changed from 100 Hz to 300 Hz for better performance
Memory management commits from Nexus 6P Android N merged
Few commits and hacks attempted to reduce resume time
Stand-by ARP and multicast packet filters enabled on Wi-Fi drivers (by AndreiLux)
Built with Linaro GCC 6.1
Binder replaced with CodeAurora sources used with Snapdragon 810
ADB updated
Support added for SM-G920T/W8
Support added for SM-G925T/W8
Support added for SM-N920C/I/G/S/K/L/T/W8
Support added for SM-G928F/C/I/G/S/K/L/T/W8
13.1
Updated to Linux 3.10.101
f2fs updated to Linux 4.7 merge window
Music studderings while screen-off fixed
DriveDroid support added
Synapse fixed
Few memory optimizations
TWRP recovery updated to 3.0.2-0
13.0
Updated to Linux 3.10.100
f2fs updated to Linux 4.6 merge window
Removed improper OOM operations resulting in lags
Merged some optimizations from Liquorix kernel
vnswap updated to Galaxy S7 kernel
Few arm64 optimizations added from upstream Linux kernel
Re-merged HMP scheduler updates from Linaro LSK kernel
Fixed OTG and MTP on TWRP recovery
12.0
Updated to Linux 3.10.98
Support for Android 6.0 added
Support for Android 5.1 dropped
- You will encounter boot issues if you're not properly on Marshmallow firmware
Switched to TWRP recovery
- Make sure to use SuperSU v2.68+ if you want to root your device
Switched to Linaro toolchain 5.3 with GNU linker 2.26
f2fs updated to Linux 4.5 merge window
Adaptive LMK disabled by default
SLUB memory allocator performance improved
Insecure ADB from Android N merged
- Make sure to disable USB debugging if you don't use that feature
zswap, zsmalloc(used with vnswap) merged from latest upstream Linux
Memory managements tweaked
interactive CPU governor tweaked for better responsiveness
Note 5 - used GPU configurations from the S6
11.0
Updated to Linux 3.10.94
Latest Note 5, S6 kernel sources merged
Latest ramdisk, dtb.img merged
Slow Wi-Fi turn-on issue fixed with memory tweaks
X (10.0)
https://en.wikipedia.org/wiki/Roman_numerals
Few possible binder errors fixed
Minor compiler optimizations done to binder
New linker used with compilation (hg-binutils 2.25.51.0.4)
10.0-beta2
Samsung framework's automatic application killer(SPCM) re-enabled
Adaptive LMK re-enabled
scaling_max_freq renamed to ren_max_freq
- Please use Synapse to change CPU max frequency
Core limit on screen-off removed
- Careful observation shows there's not much of a difference
Responsiveness and power consumption tweaks made to hotplugging driver
10.0-beta1
Stand-by ARP and multicast packet filters enabled on Wi-Fi drivers
- This may potentially help battery drain on Wi-Fi connected
CPU max frequency override blocked
Samsung framework's automatic application killer(SPCM) disabled
All A53 cores are now allowed to be turned on during screen-off
Few commits reverted to fix screen-on delay
Adaptive LMK disabled to improve multitasking and potentially increase battery life
Fixed an issue with bottom keys unusable when external output is connected
9.4
Updated to Linux 3.10.93
10.0-alpha discontinued after confirming zram's performance is worse than zswap+vnswap
10.0's display color switcher implemented
- Original code from gokhanmoral's Siyah kernel for i9300
- Toggle by quadruply tapping the multitasking button
- This may not work on edge variants
Added option to allow A57 cores to be turned on during screen-off
(Check the OP's reserved post for details)
Possible race-condition during boot fixed
Memory reclaiming function completely removed to fix performance degradation as time goes on
10.0-alpha3
9.3 changes merged
A new display's color switcher implemented
- Original code from gokhanmoral's Siyah kernel for i9300
- Toggle by quadruply tapping the multitasking button
9.3
Switched back to Samsung's CPU governor to fix performance weirdness
CPU governor patched to be more responsiveness
Boot time decreased
10.0-alpha2
9.2 changes merged
CPU frequency boosts on hotplugging to improve responsiveness
9.2
CPU governor downgraded to LA.BR.1.3.2 to improve performance
Kernel panics related to process reclaim fixed
10.0-alpha1
f2fs updated to Linux 4.4 merge window
Process reclaiming code from LG G4 added to LowMemoryKiller
Adaptive LMK disabled for better multitasking
zram and its dependencies updated to the mainline Linux
Replaced zswap+vnswap with zram
Swap size reduced from 1280MB to 1024MB
zram can be potentially faster than zswap with parallelized compression - max_comp_streams
If testing doesn't show improved memory managements, zram will be removed
This kernel is unstable and regular end-user should avoid it.
Try this only if you're brave and back-up before you proceed.
9.1
Kies, Smart-Switch issue fixed
Added proploader for customizing kernel parameters
9.0
Major performance degradation issue fixed
9.0-beta7
DT2W(Knock-On) removed for saving CPU cycles
FAST mode on vnswap disabled to fix random reboots(kernel panic)
CPU governor updated to LA.BF64.1.2.2_rb4.6
9.0-beta5
IRQ, CPU hotplug commits reverted to reduce screen-on delay
Hotplugging reconfigured to drastically reduce screen-on delay
Cortex-A53 errata 843419 fix re-enabled to fix invalid instructions
Possible no-deep-sleep issue fixed
9.0-beta4
"CPU cores boosted on screen-on request" reverted to fix screen-on delay
Exynos 7420 IPA and PMU changes applied to CodeAurora's CPU governor
9.0-beta3
Hotplugging properly disabled during screen-on for saving few CPU cycles
Only 2 A53 cores are allowed to be turned on during screen-off
- This significantly helps saving battery life during screen-off
more than just lowering CPU frequency
CPU cores boosted on screen-on request earlier than stock kernel by hundreds of milliseconds
for reduced screen-on delay
Interactive CPU governor replaced with CodeAurora(Qualcomm)'s one
- This version has many advancements compared to stock version
(Benchmark)
8.1
RCU, IRQ, topology merged with CodeAurora(Qualcomm)
ION: system heap allocation time reduced
Korean Wi-Fi firmware installation removed for S6, S6 edge variants
8.0
Updated to Linux 3.10.92
8.0-alpha2
Hundreds of file-system drivers, memory-management commits ported from CodeAurora(Qualcomm)
This kernel is unstable and regular end-user should avoid it.
Try this only if you're brave and back-up before you proceed.
8.0-alpha1
Scheduler, workqueue, network drivers, power-managements commits backported from mainline Linux and CodeAurora(Qualcomm)
for better performance, responsiveness and power consumption
(Thanks to XileForce)
This kernel is unstable and regular end-user should avoid it.
Try this only if you're brave and back-up before you proceed.
7.2
Bluetooth fixed for S6, S6 edge variants
7.1
Wi-Fi drivers updated for S6, S6 edge variants
Unnecessary blobs removed for S6, S6 edge variants
- Reinstalling ROM is recommended before installing 7.1 kernel
7.0
Updated to Linux 3.10.91
Graphics drivers updated
PhilZ Touch recovery updated
- Fixes USB storage unusable after first eject
- Fixes kernel, recovery, EFS backups
7.0-beta2
SELinux completely disabled
- This should greatly increase available memory, however might decrease stability as Touchwiz Android 5.1 is full of hardcoded SELinux stuffs
Dual-Sim model support dropped due to development inconsistencies
7.0-beta1
LowMemoryKiller minfree, vmpressure adjusted for better multitasking
Latest Note 5, S6 kernel sources merged
Latest ramdisk, dtb.img merged
Input booster issue fixed for S6, S6 edge variants
CONFIG_EXYNOS5_DYNAMIC_CPU_HOTPLUG_SLEEP_PREPARE set to 1 for better stand-by battery life
Support for G9208, G9200, G920FD, N9208, N9200, N920CD added (untested)
- Please read the 'Supported devices' section
- These variants are untested, please report if it's not working as intended
7.0-alpha2
LowMemoryKiller durp fixed
Kernel panic log shortened to prevent truncation
This kernel is unstable and regular end-user should avoid it.
Try this only if you're brave and back-up before you proceed.
7.0-alpha1
LowMemoryKiller replaced with CodeAurora(Qualcomm)'s version
LowMemoryKiller optimizations(via RBTREE) by Motorola merged
Adaptive LMK enabled
LMK values updated from Nexus 6
f2fs and other drivers updated to use new shrinker API
Automatic process-based memory reclaim method added and enabled
"Drop file-system caches on screen-off to reduce screen-on delay" reverted
This kernel is unstable and regular end-user should avoid it.
Try this only if you're brave and back-up before you proceed.
6.0
f2fs updated to Linux 4.3-rc4
ROW I/O Scheduler by Qualcomm added and set as the default
5.1
Updated to Linux 3.10.90
TCP Congestion Control set to westwood
N920G and G928G support added
5.0
Updated to Linux 3.10.88
Major memory managements changes for better responsiveness
- Reverted vfs_cache_pressure back to 100
- Dirty writeback adjusted(reduced)
- dirty_expire_centisecs and user_reserve_kbytes tweaked
- Drop file-system caches on screen-off to reduce screen-on delay
- S6 & S6 edge - LowMemoryKiller values tweaked
- Note 5 & S6 edge Plus - LowMemoryKiller values reverted back to stock
- Replaced FHA with DHA
- swap-on-disk disabled by default(/system/swapfile)
4.3
Power efficient workqueues enabled by default
Few optimizations to storage performance
Added option to revert back to stock memory managements
- This will give you even better responsiveness at the cost of vastly reduced multitasking performance and increased chance of background services malfunctioning
- Install use_stock_memory_managements.zip from the recovery to enable
- Remove /system/bin/lmktweak to disable
- This will only work on 4.3+ versions
- This is not enabled by default
4.2
Sound-control temporarily removed for fixing in-call volume
4.1
Potential performance degradation issue fixed
VPNCLIENT_SECURITY enabled
(Fixes Wi-Fi calling on T-Mobile)
4.0
G920FXXU2COH2 source drop merged (S6/S6 edge only)
- Wi-Fi drivers updated
- Sensor drivers updated
- Touch firmware updated
- Modem drivers updated
- Charger/battery drivers updated
G928F,T,W8 support added
Sound-control by AndreiLux added
Synapse loading fixed
Serious malfunction related to LowMemoryKiller issue fixed
Attempt made to fix T-Mobile Wi-Fi calling (Note 5/S6 edge Plus only, untested)
3.5
Boot issues with G925F, G925I fixed
Source codes related to charging has been reverted back to Galaxy S6 ones
(Should fix charging weirdness)
3.4
Reverted - NVIDIA power saving commits extended by AndreiLux
3.3
Attempted to fix durped 3.0 release #2
Accelerometer error fixed
MP3, AAC(M4A) playback error fixed
N920SKSU1AOH4 kernel sources merged
TCP Congestion Control set to bic
3.1
Attempted to fix durped 3.0 release
NVIDIA power saving commits extended by AndreiLux
3.0
Base changed to G928CXXU1AOGF (Galaxy S6 edge +)
- This introduces all sorts of internal improvements including performance, power consumption and compatibility for ROMs like back-to-n0t3 -
- Installing this will switch your ROM's Graphics drivers to the Note 5 ones! -
NVIDIA's power-efficiency improvement commits merged
Potential installation failure fixed
2.4
io_is_busy enabled for better responsiveness
Disabled unnecessary daemons
Fixed I/O scheduler settings
2.3
Updated to Linux 3.10.87
Revert and set overcommit_memory to 1 (Android default)
Renamed G920F, G925F release for G920I, G925I compatibility clarification
2.2
Added Note 5 firmware support
2.1
Fixed potential freezes and performance bottlenecks at the cost of higher app kills(lmk) in the background
2.0
Updated to Linux 3.10.86
G920I,S,K,L,T,W8 and G925F,I,S,K,L,T,W8 support added
(untested)
Exhaustive, periodic freeze fixed
Memory managements improvements
- overcommit_memory set to 0 (heuristic overcommit handling)
- vnswap size decreased back to stock (1536MB to 1280MB)
- vfs cache pressure set to 10000 for more memory reclaims
f2fs updated to Linux 4.2-rc6
Hotplugging scheduler improved by AndreiLux on screen-off
Erratum fixes removed - Exynos 7420 doesn't suffer from this
General installation durp fixed including TWRP
Ramdisk updated for maximum compatibility
HDCP protection disabled
Experimental Synapse support added
(untested, manual installation required)
1.0
Initial release
/* Customizing kernel */
You can install Synapse from the Play store to control voltage and other frequencies.
To control some core kernel parameters, create /sdcard/arter97 as a directory and do the followings
--- Enable Adaptive LMK ---
Enabling Adaptive LMK will increase responsiveness at the cost of reduced multitasking capabilities and battery life.
Create a text file with 1 letter "0" under /sdcard/arter97 named "adaptive_lmk" and reboot
--- Disable LED fade ---
If you have issues with other 3rd-party LED controlling apps, try disabling it.
Create a text file with 1 letter "0" under /sdcard/arter97 named "fade_led" and reboot
/* To kang or not to kang */
I prefer "open" to all stuffs, explicitly except for my personal kernels.
I've once used to use private Git repository for my kernels and just release the source-codes as a tarball,
which means that other developers who are interested in my kernel's changes would not get the specific changes they want while not violating XDA forum rules or GPL.
That was almost 3 years ago which by then, I was a newbie developer on XDA.
I was afraid other big developers merging all of my changes and I'll get buried down.
However, I've changed my mind and opened up my Git access to everyone after thinking my previous actions did not belongs to XDA's spirit.
That was a big move for myself of re-thinking what should be open.
Later down on the road as I gained more development skills, I've contributed into CyanogenMod and other's custom kernel and ROMs for fixing stuffs, introducing new concepts or improving performance.
During such process, there were quite a lot of occurrences where I was actually the first one to do those things.
For those who're familiar with "temasek ROM", you may know that after I became a contributor, temasek rose even more into the center of other AOSP ROMs' attention, as I was the first to introduce new exciting stuffs such as compiler changes or f2fs. And I quickly gained dozens of followers on my GitHub account.
And eventually, people *kang*ed my changes. Sometimes invalidating my authorship.
It surely is not a right thing to do, but I let it slide as it didn't matter that much. I believed that if my changes are good enough, it'd be better to end up with a larger user base rather than being a **** trying to hunt down every ROM developers who're doing it wrong.
Same story goes to my ROMs.
My real first popular ROM was back-to-n00t, which is a ported ROM from Galaxy S3 LTE to provide stable Touchwiz KitKat experience to the Galaxy S3 3G users.
I opened up everything to GitHub. And I even encouraged that other ROM developers to use my ROM as a base to work on their own ROM as I knew there are a lot of Touchwiz ROM cookers who're way better than me on modifying SystemUI or frameworks(via smali) BUT aren't too good on porting ROMs. I hoped that my ports can be a great base for others to work on their own modifications.
Now those spirits repeated on the Galaxy S6, I opened up everything about back-to-n0t3.
However, I do not do or believe those same things with the kernels.
There are far less kernel developers on XDA compared to ROM developers. ROMs are much more appealing for an "Android newbie" to go tweak. You can modify UI, enable some hidden settings and even port features from another devices.
So when ROMs gets copied off, users can easily distinguish if that was stolen or not.
Let’s say a well-known developer A ported S6 designs and features to the S4. Next day, less-known developer B uploads a ROM on XDA that claims to do the same thing. First thing that comes to the users’ mind would be ‘Is that guy a thief?’.
However, same thing cannot be said on the kernels as they work on a much lower level. You can’t distinguish individual custom kernels just by staring at your phone.
If a ROM developer choose to go use other’s custom kernel and integrate it into their ROM, it’s most likely that users won’t appreciate that custom kernel developer whose work powers that ROM. Let’s face it, not all users care about “Thanks to”, “Credits” sections, and let me tell you, those are the majority. Now some custom kernel developers might be OK with that. However, I’m not. Unlike most developers on XDA, I got fascinated to Android because it runs on Linux kernel. Modifying Linux kernel was the first thing I’ve done on my Android device, not modifying ROM. And I spent years and years on gaining information on Linux/Android kernels and tweaking, coding myself. While I don’t necessarily care users choosing to NOT use my kernel, I cannot stand that my kernel would be installed on one’s device which its owner don’t even know which kernel, which developer who made that kernel is. That is why I’m against with the idea of integrating custom kernels into custom ROMs. If you want your users to have a custom kernel, let them learn themselves what that kernel really is, what does it offers, and who developed it. “For the ease of flashing/installation” is not an excuse for me. Take yourself a few more minutes to download a kernel from the web, and a few more seconds to flash a secondary ZIP file from the recovery. Is that hard? Time-consuming? Absolutely not.
I hope everyone gets the idea why I'm sticking with the idea of "don't integrate my kernel into others".
Cheers.
Reserved 4
Reserved 5
Reserved 6
Stuff like this makes me want to root! -_-
Ohhhhhuuuu yes!!!! DT2W ohhhuuuuuuu yes!!!!!
No download link hmmm not working with twrp?
Is it for 5.0.2 or 5.1.1 or both firmware?....can i flash using twrp on my s6 g920f?...TQ
Awesome
Just installed on XtreStoLite DeoModEdition 2.1 and the first thing I noticed was how much faster my s6 boooted up, oh my! Thank you so much! Double Tap 2 Wake doesn't seem to be working for me, any suggestions?
tried to flash recovery on g925f and once its flashed and you try to boot into recovery the screen just flashes and then stays black.
C.H.T.J. said:
Ohhhhhuuuu yes!!!! DT2W ohhhuuuuuuu yes!!!!!
No download link hmmm not working with twrp?
Click to expand...
Click to collapse
Huh?
Sent from my SM-G920F using XDA Free mobile app
hazri1974 said:
Is it for 5.0.2 or 5.1.1 or both firmware?....can i flash using twrp on my s6 g920f?...TQ
Click to expand...
Click to collapse
Sorry, I'll add to the OP later.
Only 5.1. Not 5.0.
Sent from my SM-G920F using XDA Free mobile app
thecrab93 said:
Just installed on XtreStoLite DeoModEdition 2.1 and the first thing I noticed was how much faster my s6 boooted up, oh my! Thank you so much! Double Tap 2 Wake doesn't seem to be working for me, any suggestions?
Click to expand...
Click to collapse
It's disabled by default.
Enable it with TricksterMod or something.
Sent from my SM-G920F using XDA Free mobile app
Synapse works? Or need uses another app? Foe f2fs need a factory reset?
jabawarkie said:
tried to flash recovery on g925f and once its flashed and you try to boot into recovery the screen just flashes and then stays black.
Click to expand...
Click to collapse
G925F support will come in the future.
Sent from my SM-G920F using XDA Free mobile app
thecrab93 said:
Just installed on XtreStoLite DeoModEdition 2.1 and the first thing I noticed was how much faster my s6 boooted up, oh my! Thank you so much! Double Tap 2 Wake doesn't seem to be working for me, any suggestions?
Click to expand...
Click to collapse
Flashed with twrp!?
No, used PhilZ from arter97
Here the link : http://arter97.com/browse/S6/kernel/1.0/
---------- Post added at 11:30 AM ---------- Previous post was at 11:29 AM ----------
arter97 said:
It's disabled by default.
Enable it with TricksterMod or something.
Sent from my SM-G920F using XDA Free mobile app
Click to expand...
Click to collapse
Thanks!
Glad to see you here. Loved your previous work, and hope I can check out your future work if it comes to the G920i.

[KERNEL] [8.1.0/9.0] Endurance Kernel V2.0.27 / V1.2.33 [Linux 4.9.190] [CSG5 / ASB1]

Endurance Kernel • Galaxy Note 9​
Endurance Kernel was designed by me with the goal of providing a much more responsive user experience whilst simultaneously conserving the devices battery as much as possible. This kernel is a port of Endurance Kernel, recreated for the Galaxy Note 9. The kernel is largely adjustable in the paid app EX Kernel Manager (EXKM) by flar2 or in the free app MTweaks by Morogoku. Please note, I don't actually own a Note 9!
DISCLAIMER - I am not responsible for any harm that may come to your device as a result of flashing this kernel. I am however happy to provide support if required.
Downloads
1.x.x indicates the kernel should be used with an Oreo based firmware. 2.x.x indicates the kernel should be used with a Pie based firmware.
Latest GitHub Release
MEGA Repository
Key Features
Latest ELS (almost) always merged in
Implemented AndreiLux’s custom scheduling, EAS backports, 16ms PELT half-life, and migration hysteresis filter
Hotplugging enabled
Boeffla wakelock blocker supported (default list tweaked for improved deep sleep)
Support GPU overclocking up to 598MHz on all builds
Adapted notification LED fade support from NX Kernel from the Galaxy S8
Enabled fsync on / off support (on is default and recommended)
DoubleTap2Wake, Sweep2Wake, Sweep2Sleep & RGB colour control
CFQ (stock and kernel default), deadline, noop, FIOPS, SIO, Zen, Maple and BFQ support
Westwood (kernel default), bic (stock), cubic, reno, htcp, lia, veno and olia TCP congestion algorithms enabled
9.0 AOSP support
Several kernel optimizations from Notorious Kernel
WireGuard Support
DriveDroid Support
SELinux set to enforcing
F2FS support
Unofficially supported adjustable SELinux status through the 'Magisk SELinux Manager' module or # setenforce 1 or 0
Disabled irrelevant or unused Samsung security and features
Disabled almost all logging, debugging and tracing
Various patches to improve performance and battery
No bull****!
Detailed Overview
The PELT half-life has been reduced from 32ms (stock) to 16ms which greatly improves device responsiveness, alongside the use of updated custom scheduling, both thanks to Andrei Frumusanu’s amazing work on the kernel. For a more up to date reference on the performance of the Exynos 9810, look at Andrei's investigation comparing the Exynos Note 9 to the Snapdragon Note 9.
This kernel supports overclocking. In order to use overclocking, simply flash the OC zip from the Android File Host folder.
The overclock build will now use big cluster (M3) quad / triple frequencies up to 2106MHz, dual frequencies up to 2416MHz and single frequencies up to 2964MHz. The small cluster has now also been overclocked to 2002MHz. The overclock build also modifies Andrei's conservative frequencies in order to utilise the higher frequencies more. There is no guarantee that your battery will perform well with overclocking, nor your device will be safe running above stock frequencies. Use at your own risk.
Notification LED fade support has also been added and enabled by default. The fade can be turned on and off and have fade in and out speed adjusted in EXKM or MTweaks. Additionally, in both EXKM and MTweaks such as fsync on / off support, DoubleTap2Wake, Sweep2Wake, Sweep2Sleep & RGB colour control.
This kernel unofficially supports (but I typically strongly advise against the use of) a permissive SELinux status through the 'Magisk SELinux Manager' module.
GSI / AOSP Kernel
The kernel supports 9.0 AOSP GSIs. These builds are entire ports of Endurance Kernel that have been adapted for AOSP, hence any changes that are made to the base kernel will almost always also be included in the AOSP kernels.
If SafetyNet is failing, this can be worked around to allow SafetyNet to pass. You will need the 'MagiskHideProps' module installed. After rebooting, using a Terminal Emulator app enter the following commands in the order listed without quotation marks.
Type 'su'
Type 'props'
Type '1' to edit the device fingerprint
Type 'f'
Type '13' to select Samsung
Type '24'
Reboot
Due to the sheer diversity of AOSP GSIs, it is important to ensure you are concise when reporting an issue. Before you report an issue ensure you explicitly state the variant of the kernel you are using, as well as the ROM, firmware and vendor once you have ensured the ROM is compatible with the kernel. If these requirements are not met, you may receive support for the wrong platform or no response at all. It is preferred that you ask in the relevant telegram group prior to publishing on the XDA thread if possible.
Telegram Groups
If you're joining the Telegram group for support, please read the FAQ first!
Endurance Kernel Discussion / Support Group - https://t.me/endurancekernel
Endurance Kernel News Channel - https://t.me/endurancekernelnews
Credits
A huge thank you to everyone involved in the production of this kernel. Particularly a few names I would like to mention.
ianmacd - For creating A Pretty Good Kernel and doing all the hard work for me, as well as being a fantastic mentor who has assisted me through every stage of this kernel. My words understate my appreciation for your efforts.
AndreiLux - For pushing the device to its limits in many regards and paving the pathway from which many other devs, myself included rely on, and for assisting me in the production of the kernel.
farovitus - For his vast efforts included in the development of Notorious Kernel and for providing inspiration of changes and commits to include in the kernel as well as making another great kernel before the production of Endurance Kernel. Also thanks for maintaining ELS and keeping it simple for me!
flar2- For his fantastic EXKM app, and all his work from ElementalX included in APGK such as wake / sleep gestures and RGB colour control.
djb77 - For inspiring a few additions to the ramdisk and for being another fellow Aussie.
Freeza - For allowing the use of his installation script and for aiding in the issues faced in the early stages of kernel development.
Chrisaw - For being an exceptionally thorough and generous beta tester and for basically doing the hard troubleshooting for me. I can't say thanks enough for the time and effort you put into the kernel.​
Huge thanks to everyone else who was involved in development of the kernel, and helped me during the stages of instability in the early phases of this kernel. You know who you are!
And of course, everyone involved in mainline Linux development!
Additonally
Lord Boeffla for Boeffla Wakelock Blocker
franciscofranco for fsync on / off support
Ktoonsez for initially introducing Notification LED fade support.
Noxxxious for making it easier to adapt Notification LED fade to the S9!
osm0sis for Android Image Kitchen
If I included your work and forgot you, let me know and I’ll add you to the credits list!
Source - https://github.com/eamo5/crownlte-endurance
Click here to donate! I used to not accept donations but while I'm undertaking my degree, a small donation could go a long way.
OneUI Current Build Changelog
V2.0.27
Linux 4.9.190
CSG5 kernel source and ramdisk
Converted GPU workqueues to kthreads (thanks farovitus)
Previous Changelogs
V2.0.26
Linux 4.9.186
CSFC source and ramdisk
Removed various unneeded drivers
Disabled swap on AOSP
AOSP 2.0 build works again
V2.0.25
Linux 4.9.185
V2.0.24
Linux 4.9.184
AOSP 2.0 based kernel appears to be broken for now, I will try to address this ASAP
V2.0.23
Linux 4.9.183
Addressed some regressions from the previous build
I forgot to update the kernel version lol
V2.0.22
Linux 4.9.182
CSF9 kernel source and ramdisk
Several improvements to ashmem, binder, SELinux dynamic memory allocation, IRQs & qos from Sultanxda
V2.0.21
Linux 4.9.180
V2.0.20
Linux 4.9.179
Cross compiled with GCC 9.1
Fixed instability in 4.9.178
V2.0.19
Linux 4.9.177
CSDJ ramdisk (kernel source is identical to CSDE)
V2.0.18
Linux 4.9.176
Cleaned up defconfig
V2.0.17-1
CSDE kernel source and ramdisk
Unset CONFIG_DEBUG_KERNEL (and it's dependencies)
Optimised F2FS configuration
V2.0.17
Linux 4.9.175
Fixed F2FS
V2.0.16
Linux 4.9.174
F2FS support
V2.0.15
Linux 4.9.173
V2.0.14
Linux 4.9.172
Updated Gator driver to v6.9
V2.0.13
Linux 4.9.171
Unset CONFIG_AUDIT (reduce SELinux overhead)
Updated Gator driver to 6.8
V2.0.12
Linux 4.9.170
V2.0.11
Linux 4.9.169
V2.0.10
Linux 4.9.168
V2.0.9
Linux 4.9.166
Fixed 4.9.165 performance regression
V2.0.8
Linux 4.9.165
Reduced kernel size
Unset CONFIG_ION_EXYNOS_STAT_LOG
V2.0.7
CSC1 kernel sources
Linux 4.9.164
V2.0.6-1
Fixed lockscreen issue on CSC1 ROMs
V2.0.6
Linux 4.9.163
CSB3 kernel sources
V2.0.5
Linux 4.9.162
Unset approximately 15 CONFIG_TRACE & CONFIG_EXYNOS_SNAPSHOT related options
Linux 4.9.161
Set CONFIG_STRIP_ASM_SYMS
Unset CONFIG_BT_DEBUGFS
Unset CONFIG_USB_DEBUG_DETAILED_LOG
Unset CONFIG_DEBUG_ATOMIC_SLEEP
Unset CONFIG_SEC_BOOTSTAT
Unset CONFIG_SEC_UPLOAD
Unset CONFIG_SEC_DEBUG_PPMPU
Fixed an issue with the r8152 ethernet driver & updated the driver.
V2.0.3
Linux 4.9.160
Unset CONFIG_EXYNOS_CORESIGHT (and everything it unsets)
Unset CONFIG_DEBUG_LIST
Unset CONFIG_DEBUG_EXCEPTION_STACK
Unset CONFIG_TIMER_STATS
Unset CONFIG_DEBUG_NOTIFIERS_PRINT_ELAPSED_TIME
Suppressed additional minor logging
V2.0.2
Linux 4.9.159
Unset CONFIG_KSM
Unset CONFIG_SDFAT_DEBUG
Unset CONFIG_SCHED_DEBUG
V2.0.1-1
CSB3 ramdisk (fixes lockscreen loop on CSB3)
Kernel now requires CSB3 ROM
V2.0.1
Linux 4.9.158
V2.0
Linux 4.9.156
Minor tweaks to scheduling
V2.0 RC 4
Linux 4.9.155
V2.0 RC 3
Rebased on ELS 4.9.154
Tweaked conservative scheduling a bit more for a slightly better user experience.
V2.0 RC 2
Tweaked conservative scheduling for an improved user experience
V2.0 RC 1
Support Android 9.0 OneUI
Linux 4.9.59
CSA2 kernel sources
Can boot with and without Magisk
Full OC implementation
DriveDroid support
Conservative scheduling
Oreo and GSI Current Build Changelog
V1.2.33
Linux 4.9.190
Previous Changelogs
V1.2.32
Linux 4.9.186
Removed various unneeded drivers
V1.2.31
Linux 4.9.185
Reverted Simple LMK on AOSP builds as it doesn't appear to be making reclaims correctly atm.
V1.2.30
Linux 4.9.184
Introduced the latest stable Simple LMK from Sultanxda in AOSP kernels
V1.2.29
Linux 4.9.183
Addressed some regressions from the previous build
I forgot to update the kernel version lol
V1.2.28
Linux 4.9.182
Several improvements to ashmem, binder, SELinux dynamic memory allocation, IRQs & qos from Sultanxda
V1.2.27
Linux 4.9.180
V1.2.26
Linux 4.9.179
Cross compiled with GCC 9.1
Fixed instability in 4.9.178
V1.2.25
Linux 4.9.177
V1.2.24
Linux 4.9.176
Cleaned up defconfig
V1.2.23
Linux 4.9.175
Fixed F2FS
V1.2.22
Linux 4.9.174
F2FS support
V1.2.21
Linux 4.9.173
V1.2.20
Linux 4.9.172
Updated Gator driver to v6.9
V1.2.19
Linux 4.9.171
Unset CONFIG_AUDIT (reduce SELinux overhead)
Updated Gator driver to 6.8
V1.2.18
Linux 4.9.170
V1.2.17
Linux 4.9.169
V1.2.16
Linux 4.9.168
V1.2.15
Linux 4.9.166
Fixed 4.9.165 performance regression
V1.2.14
Linux 4.9.165
Unset CONFIG_ION_EXYNOS_STAT_LOG
V1.2.13
Linux 4.9.164
V1.2.12
Linux 4.9.163
V1.2.11
Linux 4.9.162
Unset approximately 15 CONFIG_TRACE & CONFIG_EXYNOS_SNAPSHOT related options
V1.2.10
Linux 4.9.161
Set CONFIG_STRIP_ASM_SYMS
Unset CONFIG_BT_DEBUGFS
Unset CONFIG_USB_DEBUG_DETAILED_LOG
Unset CONFIG_DEBUG_ATOMIC_SLEEP
Unset CONFIG_SEC_BOOTSTAT
Unset CONFIG_SEC_UPLOAD
Unset CONFIG_SEC_DEBUG_PPMPU
V1.2.9
Linux 4.9.160
Optimised scheduling
Unset CONFIG_MODULES
Unset CONFIG_EXYNOS_CORESIGHT (and everything it unsets)
Unset CONFIG_DEBUG_LIST
Unset CONFIG_DEBUG_EXCEPTION_STACK
Unset CONFIG_TIMER_STATS
Unset CONFIG_DEBUG_NOTIFIERS_PRINT_ELAPSED_TIME
Suppressed additional minor logging
V1.2.8
Linux 4.9.159
Unset CONFIG_SDFAT_DEBUG
Unset CONFIG_SCHED_DEBUG
V1.2.7
Linux 4.9.158
ARL4 Kernel Source
V1.2.6
Linux 4.9.156
V1.2.5
Linux 4.9.155
V1.2.4
Linux 4.9.154
DriveDroid support
Fixed Android System warning on boot on GSI and AOSP kernels
V1.2.3
Linux 4.9.153
Fixed several weird bugs related to booting including requiring Magisk to boot!
V1.2.2
Linux 4.9.152
V1.2.1
Linux 4.9.151
V1.2.0
Linux 4.9.150
Realigned defconfig closer with ELS to hopefully fix some issues
V1.1.9
Linux 4.9.149
Updated WireGuard importer
FAQ
A FAQ section will be established as kernel development progresses. If you have any explicit unanswered questions, feel free to ask away. If you must contact me due to an issue, please report your device variant, ROM, firmware, vendor and previous kernel.
1. I can’t unlock / boot my phone! What do I do?
If you're stuck in a lockscreen loop, make sure you're on a firmware with a matching ramdisk to the kernel. Do not mix a CSC1 kernel ramdisk with a CSA2 ROM for example. Anytime the ramdisk is changed, it will be listed in the changelog. Are you on the correct firmware and vendor? If not, you can always flash this zip or revert back to previous versions through the Android File Host folder. Can anyone else successfully flash the kernel? If yes, verify the MD5 sum by referencing and ensuring a matching MD5 sum between the local file and the Android File Host file. Did I just push an update? If yes, contact me on Telegram in the Endurance Kernel group for a faster response, and XDA for an eventual response. Does your ROM require a permissive SELinux status to boot? If yes, use the 'Magisk SELinux Manager' module to adjust your SELinux status. If none of this can solve your problem, contact me through the Endurance Kernel group.​
2. Why doesn't my camera work after flashing the kernel?
Verify that you are on the correct firmware, vendor and a ROM that supports the current kernels sources. If you are still encountering issues after verifying this is correct, then let me know! If you do not wish to update, you can maintain a version of the kernel that does support your ROM by reading the changelog and downloading the previous versions from the Android File Host folder​
3. Why doesn't my Bluetooth work after flashing the kernel?
Are you on a ROM that does not patch libsecure_storage, such as DevBase? If your Bluetooth is broken, the answer is probably. Instead you can use ianmacd's Magisk module 'libsecure_storage companion for rooted Samsung devices' or you can manually flash a zip to patch it yourself, without the need for Magisk.​
4. Why doesn't my WiFi work after flashing the kernel?
Make sure you have forgotten and rejoined all WiFi networks after installing the kernel if the device won't connect to the network. If the devices WiFi won't turn on at all, make sure you do not have ianmacd's 'libsecure_storage companion for rooted Samsung (Oreo) devices' installed. If you're still encountering issues, please contact me in the Telegram group or on XDA.​
5. Should I use the permissive or enforcing SELinux status?
The decision is yours. There is plenty of documentation available online outlining their differences. I strongly recommend enforcing, hence why permissive is not officially supported. Permissive is far less secure, and hence I do not condone the use of permissive. If you are using permissive, you should either have to due to a dependency or have another specific reason for doing so. eg. ROM requires disabled signature check. For most users, unless directed otherwise, use the default enforcing build.​
6. When will you update the kernel?
Once ELS is updated and the kernel is ready! This is just a side hobby and I do have a life outside of kernel development. Be patient, the update will arrive within a few days if not ASAP.​
7. Will you add CPU / GPU undervolting?
No, EAS (Energy Aware Scheduling) has mostly made CPU undervolting mostly irrelevant. Google EAS if you would like it find out more information as to why it is the case. I've included a detailed YouTube video outlining the scheduling mechanisms of EAS here. Currently, any GPU voltage control for Exynos 9810 devices does not work, hence I will not be including it in my kernel.​
8. Do I need to install Magisk?
Magisk is entirely optional with this kernel.​
9. Why does this kernel offer no additional governors?
Because most of them are unstable and cause the device to crash, as well as EAS' integration with schedutil and EHMP.​
10. Why does this kernel makes my device crash / battery poor / performance poor?
Because this kernel is still in beta. Since I can't personally verify anything with the kernel, it's possible there may be issues. If this is the case, report it on the XDA thread or Telegram group.​
11. Why is my WiFi performance worse when using this kernel?
This may be the case for some people. This kernel uses the Westwood+ TCP algorithm for enhanced WiFi speeds on certain networks. However there may be scenarios on poor signal networks, this TCP algorithm may cause packet loss at a greater rate than is default. This should hopefully not be an issue for anyone, however if it is, try using bic as default and contact me.​
12. Why is my battery still terrible?
Are you in an area with poor signal reception? Unfortunately that is one thing a custom kernel cannot compensate for due to the device modem having restricted access and also legal issues. That leaves us with optimizations that can only be done to the SOC of the device. How you use your device can also greatly lead to variation in battery stats. If you are in need of further battery, 'underclocking' is available and is explained in OP. If you want the best battery life, I advise you try out that build.​
13. Why does SafetyNet fail on the AOSP kernels?
This is a minor issue I don't believe I can address on my end. This can be worked around however to allow SafetyNet to pass. You will need the 'MagiskHideProps' module installed. After rebooting, using a Terminal Emulator app enter the following commands in the order listed without quotation marks.
Type 'su'
Type 'props'
Type '1' to edit the device fingerprint
Type 'f'
Type '13' to select Samsung
Type '23' or '24'
Reboot
14. How can I use F2FS?
To use F2FS, you must erase your data and format your data partition (and optionally cache partition) to F2FS using the N9 TWRP available here, even if you are on S9. From there you should be able to reboot your device and restore your data through a backup.​
15. Where can I donate?
I used to not accept donations but while I'm undertaking my degree, a small donation could go a long way. You can donate through my PayPal link here.​
Bluetooth connections does not stick. Latest oreo.
Edit: Install libsecure from magisk and the issue fixed.
burakgon said:
Can't connect to wifi. Bluetooth connections does not stick. Latest oreo.
Click to expand...
Click to collapse
Hmmmm the kernel is using the latest ramdisk. This wasn't an issue in any of my beta tests. What device model are you on? Anyone else?
Eamo5 said:
Hmmmm the kernel is using the latest ramdisk. This wasn't an issue in any of my beta tests. What device model are you on? Anyone else?
Click to expand...
Click to collapse
After connecting a different network, I could reconnect my old wifi. But after reboot bluetooth connections does not stick. Check with s pen.
burakgon said:
After connecting a different network, I could reconnect my old wifi. But after reboot bluetooth connections does not stick. Check with s pen.
Click to expand...
Click to collapse
You might need to use the libsecure_storage companion Magisk module to fix Bluetooth pairing on some ROMs.
Amazing!!! Bring Exynos back to the glory again... Golden Age is coming again for Exynos I knew there's alot of sh*t happening on kernel level with Exynos.... I'm glad you got it all sorted (nearly)
But... I will wait till you add or support GPU & CPU undervolt , CPU Overclocking as undervolting CPU will further increase battery life it is obvious
Thank you! For providing this kernel!! I will keep watching it till at least have an undervolting CPU & GPU support (I'm not asking for any ETA'S) Thank you again!
#Exynos is back
Nice to see this here! Kudos
Good job man, this kernel working very good and Good battery life.. on my N9 TW keep going bro
Da-BOSS said:
Amazing!!! Bring Exynos back to the glory again... Golden Age is coming again for Exynos I knew there's alot of sh*t happening on kernel level with Exynos.... I'm glad you got it all sorted (nearly)
But... I will wait till you add or support GPU & CPU undervolt , CPU Overclocking as undervolting CPU will further increase battery life it is obvious
Thank you! For providing this kernel!! I will keep watching it till at least have an undervolting CPU & GPU support (I'm not asking for any ETA'S) Thank you again!
#Exynos is back
Click to expand...
Click to collapse
The conservative scaling of frequencies should already return some battery life, but slightly worsen the scores of some synthetic benchmarks. This is counterbalanced by the introduction of 16ms PELT which will in return improve real world performance.
The OC build will be much more performance centred.
The UC build should reduce peak power drain, but most battery savings will occur in the standard build. As stated in the FAQ, undervolting is mostly irrelevant with EAS.
Trying to work out the script ATM with a talented Note 9 tester. Hopefully should be introduced soon
Eamo5 said:
The conservative scaling of frequencies should already return some battery life, but slightly worsen the scores of some synthetic benchmarks. This is counterbalanced by the introduction of 16ms PELT which will in return improve real world performance.
The OC build will be much more performance centred.
The UC build should reduce peak power drain, but most battery savings will occur in the standard build. As stated in the FAQ, undervolting is mostly irrelevant with EAS.
Trying to work out the script ATM with a talented Note 9 tester. Hopefully should be introduced soon
Click to expand...
Click to collapse
I'm really happy to hear that :victory: this is like a new year gift to my ears !:victory:
But I'm really sorry for not being specific... I know what you mean for the CPU undervolting is irrelevant I have readed the FAQ ....
But what about the GPU? Is undervolting is irrelevant for the GPU too? it is an achievement when maximizing GPU OC with undervolting since the GPU is the weakest part on the Exynos... a significant OC pump frequency with tweaking voltage will bring some performance pump on heavy graphics performance :fingers-crossed: see what I mean?
Waiting for your reply.... as your opinion matters to me alot
Again Thank you.. Thank you!
Da-BOSS said:
I'm really happy to hear that :victory: this is like a new year gift to my ears !:victory:
But I'm really sorry for not being specific... I know what you mean for the CPU undervolting is irrelevant I have readed the FAQ ....
But what about the GPU? Is undervolting is irrelevant for the GPU too? it is an achievement when maximizing GPU OC with undervolting since the GPU is the weakest part on the Exynos... a significant OC pump frequency with tweaking voltage will bring some performance pump on heavy graphics performance :fingers-crossed: see what I mean?
Waiting for your reply.... as your opinion matters to me alot
Again Thank you.. Thank you!
Click to expand...
Click to collapse
GPU Voltage control was originally ported over to the Exynos 9810 but the voltage control was seemingly broken. When GPU voltage control is working, I'll introduce it again. Underclocking the GPU and allowing to run at a lower minimum frequency is something I may eventually investigate and measure if there are any benefits.
Eamo5 said:
GPU Voltage control was originally ported over to the Exynos 9810 but the voltage control was seemingly broken. When GPU voltage control is working, I'll introduce it again. Underclocking the GPU and allowing to run at a lower minimum frequency is something I may eventually investigate and measure if there are any benefits.
Click to expand...
Click to collapse
Thank you :fingers-crossed::good:
Running this kernel for 24 hours. Battery life & smoothness improved. No problem yet. Stock latest oreo S2ARL3 Thank you.
Endurance Kernel V1.1.8
Happy New Years!
Linux 4.9.148
Fixed GPU minimum frequency on TW build
Download links updated in OP!
Eamo5 said:
Endurance Kernel V1.1.8
Happy New Years!
Linux 4.9.148
Fixed GPU minimum frequency on TW build
Download links updated in OP!
Click to expand...
Click to collapse
thank you sir.
to you and yours aswell
Eamo5 said:
Endurance Kernel V1.1.8
Happy New Years!
Linux 4.9.148
Fixed GPU minimum frequency on TW build
Download links updated in OP!
Click to expand...
Click to collapse
Nice! Happy New year to all XDA! Cheers :highfive:
Will see version for pie soon?

Development [Kernel][12.04.2023][Android 13] Kirisakura 3.0.1 for Sony Xperia 1 III aka "Sagami"

Kirisakura-Kernel for the Sony Xperia 1 III
Hello everyone,
To keep it short: Here is Kirisakura - Kernel for the Sony Xperia 1 III aka Sagami. Sagami is the internal codename for this years development platform of Sony Mark III devices. Please note this kernel is made to run only on Xperia 1 III.
I would appreciate if everybody that flashes the kernel, reads at least once through this opening post and the following ones.
Kirisakura - Kernel is designed to bring a handful of beneficial features to the device, while ensuring excellent performance and smoothness to get you safely through the day!
If you expect a custom kernel to magically improve your devices battery life manifold and this is your only priority then this might not be the right place for you.
However the kernel is built to keep battery life close to the same as you would experience the on stock kernel while being tuned to perform better in various UI related benchmarks. The same benches are used by google to verify and ensure UI smoothness on the Pixel devices.
There´s also a cpu-battery saver mode that cuts back the CPU max- freqs, but without the disadvantages like delayed notifications from built into the system user-space power-saving modes.
If that got your curious, I welcome you to continue reading if you´re still interested!
The kernel includes a lot of improvements and contributions from other developers as well. Without this kernel would not exist.
A big part of improvements originate from @arter97´s, @kdrag0n´s and @Sultanxda´s work. Many others contributed in some way or another to this kernel.
A big thanks to all of them at this place!
Now lets continue with a list of features in the next paragraph!
Main Features:
- Based on latest kernel sources from Sony for Android 12 and intended to be used on the latest Stock-Firmware
- compiled with Clang 14.0.7 and built with -O3 speed optimizations
- Linux-Stable-Upstream included to 5.4.202
- upstreamed CAF base for the Snapdragon 888 (qcoms internal codename "lahaina")
- CPU-Battery saver to be able to restrict max cpufreqs on the fly, without enabling powersaving modes that might cause missed notifications (more info here)
- include important fixes/improvements from kernel/common
- reduce power consumption during deep sleep
- remove logging while device is suspended
- add SSG-IO scheduler from samsung (less overhead, better tuned towards android)
- disable various debugging mechanisms for drivers which are not needed on a perf build (e.g. binder)
- disable selinux auditing (we don´t have to adress selinux denials running a stock rom)
- disable unnecessary CPU errata for our specific SoC
- implement LRNG (thanks @arter97, see arter kernel OP for more info )
- Flashing the kernel will keep root!
- Flashable via EXKM, FKM or TWRP (if available) on a rooted system!
EAS related features:
- Implement dynamic WALT-Window size depending on current FPS, collecting information about CPU-Load to provide more precise information for the scheduler
- EAS implementation patched up to latest CAF state
- updates from kernel/common
- scheduler updates from sd888/ 5.4 kernel
CPU related features:
- Power saving workingqueues enabled by default (toggleable in EXKM)
- Change various drivers (WLAN, MM, audio, charger, power, thermal, glink etc) to use power efficient workingqueues. This compliments EAS in general
- improvements to cpufreq/times/stats
- vdso32 patches as found on Google Pixel devices (brief documentation here) (CAF 5.4 default, keep for documentation)
- remove event debug logging
- disable broken irq detection, disable debugmon
- improve suspend/resume from audio driver (caf-upstream for audio-kernel)
- cpuidle: wake only cpus for which qos has changed (this allows cores to keep idle states better)
- disable debugging during sleep states as per qcom recommendation
- remove RTB logging to reduce overhead
- disable trace_printk as it shouldn´t be used on production/perf kernel builds
- enable suspend_skip_sync to save power during suspend/resume
- disable edac and coresight (following google on the pixel kernels)
- disable jtagv8 debugging as recommended by qcom for perf builds to avoid potential power, performance and memory penalty
- disable s2idle in favor of deep idle state -> improves deep sleep drain (google initially used 2idle for improved suspend/resume latency on pixel 3 and pixel 4, but disabled it on pixel 5. qcom followed suit for sd 888, but apparently didn´t see google reverting it on pixel 5. Other OEMs such as Xiaomi or OnePlus already disabled s2idle on their SD888 devices in favor of deep- read more about s2idle vs deep here)
GPU related features:
- GPU driver updated to latest CAF-State
- gpu/kgsl improvements from pixel 4/pixel 5 kernel
- add low_prio_worker thread for gpu driver (Improves performance when tearing down processes (eg, via LMK) and not blocking currently running UI from submitting work to the GPU
File System related features:
- upstream BFQ-MQ to latest state in linux-mainline and default to 128KB readahead
- improve memory allocations in kernfs
- ufs improvements from pixel 4/ pixel 5 kernel
- improve GC as to not interfere while user interaction is happening and prevent possible jitter or latency spikes
Network related features:
- Wireguard Support (Details)
- advanced TCP algorithms enabled
- use bbr as default TCP congestion algorithm (fasted algo according to this excellent research from @kdrag0n found here )
- improved networking drivers from caf-upstream (especially wifi)
- remove unnecessary wakelock from WLAN driver to reduce thousands of very short wakeups during a 7 hour deep sleep period
- improved bluetooth performance (¹, ²)
- Enable support for TTL spoofing
Memory related features:
- Speculative Page Faults left enabled (1. 2) (CAF 5.4 default, keep for documentation)
- Fix various memory leaks in different subsystems
- improved mm with patches from mainline
- patches from kernel/common
- improve memory allocations in various subsystems, video encode/decode, kernfs, cgroup
- Backport to enable CONFIG_HAVE_MOVE_PMD (see here) , thanks @arter97
- Backport to enable CONFIG_HAVE_MOVE_PUD (commit here) , thanks @arter97
- free more RAM by removing unused reserved memory regions
- mm: Micro-optimize PID map reads for arm64 (improves game performance, especially unity based games such as genshin impact)
- MGLRU added (info here and here
Security related features:
- Control-Flow-Integration (CFI) and Link-Time-Optimization (LTO) (CAF 5.4 default, keep for documentation)
- Use ThinLTO which was first used in the Pixel 4 XL Android R-Kernel instead of full LTO (CAF 5.4 default, keep for documentation)
- Shadow Call Stack (SCS) Security-Feature ( 5.4 default, keep for documentation)
- enable init_on_alloc for even more security, more information can be found in the commit message (CAF 5.4 default, keep for documentation)
Misc Features:
Wakelock Blocker:
- advanced wakelock blocker with the ability to block any wakelocks (dangerous, use with caution)
- please read [URL="https://arstechnica.com/gadgets/2018/08/p-is-for-power-how-google-tests-tracks-and-improves-android-battery-life/"]this for further info
- blocking a kernel wakelock should only be done in case of firmware incompatabilities (WiFi network at work (can´t be changed) causes deep sleep to not work on the phone.) That´s the only use case I see for this feature. The kernel does not features this to improve battery life!
Other features:
- clean up asus drivers and fix a few warnings in kernel log
- disable logging and debugging to make the kernel more lightweight in various places (includes binder, mm, vma, gpu, ipa etc)
- fix several coding issues detected by newer Clang-Toolchains
- enlarge dmesg size to ease debugging
Flashing Guide, Download and Changelog
Requirements:
- unlocked Bootloader
- USB-Debugging in developer options enabled
- latest adb and fastboot binaries
- working adb and fastboot environment
- magisk root
- a backup of stock boot.img or your magisk patched boot.img in case you want to go back to stock.
How to flash the Kernel:
1. Download the latest kernel.zip and make sure you have properly updated to the latest matching Firmware (check the feature list for the current firmware the source is based on). When there´s an OTA update for the Sony Xperia 1 III it takes Sony a while to release the source code for the new OS and me a while to build a new kernel. If you don´t want to face any issues, wait until I either release an updated kernel or give green light because there were no kernel changes.
If you want to be sure there are no issues, always make sure to run the firmware the kernel is built for!
If you feel adventurous and try in advance, make sure you have a backup ready!
2. Flash the kernel.zip via latest TWRP (if available), EXKM or FKM app and do a full reboot.
3. Reboot and profit.
DOWNLOAD:
Download is located always in this folder:
https://www.androidfilehost.com/?w=files&flid=331114
Or attached to the release post starting with Android 13 as AFH is currently not working correctly
Important: Read after Download
Please take a look at the second post after flashing the kernel!
Changelog:
Android 11
1.0.0 Initial Release
1.0.1 https://forum.xda-developers.com/t/...xperia-1-iii-aka-sagami.4377449/post-86140929
Android 12
2.0.0
[Kernel][02.07.2022][Android 12] Kirisakura 2.0.0 for Sony Xperia 1 III aka "Sagami"
Kirisakura-Kernel for the Sony Xperia 1 III Hello everyone, To keep it short: Here is Kirisakura - Kernel for the Sony Xperia 1 III aka Sagami. Sagami is the internal codename for this years development platform of Sony Mark III devices. Please...
forum.xda-developers.com
Android 13
3.0.0 https://forum.xda-developers.com/t/...xperia-1-iii-aka-sagami.4377449/post-88048199
3.0.1 https://forum.xda-developers.com/t/...xperia-1-iii-aka-sagami.4377449/post-88404445
Donations:
Donations are not mandatory but very welcome if you want to support development or just buy me a coffee/tea
If you like my work: http://paypal.me/freak07
Credits:
Sony for the development device, giving me the opportunity to create this project!
@osm0sis for all his work, including the ak3 installer!
@tbalden for being the best HTC, Pixel, OnePlus and now Asus wingman!
@LeeDroid and @mwilky for their awesome roms and work I used on multiple devices!
@Captain_Throwback for all the mentoring and guidance!
@Eliminater74 for bringing me into the game and the Inspiration
@nathanchance for his upstream guidance and assistance
@RenderBroken for helping me out
@flar2 for all his work
@joshuous for all the help he provided to me in the past!
@arter97 for giving me advice
@kdrag0n for his help and advices!
@topjohnwu for magisk!
Source Code: https://github.com/freak07/Kirisakura_Sagami
F.A.Q:
Question: Is root preserved when flashing this kernel?
Answer: Yes, the AnyKernel.zip will detect root and keep it.
Question: Safetynet does not pass on my phone since I unlocked the phone, why is this so?
Answer: Google introduced hardware backed attestation recently. Unfortunately the old kernel tricks to still get safetynet passing won´t work. Instead you will have to rely on some magisk modules. Short guide in post #4 below.
Question: How do I return back to stock or another kernel.
Answer: Extract boot.img from the matching firmware you are on (you can do so by using this tool or similar ones found on XDA and when googling around) and flash them via fastboot. If you want to keep root flash back the magisk_patched_boot.img. Or dirty flash your rom and re-root.
Question: Why is having Magisk installed mandatory for this kernel?
Answer: The kernel uses a ramdisk overlay to apply some settings after boot. If you are not rooted these settings will not get applied and you miss some of the optimizations.
Question: How to report bugs properly?
Answer: Have a look at post #3 in the linked thread. The linked guide is a pretty good starting point.
Before reporting any bug make sure you´re running on a stock configuration. That´s means you´re not using any mods, tweaks in kernel managers or other root tweaks , magisk modules, scripts or other modifications that alter various functions like sound mods, data traffic, sleeping behaviour, scheduler, magical battery tweaks etc.
Try to describe the issue as detailed as possible! Give your exact setup, like rom, magisk version, kernel version.
Is the issue reproducible? Does it happen frequently?
Please make sure to meet the points described above, provide logs as detailed in the link above, otherwise debugging is a lot more time consuming and harder. (kernel flashing apps usually support exporting logs of flashes too) If these requirements aren´t met and I don´t find time to either reproduce the issue myself or I´m not able to reproduce the issue myself, reports might just be ignored. If you can already reproduce the issue and provide logs it greatly limits the amount of time I have to spent until I figure out how to reproduce it.
If the device force reboots/randomly reboots (that means you see the bootloader unlocked screen!) provide a .zip of /asdf.
Easiest way is immediately after booting up, with a root explorer navigate to /asdf. Copy the contents to your internal storage, zip it up and send it to me.
If the issue happens while the device is running provide a dmesg plus a logcat that you take while/shortly after the issue happens. This will log what´s running in the current session. Try to be as detailed as possible what´s happening when the issue appears. It will also help me in reading the log!
Feature Documentation:
Here´s a brief documentation about some of the features included in the kernel that can be changed as the user desires.
They can be accessed via either terminal, scripts or for example EXKM manager ( tools -> user settings).
CPU-Frequency Limiting:
Another option is CPU-Freq Limiting. You can now limit the CPU frequency to a few different levels with a sysfs interface. Original implementation is from @tbalden, I only changed it to be accessible via traditional root methods.
Main Switch:
sys/module/cpufreq/parameters/batterysaver
Set this option to "1" to enable the feature
Max-Frequency Selection (Input boosts, such as scrolling boost or app launching boosts will still apply, if touch boost restriction is not set to 1)
sys/module/cpufreq/parameters/batterysaver_level
Set this to "1" to restrict the max CPU-Freqs to 1,7GHZ/2,1GHZ/2,49GHZ (Little Cluster/Big Cluster/Prime Core)
Set this to "2" to restrict the max CPU-Freqs to 1,6GHZ/1,7GHZ/2,0GHZ (Little Cluster/Big Cluster/Prime Core)
Set this to "3" to restrict the max CPU-Freqs to 1,49GHZ/1,4GHZ/1,6GHZ (Little Cluster/Big Cluster/Prime Core)
Touch-Boost Restriction
sys/module/cpufreq/parameters/batterysaver_touch limiting
Set this to "1" to restrict the powerhal from boosting over the limit defined in batterysaver_level
Set this to "0" to allow the powerhal to boost above the values defined in batterysaver_level, but only during interaction with the Phone!
Screenshots:
View attachment 5309899View attachment 5309901View attachment 5309903
This is for example very useful during gaming to prevent additional heat, if not the highest performance from the CPU is required. Check if the game is running fine on level 1 or 2, and you´ll notice much less heat. Powerdraw will be reduced as well.
Another very useful trick while doing video calls or long extended navigation sessions with google maps to preserve battery or keep the phone from heating. Especially during summer if the ambient temperatures are high.
This is a very easy way to preserve battery or reduce heat without toggling the battery save mode in settings as that restricts background data usage, which can lead to delayed notifications.
How to pass Safetynet after unlocking the bootloader
With the introduction of hardware backed safetynet attestation, passing safetynet has become a lot more complicated.
Some probably remember a while ago, flashing a kernel that forced some flags was enough to pass it. However these days are gone.
Below is a short guide how to pass safetynet on phones that are flagged to use HW attestation (such as the ROG 5).
1. Make sure you´re running latest magisk canary.
2. In Magisk Manager enable both zygisk and deny list.
4. Download the latest Universal Safety Net Fix from @kdrag0n ´s github for zygisk cand flash it in Magisk Manager. Reboot.
5. Profit
this one is the last one
Freak07,
Please not this kernel is made to run only on Xperia 1 II
Click to expand...
Click to collapse
I guess it should be "Please note this kernel is made to run only on Xperia 1 III"
By the way, is there any plans to make same kernel for 5 III ?
Source Code: https://github.com/freak07/Kirisakura_Sagami
Click to expand...
Click to collapse
Leads me to nowhere (404).
dron39 said:
Freak07,
I guess it should be "Please note this kernel is made to run only on Xperia 1 III"
By the way, is there any plans to make same kernel for 5 III ?
Leads me to nowhere (404).
Click to expand...
Click to collapse
Fixed the typos and the link.
No, I only have the Xperia 1 III to work on.
Amazing work mate, very meticulous tuning. Would love to have this kernel on the 5 III. I understand the device architectures are quite similar?
treff89 said:
Amazing work mate, very meticulous tuning. Would love to have this kernel on the 5 III. I understand the device architectures are quite similar?
Click to expand...
Click to collapse
I asked the same question above
And unfortunatelly Freak07 do not support 5 III because he doesn't have it. Hope someone else could transfer his patches and things to 5 III.
Thanks for the kernel. However after installing the kernel my SD card gave an error. It says issue with the SD Card tap to fix and then asks me to format it?
BlazingKahn35 said:
Thanks for the kernel. However after installing the kernel my SD card gave an error. It says issue with the SD Card tap to fix and then asks me to format it?
Click to expand...
Click to collapse
I see. Thanks for the report!
I think i know whats up. They use a proprietary driver for exfat formatted sdcards ( I assume yours is formatted as exfat?) so it's not included in the source i build the kernel from.
I don't use a sdcard, that's why I missed it.
treff89 said:
Amazing work mate, very meticulous tuning. Would love to have this kernel on the 5 III. I understand the device architectures are quite similar?
Click to expand...
Click to collapse
dron39 said:
I asked the same question above
And unfortunatelly Freak07 do not support 5 III because he doesn't have it. Hope someone else could transfer his patches and things to 5 III.
Click to expand...
Click to collapse
They are similar, but I can't support a device i don't own. I also lack the time to do any remote debugging.
The phones however are similar as you mentioned, so if somebody is interested in starting to work on it all my work is up on GitHub. That might make it a lot easier than it would be otherwise.
Freak07 said:
I see. Thanks for the report!
I think i know whats up. They use a proprietary driver for exfat formatted sdcards ( I assume yours is formatted as exfat?) so it's not included in the source i build the kernel from.
I don't use a sdcard, that's why I missed it.
Click to expand...
Click to collapse
Yes mine is exfat since it's 256gb but not a big issue. I just transferred all my files to PC formatted the SD and transferred back now it works.
Also I'm using forced 4K all the time. But the only downside is the slowing down of the FP sensor. I think it's a kernel panic can you look in to that also maybe? (It was also slow on stock kernel)
Dear developer, if there is an opportunity, I would like to receive a kernel for PRO-I products!
I promise to donate
Update to 1.0.1
Good morning everybody,
thanks to @BlazingKahn35 ´s report exfat formatted sdcards are now working fine again.
Included an open source driver, that spoofs texfat support (the proprietary exfat driver) once an exfat sdcard is detected.
Download link can be found in the OP.
BlazingKahn35 said:
Also I'm using forced 4K all the time. But the only downside is the slowing down of the FP sensor. I think it's a kernel panic can you look in to that also maybe? (It was also slow on stock kernel)
Click to expand...
Click to collapse
Not sure what you mean. A kernel panic crashes the device so that it reboots.
The fingerprint scanner works fine for me. I place my finger on it, it scans and proceeds to unlock. It's not the fastest around, but it's quick enough for me.
Also used the adb commands to enable 4k and the speed of the fingerprint sensor stayed the same on my end.
I noticed just as I woke up that my phone was charged to 100%. Did you removed battery care from the kernel?
Freak07 said:
Not sure what you mean. A kernel panic crashes the device so that it reboots.
The fingerprint scanner works fine for me. I place my finger on it, it scans and proceeds to unlock. It's not the fastest around, but it's quick enough for me.
Also used the adb commands to enable 4k and the speed of the fingerprint sensor stayed the same on my end.
Click to expand...
Click to collapse
For me there is a big delay sometimes. Do you have AOD enabled?
BlazingKahn35 said:
I noticed just as I woke up that my phone was charged to 100%. Did you removed battery care from the kernel?
Click to expand...
Click to collapse
Not intentionally no. It might be not enabled the way I built the source or i need to see if the drivers is available somewhere else to be able to build it in.
I'll play around with it the next few days, see if I can reproduce the issue and find what's missing or broken. Thanks for the report again.
BlazingKahn35 said:
For me there is a big delay sometimes. Do you have AOD enabled?
Click to expand...
Click to collapse
Not constant AOD. Only waking to AOD screen when lifting the phone is enabled.

Categories

Resources