[KERNEL][Z][6.0.1][CM/AOSP] Airless Kernel

airlessproject

Senior Member
Aug 16, 2013
918
1,819
0
Prilep
Introduction

The idea for creating this kernel came up around a year ago, during early LP custom ROM builds. I thought it would be a nice idea to fork the most advanced kernel at the time, EvoMix, developed by our renowned Olivier, Joe (SuperHanns) and Alex, and add to it the latest upstream 3.4 patches as well as mix its features with another good kernel, KMA.
After that experiment turned out not so bad, me and fellow xda user BrateloSlava got an idea to continue developing that mixed kernel with our own cherry-picks from the best kernels available for various devices, and use it in my builds of RR and later GZR Tesla ROM.

Now, one year later, I continued the development that BrateloSlava did on the kernel for the last months for my Tesla and Validus ROMs, and I thought it would be a nice idea to extend this kernel's availability to the users of all custom ROMs around at the moment.

So, here is Airless Kernel for Xperia Z, compatible with all CM/AOSP based Marshmallow ROMs.


Features:
CPU
- Governors: ondemand, interactive, performance, intellimm, yankactive, yankdemand, zzmoove, barry_allen
- Multicore Power Saving - tries to group tasks into the least cores possible
- Schedule workqueues on awake CPUs
- CPU Frequency underclock (192 MHz) and overclock (1.7 GHz) capability
- Voltage regulation

Thermal management
- Simplified and efficient thermal driver
- Flexible ramp threshold temperature

GPU
- Governors: simple, ondemand, performance
- 27 MHz idle frequency for ideal power saving
- Overclocked to 487 MHz

Sound
- Faux Sound Control allowing amplified speaker, headphones and microphones volume

Misc
- RGB subtractive color control
- I/O Schedulers: sioplus, bfq, fiops, zen, row, deadline, noop
- Dynamic FSYNC
- Kernel Samepage Merging
- ARM Auto Hotplug (mpdecision replacement) - no tunables
- Gentle Fair Sleepers
- PM: Power Suspend as a replacement to Early Suspend
- TCP congestion protocols: westwood, highspeed, cubic, reno
- Disabling of some well known wakelocks (e.g. msm_hsic_host)
- Double Tap to Wake
- Fast Charge
- Vibration Strength control

- Compiled with latest UBER 5.x GCC toolchain
- Latest upstream patches: 3.4.112
- Many build flag optimizations (graphite, Ofast)

Download

Latest version (20160901)

Installation:

- Make sure you're running a CM or AOSP-based Marshmallow ROM (Resurrection Remix, AOKP, etc..)
- Flash the zip in TWRP 3.0 (tested, recommended) or other compatible recovery
- Reboot

Source code

Github link

Bug reporting rules

Only use the DevDB bug report tool for reporting bugs, provide proper logs and state the ROM, its XDA thread and version you're using. All other reports will be ignored!!


You assume all responsibility for anything that may happen
and I cannot and will not be held responsible
for anything that may happen to your device as a result of flashing a kernel.

*FLASH AT YOUR OWN RISK*


XDA:DevDB Information
Airless Kernel, Kernel for the Sony Xperia Z

Contributors
airlessproject, BrateloSlava
Kernel Special Features:

Version Information
Status: Stable
Stable Release Date: 2016-09-01

Created 2016-05-09
Last Updated 2016-09-01
 

airlessproject

Senior Member
Aug 16, 2013
918
1,819
0
Prilep
Tunables for reducing minimal brightness:

Code:
### Reduce backlight brightness
## to revert to default - enter 0

echo "8" > /sys/module/leds_lm3533_ng/parameters/lm3533_bl_reduction;

## values of brightness, lower than lm3533_bl_brightness_min, are being decreased by lm3533_bl_reduction

echo "30" > /sys/module/leds_lm3533_ng/parameters/lm3533_bl_brightness_min;
 
Last edited:

masteriori

Senior Member
Feb 16, 2012
895
141
63
@airlessproject
RGB subtractive color control
How do I make make use/activate it?

Also, could you please add pre-tuned Gamma settings like Tommy-Geenexus did for his Zombie Kernel? As you are well aware, the XZ screen by default is very dull and could do with extra constract/saturation.

Thanks

Edit--
After flashing this kernel, it feels a bit sluggish as if it's saving too much power.
 
Last edited:

airlessproject

Senior Member
Aug 16, 2013
918
1,819
0
Prilep
There is already lower brightness, you'll just need to set up a init.d script with these lines:

Code:
### Reduce backlight brightness
## to revert to default - enter 0

echo "8" > /sys/module/leds_lm3533_ng/parameters/lm3533_bl_reduction;

## values of brightness, lower than lm3533_bl_brightness_min, are being decreased by lm3533_bl_reduction

echo "30" > /sys/module/leds_lm3533_ng/parameters/lm3533_bl_brightness_min;
I may add pre-tuned gamma for next builds, until then use the RGB control in Kernel Adiutor -> Screen.

If you feel it's slow, just tune some parameters in kernel adiutor, like up_threshold in the cpu governor, disable multicore power saving etc. Also check if there's a stuck throttled cpu max frequency, that can happen sometimes if it throttles during boot.

Anyway for me it's not sluggish at all, I wouldn't have published it if it was.

Also I'd like to kindly remind all to use the devdb feature and at least provide logs for any problems you encounter and state the ROM you use and its version.
Devs are not psychic to know what's going on with your usage.

Sent from my E6553 using Tapatalk
 
Last edited:

Artyomska

Senior Member
Dec 24, 2013
289
104
0
Nice to see a Custom Kernel for our old phone :). Thank you for your hard work, it really made a difference in speed on my phone running the latest version of RR.
As a request, can you add to the GPU the 400Mhz option? I mean I'm not fond of overclocking, and prefer to use the stock speed regarding the CPU and the GPU.
 
  • Like
Reactions: airlessproject

airlessproject

Senior Member
Aug 16, 2013
918
1,819
0
Prilep
As a request, can you add to the GPU the 400Mhz option?
Unfortunately an additional frequency cannot be added due to known problems with frequency decisions of the driver when it's added, so it would have to be fully non-overclocked if we want to have 400 MHz.

I can assure you that there's no significant battery drain with 487 MHz nor any other issue, but if you totally insist on having stock max frequency, I can provide an optional version of the kernel with GPU OC disabled.


Sent from my E6553 using Tapatalk
 
  • Like
Reactions: pjohn23

Artyomska

Senior Member
Dec 24, 2013
289
104
0
Unfortunately an additional frequency cannot be added due to known problems with frequency decisions of the driver when it's added, so it would have to be fully non-overclocked if we want to have 400 MHz.

I can assure you that there's no significant battery drain with 487 MHz nor any other issue, but if you totally insist on having stock max frequency, I can provide an optional version of the kernel with GPU OC disabled.


Sent from my E6553 using Tapatalk
No need to do this. I will just downclock to 320Mhz, since the difference in performance isn't that big to affect my daily use. Anyway you are awesome for making this offer.:good: You don't see this kind of thing everyday.
 

airlessproject

Senior Member
Aug 16, 2013
918
1,819
0
Prilep
Sd card corrupted error after flash:(((
How to fix?:((
I don't want to format it
I tried sd card on computer and it worked...
Logs please, also which ROM and version did you use it with.

Is it safe for those who are on customized rom??
This is only for custom Marshmallow ROMs (RR, AOKP, CM etc.)

Sent from my E6553 using Tapatalk
 
Last edited: