[KERNEL][AOSP/CM][mm6.0/N7.X] Arsenic Kernel-R46 (06/05/2017) - OnePlus X Android Development

Hi Folks!
Here i present you Arsenic Kernel. Based on close to AOSP - Slim Kernel, Thanks to @Martinusbe for a perfect and stable base.
Started this project for unofficial builds of ROMS with keeping performance in mind without compromising on battery backup. It was supposed to be included in my personal builds of roms but some users requested to release it for other roms so here it is with anykernel method.
zip doesnt offer any module changes and doesnt mess with the ramdisk so you can feel free to dirty flash it over prebuilt kernel or Arsenic's previous versions(Dont forget to clear data of kernel adiutor or anyother kernel control app you're using before).
Keeping op short and simple and with keeping New users in mind, here is a brief description about kernel:
Features:
Supports all AOSP/CM based roms except OOS and OldDroid's AOSP.
Supports Sultanized roms.
Supports Both Android 6.0.x and 7.x.x
Built with Latest GCC 4.9 toolchain from Google.
Device and target flags enhancements and improvements, etc.
Kernel compressed with XZ.
Upstream CAF fixes and changes.
USB Fast Charge.
Switched to -O2 Optimization level.
Adreno idler.
Krait C-states customizations.
ExFat and F2FS support.
Disabled Lots of useless Debuggings and Redundant Code.
New Governors and I/O Schedulers.
Optimized sfck compression.
Various Upstream backports.
SOC Driver Tuneables.
Enabled Arch Power.
Optimized RWSEM Algorithm.
FiiO USB DAC driver for better input detection
Options to disable various wakelocks.(Use them wisely!)
TCP Congestion algos (like westwood,cubic etc).
CPU Input Boost.
Voltage Control.
Various under the hood Battery and performance improvement patches(Advance users can look at my git, each commit is there with proper explaination).
Stability and Battery backup at its Peak!
Available Govs: conservative, impulse, interactive, ondemand, performance, powersave, smartmax, userspace, wheatley, yankactive, zzmoove.
Available I/O Scheds: row, bfq, fiops, noop, cfq, ZEN and Tripndroid.
Keep an eye on the changelog for more/newly add features as this list wont be updated regularly so either have a look on Changelog or just flash Arsenic and explore yourself..!
FROM R24, ONLY NEW MM BOOTLOADER WILL BE SUPPORTED!
MAKE SURE YOU ARE RUNNING A ROM WITH NEW MM BOOTLOADER FOR R24+
if you are still running roms with old bootloader then flash R23..!
Follow THIS GUIDE to Upgrade Bootloader for future support.
From R46, Builds are divided according to the gesture implementation of the ROM. READ THIS before downloading/flashing the builds!
Download links: https://www.arsenic-kernel.download
Mirror (AFH) : https://www.androidfilehost.com/?w=files&flid=82234
(Flash correct build depending on the ROM you are using)
For OOS Compatible Build : Head over to THIS THREAD
Keep in mind:
You can dirty flash it over prebuilt kernel of your rom or any previous version of Arsenic but its always prefered to flash stock kernel or dirty flash your rom if you are already running a custom kernel to avoid any conflicts or problems.
Compatible with both AOSP(Except OldDroid's AOSP) and CM Roms BASED ON Android 6.0 and 7.X
Bugs and issues:
Report if you find any.
Special Thanks and Credits to (in NO specific order):
@Krustak
@Martinusbe
@hurtsky
@Joshwin Aranha
@sultanxda
@eng.stk
@Lord Boeffla
@franciscofranco
@ZaneZam
@Exodusche
@nikowfreak
XDA:DevDB Information
[AOSP/CM] Arsenic Kernel , Kernel for the OnePlus X
Contributors
Nitzz
Source Code: https://github.com/CheckYourScreen/Arsenic.Kernel
Kernel Special Features: Battery backup (at its best) | Performance (30-40% more than aosp/stock kernel "atleast") | Stability - (what else do you expect from a kernel...?)
Version Information
Status: Stable
Current Stable Version: R31
Stable Release Date: 2016-07-20
Created 2016-07-19
Last Updated 2017-05-07

Changelogs:
R46 (06/05/2017) - (Separate build for lineage available from this release)
Merged Security Patches (ranging from 2014-2017)
REDUCED BOOT TIME DRASTICALLY!!! (Boots hell lot faster than any old builds)
Disabled Kernel Panic - Device will simply reboot instead of throwing White LED of Death.
Fixed VPN / L2TP kernel panic issue
Reduced Load Avg.
Merged/Updated Wlan prima driver upto latest patches from CAF
Fixed and Switched to Non Debug build of Wlan driver
Reduced PowerHAL related Log Spam
Disabled Entropy contributions for non rotational devices
optimized input count calculations
Reduced kernel and zip size.
Reduced kmsg and demsg log spam
Increase the buffer-head per-CPU LRU size
Removed CC wrapper
Replaced EXT2 and EXT3 drivers with EXT4 in kernel to reduce size without funtionality loss
Stipped debugging leftovers from modules
Compiling Sensitive modules with -Os
Fixed Audio Leak Issues (Infamous Porn bug from OP3 forum)
Removed rejected files
Updated Busybox
Optimized deadline io sched.
disabled kernel audit logs
Fixed various Null Pointer Dereferences
Fixed null pointer dereference in Fast Charging Driver
Reduced Network latencies
disabled slice idle for BFQ and CFQ
Removed kernel panic from bam_dmux
Fixed various memory leaks
Fixed various spin lock-ups
limited rate buffer msgs in camera driver
Merged/Updated latest F2FS upstream patches
Fixed F2FS default idle interval
Enabled Diag support - Network Signal Guru App Support
Nuked unwanted driver modules
Enabled NTFS R/W
Removed Timer Stats config
Reduced thermal related log spam
Disabled unwanted SCSI support configs
Disabled register dumps
USB related fixes
Added Nightmare Governor
Tuned Impulse Governor
Video buffer fixes and improvements
Fixed entropy depletion issue - generated entropy faster now
/Proc related fd permission fixes
MErged/Updated EXT4 Upstream patches
Fixed password mount issus on cifs
Prevent futex attaching to kernel threads
Blocked Netlink wakelock
Disabled all wakelocks out of the box
updated revision check for newer EMMC
Optimized ZEN I/O sched - upstreamed to V2
ZEN: set fifo batch to 16 to reduce overload on EMMC and CPU
Resolved stack corruption issues
Lineage specific separate build - switched to new gesture implementation
And more stuff which i dont remember . . . :silly:
R32 (21/12/2016) -
Fixed Tethering issues on ROMS with latest CM(trees) changes.
Minor Code Cleanup and Fixes
Old releases:
R31 (06/12/2016)-
December security patches (partial,left over patches will be merged in next release. Critical ones are merged already)
Permissive out of the box. Works on all roms now including DU (didn't hardcoded permissive so can be changed to enforcing via Kernel Adiutor but make sure your rom supports SElinux Enforcing mode-DU doesn't)
Nuked non-working GPU Govs from userspace (wont reboot when you select any broken governor)
Improved Responsiveness (literally 0 delay/latency while providing input)
Fixed lots of code errors/warnings with better indentatioin.
Nuked LP11 state of DSI lanes
Removed unwanted debuggings
Reduced resource utilizations
Fixed CVE-2015-8966
20% increase in transactions per second on memory
Reject groups/events spanning multiple hardware PMUs
No more events which causes soft lockups to prevent device entering into sleep.
R29 (28/11/2016) -
* Optimized square root algorithm.
* Rowhammer vulnerability patch
* Security Patches
* CPU Boost interval improvements
* Fix off by one vulnerabilities
* l2tp: fix oops in l2tp_eth_create() error path
* Staging: android: binder: Allow using highmem for binder buffers
* Add and Enable Modified ElementalX Governor
* Enable DNS Resolver, NFS CIFS
* msm: vidc: add ion_handle checking before mapping buffers.
* Reverted Panic Prevention Measures (for now)-should fix black screen issues for some users who faced it.
* sdcardfs: Flag files as non-mappable
* lowmemorykiller: account for unevictable pages
* Fixed uninitialized variables
* Selinux fixes
* sched/loadavg: Fix loadavg artifacts on fully idle and fully loaded systems
* net: sch_generic: Allow devices to opt-out net watchdog
* msm_rmnet_bam: Actually disable watchdog for msm_rmnet
R26 (13/11/2016) -
* Merged November Patches (i might have missed some, will be included in next release if any)
* Backports of Extra Security Patches
* bam_dmux: increase wakeup timeout
* usb: mtp: increase RX transfer length to 1M (faster mtp transfer rate, yup for real!)
* usb: Avoid spammy warning due to misbehaving Apps
* Allow ignoring system restarts and prevent kernel panic when sub system restart isn't available
* Disable alot of unwanted debuggings
* Enabled L2TP Extensions
* Nuked TV Tuners and their redundant code
* Increased Stability!
* Prevent kernel from going for a panic for any abnormal condition and fill logs instead.
* Prevent kernel panic in case of abnormal ssr being issued by the system for a reboot/shutdown process.
* Decreased Boot Time!
R25 (30/10/2016) -
* Built with Latest GCC4.9 Upstream from Google.
* random: increase read and write entropy levels
* Add and Enable USB Fast Charge
* Add and Enable ZEN and Tripndroid I/O Scheduler
* vfs: Work around NULL pointer dereference in d_path()
* dts: Reduce panel wake/sleep delays
* mdss: move to a kthread for vsync_retire_work_handler (Backport from Pixel)
* kgsl: convert some workqueues to use kthreads (Backport from Pixel)
* drivers: vidc: Enable vidc debugging
* Fix Dirty CoW Vulnerability
R24 (11/10/2016) - ( FROM THIS RELEASE ONLY NEW MM BOOTLOADER WILL BE SUPPORTED!
MAKE SURE YOU ARE RUNNING A ROM WITH NEW MM BOOTLOADER FOR R24+
if you are still running roms with old bootloader then flash R23..! )
* Added support for new mm bootloader and roms.
R23 (10/10/2016) -
* Merged October Security Patches
* Removed alot of redundant code and unused drivers
* Disabled unecessary Debugging(s)
* PM / tracing: remove deprecated power trace API
* config: disable swap
* Update-binary: Remove scanning for deprecated libs
* soc: qcom: bam_dmux: Add and Enable fast-shutdown flag
* cpufreq: impulse: Do not consider min freq change as boost
* mm: set vm_swappiness to 0
* tcp_output: set initial TCP window size to 64K (speed improvement)
* wakeup: add toggle for msm_hsic_host wakelock
* Bluetooth: Remove unused hci_le_ltk_reply()
* Add full compatibility check and left over files for sultanized roms support
* Makefile: remove -g0 flag to decrease boot time.
R18 (17/09/2016) -
*Add support for SULTANIZED ROM's.
*Add support for Android 7.0 based roms.
*Add support for chinese and north american oneplus X
*Merge Driver specific September security patches!
*Add code for removal of deprecated binaries and libs (mm-pp-daemon, deprecated since jellybean known to be cause of heating and batery drain issues)
*Remove Deprecated code from kernel
*Switch to -O2 optimization level.
*GCC only builds from now on, farewell Uber.
Refer to THIS Post plz.
R12 (09/09/2016) -
*UPSTREAM: ppp: take reference on channels netns
*ASoC: check for null function pointer for dummy device read/write
*BACKPORT: Bluetooth: Fix potential NULL dereference in RFCOMM bind ..
*UPSTREAM: net: Fix use after free in the recvmmsg exit path
*UPSTREAM: ppp: defer netns reference release for ppp channel
*UPSTREAM: udp: fix behavior of wrong checksums
*Bump to R11..!
*fs: ext4: disable support for fallocate FALLOC_FL_PUNCH_HOLE
*UPSTREAM: ALSA: control: Fix replacing user controls
*msm: camera: Fix memory read by adding bounds check
*BACKPORT: netfilter: x_tables: validate e->target_offset early
*UPSTREAM: netfilter: x_tables: make sure e->next_offset covers remain�
*BACKPORT: KEYS: potential uninitialized variable
*msm8974-regulator.dtsi: further reduce CPU retention voltage
*Voltage Control: regulator: adjust values for have the full control
*Voltage Control: regulator: set retention-voltage to 600mV
*mmc: core: With great features come great spam
*diag: Reduce error message frequency
*mach-msm: disable smd debug
*audit: disable log spam msgs �
*Implement almighty compiler flags �
*Revert "PM / Wakeup: Use rcu callbacks for better performance" �
*block: disable add_random
*Bump to R9..!
*defconfig: Enable Voltage Control
*Voltage Control: added voltage control for DTS based kernels
*defconfig: Enable exfat support and refractor defconfig
*arm: irq: Tone down kernel logging
*msm: camera: suppress excessive logging - boot faster
*msm: vidc: disable debug logs
*audit: Imma let you finish, but shut up �
*usb: ks_bridge: disable debugging �
*msm: mpm: disable debugging �
*selinux: just shut up �
*msm_rmnet: Kill logspam �
*input: tri-state-key: Fix sometimes not working state switching �
*input: tri-state-key: Fix direct references to HZ �
*fs: updated to exFat support version 1.2.19 �
*fs: Add exFat support version 1.2.9 (kitkat source drop) �
*fs: Add exFat support version 1.2.7 (Samsung OSRC)
R8 (21/08/2016)-
*reverted rtmutex commits to fix heating issues while using heavy apps
*cfq-iosched: fix the setting of IOPS mode on SSDs
*Revert "mm: Add notifier framework for showing memory"
*devfreq: Fix simple_ondemand crashing on startup
R7 (19/08/2016)-
*cpufreq: cpuboost: Fix Unwanted Ramp ups
*msm: vidc: Initialize kernel space stack variables
*sched: Fix memory leakage in build_sched_groups()
*soc: qcom: smd: Fix SMD packet sync loss issue
*gpio: sysfs: fix memory leak in gpiod_sysfs_set_active_low
*gpio: sysfs: fix memory leak in gpiod_export_link
*ARM: DMA: ensure that old section mappings are flushed from the TLB
*dma-contiguous: Re-order the error handling sequence
*rtmutex: Confine deadlock logic to futex
*rtmutex: Simplify rtmutex_slowtrylock()
*locking/rtmutex: Drop usage of __HAVE_ARCH_CMPXCHG
*rtmutex: Plug slow unlock race
*rtmutex: Handle deadlock detection smarter
*rtmutex: Detect changes in the pi lock chain
*rtmutex: Fix deadlock detector for real
*splice: fix racy pipe->buffers uses
*genirq: Prevent proc race against freeing of irq descriptors
*genirq: Sanitize spurious interrupt detection of threaded irqs
*genirq: Remove racy waitqueue_active check
*genirq: Add missing irq_to_desc export for CONFIG_SPARSE_IRQ=n
*irq: Enable all irqs unconditionally in irq_resume
*genirq: Fix can_request_irq() for IRQs without an action
*genirq: Avoid deadlock in spurious handling
*percpu: free percpu allocation info for uniprocessor system
*vfs: fix bad hashing of dentries
*sched/rt: Reduce rq lock contention by eliminating locking
*block: Make CFQ default to IOPS mode on SSDs
*crypto: arm/aes update NEON AES module to latest OpenSSL version
*Enable "tune krait config with cortex-a15""
*Enable pipe flag
*Switch to latest GCC 4.9
*crypto: msm: qcrypto: Fix hash crash if not last issue
*crypto: msm: qcrypto: Fix spinlock deadlock issue
*crypto: msm: remove wakeup lock in qcrypto driver
*crypto: msm: fix qcrypto driver to improve IPSec performance
*crypto: msm: qcrypto: fix crash in _qcrypto_tfm_complet
*cpufreq: interactive:call __cpufreq_driver_target() for cur frequency
*cpufreq: interactive: Exercise hispeed settings at a policy level
*Input: Propagate hardware event timestamp to evdev.
*net: validate the range we feed to iov_iter_init() in sys_sendto/sys_�
*onyx_defconfig: Enable support for FiiO USB DAC
*Don't show empty tag stats for unprivileged uids
*mm, oom: make dump_tasks public
*mm: Add notifier framework for showing memory
*slub: fix incorrect return type of get_any_partial()
*hid: Add driver for FiiO USB DAC
*PM / devfreq: Rewrite devfreq_update_status() to fix multiple bugs
*qcom-cpufreq: Remove use of device_suspended in the hotplug path
*qcom-cpufreq: Fix hotplug blocking logic
*qcom-cpufreq: Block hotplug until cpufreq is ready
*msm: rq_stats: Calculate load based on current freq limit
*ASoC: msm: qdsp6v2: Silence some noise
*prima: Add TDLS config option
*cpufreq: Return directly in __cpufreq_get if policy is NULL
*msm: kgsl: Defer adding the mem entry to a process
R6(10/8/2016)-
*Disable CONFIG_PFT as it is unsupported
*sched: Fix race in idle_balance()
*sched/idle: Avoid spurious wakeup IPIs
*msm: camera: isp: Silence IRQ status log-spam
*sched: Limit setaffinity with CPU_HOTPLUG
*cpufreq: interactive: don't boost cpu if already boosted
*msm: clock: change to arch initcall
*sched: cpu_power: enable ARCH_POWER
*vfp: change to mfloat-abi=hard and mfpu=neon-vfpv4
*cpufreq: Always allow update of user policy
*mm/slub: don't wait for high-order page allocation
*Enable Prima driver( should fix wifi issue on oos(?) , needs testing.)
*USB: fix invalid memory access in hub_activate()
*USB: dwc3: debugfs: Add boundary check in dwc3_store_ep_num()
*msm: perf: Do not allocate new hw_event if event is duplicate.
*platform: msm: Fix compile when CONFIG_PFT is not set
*cpufreq: implement cpufreq_quick_get_util()
*ashmem: fix CVE-2016-5340
*cpufreq: Notify governors when cpus are hot-[un]plugged
*cpufreq: cpuboost: Fix Multiple assignments
*mm/vmscan.c: avoid possible deadlock caused by too_many_isolated()
*mm: vmscan: fix the page state calculation in too_many_isolated
*BACKPORT: perf tools: Document the perf sysctls
*FROMLIST: security,perf: Allow further restriction of perf_event_open
*onyx_defconfig: enable SECURITY_PERF_EVENTS_RESTRICT
*Revert "Enable "tune krait config with cortex-a15""
R4(29/7/2016)-
*cpufreq: Make sure target freq is within limits
*Add and Enable KCAL v2 support.
R3(28/7/2016)-
*cortex a15 optimizations
*Add add sensor_ind wakelock toggle
*ARM: smp: Wait just 1 second for other CPU to halt
*Optimize task_sched_runtime()
*tick: Upstream fixes
*Shift to GCC Toolchain from Linaro (Much smoother and Better Battery backup as compared to linaro builds)
R2(19/7/2016)-
*Touch boost will not exceed configured max cpu freq
*Updated Defconfig.
*Shifted to XZ compression from GZIP (zip size down to 6.7mb from 10mb)
*removed waves effect patch from oem by sultan.
*removed fast idling of cpus when system is partially loaded.
*Enabled TCP congestion modules, westwood set as default.
R1(18/7/16)-
*initial release

Suggestions and FAQs
Suggested profile/settings for kernel adiutor:
Recommended Profile:
CPU max freq : 1.7ghz
CPU min freq : 300mhz
Governor : Impulse / Interactive (Impulse is the best gov. whereas Interactive is the Smoothest!)
Fast Charge : Enabled
Multicore Power Saving : Aggressive
Sync Threshold : 729mhz
Input Boost Freq : 652mhz
Thermal : Core Control enabled
Speaker Driver Leakage toggle(in soc driver tuneable): enabled
Krait C-States Settings toggles: enable all
Adreno Idler : Enabled
GPU Gov. : msm-adreno-tz
I/O scheduler : ROW with 512kb read ahead for int. and ZEN with 512kb for external
Wake locks toggles: DISABLE ALL (this will prevent wifi and bluetooth wakelocks if your device is suffering from any-check battery graph if you get wifi on usage even after being turned off) (turn them on if you face any issue, you wont actually )
TCP Cong Algo : Westwood
Battery oriented:
CPU max freq: 1.5ghz
CPU min freq: 300mhz
governor: Impulse
Multicore Power Saving: Aggressive
Sync Threshold: 729mhz
Input Boost Freq: 652mhz
Thermal: Core Control Enabled
Speaker Driver Leakage toggle(in soc driver tuneable): enabled
Krait C-States Settings toggles: enable all
Adreno Idler : Enabled
GPU Gov. : msm-adreno-tz
I/O sched: ROW with 512kb read ahead for int. and ROW with 384 kb for external
Wake locks toggles: DISABLE ALL (this will prevent wifi and bluetooth wakelocks if your device is suffering from any-check battery graph if you get wifi on usage even after being turned off) (turn them on if you face any issue, you wont though )
TCP Cong Algo- Westwood
Insane Battery Profile:
CPU max freq : 1ghz
CPU min freq : 300mhz
Governor : Impulse
Fast Charge : Enabled
Multicore Power Saving : Aggressive
Sync Threshold : 652mhz
Input Boost Freq : 422mhz
Thermal : Core Control enabled
CPU Voltage : -10 (Global Offset)
Speaker Driver Leakage toggle(in soc driver tuneable): enabled
Krait C-States Settings toggles: enable all
GPU Gov. : msm-adreno-tz
Min. Freq. : 200mhz
Max. Freq. : 330mhz
Adreno Idler : Enabled
I/O sched : FIOPS with 512kb read ahead for int. and ROW with 384 kb for external
Wake locks toggles: DISABLE ALL (this will prevent wifi and bluetooth wakelocks if your device is suffering from any-check battery graph if you get wifi on usage even after being turned off) (turn them on if you face any issue, you wont actually )
TCP Cong Algo : Westwood
---------------------------------------
Default profile for zzmoove gov. is set to 0 by default, change it to your desired profile, more info about profiles are HERE.
I prefer ybat (profile_number=2).
---------------------------------------
Since All of these settings are not visible in official Kernel Adiutor, kindly use Kernel Adiutor Mod from HERE

F.A.Q's :
Can you add [this] and [that] feature to arsenic?
Something I pride myself with this kernel is that it does not have a bunch of random, useless features or patches mashed into it. Everything put into this kernel is thought out well and tested. I see a lot of works being made popular because it has [this] and [that] feature when really, it's nothing revolutionary(atleast to me). As a matter of fact, most things added to any kernel will not make it 5x better than any other kernel. Most of the time, simple is better; and in this case it definitely is!
Any plans of upstreaming the linux version?
No, and i wont. Though i have test builds ready but they wont make up to the release version. Upstreaming linux version doesnt make much difference infact it does degrade Arsenic's performance. Reason why i'm against it is that I've removed almost all possible useless redundant code and debugging present in it to improve kernel in all aspects, upstreaming will not only add alot of redundant code but will also add debugging functions for those redundant code! Which will not only increase kernel's size but will heavily impact on kernel's performance, battery backup and stability. Currently 3.4.0 is "THE" most stable branch and i'd like to keep it.
Why MPDecision? Why not remove the hell outta it?
You want me to remove something which was developed by some of the finest engineers of this world and is currently being shipped on almost all android devices..? Dont you think there would have been a reason why Google chose MPDecision over anyother hotplug.
What most of the users arent aware of is that, MPDecision works best with the default thermal solution, all it needs is a little touch..
As far as adding an additional hotplug, m still thinking about it.
Why so rude?
Not rude, Determined. Everything i do has a reason behind it. And I do sometimes accept feature request if they seems to be worthy.

Actually proper credits for my version of AnyKernel belong to @Lord Boeffla

RJDTWO said:
Actually proper credits for my version of AnyKernel belong to @Lord Boeffla
---------- Post added at 09:33 PM ---------- Previous post was at 09:29 PM ----------
May I ask why you have disabled a few compilation optimizations? It seems counter intuitive LOL. I could have a look to see why (if) they produce errors when you compile
---------- Post added at 09:33 PM ---------- Previous post was at 09:33 PM ----------
May I ask why you have disabled a few compilation optimizations? It seems counter intuitive LOL. I could have a look to see why (if) they produce errors when you compile
Click to expand...
Click to collapse
sure, plz reply in pm or ping on telegram if you use it

Two new kernels in the past few days?? Cool! I will be trying this one out as well! I'll install tonight and it'll get a test run of my work day tomorrow.

Great job. I

Oh and in your profile recommendation, DO NOT use zzmoove with agressive power saving as it has conflicts with its got plug and generally isn't a good thing in general. Oh and for read ahead, use 128 for internal and 1024 for 16gb external, 2048 for 32 and up.
128 won't harm performance at all and should increase stability.

RJDTWO said:
Oh and in your profile recommendation, DO NOT use zzmoove with agressive power saving as it has conflicts with its got plug and generally isn't a good thing in general. Oh and for read ahead, use 128 for internal and 1024 for 16gb external, 2048 for 32 and up.
128 won't harm performance at all and should increase stability.
Click to expand...
Click to collapse
No conflicts so far with Mpdecision so aggressive is a go for me. Read ahead is higher for internal as its much faster than external memory cards, it depends on class/speed of memory card. Since internal is much faster so it can use upto 1024 and for ext 384 is recommended. Do shed a light if m wrong.
Most users doesnt use a class 10 ext. Memory card so read ahead for ext shouldnt exceed 384 imo.

Nitzz said:
No conflicts so far with Mpdecision so aggressive is a go for me. Read ahead is higher for internal as its much faster than external memory cards, it depends on class/speed of memory card. Since internal is much faster so it can use upto 1024 and for ext 384 is recommended. Do shed a light if m wrong.
Most users doesnt use a class 10 ext. Memory card so read ahead for ext shouldnt exceed 384 imo.
Click to expand...
Click to collapse
Aggressive power saving isn't referring to mpdecision. It overrides zzmooves hotplug driver. As for read ahead, its actually vice versa. You don't need a higher value for internal storage because as you mentioned, its much faster. For every 8gb of external data the rule of thumb is generally a 512 bump.
Sorry I haven't had time to take a look at TG again...

RJDTWO said:
Aggressive power saving isn't referring to mpdecision. It overrides zzmooves hotplug driver. As for read ahead, its actually vice versa. You don't need a higher value for internal storage because as you mentioned, its much faster. For every 8gb of external data the rule of thumb is generally a 512 bump.
Sorry I haven't had time to take a look at TG again...
Click to expand...
Click to collapse
Zzmoove's hotplug driver..? Shed some more light on it plz cz kernel isnt shipped with an option to change hotplug, mpdecision is working good so far with zzmoove and aggressive power saving mode.

RJDTWO said:
---------- Post added at 09:33 PM ---------- Previous post was at 09:29 PM ----------
[/COLOR]May I ask why you have disabled a few compilation optimizations? It seems counter intuitive LOL. I could have a look to see why (if) they produce errors when you compile
---------- Post added at 09:33 PM ---------- Previous post was at 09:33 PM ----------
May I ask why you have disabled a few compilation optimizations? It seems counter intuitive LOL. I could have a look to see why (if) they produce errors when you compile
Click to expand...
Click to collapse
Kindly remove this, this might be misleading some New users as pipe isnt supported on linaro 4.9 and i already enabled cortex a15 optz, and no errors in kernel so far
Thnx

Nitzz said:
Zzmoove's hotplug driver..? Shed some more light on it plz cz kernel isnt shipped with an option to change hotplug, mpdecision is working good so far with zzmoove and aggressive power saving mode.
Click to expand...
Click to collapse
Zzmoove has a hot plug driver. Look under Alpha 0.3:
http://forum.xda-developers.com/galaxy-s3/development/info-cpu-governor-zzmoove-t2326544
Aggressive power savings overrides its ability to manipulate cores, so beforehand you either have to disable it or forget about aggressive power saving to avoid conflicts. Yes, mpdecision is a hot plug, but governors can have their own solutions too. PegasusQ has hot plugging too
---------- Post added at 11:29 AM ---------- Previous post was at 11:25 AM ----------
Nitzz said:
Kindly remove this, this might be misleading some New users as pipe isnt supported on linaro 4.9 and i already enabled cortex a15 optz, and no errors in kernel so far
Thnx
Click to expand...
Click to collapse
.... Yeah, sure...

RJDTWO said:
Zzmoove has a hot plug driver. Look under Alpha 0.3:
http://forum.xda-developers.com/galaxy-s3/development/info-cpu-governor-zzmoove-t2326544
Aggressive power savings overrides its ability to manipulate cores, so beforehand you either have to disable it or forget about aggressive power saving to avoid conflicts. Yes, mpdecision is a hot plug, but governors can have their own solutions too. PegasusQ has hot plugging too
.
Click to expand...
Click to collapse
I agree with the hotplug part but as far as i remember i cant see any option to enable zzmoove's hotplug and unless and untill mpdecision is on it wont get activated. For reference you can see boeffla's config app, it has option to change hotplug from default one to zzmoove's but in kernel adiutor its not available and unless you turn off mpdecision(which i dont recommend at all with my kernel) using power saving mode wont affect your device. M using aggressive mode with zzmoove ybat profile with mpdecision enabled and i havent faced any issue! If you dont like using multi core power saving then dont use it, simple as a pie. Its working great for me so m using

Nitzz said:
I agree with the hotplug part but as far as i remember i cant see any option to enable zzmoove's hotplug and unless and untill mpdecision is on it wont get activated. For reference you can see boeffla's config app, it has option to change hotplug from default one to zzmoove's but in kernel adiutor its not available and unless you turn off mpdecision(which i dont recommend at all with my kernel) using power saving mode wont affect your device. M using aggressive mode with zzmoove ybat profile with mpdecision enabled and i havent faced any issue! If you dont like using multi core power saving then dont use it, simple as a pie. Its working great for me so m using
Click to expand...
Click to collapse
I simply stated that it would cause conflicts... If a tree falls in the woods and nobody is there to see it then does it still make a sound?

Love the kernel great work. So much optional tuning in kernel adiutor. Comes with many governors to choose from. The suggested settings are well balanced battery, performance and zero lag.

Well, the Kernel is Solid, no complaints at all. Great work Nimit !
Attached Battery Graph for 2nd cycle.

Updated to R3..!
Updated to R3
R3(28/7/2016)-
*cortex a15 optimizations
*Add add sensor_ind wakelock toggle
*ARM: smp: Wait just 1 second for other CPU to halt
*Optimize task_sched_runtime()
*tick: Upstream fixes
*Shift to GCC Toolchain from Linaro (Much smoother and Better Battery backup as compared to linaro builds)
Recommended update!
Note: if you face a glitch in kernel adiutor regarding min. freq then plz ignore it as its just a glitch, shows current freq (on which CPU is scaling) for a sec and then will come back to the set one (300 Mhz by default). Freq scaling is normal and kernel works just fine!

The kernel is running nothing but fantastic!
Just updated to R3. Reminds me of leankernel back in the days. Smooth and stable.

Related

[Kernel][JB][aosp] [USBHOST] [sweep2wake] Komodo (5/15 /13)

This is a AOSP kernel for the lte.
since 4.2 is pretty stable I am going to start updating the changelog for it.
What is a kernel?
In computing, the kernel is the main component of most computer operating systems; it is a bridge between applications and the actual data processing done at the hardware level. The kernel's responsibilities include managing the system's resources (the communication between hardware and software components).
{
"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"
}
Features
Cpu overclocking - I include 3 variants 1.7, 1.8, and max OC of 1.998
Gpu overcloking - Controlable with various apps on the market (I prefer kernel tuner)
Cpu governors - intellidemand, badass, interactive, conservitive, powersave, performance, lionheart, ondemand, and more
IO schedulers - sio, cfq, vr, zen, deadline, and noop
Sweep2wake with extra gestures - see bottom of OP
Compiled with the latest Linaro 4.7 toolchain - this is usually updated once a month here http://www.linaro.org/downloads/
Linaro -O3 optimized with extra build flags
Sound control
HTC perflock disabled
Voltage control - Controlable with various apps on the market (I prefer kernel tuner)
USB fast charge support
Code:
Changelog 4/8/13 rls30
merge latest cm commits
clean cpu and gpu clocks
linux 3.071
add sound control (Change gains for headset and headphones,sys/kernel/sound_control)
add variant for s2w with gestures
Changelog 3/5/13 rls29
sched_fair: improve group logic
vsprintf: make %pV handling compatible with kasprintf()
lib/vsprintf: replace link to Draft by final RFC number, lib:
nohz: Remove ts->inidle checks before restarting the tick
Revert "jewel: adjust refx100 to 6650." …
remove unused branch labels from trylock routine
disable preemption in machine_shutdown
remove redundant initialization in alloc_page_buffers()
Update amd use lzo compression
jewel: display: remove pinfo.clk_rate.
linux 3.0.67
update rqstats
wcnss: Configure bite interrupt as edge triggered
linux 3.0.68
Changlelof 2/25/13 rls 28
"msm_fb: display: fix compiler warning for uint64_t format" …
jewel: adjust refx100 to 6650. …
msm_fb: display: fix compiler warning for uint64_t format …
video: msm: Remove timeout from wait4vsync …
msm_fb: display: get mipi frame rate from panel file …
msm_fb: display: wait4vsync before set suspend flag …
msm_fb: display: wait4vsync after timing generator is turned off …
msm_fb: display: replace msleep with wait4vsync …
msm_fb: display: check bus scale handler for registration …
msm: msm_bus: Add support for 64-bit bandwidth requests …
add zram using snappy compression support
add frandom number generator support
linux 3.0.66
clean up crc32
update bfq v6
increase capture number of periods
up MDP clocks
tune sched_fair
msm_fb: display: clean pipes from commit queue at suspend …
msm: rotator: Support Fast YUV for 8960, 8064 and 8x30 targets. …
msm: rotator: clear rotator bus scale handler …
forget using aroma to set gpu users can change via app after boot
update usb fastcharge to 3.1
wcnss: Update Riva ramdump segments
update arm topology drivers
add strncpy_from_user
Changlelog 2/16/13 rls 27
Linux 3.0.65
Linux 3.0.64
more cmdline for aroma
linux 3.0.63
msm_fb: display: add mdp clock control to histogram enable/disable …
msm_fb: display: keep borderfill pipe's iommu info …
msm: display: Fix blend configuration for video layer with MDP compos… …
msm_fb:display: correct bus bw for downscale case …
add HYPER gov
Changelog 2/10/13 rls 26
implement aroma for soff (thanks to rom chef for the help still has things to be implented)
msm_fb: display: restore previous mdp bandwidth when resume
android, lowmemorykiller: Sync with Google/CAF
msm: vidc: Add ioctls for MPEG-2 extradata support
video: msm: Fix copyright attribution. …
msm: kgsl: initialize kgsl_sync_timeline_ops properly …
msm: kgsl: Don't wake up gpu on kgsl_ioctl calls if not necessary …
msm: kgsl: Avoid NULL pointer in adreno setstate functions …
msm_fb: Check for panel power on after Unblank.
clean up journal
Revert "ASoC: msm: Fix issues in proxy port driver due to early afe p…
linux 3.0.62
compiled with -O3 buildoptimizaton and -funroll-loops build flag
Changelog 2/2/13 rls 25 For JB 4.2
this will only work on roms who have added the changes from decks 2/2/13.build
linux 3.0.61
added ROW,FIFO,and ZEN I/O schedulers
Updated to the latest linaro 4.7.3 tooolchain (1/13)
Tweaked mp decision (some of CG KeRnEl ChEfs features)
added 178 commits from Deck And CM team (without these guys this project would not exist)
Changelog 1/14/13 RLS 22C
Linux 3.0.58
entropy tweaks
Fix bug when pausing music it stopped and started again for a second
tweaked wifi settings
Changelog 1/6/13 rls 22B
Linux 3.0.57
block: add and use scsi_blk_cmd_ioctl
get rid of on-stack debugging
dynamic fsync
dont oc gpu by default, let user control
some minor code clean up
Changelog 12/29/12 rls22
linux 3.0.56
linux 3.0.55
linux 3.0.54
usb fast charge credit to Chad Froebel
showps ring buffer patch
usb headset detection
Updated VFP to max from 3.4.Y Google Android.
Changelog 12/3/12 rls21
retweaked readahead
GPU oc is reworked to work with kernel tuner (on the apps next update)
tweak sio scheduler
upgrade to linux 3.0.53
Deactivate Notification LED Timeout
implement the ck1 patchset
iosched: prevent aliased requests from starving other I/O
tweaked deadline scheduler
Changelog 11/25/12
use ion instead of pnem(this is tha change in decks build 11/24)
tweak FSB
tweak ksm
GPU 2D/3D OC
msm: kgsl: Ensure glitch free changing of the GPU frequency
vfp: Use hard-float and neon libraries instead of vfp ones
mm: drop swap cache aggressively
mm: swaptoken only when swap full
android: binder: Allow using highmem for binder buffers
mm: drop swap cache aggressively
sched: task_times() explosion avoidance for tasks with
Changelog 11/20/12 rls 19
added cpu topology drivers
upgraded to linux 3.0.52
msm: memory: Use standard cache routines
mm, oom: fix potential killing of thread
Changelog 11/16/12 rls 18
Tweaked crt animation hack
passed with -O3 optimizations
Changelog 11/14/12 rls 17
Updated drivers to work on cm stable and decks newest releases.
Changelog 11/9/12 (decks irc build 11/10 will not work with this kernel)
linux 3.0.51
I/O-less dirty throttling
clock wrap bug
Move REPEAT_BYTE definition
JIT compiler for packet filters, ARM: net
Use AC charging for unknown chargers
Add optimized AES and SHA1 routines
Hack for CRT animations fix
force headset notifications single threaded
Compile with -pipe
aio.c: Asynchronous I/O latency to a solid-state disk greatly increased
optimize apply_slack
fix rq->cpu_load[] calculations
readjust readahead
reclaim som ram from logger
Changelog 11/5/12
fixed the black screen issue reulting in soft reboot
updated compression algorithm
Updated to linux 3.0.50
Changelog 10/28/12
rls14
Sweep2wake(thanks Zarboz)(currently sweep to wake only works in one direction)
MHL enabled
Upgrade to linux 3.0.48
ChangeLog 10/27/12
rls 13
2 kernel version oc capped at 1.89 and 2.1
added vr scheduler
Implemented Jrcu
tweaked block layer
SON is using ramdisk from decks 10/26 build
support for this encryption app [url]https://play.google.com/store/apps/details?id=com.sovworks.edslite&feature=more_from_developer#?t=W251bGwsMSwxLDEwMiwiY29tLnNvdndvcmtzLmVkc2xpdGUiXQ[/url]
Changelog 10/17/12
added Zarboz new asswax governor (thanks Zarboz)
Added Fsync toggle: (File syncronization)
It's disabled by default. Enabled = stock IO speed while having data integrity; disabled = more IO throughput but less data integrity
echo Y > /sys/module/sync/parameters/fsync_enabled (N to disable and Y to enable)
Reapplied patches that broke during the upgrade of linux versions
crc32 optimized
lib/string: use glibc version
lib/memcopy: use glibc version
use the git implementation of SHA-1
Changelog 10/8/12
currently only working for cm10
added BFQ scheduler
perflock disabled
block layer tweaks
auto group scheduling
New wifi driver built from source with BT-AMP feature
Changelog 9/22/12 rls .07
added governors badass,wheatley,pegasusq, and lagfree
tweaked mpdecision
enable ntfs
low memmory tweaks
camera flash functions to 5 percent now
use crc32 patch
many minor patches and tweaks
Changlelog 9/19/12 rls 0.6
better voltage for 2.1
OTG USB HOST MODE
More battery friendly mpdecision(to disable navigate to sys/kernel/msm_mpdecision/conf/enabled change the value to 0)
[COLOR="Red"]doing this can harm your phone I do not recomend but to each his own[/COLOR]
[COLOR="Red"]to change the low value for thermal navigate to sys/kernel/thermal/allowed_low_freq and change to desired frequency[/COLOR]
Changelog 9/12/12 rls .04
Improved mpdecision with cpu1 not so sleepy
utilizing Haus' SON kernel Update script(thanks Haus)
Changelog (9/11/12) rls .03
implemented kernel based mpdecision
implemented kernel based thermald
[COLOR="Red"]With these implimenattions this will rename your thermald and mpdecision binary in your rom to thermal_backup and mpdecision_backup.[/COLOR]
Changelog (9/7/12) rls .02
GPU OC
Added usercontrolled voltage
disabled fsync
Tweaked thermal (trying to manage cpu1)
Boost FSB to 533
tweak smartassv2 governor
and a few other tweaks
Changelog (9/6/12) rls .01
Added CPU OC to 1.89 ghz
Added schedulers VR, SIO, CFQ, DEADLINE; all optimized for flash devices
Addeded Governors smartass2,interacitve,intellidemand,savadgedzen,2 phase ondemand,performance,conservitive,lionheart
Disabled fair gentle sleepers for better performance on android
increased vm readahead to 1024
made memmory allocation optimizations (shows 726 mb of ram)
many little tweaks compiled with linaro 4.6
XZ compression
Sweep gestures (sweep finger across the capacitive buttons on bottom of phone):
Code:
Sweep2sleep: with screen on, swipe right to left to turn screen off
Sweep2power: with screen on, swipe left to right for power menu (simulated 2.5 second power button hold)
Sweep2snap: with screen on: swipe left to right and press Home within 2 seconds for a screen snap
Sweep2wake: with screen off: swipe left to right to turn screen on (disabled by default for better battery life)
Phantom volume down: with screen on, touch between back and home for vol-down one notch
Phantom volume up: with screen on, touch between home and recent apps for vol-up one notch
Sweep2mute: with screen on, swipe from home to back for vol full down (vibrate)
Sweep2loud: with screen on, swipe from home to recent apps for max volume
Sweep2skipback: with screen off, swipe from home to back to skip back a track (when listening to music)
Sweep2skipforward: with screen off, swipe from home to recent apps to skip forward a track (when listening to music)
Sweep2deepsleep: with screen off, swipe from right to left to temporarily disable sweeps while screen is off (until screen is turned back on: prevents pocket sweeps)
[IMG]http://forum.xda-developers.com/attachment.php?attachmentid=1479575&stc=1&d=1352840345[/IMG]
here is a little explanation of kernel based thermal and mpdecision control
What is msm_thermal?
Kernel based 3-phase thermal control!
This replaces your /system/bin/thermald binary which is renamed by the installer to thermald_backup.
Check /sys/kernel/msm_thermal/conf/ for the thermal configuration
allowed_max_high = highest threshold (phase 3)
allowed_max_low = remove the throttling if we cooled down to this (clr_thrshold)
allowed_max_freq = max frequency if throttled (limit)
[...]mid[...] = same as above, just for phase 2
[...]low[...] = Lowest threshold (phase 1)
check_interval_ms = how often shall we check? (sampling rate)
Default: 1000ms (=1sec)
If you want to see msm_thermal doing it's job:
Code:
adb shell cat /proc/kmsg | grep 'msm_thermal'
What is msm_mpdecision?
100% kernel based multi core decision! (should cpu1 be online or not?)
This replaces your /system/bin/mpdecision binary which is renamed by the installer to mpdecision_backup.
Check /sys/kernel/msm_mpdecision/conf/ for the configuration.
startdelay = time until mpdecision starts doing it's magic (70000)
delay = time between checks (500)
pause = if something else plugs in the cpu, fall asleep for 10000
scroff_single_core = if the screen is off, don't plug in cpu1 (1)
nwns_threshold_up = runqueue threshold, if this is reached cpu1 will be hotplugged (35)
nwns_threshold_down = runqueue threshold, if this is reached cpu1 will be unplugged (5)
twts_threshold_up = time threshold, this amount of time must have passed (250)
twts_threshold_down = same as above (250)
enabled = enable(1) or disable(0) mpdecision. This does not affect scroff_single_core!
idle_freq = a value against that will be checked if a core +/- is requested. (486000)
If cpu0 is below that value and a core up of cpu1 is requested, nothing will happen.
If cpu1 is above that value and a core down of cpu1 is requested, nothing will happen. (otherwise it would now put down cpu1 even though it is still working)
(all times are in ms)
NOT RESPONSIBE IF YOU BRICK,DROP,LOSE YOUR DEVICE. FLASH AT YOUR OWN RISK[/B
What is FSO?
Fso has greater speed, but there is a chance of corrupting if the phone has a random reboot.
Non-fso is what a stock kernel is and does not have the corruption issue.
It's a trade off, performance for stability or visa versa
If you have issues with reboots viperboy has created a script to increase voltages which may help with stability for the rebellious phones thanks viperboy
http://d-h.st/Kru
Downloads for the the latest releases
http://d-h.st/users/Thicklizard
gpl legalities
https://github.com/thicklizard
If you like my work buy me a coffee!
Thanks to cyanogenmod.
Reserved
Good to see you over here!
I'm on paranoid android so I'll probably test it tonight...
By the way you need to fix the link. You wrapped in lowercase tags when it should uppercase...
YESSS finally a JB kernel. give me give me give me!!!.
Flashing asap
Also what are the smartass2,intellidemand,savadgedzen,2 phase ondemand, and lionheart do, specifically what are the pros and cons?
Ive never heard of those before. But i have heard and used the other ones listed above.
Nice. Will give this a go next time I flash cm10.
Sent from my EVO using Tapatalk 2
Oh yeaaaaaa
Sent from my EVO using xda premium
Pithism said:
YESSS finally a JB kernel. give me give me give me!!!.
Flashing asap
Also what are the smartass2,intellidemand,savadgedzen,2 phase ondemand, and lionheart do, specifically what are the pros and cons?
Ive never heard of those before. But i have heard and used the other ones listed above.
Click to expand...
Click to collapse
http://forum.xda-developers.com/showthread.php?t=1663809
Check out this thread
Sent from my EVO using Tapatalk 2
Running smooth so far on PA sir
Sent from my EVO using xda premium
Flashing NAOO!
Edit: Runnin great! Lovin more RAM.
very very Nice!
on PA intellidemand works good. too bad no voltage tweaking but good none the less :thumbsup:
syaoran68 said:
on PA intellidemand works good. too bad no voltage tweaking but good none the less :thumbsup:
Click to expand...
Click to collapse
In time this is initial release.
Sent from my EVO using Tapatalk 2
Ooohhooohhooo today is a good day! Thank you! I'm on AOKP. I love the thread you linked for CPU governor explanation. That's a great read. Can't wait to see undervolting capability, especially since AOKP has that available in settings.
Did I say, 'thank you'? :thumbup:
via xda premium on my AOKP'd Evo LTE
Savage Zen is pretty snappy if I must say at 1.809
Sent from my EVO using xda premium
For those of us that are S-ON and dev unlocked, how do we go about installing this? It's not in a .img file so no flash image gui or fastboot.
Can someone repackage it?
Sent from my EVO using xda premium
I will have boot.imgs up in less than an hour
Sent from my EVO using Tapatalk 2
foobz said:
For those of us that are S-ON and dev unlocked, how do we go about installing this? It's not in a .img file so no flash image gui or fastboot.
Can someone repackage it?
Sent from my EVO using xda premium
Click to expand...
Click to collapse
If I'm not mistaken, the image you need is in the flashable zip. Just download the zip, extract it somewhere, and grab the IMG.
May be wrong though. Been a while since I actually looked inside of a kernel zip haha
Sent from my EVO using Tapatalk 2
thicklizard said:
I will have boot.imgs up in less than an hour
Sent from my EVO using Tapatalk 2
Click to expand...
Click to collapse
This guy here! Awesome Job, Really Awesome!
Linking this thread From Paranoid.
Awesome! Thanks for the work!!
Sent from my EVO using xda premium
Oh my gosh! Is it my birthday? can't wait to try and see where this goes!
Will future releases have GPU tweaks?

[Kernel] Vindicator [UberTC6/Strict-Alias/Ofast][5.1][GPU OC/UV] [Release-2.4]

{
"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"
}
"I Don't Always Run Custom Kernels. But When I Do, I Run Vindicator"
-Worlds Most Interesting Man
Pushbullet Tag: vindicator
Vindicator OTA Updater App: https://play.google.com/store/apps/details?id=com.mcswainsoftware.vindicator.ota
if there are any bugs, contact developer Jacob
You can also follow me on G+ if you would like:
[email protected]
Intro:
This is the first kernel I've ever developed. I just started developing on android a few months ago so I'm brand new to this. I don't consider myself a developer, I'm just good at figuring things out, all credit goes to the real hard workers coming up with original ideas like Franco, Imo, Flar and Faux. Initially this was built as a kernel to compile with my ROM I'm working on but I decided I would let others get a chance to use it as well. I hope you like it and I won't be offended if you hate it. All ideas are welcome and I'll try to help as best I can. If you wish to use this kernel in a rom , feel free! Although I would love it if you let me know just for my own curiosity.
For those looking for a similar experience, but much closer to stock, I suggest giving Zen Kernel a try!​
Goal:​Keep kernel as lean as possible while adding certain, desirable features and optimizing for maximum performance and battery life. The default settings should be optimal for a balance of battery and performance without a need to tweak.​
Disclaimer:​If your phone blows up, its not my fault. If your phone somehow gains perpetual battery life, I'll take full responsibility.​
Features:​-Zen Kernel Base
-Android 5.1
-BFS Cpu Scheduler (Ported By @bbedward)
-Latest Linux 3.10.x
-Compiled With Uber ToolChain 6.0
-Compiled With Ofast, Strict-Aliasing, Graphite, A15 Tweaks, And Loop Nest Optimizations
-Various Other Build Optimizations
-Optional GPU OC To 700Mhz.
-GPU Initial Freq. Is 110Mhz Instead Of 240Mhz Saving Power.
-Additional GPU Steps
-CAF Power Saving Patches
-CPUIdle Driver Updated To Linux 4.0
-Slub Allocator Updated To Linux 3.18
-GPU UnderVolted
-Workqueue Updated To Linux 3.18
-Init Updated From Upstream
-Power Efficient Workqueues
-Low Power Ram Mode Enabled
-Kernel Same Page Merging
-ZenDecision Quad Core Driver
-Hotplug Affinity Enhancements
-Kexec Hardboot/MultiRom(See FAQ For Help)
-UKM Built In And Modified. Just Install Synapse App.
-Savocas Color/Gamma Control
-Lowered Regulator And Screen Voltages
-Lowered Screen Clock Speed
-Lowered Retention Voltages
-Moto QuickWakeup
-Faux's Simple GPU Governor
-Frandom (Efficient Random Number Generator)
-Hardware Floating Point Processing
-ZRam
-ZSMalloc
-I2C Min Freq. Reduced
-Cruft Free
-Slimmed Down(Increased Size Is Due To Optimizations & UKM Not Bloat)
-Tons Of Debugging Removed
-Many Misc. Optimizations
-35mhz Min Freq, 3.09ghz Max
-Several WakeLocks Removed, Such As Sensor_Ind and hsic.
-MPDecision Disabled By Default
-MSM HotPlug
-Mako Hotplug
-Adjustable Thermal With Lean Kernel Mods
-IntelliActive Governor Added
-FIOPS, ROW & BFQ IO Schedulers Added
-Tons Of IO Fixes/Performance Boosts
-No Force Encrypt. Changed To Encryptable.
-Crypto Optimizations For Enhanced IO Throughput When Encrypted
-Voltage Control
-Westwood TCP Algorithm
-PIE & HHF Network Schedulers(reduced latency)
-Tons Of CAF Commits
-Merged In Most Of Franco's Code
-Merged In Parts Of Faux123's Code
-Merged Significant Portions Of Lean Kernel Code
-Optimized RWSEM
-Many Parts Pulled From Upstream
-Merged In All CAF And Franco Interactive Commits Into Interactive
-Francos Conservative Governor
-CPU Boost Completely Removed(Replaced With Franco's)
-Wake Gestures
-F2FS Support
-LK Config
-Vibration Control
-Asynchronous FSync
-Init.D Support
-Potentially Something I Forgot...
Downloads:
[AFH] Kernel: https://www.androidfilehost.com/?w=files&flid=25836
Downloads also through app and pushbullet
Amazing Donors!:
JackPollard
Maybelle
Credits:
Imoseyon
bbedward
Flar2
Franco
Faux123
Linaro
Code Aurora Foundation
Cl3Kener
Engstk
Yank555
Mistertac (Best Tester Ever)
RIPng(DespairFactor)
Neobuddy89
apb_axel
Google
Motorola
If I Missed You Lemme Know!​
XDA:DevDB Information
Vindicator Kernel, Kernel for the Nexus 6
Contributors
Xileforce
Source Code: https://github.com/XileForce/Vindicator
Kernel Special Features: I'm special.
Version Information
Status: Stable
Current Stable Version: 2.3
Created 2015-02-06
Last Updated 2015-05-3
Changelog:
1.0:
-Merged Latest Lean Kernel Code
-Merged Latest Franco Code
-Franco's Thermal Management Replaces Thermald
-Zram ported from Linux 3.19 upstream Using LZ4
-VM Memory Tweaks. (Vfs cache, swappiness,etc)
-I2C min frequency reduced from 50mhz to 19.2mhz
-Retention voltages dropper further
-Removed most Tracers
-Reduced Several Regulator Voltages
-Various CAF Patches
-Disable IO Stats
-Disable More Debugging
-Disable Gentle Fair Sleeper(better performance)
-ZSMalloc ported from Linux 3.19 upstream
-ZPool Ported from Linux 3.19 upstream
-Cut DMA latency in half
-Optimize SFCK Compression
-Reduce Swappiness
-Optimize Dirty Ratios
-Disable HSIC_Host wakelock by default
-Reduce Wlan wakelocks further
-Increase Bark/Pet Time
-Possibly More I Missed.
1.1:
-Savocas New Color/Gamma Control
-Lowered All Regulator Voltages Across The Board
-Lowered Screen Voltages And Screen Clock Speed(no detrimental effects noticed yet)
-Add Under clocked and Over clocked step for L2Cache
-Add 110mhz And 430Mhz GPU Slots
-Fix Simple On Demand Governor
-Additional Build Optimizations
-Integer Square Root Optimizations(3x faster)
-Lower GPU Bus Frequency @ 700mhz(battery and stability)
-Potentially Reduce BlueSleep Wakelock(testing report back please)
-Remove IO Debug
1.2:
-Merged Latest LeanKernel
-Added Option To Disable BlueSleep Wakelock Via Terminal
-Reduced BlueSleep By Default
-Readahead Optimizations
-More Voltage Reductions
-Power Suspend Updated To 1.7
-OC SlimBus
-Revert L2 OC
-Latest Franco Merged In
-Update To Linux 3.10.69
-Fix Ramdisk Issues
-Raise InteractiveX Default Screen Off To 730Mhz
-Lowered Power Draw Further At 35mhz
1.3:
-Added Motorola Quick Wakeup
-UKM Built In. Use Synapse App
-Added Aggressive Build Optimizations
-Merged In New Lean Kernel
-Greatly Reduced GPU Power Draw
-Added Bricked Hotplug
-Added MSM Limiter
-FSync Toggle
-Optimized LZ4 A Bit
-Some CAF Patches
-Increased Available Entropy
1.4:
-Merged In Latest Franco Code
-Removed Bricked Hotplug
-Defaulted Power Aware Scheduling On(Adjust In LkConfig)
-Added Power Efficient Workqueue(Better Battery Life)
-Optimized Timer Code
-Added Westwood TCP Alg.(Best One IMO)
-Updated UKM To Latest
-Updated MSM Limiter
-Numerous CAF/Linaro Patches
-Screen Power Draw Reduced Further
-USB Fast Charge
-Various Code Optimization Patches
-Added Toggles For Arch Power And Gentle Fair Sleepers
-Network Speed Tweak
-Don't Force Sync On Suspend
1.5:
-Kexec-hardboot/multirom support(Huge thanks to team member @jamcswain for porting that!) See FAQ For Help.
-Merged Lean 1.17
-Update To Linux 3.10.71
-Optimize Low Memory Killer For ZRam
-About 50 CAF Patches For Numerous Things(Thanks Neobuddy)
-WiFi Patches
-Crypto,IO,Memory Optimizations
-Entropy Optimizations
-DT2W Fixes
-Screen,GPU Patches
1.6:
-Android 5.1 (Massive Thanks To Imoseyon for merging it in)
-Latest Lean Merged
-Latest Franco Merged
-Mako Hotplug Updates
-Intelliplug V4
-Misc Fixes
-Default Power Aware Scheduler Off Again (Change In lkconfig)
1.7:
-Merged Latest Lean
-Merged Latest Franco
-Ramdisk Fixes For Roms(All Imoseyon)
-IO Boosts
-Updated Linaro ToolChain
-Boot Time Speedup(Jamcswains idea)
-InteractiveX Tweaked(Franco's Idea)
-Numerous CAF Patches
-Mako Hotplug Updates
1.8:
-Merged Latest Lean
-Merged Latest Franco
-Switched Toolchain To Custom Compiled Linaro
-Speed Up Boot Further
-Tons Of CAF Patches
-Audio Fixes/Patches
-800Mhz GPU Step
-MSM Limter Removed
-Added Moto Predictive Touch Driver(Better Responsiveness)
-Updated FB Notifiers
-Disabled MPDecision By Default. Mako Is Default Now
-FIOPS Is Default IO Scheduler Now
-Added Moto Low Memory Killer Optimizations
-CPUfreq and Ext4 Optimizations
-More Debugging Disabled
-Various Other Optimizations And Updates
-Update To Linux 3.10.72
-Probably Stuff I Forgot
1.9:
-Merged Latest Lean Kernel
-Fix USB OTG
-Fix Wake Gestures
-Default To QuadCore Mode For Mako
-Ensure 35Mhz Is Min Freq. on Boot(Fixes Weird Issue)
-Modified UKM/Synapse To Control Wakelocks (Misc Tab)
-Merged Latest Hydra Kernel Changes/Patches
-Fix Battery Drain On BlueTooth
-Frequency Mitigation Preventer V2 (In LKConfig)
-Stability Fixes
1.9.1:
-In Call Audio Fix
1.9.2:
-Updated With Official Multirom/Kexec Hardboot Patch
2.0:
-Merged Latest Franco And Lean Code
-Linux 3.10.73
-Several Memory Leaks Fixed
-Reboot/Bootloops Fixed
-!00's Of Patches
-SELinux Permissive By Default
-Compiled With SaberMod 5.0
-Screen Frequency Reverted To Stock
-Tweaked Interactive Touchboost Parameters Further
-Replaced IntelliPlug With MSM Mpdecision
-Added Back MSM Limiter
-FB Notifiers now Enabled By Default. Toggle Added To Synapse
-Merged In Some Hydra Kernel Ramdisk Fixes
-GPU OC Reduced Back To 700Mhz
-Add Power Aware Scheduling to Synapse (CPU Settings Page)
-Fix Synapse To Display CPU Bin On Front Page
-Revert FastBoot Mods For Now (Buggy)
-KCal Fixes
-MSM_HSIC WakeLock Now Enabled By Default With Divisor Of 5 (Change In Synapse Or LKConfig)
-Mako Hotplug Load Threshold Set Back To 80
-Misc Optimizations
2.1:
-Completely Rebuilt From Scratch Upon Zen Kernel With Input From bbedward
-Some features may be missing atm and may get added back in down the line.
-BFS Cpu scheduler. IMO a significant upgrade over CFS, the standard one used by almost every kernel. Should give better battery life and performance. THIS IS ONE OF THE BIGGEST CHANGES A KERNEL CAN MAKE
-Cleaned up the source and fixed issues.
-EXT4 and F2FS updated with upstream commits.
-Per CPU VMA Caching From Upstream
-BFQ and ROW IO Schedulers
-Touchboost Adjustments For More Butter
-Fauxs Simple GPU Governor
-Lowered the default voltage on 1.497ghz 10mv by default
-Compiled With Ofast Instead of Os (Ofast Is the heighest gcc optimization level, one step above O3. Os optimizes for size, rather than speed.)
-Compressed with optimized XZ rather than LZ4 to keep size down
-Latest lean and Franco merged in.
-Adaptive Low Memory Killer enabled
-So much stuff....and I honestly have no idea on how to write a changelog for a rebase...its an entirely new kernel...
2.2:
-Compiled With UberTC 6.0 (Figured We Would See How It Compares To SM 6)
-Compiled With Graphite Optimizations
-Compiled With Loop Nest Optimizations(An Extremely Aggressive Optimization)
-Compiled With loop-unroll-and-jam(A companion optimization to loop nest also aggressive)
-Small GPU Tweaks
-Greatly increased encrypted IO Performance
-Arm Specific Optimization Patches
-Added Heavy Hitter Filter(Another Network Optimization That May Also Reduce CPU Usage)
-Added Proportional Integral Controller Enhanced(Yet another network optimization algorithm designed to reduce latency and increase efficiency when doing latency sensitive things such as streaming)
-Optimize boot/compressed for Krait
-Addition Branch Optimizations and Inter Procedural Optimizations
-Support CM12.1 Ramdisk
-Optimize ROW and Deadline
-Add Bluesleep Wakelock Toggle
-Reduce Wlan_Ctrl Wakelock
-Default Wlan_rx wakelock divisor to 5
-Default msm_hsic divisor to 6
-Fix lkconfig frequency stuff
-Default below 40% frequency changing OFF
-Cleanup frequency mitigation stuff in lkconfig.
-Add Westwood
-Use amended interruptible threads (reduces cpu load)
-Disable add random on IO
-Reset cpu dma latency to stock...idk what it does so i shouldnt touch it...
-Revert Ram OC (IDK if it even worked)
-Add smb135x wakelock toggle
-A GPU Patch
-Raise default touchboost to 500ms.
-Optimize memcpy and memmove
-Significantly Optimize Console Framebuffer
-Enable non-cacheable streaming enhancement
-Add GPU Compile Optimizations
-Disable a lot more debugging
-Boot with 2.649ghz max freq for stability
-Add OC up to 3.033ghz. Highly unstable IMO but its an option for the brave.
-Cleanup Ramdisk
-Raise voltage a bit on 2.88 for stability.
-Disable useless resource counters to save processing power and battery.
2.3:
-Update CPUIdile Driver and CPUIdle Governors almost completely to linux 4.0(Several Years Worth Of Commits)
-Updated CPUFreq Driver Nearly To Linux 4.0
-Update Suspend/Sleep Driver Mostly To Linux 4.0
-Update SLUB Allocator To Linux 3.18
-Update Block(IO Stuff) From Upstream A Bit.
-Upstream Scheduler Patches
-3.09Ghz CPU Step Added (Likely Quite Unstable) Some People Like That Stuff
-Amperage On 3.03Ghz bumped up a tad for stability.
-Linux 3.10.75
-Frandom random number generator added(Extremely Fast Random Number Generator)
-Power Efficiency Patches From Code Aurora
-Fixed Crash When Switching CPU Govs.
-BFS Updates!
-Update Ondemand to Linux 3.18
-Default OnDemand To Simms22's Preferences
-Merged Latest Franco Code
-Merged Latest Lean Code
-Merged Latest Zen Code
-Franco's Conservative governor updated
-Some Interactive updates
-Color control updates
-ARM Specific Updates
-F2FS Updates
-GPU Driver Updates
-Memory Leak Fixes
-Stability Fixes
-Updated ToolChain
2.4:
-Updated To Linux 3.10.77
-Merged Latest Lean Kernel
-Merged Latest Zen Kernel
-Update Workqueue To ~ Linux 3.18
-Enable Ram To Enter Low Power Mode
-Update mm.h And Memblock from upstream
-Default IO Scheduler To BFQ. Its Been Tested To Be Best For Interactivity
-Upstream Init A Bit
-A Few Patches To SMP
-Upstream Cgroups And Memcg Significantly
-Disable RunQueue Stats. Pointless Bloat and CPU Overhead only needed for mpdecision
-Added Power Efficient WorkQueues Patch From Upstream(This Gives better battery life at the cost of a likely unnoticeable performance hit. Enabled by default. Toggle in synapse CPU settings page)
-Hotplug Efficiency Patch(Optimizes Hotplugging To Handle The Transfer Of Processes From One Core To Another Much Better)
-ZenDecision Added
-Added A Toggle For Mako(Currently Only Works To Disable Mako. Ill Work On It Further In 2.5 Credit to bbedward for this
-GPU Tweaks To Make It Smoother
-UnderAmped(Reduce Current For Every Frequency Up To 2.7ghz. Should Save Power. Experimental)
-Added KSM Tweaked For Android(Disabled By Default, Scans Few Pages, and does so very rarely. I didn't notice a battery hit with it on. Optimizes ram use)
-Franco Kernel Updater Profile Updates
-Ramdisk Modifications(May Fix Some Rom Issues)
-Fix For Ondemand Crashing(Hopefully)
-Misc Tweaks & Patches
-Hotplug Affinity Fixes
-Various Power Saving Patches
-Optimize Copy_Page For Modern Arm Processors
-Do Jiffies Conversions At Compile Time Rather Than Runtime(Saves The Cpu Work)
-Optimize For Our L1/L2 Cache Size
-Allow Options To Be Passed To Memory Barrier Instructions
-2 Patches To Improve File System Performance
-HRTimer Optimizations
-Make Binder Mutex Realtime To Reduce Chance Of SurfaceFlinger Being Blocked
-Keep Track Of ASID Allocations And Try To Reuse Them In Certain Cases To Improve Performance
-Don't Compile CPUIdle Ladder Governor. It doesn't get used anyways.
-Allow Rescuer Thread To Do More Work
-Reduce Runqueue Lock Contention
-don't use compound_head() in virt_to_head_page() this showed around a 1.8% performance improvement in some cases
-Small MultiCore Scheduling Improvement
-Definitely Some Stuff I Forgot
FAQ's
1. How Do I Enable Mako Hotplug?
To enable mako hotplug use your favorite kernel control app like faux or trickster. As of 1.8 it is the default hotplug. In trickster you have to turn off both mpdecision and intelliplug. In faux you need to simply select User Control in the Hotplug Section. The hotplug can be configured using Franko Kernel Updater App.
2. Does This Work With CM12 Theme Engine?
Yes, this works with CM12 Theme Engine and should work on all ROMs properly.
3. How Can I Force All 4 Cores Online All The Time?
First you must enable mako hotplug. Then you need to use Franco's kernel updater app or another app that allows you to tweak mako hotplug settings. In fku app select CPU manager then hotplug control. Change load threshold to 0. Additionally if you just want to make it use 4 cores more often. Lower this number below 80 as desired. This should also be possible to tweak via terminal however I've never used that method.
4. Does This Have D2W, S2W, etc?
Yes, those are part of LK which means they are include in this kernel.
5. Help! I think its making me bootloop!:
This may only apply to specific ROMs and I'm unsure ofnwhy it would change anything but users have reported this to fix the issue. If you are trying a fresh install of a ROM boot on stock kernel first, reboot, then install this kernel.
6. You Broke My Phone! Fix It!:
It will be quite hard for me to figure out what is going on if you don't provide details and a log of what happened. To get a log use any file manager with root support and navigate to sys/fs/pstore I then need the console one.
7. What Kernel Tweaking App Should I Use? What About For Tweaking Screen???:
I now Use synapse as my goto app for kernel tweaking since version 1.3. To control the screen I use the app made by Savoca who created the color control we use http://downloads.codefi.re/savoca/kcal
8. Why Add Zram? We Already Have 3gb Of Ram!
Zram was added in build 1.0 as an experiment of sorts to see how much is was actually being used. V 1.0 introduced a bunch of tweaks to the kernel that essentially make it use more ram in order to give better battery life and performance. Zram was put in place to offset this in a way.
9. Wut Is A LZ4?
LZ4 is a compression algorithm used by the kernel. LZ4 is currently the fastest supported option in the Linux kernel and had to be ported from upstream. It is significantly faster than XZ compression which is what we used prior. The downside is it results in slightly larger file sizes due to a lower compression ratio. However with modern hardware this should be moot. The gains should theoretically be noticed as a general performance bump. Boots should be faster. IO should be marginally faster. Anything that's compressing or decompressing stuff, such as ZRam and encrypted devices will utilize this in a big way. Because its compressing and decompressing so much faster it can also be assumed it is saving battery via less CPU cycles.
10. What Is Strict Aliasing And Why Should I Care?:
One of the big things Linaro does with improving Android's performance is fixing violations of what's known as "the strict aliasing rule." A pointer is said to alias another pointer when they both refer to the same location of memory. This is OK and not an uncommon thing to do. The strict aliasing rule is that pointers of different types should never refer to the same location of memory (aka alias each other). Strict aliasing allows a compiler to make some assumptions when compiling and optimizing code that it otherwise couldn't. It's actually one of the biggest optimizations you can do and it is fairly hard to add which is why most people don't. Here's a nice read up on it http://cellperformance.beyond3d.com/articles/2006/06/understanding-strict-aliasing.html#benefits
11. Come on man. 35mhz is pointless bro!:
A common misconception is that if two frequencies run at the same voltage. They use equal power. In fact this couldn't be less true. The equation for power draw has four variables. Two of which are frequency and voltage. Essentially it is the frequency multiplied by the square of the voltage. Then you would take that and multiply it by a few other things such as capacitance. However that is irrelevant for our purposes as it will not effect the relative results. This means that 35mhz running at 500mv will use about 3x less power than 98mhz at 500mv. Now we say well what about compared to 300mhz? I can stably run that at around 650mv. Maybe slightly less. This equates to about 15x less power usage at 35mhz. Well now that we know that. Who cares? Its not like 35mhz will even get used. Its too low! I beg to differ. I would almost guarantee that if you are not running mpdecision 35 MHz will be within the top 3 most used frequencies. Most likely the top used below sleep. And every time it uses that over 300mhz you are saving 15x the power. Additionally 35mhz also runs at a cache frequency of 35mhz as opposed to 300mhz cache frequency and runs a lower bus speed/voltage saving additional power. The same goes for 98mhz. Hope this helps clear things up.
12. How Do I Disable BlueSleep Wakelock?
Open terminal emulator app. Type su then hit enter then type echo 0 > /sys/module/wakeup/parameters/enable_bluesleep_ws all on one line. It won't say anything but if you turn on Bluetooth and check your wakelocks you shouldn't see the wakelock there anymore. This needs to be set on each boot currently. If you experience Bluetooth connectivity issues don't disable this. To enable it again either reboot or run the same command with a 1 instead of a 0.
13. How Do I Use MultiRom???:
To use multi ROM first you must download the MultiRom App from this location http://tasemnice.eu/bordel/MultiROMMgr-v1.180.apk the play store version doesn't work with shamu yet. Then you will need to open it, go to settings and tap the version number until you are a developer. Then click override manifest URL and for manifest URL enter http://tasemnice.eu/multirom-test/manifest.json the. Go back to the main page. You should now have MultiRom and recovery boxes checked. Click install, reboot etc. To install a ROM. Download a ROM you like, go to twrp, click advanced,MultiRom,add ROM. Select internal storage and the Your zip file. Flash it but don't reboot! After that go back and select "list ROMs" select the ROM u just flashed still and click flash zip and select your gapps,supersu etc. After that simple reboot and select your new ROM on boot use the MultiRom app to manage your ROMs.
More will be added as they come up and I think of them.
Configuration Guide:
The following can be done using your favorite kernel tweaking app. I use synapse.
Clock Speed:
To begin I prefer to leave my max clock speed at the stock 2.649ghz. Set min CPU as low as it can go. As of current release this is 35. For the adventurous you can try 2.88ghz. Often I bump the voltage 12mVolts on 2.88 to be safe.
To find your CPU binning run this command in terminal emulator OR look at the first page in synapse near the bottom:
su (enter)
cat /proc/cpu/msm_acpu_pvs (enter)
(Put a space between cat and /proc)
note that the number may be displayed at the beginning of the next line.
It will then display a number from 0-15. 15 being the best. Don't stress over it too much if you score low, its not the end of the world. It just means you need marginally more voltage to run each frequency.
GPU:
As of Alpha 1.3 the GPU can now be over clocked to 700mhz. This is completely optional. To verify your over clock change the GPU governor to performance and see if it spikes to 700 every so often. If it does it worked! If it doesn't you may need to set the frequency to something else then back to 700 again. It remains to be seen what kind of benefits the GPU over clock will give but it is there for those who want it. The recommended GPU governor is the stock msm adreno one. If you encounter lag in games you can try changing it to performance temporarily while playing that game. Simple on demand is a more performance oriented governor.
Governor:
Most people will probably want to just leave this set to interactive. Its a really good governor that is being actively devolped by CAF, Google, and Franco. It also hooks into Francos CPU Boosting interface. Its "smarter" than OnDemand and generally considered to offer better battery life. If you want even more smoothness some consider OnDemand to provide a bit better performance, however you may get slightly worse battery life. This is because OnDemand ramps up to max frequency when there's is load put on the CPU and then slowly works its way down. Interactive scales through the frequencies on the way up and down which saves battery life but prevents it from jumping to max speed as fast if it is needed. Simms22 recommends using the OnDemand governor with "upthreshold" set to 98 and the sampling rate set to 15000. That is the default setting of the Trinity Kernel. Mistertac made the great suggestion of turning the max screen off frequency down to 600mhz if using the interactiveX governor. This will prevent any misbehaving apps from keeping CPU ramped up while screen is off and give better idle drain. The actual number you would have to type in would be 652800 for the screen off frequency. The Conservative Governor is greatly modified by franco, Its no longer a super slow governor as it once was. It also hooks into his cpu boost control interface meaning you get cpu boost when using it. Conservative prefers the lower frequencies, however so if you find yourself having lag, you may want to switch to another.
PowerSuspend:
The only working options in V1.6 of the PowerSuspend driver are lcd_panel and Userspace which can be found in the miscellaneous section of FauxClock. I suggest leaving it at the default choice of LCD_PANEL. In FauxClock if you navigate to the cpu idle/stats area you will be presented with more options. You should see a list of C-states. For example C0: wfi and C1: retention. These are essentially low power states that the cpu can enter to save power. The higher the C number the deeper the sleep. Last I heard, the optimal configuration was to enable C0, C1, and C3. Paired with lowered Retention voltages, this should give you a very low idle drain.
Hotplugging:
Next go to hot plugging section and disable MPDecision(make poor decision) and enable intelliplug or, enable Mako Hotplug(Franco's) by either selecting user control as your hotplug, or disabling both mpdecision and intelliplug. Tweaking for them is split up below.
IntelliPlug:
FauxClock allows you to further configure intelliplug. If you want more battery set it to Conservative (4) mode which will hotplug the CPU more conservatively and save you battery, essentially this means it will use less cores if it can. For most people, leaving it on Balanced (4) mode will be fine. If you want further battery savings you can set it to EcoPerformance (2) or even EcoConservative (2) which will only use a max of 2 cores. IntelliPlug is able to use a single core unlike Mako Hotplug.
Mako Hotplug:
As far as I know the only way to tweak Mako Hotplug is either through the terminal app, synapse or through Francos app. In Francos app select cpu manager, then Hotplug Control. The main one you will need is load threshold. The default is 80. The higher this number, the more load the cpu needs to be under before it will plug the 3rd and 4th cores. 80 is actually pretty good value for most people and it will use the extra 2 cores when it really needs them. If you want to force all 4 cores on for whatever reason, you can achieve this by setting the load threshold to 0. This will effectively disable hotplugging. Of course you can always find a middle ground as well.
Via Terminal:
The sysfs interface for mako hotplug is...
/sys/devices/virtual/misc/mako_hotplug_control
To adjust... Use echo commands...
Ex:
echo 0 > /sys/devices/virtual/misc/mako_hotplug_control/load_threshold
The above command would set the load threshold to 0.
Thanks Rignfool!
Voltage Control:
Next go to voltage control. I'm a Bin 5 and I can use a 48mVolt undervolt without becoming unstable. Rember! Never set voltages to apply on boot until you have tested them for a few hours first! Most people can probably get away with a 36mVolt undervolt and nearly everyone should use at least a -24mVolt UV. Also remember that if you are running an over clock you may not want to undervolt that frequency. If you find yourself running into freezes or random reboots remove the undervolt!
Thermal:
This kernel comes with the latest IntelliThermal Driver from Faux123, which is a highly configurable thermal driver, as well as Franco's Thermal Driver which is the stock option. It is recommended you use IntelliThermal over Franco's if you wish to customize the values. Change this option under the Thermal Manager section of FauxClock. The optimal settings that I have found are 70 degrees for frequency throttle, and then somewhere between 70 and 80 for core throttle temp, depending on how safe you want to be. Stock is 80 degrees. Leave all cores checked for both frequency throttling and core throttling. I also leave on GPU Thermal Control, but if you encounter periodic lag in games you may wish to disable it. I also leave Core Thermal Control on as well, though I'm not entirely sure what it does lol. Also FYI, the sliders beneath those two options are showing you the current status of them, they are not sliders you can move.....trust me...I tried for like 5 minutes before I realized and felt like a moron....
I/O Settings:
For I/O scheduler select FIOPS. FIOPS is superior to the other schedulers in nearly every way. It is a scheduler designed for flash storage which is what our phones use. My testing has shown that 1536 is the best readahead buffer. Less or more is detrimental.
ZRam:
ZRam is something designed to optimize the ram of a device. What typically happens when a device runs out of space in ram is it is forced to use something called swap. Swap is normally a partition of a hard drive or ssd depending on what is available where the ram can copy some of it's contents to free up space. The problem is even the fastest SSDs are many many times slower than ram. Android by default doesn't have swap, however it does use a low memory killer which essentially goes through and clears out apps that are in ram to free space. ZRam makes a compressed partition inside the ram itself which then acts as a swap partition. Basically when ram begins to fill up. It compresses data and sticks it in a sealed off area of the ram. This let's it stuff way more stuff into ram than normal. To enable ZRam I use fauxclock. Trickster for whatever reason does not work. In FauxClock go to memory settings, then set the Zram size to 300mb and click apply disk size. Then turn it on and set on boot. You have now essentially boosted the available ram via compression!
VM Settings:
There are numerous tweaks you can do to the VM. For this I use FauxClock but IK Kernel Aduitor can do this as well. In FauxClock navigate to memory manager. The first thing to tweak is an option called swappiness. This control is used to define how aggressive the kernel will swap memory pages. Higher values will increase agressiveness. I defaulted this to 10 however the default is 60. This will use more ram but give better performance. Next is VFS Cache Pressure. This controls the tendency of the kernel to reclaim the memory which is used for caching of directory and inode objects. The default used to be 200. Its now defaulted to 10 meaning more ram usage but more performance. Next up is dirty ratio and dirty background ratio. Some things pass through ram and stay there for a bit until they get flushed to the flash storage. These controls essentially dictate how long it should wait before flushing to the flash storage. The longer you can delay it the better performance and battery you achieve, at the cost of ram. Setting these higher will increase ram usage but increase performance. I recommend a background ratio of 30 and a dirty ratio of 50, however feel free to tweak them as you desire.
Color Control:
Next you may want to adjust Screen RGB, value, saturation, hue and contrast. WrinkleFree over in the Lean Kernel thread did extensive testing with a professional grade $1000 screen calibration tool. You can use this app http://downloads.codefi.re/savoca/kcal to control the screen.
For the most truly color accurate screen at D6500K:
Red - 248
Green - 246
Blue - 255
If you prefer a slightly cooler screen and the tuning the iPhone uses which is D7400K:
Red - 237
Green - 235
Blue - 255
More info can be found about color calibration here: http://forum.xda-developers.com/showpost.php?p=57265483&postcount=620
As for saturation. I like to turn it up a bit and make the colors pop a bit more so I leave it around 65. But quite honestly saturation,value,contrast,and hue are going to come down to tweaking it and finding what you like most. Have fun!
These settings are meant to be used as a starting point. Depending on your cpu binning and desires you will probably want to tweak these slightly to fit your needs. I'll add more as new features get added, I learn more, and I think of stuff to add Hope it helps someone!
Sweet! Good work man.
Thanks for sharing.
It does support the CM Theme Engine, right ?
x0nar said:
Thanks for sharing.
It does support the CM Theme Engine, right ?
Click to expand...
Click to collapse
Yessir using it as we speak
Seems buttery enough. Will let you know the battery life on Bliss 2.0
x0nar said:
Seems buttery enough. Will let you know the battery life on Bliss 2.0
Click to expand...
Click to collapse
Good to hear so far. Don't forget to lower your min frequency . Also I recommend either Conservative or Interactive governors ATM as they hook into the new CPU boost. I'll be posting a full configuration guide probably tomorrow. Hope you like it.
New kernel , SUPER
Fauert said:
New kernel , SUPER
Click to expand...
Click to collapse
Hope you like it! No doubt I'll be hearing many bug reports when I wake up tomorrow
I've been testing this kernel on a few different Roms without any issues at all really so everyone should be happy with it.
If anyone gets any reboots though do try and get logs [emoji106]
Xileforce said:
Good to hear so far. Don't forget to lower your min frequency . Also I recommend either Conservative or Interactive governors ATM as they hook into the new CPU boost. I'll be posting a full configuration guide probably tomorrow. Hope you like it.
Click to expand...
Click to collapse
Looking forward to your guide.
Nice kernel. Jist one thing, may be is a feature i dnt know but only 2 cores online when i tried tu push all cores on, just stay with 2 or 1 core on. I changed the hotplug but still the same
Sent from my Nexus 6 using XDA Free mobile app
Bestplayer55 said:
Nice kernel. Jist one thing, may be is a feature i dnt know but only 2 cores online when i tried tu push all cores on, just stay with 2 or 1 core on. I changed the hotplug but still the same
Sent from my Nexus 6 using XDA Free mobile app
Click to expand...
Click to collapse
Are you trying to do this for a Benchmark?
Using the Faux app you can first set it to Intelliplug , then Performance (4) Cores and that should get you there.
If not, try setting it that way and reboot. I've noticed with this phone that I've had to reboot a lot for my changes to actually take correctly.
Cpu2 and cpu3 are stuck in performance...
And does anyone know where in sysfs to adjust mako hotplug?
rignfool said:
Cpu2 and cpu3 are stuck in performance...
And does anyone know where in sysfs to adjust mako hotplug?
Click to expand...
Click to collapse
Gotcha.. Well once Mr Xile wakes up I'm sure he'll have something for you, not sure myself.
Mistertac said:
Gotcha.. Well once Mr Xile wakes up I'm sure he'll have something for you, not sure myself.
Click to expand...
Click to collapse
I found it... And I learned a new Linux command in the process...
Haven't done a full battery test yet, but I seem to be getting the best I've seen so far.
Bestplayer55 said:
Nice kernel. Jist one thing, may be is a feature i dnt know but only 2 cores online when i tried tu push all cores on, just stay with 2 or 1 core on. I changed the hotplug but still the same
Sent from my Nexus 6 using XDA Free mobile app
Click to expand...
Click to collapse
Currently if you disable all hotplugs or if you use fauxclock to set it to usercontrol that enables Franco's mako hotplug. Thats why in an app such as faux you cannot easily force two cores online. However if you use Franco's updster app you can go to CPU manager then hotplug control and if you lower the load threshold it will hotplug more frequently. Setting this to 0 will force all cores online. Additionally as mistertac said. Using b intelliplug on either performance(4) mode or balanced(4) will use all 4 cores pretty frequently as well.

[KERNEL] [v0.14] [MM 6.0.0 Stock ROM] Frankenclark

Introduction
This is a kernel for XT1572/XT1575 built from stock sources (marshmallow-6.0.0-release branch) with cherry picks from other kernels and some ports/mods done by me. It started as a personal build tailored to my preferences but just thought I'd share in case somebody might find it useful. My main goal is building the smoothest kernel I can get so performance is top priority.
This kernel is for stock ROM MPH24.49-18*
Disclaimer
Although I have experience with Linux kernels on desktops and servers this is my first Android kernel. I've been running this kernel on my XT1572 for a few days and seems pretty stable but that doesn't mean it's risk free. In fact I wouldn't dare to install it if you don't have a proper backup and some basic skills to deal with unexpected situations.
Features
Aroma Installer
CPU profile scripts (see this)
Color control (KCAL)
Frandom
Updated to kernel version 3.10.101
Overclocking (a53: 1536MHz a57:2016MHz)
Underclocking (302MHz)
Additional CPU governors (ElementalX, Intelliactive, Lionheart, BioShock, BluActive, Wheatley, InteractiveX/Interactive, Impulse, Zzmoove)
Additional I/O schedulers (SIO, FIOPS, Zen, BFQ, SIOPLUS)
Bricked Hotplug
Updated ZRAM driver
Updated Lowmemorykill driver
Basic init.d support
KSM and UKSM
Voltage readings
Fsync on/off
Touchboost on/off
Vibration control
KEXEC Hardboot (MultiROM support)
Patched cdrom code (DriveDroid support)
DoubleTap2Wake/Sweep2Wake/Sweep2Sleep (EXPERIMENTAL)
Power efficient workqueues
Support for additional FS: NTFS, NFS, CIFS
Additional Xpad drivers (read this)
Device as USB trackpad/keyboard driver (read this)
WiFi module optimizations
Many minor optimizations
Optimization flags
UBER Toolchain 4.9
Installation instructions
Download ZIP and flash from TWRP/Flashify. Read the following notes carefully before flashing.
Important notes:
This kernel is still experimental, make a proper backup first
You need to be rooted
DO NOT play with DT2W/S2W before reading the release notes and the update
In case you want to tune some parameters (ie: CPU frecuencies) I recommend you install EX Kernel Manager, Kernel Adiutor or Kernel Adiutor-Mod.
If you're using Kernel Adiutor to control vibration or TCP congestion read this.
Questions? Read the FAQ before posting.
Download
Latest version is v0.14 (see release notes)
https://www.androidfilehost.com/?w=files&flid=49225​
Donations
Although quite a deal of the important work has been done by the developers mentioned in the Credits section I spend many hours working on this. If you feel like helping me out I'd appreciate some tiny donations to cover some minor expenses.
​Thanks to all of you who have donated, it's very much appreciated.​
Profiles
One of the FAQ in most kernel related threads is "What are the best settings for .....?". This is the 10 million question since the usage pattern can be very different for each user. However, I understand less experienced users will appreciate some hints in this department, so that's why I'm posting some basic settings you can use as a starting point.
It's your job to further tune them to suit your needs. You should be able to modify these settings with whatever Kernel Control App you like the best, although not all settings are available in every app, in such a case tune those you can. The list is not complete (just the most importante settings) and is loosely based on Kernel Adiutor arrangement.
Please, keep in mind these are subjective values (based of personal preferences or popularity) and some people might like other settings for whatever reasons.
Performance Profile: Very smooth and responsive but average battery life
CPU
LITTLE Cluster
CPU Governor: bluactive
CPU Max Frequency: 1536MHz
CPU Min Frequency: 302MHz​BIG Cluster
CPU Governor: bluactive
CPU Max Frequency: 2016MHz
CPU Min Frequency: 302MHz
NOTE: If you get N/A or weird values when trying to change settings on BIG cores it means both have been hotunplugged. To work around this select "performance" governor, make your desired changes and then select you previous governor.​CPU Boost
Input Boost Frequency Core 1: 960MHz​
Hotplug
MSM MPDecision
Minimum CPU online: 2
Maximum CPU online: 6
Max Cores Screen Off: 2
Idle Frequency: 384MHz​
Thermal
Core Control: Off
VDD Restriction: Off
Temperature Throttle: On​
GPU
Max Frequency: 600MHz
Min Frequency: 180MHz
Govenor: cpufreq​
I/O
Scheduler: noop
Read-ahead: 1024KB​
Balanced Profile: Above average battery life with good performance on most situations
CPU
LITTLE Cluster
CPU Governor: interactive
CPU Max Frequency: 1440MHz
CPU Min Frequency: 302MHz​BIG Cluster
CPU Governor: interactive
CPU Max Frequency: 1632MHz
CPU Min Frequency: 302MHz
NOTE: If you get N/A or weird values when trying to change settings on BIG cores it means both have been hotunplugged. To work around this select "performance" governor, make your desired changes and then select you previous governor.​CPU Boost
Input Boost Frequency Core 1: 960MHz​
Hotplug
MSM MPDecision
Minimum CPU online: 2
Maximum CPU online: 5
Max Cores Screen Off: 2
Idle Frequency: 768MHz​
Thermal
Core Control: Off
VDD Restriction: Off
Temperature Throttle: On​
GPU
Max Frequency: 600MHz
Min Frequency: 180MHz
Govenor: msm-adreno-tz​
I/O
Scheduler: noop
Read-ahead: 1024KB​
Battery Profile: Good battery life at the expense of somewhat limited performance
CPU
LITTLE Cluster
CPU Governor: ondemand
CPU Max Frequency: 1440MHz
CPU Min Frequency: 302MHz​BIG Cluster
CPU Governor: ondemand
CPU Max Frequency: 1632MHz
CPU Min Frequency: 302MHz
NOTE: If you get N/A or weird values when trying to change settings on BIG cores it means both have been hotunplugged. To work around this select "performance" governor, make your desired changes and then select you previous governor.​CPU Boost
Input Boost Frequency Core 1: 960MHz​
Hotplug
MSM MPDecision
Minimum CPU online: 1
Maximum CPU online: 3
Max Cores Screen Off: 2
Idle Frequency: 960MHz​
Thermal
Core Control: Off
VDD Restriction: Off
Temperature Throttle: On​
GPU
Max Frequency: 450MHz
Min Frequency: 180MHz
Govenor: simple_ondemand​
I/O
Scheduler: noop
Read-ahead: 1024KB​
Thanks To/Credits
vadimtk
flar2
franciscofranco
nimrodsv
anarkia1976
savoca
myfluxi
AudioGod
osm0sis
nychitman1
jollaman999
imoseyon
showp1984
HashBang173
neobuddy89
rehpyc
Alcolawl
soniCron
Spasticdroid
XDA:DevDB Information
Frankenclark, Kernel for the Moto X Style (Pure)
Contributors
dirtyhank
Source Code: https://github.com/dirty-hank/frankenclark/
Kernel Special Features:
Version Information
Status: Beta
Current Beta Version: 0.14
Created 2016-01-10
Last Updated 2016-10-11
Changelog
v0.14 (2016-08-29)
Proper KCAL control (thanks to @Spasticdroid)
Updated xpad driver for compatibility with gamepads/controllers (thanks to @Spasticdroid)
Driver to use device as USB trackpad and keyboard (thanks to @Spasticdroid)
Misc minor updates (see github)
100Hz version uses stock compiler flags
v0.13 (2016-06-21)
Update to Linux Kernel 3.10.102
Misc minor updates (see github)
New start-up CPU governor profiles: bluactive, maddog and silverfish
v0.12 (2016-05-15)
Disable DT2W/S2W while phone call is in progress
New CPU governors: impulse, zzmoove
New and updated CPU profile scripts
Runtime CPU profile switcher script (see release notes)
Minor changes to Aroma installer
v0.11.1 (2016-05-01)
Aroma Installer update (see release notes)
v0.11 (2016-04-27)
Aroma Installer
Better camera focus
Less CPU usage from DT2W/S2W
Minor updates and bugfixes
v0.10 (2016-04-03)
Updated lowmemorykiller driver
BFQ and SIOPLUS I/O schedulers
Updated ZRAM driver (on by default)
User togglable WLAN wakelocks
Basic init.d support (see release notes)
Misc minor updates
v0.9 (2016-03-20)
Update to Linux Kernel 3.10.101
Bug fixes
Changes from Google update to N5X and N6P (see release notes)
v0.8 (2016-03-06)
Update to Linux Kernel 3.10.99
Power efficient workqueues
NTFS support
NFS and CIFS support (you'll probably need additional user space binaries)
v0.7.1 (2016-02-28)
Workaround for the dimmed screen upon unlock bug when DT2W/S2W is enabled
v0.7 (2016-02-21)
Hotplug thresholds tuned to keep BIG cores offline more often
KEXEC Hardboot (MultiROM support)
Patched cdrom code (full DriveDroid support)
DoubleTap2Wake/Sweep2Wake/Sweep2Sleep (HIGHLY EXPERIMENTAL, Read this)
v0.6 (2016-02-07)
Vibration control (non-haptic)
Relaxed CPU macros for better power usage
File hosting now on AndroidFileHost
v0.5.2 (2016-02-03)
Fixed USB and WiFi Tethering
Minor tweaks
v0.5.1 (2016-02-01)
Changes to installer
v0.5 (2016-01-31)
Update to Linux Kernel 3.10.95
InteractiveX governor (as patches to the interactive gov)
Bricked Hotplug
KSM and UKSM (disabled by default, use Kernel Adiutor to enable)
Many minor optimizations
WiFi module optimizations
Modules recompilation
Disabled core_ctl (due to broken module after some internal changes to kernel)
Voltage readings (any attempt to modify values is silently ignored)
v0.4.1 (2016-01-24)
Prevent msm_performance from messing with the user selected min/max CPU frequencies
v0.4 (2016-01-23)
New CPU governors (ElementalX, Intelliactive, Lionheart, BioShock, BluActive, Wheatley)
New I/O scheduler (Zen)
Default I/O scheduler set to noop with a read ahead of 1024kb
Fixed bug CVE-2016-0728
Minor optimizations
Introduce ZIP installer (Anykernel2)
v0.3 (2016-01-18)
Color control (KCAL)
frandom support
New optimization flags
ZRAM disabled by default
v0.2 (2016-01-14)
Updated to Linux kernel 3.10.94
Underclocking (302MHz)
v0.1 (2016-01-10)
First public version
FAQ
I get random reboots, what is happening?
This kernel overclocks both clusters by default (a53: 1536MHz a57:2016MHz) and although this is very safe for most devices some CPUs are in the lowest spot of the binning spectrum and can't handle O/C very well. In such a case use a kernel control app (see the OP for references) to limit the maximum CPU frequencies, play with them until you find stable values for your device.​
What are the best settings for battery life/performance/whatever?
That's hard to tell as every user is different. You can find some basic profiles in the OP you can use as a starting point. Notice the differences between then and build you own.​
Why do some BIG cluster settings display N/A?
Why can't I change some settings on the BIG cluster?
If you get N/A or weird values when trying to change settings on BIG cores it means both are offline ("hotunplugged"). To work around this select "performance" governor, make your desired changes and then select you previous governor. You can also disable hotplug, make the changes, and enable hotplug again.​
DoubleTap2Wake doesn't work sometimes. How can I get it to work all the time?
When device goes into suspend mode first tap is often missed (I suspect this is caused by Moto Sensor Hub). If you tap three times and get the timing right you'll probably make it work most of the time. As an alternative, Sweep2Wake works almost all the time​
DT2W/S2W is acting weird or disabling itself
Make sure Moto Display is disabled. Open the Moto app, click on the stars in the top right corner, select Display and set to Off​
Can I use this kernel in ROM X/Y/Z?
This is for stock ROM MPH24.49-18 only. It'll probably work on any stock based ROM but not guaranteed.​
I use stock ROM but WiFi is not working
Due to some internal changes all modules had to be recompiled (WiFi included). In order to expose the new modules without modifying the system partition I had to implement a hack that requires root. Make sure you're properly rooted.​
What's the deal with ZRAM?
ZRAM is a technique to increase memory available to the apps at the expense of CPU time. Memory space from apps not being used is compressed into a memory swap area and uncompressed on the fly whenever needed. As you can imagine this compress/uncompress process burns CPU cycles, potentially leading to worse battery life, lag and higher temperatures. Since this device comes with 3GB I can only think of one scenario where ZRAM can be beneficial: heavy multitaskers who care more about apps not reloading than battery life. For the rest of users enabling ZRAM doesn't make much sense in my opinion, and that's why it's disabled by default.
UPDATE: v0.10 includes an updated ZRAM driver that improves performance significantly. So much so that the benefits seem to outweigh the costs and it's been enabled by default.​
What's the deal with KSM/UKSM?
Since many apps use the same libraries/resources it's very likely that at any given time there are multiple copies of the same data on different memory locations. KSM/UKSM tries to take advantage of that fact by scanning memory pages periodically and consolidating that multiple copies into a single shared copy. Much as like ZRAM it can have a good effect on heavy multitasking performance but at the expense of CPU cycles, and thus it's only recommended in the same scenario as ZRAM. Disabled by default​
Ok, so do I enable ZRAM/KSM/both/neither?
I honestly think most users will be better off not using neither. If you feel like you need extra RAM I'd try KSM first, then ZRAM. Using both at the same time is overkill unless you are an ultra multitasker, in which case you should probably get a 4GB device anyway ​
How do I get WiFi on 6.0.1?
It's a modem version mismatch issue, you need to downgrade the modem. See this post.​
Love to see more options! Thanks for sharing!!
Yeah this will be very good
Only One think that would be awesome try to implement the double tap to wake
Awesome! More custom kernels are always welcome are there many governors to choose from?
krohme said:
Awesome! More custom kernels are always welcome are there many governors to choose from?
Click to expand...
Click to collapse
Right now only the stock governors are available but I plan on adding a few
Can't we install it through twrp???
guraki said:
Can't we install it through twrp???
Click to expand...
Click to collapse
Yes, TWRP supports boot image flashing
I lost root after the kernel install....
---------- Post added at 03:22 PM ---------- Previous post was at 02:39 PM ----------
Seems to work fine!!! Any battery life expectations?
guraki said:
I lost root after the kernel install....
---------- Post added at 03:22 PM ---------- Previous post was at 02:39 PM ----------
Seems to work fine!!! Any battery life expectations?
Click to expand...
Click to collapse
As I said on the OP my main goal is performance/smoothness, so I haven't specifically sought better battery life. That being said I'm getting about the same battery life as stock with better performance, that works for me.
Nevertheless, I'm very interested on how it works for other configurations and usage patterns.
@dirtyhank could you please add hotplugging to the kernel? Preferably one that allows you to select how many cores to run as well as which ones, as in run the two A57s and turn off the four A53s. Currently I'm running two A53s at 1.2Ghz and the remaining four cores are always off.
The screenshot is from Lolipop, and it is the only reason why I havent upgraded to MM. Turning off cores definitely makes a difference on battery life.
Also, if possible, adding a lower speed to the min speed. Will gladly test anything you thow my way. Thanks in advance.
Is there any chance for a CM13 version and a DT2W fork from elementalx?
sir-harlekin said:
Is there any chance for a CM13 version and a DT2W fork from elementalx?
Click to expand...
Click to collapse
DT2W maybe, CM13 unlikely.
very nice thank you! slowly slowly we getting more and more things. Just making sure this is only for stock based rom/s Thanks!!
cerobles1 said:
@dirtyhank could you please add hotplugging to the kernel? Preferably one that allows you to select how many cores to run as well as which ones, as in run the two A57s and turn off the four A53s. Currently I'm running two A53s at 1.2Ghz and the remaining four cores are always off.
The screenshot is from Lolipop, and it is the only reason why I havent upgraded to MM. Turning off cores definitely makes a difference on battery life.
Also, if possible, adding a lower speed to the min speed. Will gladly test anything you thow my way. Thanks in advance.
Click to expand...
Click to collapse
What kernel are you using on LP?
patt2k said:
very nice thank you! slowly slowly we getting more and more things. Just making sure this is only for stock based rom/s Thanks!!
Click to expand...
Click to collapse
Yep, stock ROM, I'll edit the OP
dirtyhank said:
Yep, stock ROM, I'll edit the OP
Click to expand...
Click to collapse
Awesome gonna flash this soon
I hope a port for CM based roms might be possible in the future! Thanks for sharing your work and replying so quickly!
dirtyhank said:
Yep, stock ROM, I'll edit the OP
Click to expand...
Click to collapse
Getting bootloop on TruePure rom 2.4. Anything I can try to avoid bootloops?

[DISCONTINUED][ALL VARIANTS] Swifty Kernel | Custom Stock | 6/24/17 |

The Schwifty Kernel (Yeahhh, Get Schwifty)
Hello guys welcome to the Schwifty Kernel! If you watch the show "Rick and Morty" you will understand why I named it this if you don't understand well either youtube it or just don't worry and enjoy the sh*t out the kernel anyways hehe. Alright lets get Schwifty, here's all the info about the kernel in a way that will help you decide how you want to set up your phone! The second post will contain changelogs and third post, well not sure yet. But enjoy!!​
Basic Specifications/Information:
Based On LS997ZV7 OpenSource (Thanks LG)
NO Static Screen
Install Includes Root
Allow 5-10 to settle in after booting up for better usage
Take the time to read all the information to get an understanding on the kernel (Will help with less bug reports)
If you report a bug please search before posting and give all information about your issue (Such as rom, kernel version, kernel setup... ect)
I will edit the page with dates when there is something new added such as govenors, schedulers ect...
I/O Scheduler Information - I/O:
FIOPS - This new I/O scheduler is designed around the following assumptions about Flash-based storage devices: no I/O seek time, read and write I/O cost is usually different from rotating media, time to make a request depends upon the request size, and high through-put and higher IOPS with low-latency. FIOPS (Fair IOPS) ioscheduler tries to fix the gaps in CFQ. It's IOPS based, so it only targets for drive without I/O seek. It's quite similar like CFQ, but the dispatch decision is made according to IOPS instead of slice.
SIO - Simple I/O aims to keep minimum overhead to achieve low latency to serve I/O requests. No priority queue concepts, but only basic merging. SIO is a mix between noop & deadline. No reordering or sorting of requests.
NOOP - Inserts all the incoming I/O requests to a First In First Out queue and implements request merging. Best used with storage devices that does not depend on mechanical movement to access data (yes, like our flash drives). Advantage here is that flash drives does not require reordering of multiple I/O requests unlike in normal hard drives.
DEADLINE - The goal of the Deadline scheduler is to attempt to guarantee a start service time for a request. It does that by imposing a deadline on all I/O operations to prevent starvation of requests. It also maintains two deadline queues, in addition to the sorted queues (both read and write). Deadline queues are basically sorted by their deadline (the expiration time), while the sorted queues are sorted by the sector number. Before serving the next request, the Deadline scheduler decides which queue to use. Read queues are given a higher priority, because processes usually block on read operations. Next, the Deadline scheduler checks if the first request in the deadline queue has expired. Otherwise, the scheduler serves a batch of requests from the sorted queue. In both cases, the scheduler also serves a batch of requests following the chosen request in the sorted queue.
BFQ - Instead of time slices allocation by CFQ, BFQ assigns budgets. Disk is granted to an active process until it's budget (number of sectors) expires. BFQ assigns high budgets to non-read tasks. Budget assigned to a process varies over time as a function of it's behavior.
BFQIO - Enable hierarchical scheduling in BFQ, using the cgroups filesystem interface. The name of the subsystem will be bfqio.
ZEN - ZEN is based on the Noop, Deadline and SIO I/O schedulers. It's an FCFS (First come, first serve) based algorithm, but it's not strictly FIFO. ZEN does not do any sorting. It uses deadlines for fairness, and treats synchronous requests with priority over asynchronous ones. Other than that, it's pretty much the same as Noop blended with VR features.
MAPLE - Maple is based on the Zen and Simple I/O schedulers. It uses ZEN's first-come-first-serve style algorithm with separate read/write requests and improved former/latter request handling from SIO. Maple is biased towards handling asynchronous requests before synchronous, and read requests before write. While this can have negative aspects on write intensive tasks like file copying, it slightly improves UI responsiveness. When the device is asleep, maple increases the expiry time of requests so that it can handle them more slowly, causing less overhead.
Governor Information - CPU:
Interactive - Interactive scales the clockspeed over the course of a timer set by the kernel developer (or user). In other words, if an application demands a ramp to maximum clockspeed (by placing 100% load on the CPU), a user can execute another task before the governor starts reducing CPU frequency. Because of this timer, Interactive is also better prepared to utilize intermediate clockspeeds that fall between the minimum and maximum CPU frequencies. It is significantly more responsive than OnDemand, because it's faster at scaling to maximum frequency. Interactive also makes the assumption that a user turning the screen on will shortly be followed by the user interacting with some application on their device. Because of this, screen on triggers a ramp to maximum clockspeed, followed by the timer behavior described above. Interactive is the default governor of choice for today's smartphone and tablet manufacturers.
Ondemand - Ondemand is one of the original and oldest governors available on the linux kernel. When the load placed on your CPU reaches the set threshold, the governor will quickly ramp up to the maximum CPU frequency. It has excellent fluidity because of this high-frequency bias, but it can also have a relatively negative effect on battery life versus other governors. OnDemand was commonly chosen by smartphone manufacturers in the past because it is well-tested and reliable, but it is outdated now and is being replaced by Google's Interactive governor.
Performance - Sets the frequency at the maximum available frequency. This governor always returns UINT_MAX as frequency so that the DEVFREQ framework returns the highest frequency available at any time.
Powersave - Sets the frequency at the minimum available frequency. This governor always returns 0 as frequency so that the DEVFREQ framework returns the lowest frequency available at any time.
Userspace - Sets the frequency at the user specified one. This governor returns the user configured frequency if there has been an input to /sys/devices/.../power/devfreq_set_freq. Otherwise, the governor does not change the frequnecy given at the initialization.
Blu_active - A new cpu governor developed by eng.stk (featured in his Code_Blue kernels) based on interactive with upstream caf patches and ondemand governor bits too. This governor is mainly focused on performance like the other things the developer creates but it is also well balanced for gaming and general usage.
ElementalX - ElementalX is basically a multiphase Ondemand governor that aims to achieve the best balance between battery life and performance. By default, it is more conservative than Ondemand as it does not ramp up often for most phone activities. If there is a graphics load detected, the governor will switch to a two-phase Ondemand behaviour where different max frequencies are used depending on the load increase. ElementalX comes with input boost enabled by default lowering the sampling rate and increasing the frequency to improve responsiveness.
Nightmare - A PegasusQ modified, less aggressive and more stable. A good compromise between performance and battery. In addition to the SoD is a prevention because it usually does not hotplug.
Darkness - It's based on nightmare but more simple and fast, basic configs but very complex structure. It is an updated version of the nightmare gov, so far it is quite stable in tests.
Chill (NEW 5/15) - Use the CPUFreq governor 'chill' as default. This allows you to get a full dynamic frequency capable system by simply loading your cpufreq low-level hardware driver. A conservative based governor that aims to provide more aggressive battery savings while screen is off.
Dance Dance - Based on conservative with some smartass features, it scales accordingly to conservatives laws. So it will start from the bottom, take a load sample, if it's above the upthreshold, ramp up only one speed at a time, and ramp down one at a time. It will automatically cap the off screen speeds to 245Mhz, and if your min freq is higher than 245mhz, it will reset the min to 120mhz while screen is off and restore it upon screen awakening, and still scale accordingly to conservatives laws. So it spends most of its time at lower frequencies. The goal of this is to get the best battery life with decent performance. It is a performance focused governor but also blends with some battery savings.
GPU Governors:
Adreno Idler - It is an idling algorithm, an efficient workaround for msm-adreno-tz's overheads. Main goal is to lower the power consumptions while maintaining high-performance. Since msm-adreno-tz tends to *not* use the lowest frequency even on idle, Adreno idler replaces msm-adreno-tz's algorithm when it comes to calculating idle frequency(mostly by ondemand's method). The higher frequencies are not touched with this algorithm, so high-demanding games will (most likely) not suffer from worsened performance.
Simple - An open-source alternative to Qualcomm's closed-sourced governors. Developed by Faux123, it is highly customisable which will allow more fine-grained control over how the GPU scales up and down.
simple_ondemand[/b] - As the name implies, it is a simpler version of the CPU governor ondemand. simple_ondemand will ramp up the frequency when a load is detected. It has a good balance between performance and battery savings.
msm-adreno-tz - The default GPU governor used by Qualcomm for their adreno GPUs. It is based on the ondemand governor but is biased towards performance, therefore it should give better performance in games but less battery life.
Performance - As the name suggests, this keeps your GPU running at the max frequency. This is a governor if you want the best possible experience in games but you don't care about your battery life.
Powersave - Like the CPU governor, this keeps your GPU running at the lowest possible frequency. Best battery life, extreme lag in games.
Userspace - This governor basically allows the user is able to set a desired frequency for the GPU to run at.
cpubw_hwmon - A hardware monitor based governor that attempts to determine bandwidth (BW) needed by CPU and other hardware. Because it samples bandwidth using polling intervals, it has been made to be biased towards performance to compensate for the possible slower response times during heavy loads.
MSM Cpufreq - The MSM CPUfreq governor determines the CPU to DDR bandwidth vote based on the current CPU frequency of all the active CPUs. In other words, this governor scales based on CPU usage which could mean more performance.
Other Information:
Moved Core Control To Kernel - Moved core control from out-of-tree module into the kernel proper. Core control monitors load on CPUs and controls how many CPUs are available for the system to use at any point in time. This can help save power. Core control can be configured through sysfs interface.
Moved Core Control Trace Events To Scheduler
Added A Knob To Disable The core_ctl (Core Control) - The CPU hotplug tests does not work with core_ctl compiled statically into kernel. Provide an interface to disable the hotplug by core_ctl.
Enabled LZ4 Compression & Added ExFAT Filesystem
Fixed Various Issues
And a whole lot of other sh*t
Disclaimer: I do not and will not take any responsibility towards anything that happens to your phone after flashing.​
XDA:DevDB Information
Swifty Kernel | Custom Stock | 6/24/18 |, Kernel for the LG V20
Contributors
SaintZ93
Source Code: https://github.com/SaintZ13/schwifty_kernel
Kernel Special Features:
Version Information
Status: Stable
Current Stable Version: Release V3
Stable Release Date: 2017-06-08
Created 2017-06-08
Last Updated 2017-06-08
Changelogs
Schwifty Kernel: Release V3 (6/8/17):
STATIC ON BOOT IS FIXED!!!
Update kernel source to LS997 "ZV7"
Changed kernel name for its own distribution
qpnp-smbcharger: Publish charger voltage to the usb psy
arm: dts: Remove MSM watchdog IPI ping in msm8996
net: bcmdhd: reduce wlan_rx wakelock period
bcmdhd: reduce rx wakelock timeout via sysfs node
Take out wakelocks that need a divide
display: add a simple api to query the display state (on/off) at any
cpufreq_interactive: remove boost functionality
cpufreq: interactive governor drops bits in time calculation
CHROMIUM: cpufreq: interactive: calculate load before freq change
cpufreq: interactive: remove hispeed_freq init restriction
defconfig: Enable Maple IOSched
block: [Introduded for 3.18.y] Add Maple I/O Scheduler
usb: dwc3-msm: Don't issue power supply change for invalid charger
defconfig: enable fast charging
Disable wlan_rx wakelock
Add more wlan wakelocks
drivers: wakeup: squash improvements from franciscofranco/[email protected]
drivers: wakeup: add entries to disable timerfd, netlink, wlan_wow_wl, wlan and netmgr_wl wakelocks
drivers: wakeup: bypass two WiFi wakelocks
power: wakeup: prevent IPA_WS wakelock from being acquired by default
crypto: use -O3
arm64: crypto: Improve target optimization flags
random: backport from Linux 4.2
touchscreen: add -Ofast
synaptics: add -Ofast
USB: cypress_m8: add endpoint sanity check
drivers: video: Add bounds checking in fb_cmap_to_user
ipv6: fix out of bound writes in __ip6_append_data()
ipv6/dccp: do not inherit ipv6_mc_list from parent
sctp: do not inherit ipv6_{mc|ac|fl}_list from parent
ipv6: Prevent overrun when parsing v6 header options
ext4: fix deadlock during page writeback
ext4: fix data exposure after a crash
bpf: don't let ldimm64 leak map addresses on unprivileged
DTS: Remove the core hotplug on low battery feature
DTS: Decrease BCL low battery threshold to 5%
binfmt_elf.c: use get_random_int() to fix entropy depleting
Remove useless defconfigs
Update defconfig
Update to a more convienant build script
cpuset: Make cpusets restore on hotplug
crypto: ahash - Fix EINPROGRESS notification callback
netfilter: x_tables: check for size overflow
Input: aiptek - fix crash on detecting device without endpoints
net: llc: use correct size for sysctl timeout entries
netlink: Fix dump skb leak/double free
net: avoid signed overflows for SO_{SND|RCV}BUFFORCE
packet: fix race condition in packet_set_ring
mpi: Fix NULL ptr dereference in mpi_powm() [ver #3]
net: ping: check minimum size on ICMP header length
usbnet: cleanup after bind() in probe()
ipv4: Don't do expensive useless work during inetdev destroy.
USB: cdc-acm: more sanity checking
mm: migrate dirty page without clear_page_dirty_for_io etc
pipe: limit the per-user amount of pages allocated in pipes
ALSA: hrtimer: Fix stall by hrtimer_cancel()
ext4: validate s_first_meta_bg at mount time
udp: properly support MSG_PEEK with truncated buffers
l2tp: fix racy SOCK_ZAPPED flag check in l2tp_ip{,6}_bind()
libceph: introduce ceph_crypt() for in-place en/decryption
sg_write()/bsg_write() is not fit to be called under KERNEL_DS
mm: Tighten x86 /dev/mem with zeroing reads
mm/mempolicy.c: fix error handling in set_mempolicy and mbind.
scsi: sg: check length passed to SG_NEXT_CMD_LEN
sctp: deny peeloff operation on asocs with threads sleeping on it
irda: Fix lockdep annotations in hashbin_delete().
net/llc: avoid BUG_ON() in skb_orphan()
tcp: avoid infinite loop in tcp_splice_read()
dccp: fix freeing skb too early for IPV6_RECVPKTINFO
perf/core: Fix concurrent sys_perf_event_open() vs. 'move_group' race
sctp: avoid BUG_ON on sctp_wait_for_sndbuf
posix_acl: Clear SGID bit when setting file permissions
time: Remove CONFIG_TIMER_STATS
ipc/shm: Fix shmat mmap nil-page protection
tmpfs: clear S_ISGID when setting posix ACLs
ANDROID: ion: Protect kref from userspace manipulation
ANDROID: ion: check for kref overflow
Fix build issue
Revert "msm: mpm: disable debugging"
Version: One Bad Ass Kernel V3
proc: Remove additional SafetyNet flags from /proc/cmdline
msm: vidc: disable debug logs
msm: mdss: KCAL: disable igc update
msm: mdss: KCAL: Send a pp display commit when changes are made
net/packet: fix overflow in check for tp_reserve
net/packet: fix overflow in check for tp_frame_nr
net/packet: fix overflow in check for priv area size
dccp/tcp: do not inherit mc_list from parent …
ip6_gre: fix ip6gre_err() invalid reads
tty: n_hdlc: get rid of racy n_hdlc.tbuf
TTY: n_hdlc, fix lockdep false positive
kernel: Fix potential refcount leak in su check
kernel: Only expose su when daemon is running
PM / devfreq: Reduce wake boost duration to 5000 ms
Download:
https://www.androidfilehost.com/?fid=673368273298961801
Click to expand...
Click to collapse
MD5: 0dbface713400fb4f29f8b947c82c47c
ROM Size: 23.4MB
Click to expand...
Click to collapse
Reserved
Awesome work man.... Love it! this kernel has been nice and smooth! Thanks for all you are doing for the community!!!!
Thanks,
Chaz187
Chaz187 said:
Awesome work man.... Love it! this kernel has been nice and smooth! Thanks for all you are doing for the community!!!!
Thanks,
Chaz187
Click to expand...
Click to collapse
Thanks man, much more to come. I'm going to make this kernel work for AOSP/CM and if the other variants are lucky I'll build for them too . Thanks for all you do as well!
Nice! maybe H918
Wow, no static on boot and all these governor choices......:good::good::good:........can't wait to see your next rom build
SaintZ93 said:
Thanks man, much more to come. I'm going to make this kernel work for AOSP/CM and if the other variants are lucky I'll build for them too . Thanks for all you do as well!
Click to expand...
Click to collapse
I can test for h918
Sent from my LG-H918 using Tapatalk
Before the thread blows up in requests for other variants. I am currently NOT building for other variants. When I have time I may consider it but until then only support LS997 im sorry! However this might (key word might) work for the Verizon variant and US996.
Been so long since I've used governors...what do you recommend to adjust them all? I used to use trickster back in the day but that has since changed.
Excellent work. Can't wait to through it on my phone.
{
"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"
}
My bad for the big picture lol
fogame said:
Been so long since I've used governors...what do you recommend to adjust them all? I used to use trickster back in the day but that has since changed.
Excellent work. Can't wait to through it on my phone.
My bad for the big picture lol
Click to expand...
Click to collapse
YESS! haha fu*k YES! Get Schwifty bro. Umm I'm really figuring that out myself lol. Right now Im using the Dance Dance gov. All seems well.
SaintZ93 said:
YESS! haha fu*k YES! Get Schwifty bro. Umm I'm really figuring that out myself lol. Right now Im using the Dance Dance gov. All seems well.
Click to expand...
Click to collapse
Sweet. Which app did you use to change it? Or how did you change it? Usually trickster allowed me to change it.
fogame said:
Sweet. Which app did you use to change it? Or how did you change it? Usually trickster allowed me to change it.
Click to expand...
Click to collapse
I use Kernel Adiutor.
I flashed this kernel then had the sudden urge to sh*t on the floor.
Really smooth preformance with OBAR. Best ROM and Kernel combo for the sprint variant yet. Thanks!
This kernel has fixed my bluetooth annoyances.
Bluetooth instantly and automatically switches from one device to another when I move from work truck to car.
Sooooooooooo happy. ?
R'uh r'oh. Spoke to soon. Having sound issues but only with videos opened in facebook browser. I can live with this.
holypuma said:
I flashed this kernel then had the sudden urge to sh*t on the floor.
Really smooth preformance with OBAR. Best ROM and Kernel combo for the sprint variant yet. Thanks!
Click to expand...
Click to collapse
Did you remember to take off your pant first?
....I forgot to when I found this kernel.
@SaintZ93 Is it possible to make a version that doesn't flash SU? Every time I flash it some how messes up my phone lol.
All issues with my phone are fixed with this kernel. Bluetooth works perfectly, no lag, no freezing, no problems at all! Thanks for the awesome work man!
Gonna try this out with my ls997... I've been needing a new kernel... And try out with other roms... Thanks... Stay schwifty
fogame said:
@SaintZ93 Is it possible to make a version that doesn't flash SU? Every time I flash it some how messes up my phone lol.
Click to expand...
Click to collapse
Open the zip and remove the root directory and try flashing. Or open the folder and delete the zip and put in magisk zip but make sure to rename the magisk zip to the same thing the original zip was.

[KERNEL][4.4.302+][for Android 9] A2N Kernel for Galaxy S8/S8+/Note8 (Exynos) [R61]

Revive your Samsung Galaxy S8 / S8 Plus phone in 2023!
Fastest custom kernel world-wide with lots of innovative features!
Supports all S8 / S8+ Plus / Note8 Exynos Variants Running Android 9
A2N Kernel Special Features
Google Play - certified device
SafetyNet: OK
100 % compatible with latest Magisk
Banking apps works fine
Charger control for faster charging
Battery IDLE and battery care
Stable CPU OC up to 4 x 2,8 GHz
Stable GPU OC up to 20 x 839 MHz
Adjustable CPU / GPU - Max Temp
Adjustable Battery Max Temp
Voltage control for all clocks (CPU lit/big - GPU - RAM - bus clocks etc..)
Fixed time to full battery
Flashlight tuning
Wireguard backend support - always latest version
DriveDroid backend support
Dex with any HDMI adapter - thanks @ Barna Keresztes
Samsung Dex: WQHD support with every adapter - thanks @ craftingmod
Higher SOT - with new battery up to 10 h, with old battery see screenshots
Wi-Fi calling & VoLTE works
S8: RAM upgrade - 3679 @ 3717 MB
Note8: RAM upgrade - 5339 @ 5376 MB
SELinux in permissive mode - thanks @Noxxxious
DRM - L3 stable streaming
Replaced SSWAP with zRam (RAM compression) - with fast LZ4 compressor
Added backend NTFS, CIFS and NFS support
Removed enforced device encryption - you can enable it in Android security settings
HMP driver fix
Added extra gamepads drivers: Xbox / Sony PS / Nintendo Wii
Ability to set different CPU Freq while screen ON/OFF
Ability to use only the little CPU
Proper support for Korean version (proper Wi-Fi power)
and many more ...
This Kernel Aims are to
reduce the power consumption
reduce device heat
improve the performance
make it more smooth
reduce RAM usage
improve RAM management
extend device features
and many more ...
A2N Kernel Control - App Features
Best way to tune this kernel to your needs
Note: 3-party kernel manager apps do not work with this kernel.
-- Charger control
-- Battery care
-- Battery IDLE mode
-- Battery thermal control
-- Custom resolution for HDMI/DEX
-- CPU/GPU OC control with voltage control
-- Limit CPU max_freq on suspend
-- CPU/GPU governor tuning incl. input-booster
-- CPU/GPU DVFS thermal throttling control (ability to adjust the max allowed CPU/GPU temp)
-- GPU power-policy always_on
-- Performance profiles
-- SWAP/zRam
-- Backend Network stuff like NFS, CIFS, WIREGUARD etc..
-- Wi-Fi-Band selection
-- Torch brightness control
-- Notification LED-RGB - adjust blink_on, blink_off delay
-- Accelerometer calibration
-- Load kernel module - NTFS.
-- Advanced Power Menu - ability to reboot to recovery / download-mode
-- And many more!
DOWNLOAD
Installation from Scratch
(assuming you are using latest stock ROM)​
Settings --> Phone Info --> Software info --> build number (tap 7 times)
Tap 2 times the back-key
Developer settings --> enable "OEM unlock"
Download TWRP for S8 / S8+ / Note8 accordingly (the .tar version, for ODIN flash over PC)
Download latest A2N Kernel for S8 / S8+ / Note8 or for Korean variant: S8 / S8+ / Note8 accordingly and put the file in USB-thumb or in micro-sd-card
Download latest Magisk.apk
Rename Magisk.apk to Magisk.zip and put the file in USB-thumb or in micro-sd-card
Power off​
Boot in Download-mode​
Flash the .tar twrp file with ODIN (disable "auto-reboot" and "reset time")​
Reboot directly to TWRP​
wipe ---> format data ---> "yes" (type yes) and ENTER.​
Flash latest A2N Kernel​
Flash Magisk.zip​
Optional but recommended: flash AdAway_hosts_patcher_g95x.zip (battery drain fix for vanced YouTube and vanced YT music)​
Reboot to system and enjoy !​
Note: first boot takes around 15 minutes for proper app optimization !​
Update A2N Kernel
Download and flash latest A2N Kernel for S8 / S8+ / Note8 or for Korean variant: S8 / S8+ / Note8 accordingly​
Flash Magisk.zip​
Reboot to system and enjoy !​
Current Bugs and Changelog
FAQ
Disclaimer​
I am not responsible for anything that happens after flashing the work provided here.
Sharing is caring, so according to the (much unwelcomed) rule 12 you can use my open source on GitHub without my explicit consent or credits. But this is where the caring stops as I do not allow you to use any of my own provided files (except for unmodified stock files). Section 3 of this rule states that you can try to bypass my explicit consent by releasing it as your own when you succeed to make significant changes to the work, otherwise i'll report you and your thread will be removed.
Credits​
Linus Torvalds - Linux kernel
Google - Android kernel patches
Samsung - device kernel source
@corsicanu - TWRP recovery - original thread
@S.AMU for providing FTP-Server
000webhost - Webhosting
@Noxxxious for the nice disclaimer text
XDA members - Reporting bugs
Minimum stable version: R54
Contributors
ace2nutzer
Source Code: https://github.com/ace2nutzer/Samsung_dreamlte_Kernel
Buglist - A2N Kernel R61
None
Changelog
A2N Kernel R61
RAM: improved memory management and fixed bug
USB: fixed tethering instability issue (needs more testing)
GPU: trigger kernel panic on GPU fault instead to issue a soft-reset
Removed buggy gaming_mode
GPU power-policy: force to use "coarse_demand" on suspend if "always_on" is enabled - saves battery (around 30 mA!)
CPU/GPU DVFS: reduced "gpu_dvfs_sleep_time" from 8 to 4 ms
GPU: fixed soft-reset issue caused by buggy HMP driver - this should fix GPU freezes and lags!
HMP: fixed bugs and adjusted tunables to be more aggressive - (faster and smoother)
CPU: updated ondemand gov
CPU: updated input-booster driver to be more efficient (more smooth, less battery draining!)
GPU: disabled shader cores hotplugging for better performance!
Updated ramdisk
A2N Kernel Control V61
CPU/GPU DVFS: added ability to check "Peak Temperature"
Misc: LED-RGB: added power control
CPU-BIG: removed CPU-Hotplug feature (redundant)
GPU: replaced "Gaming Mode" with "Boost"
GPU: added power-policy for "Always On"
CPU-BIG: merged "Input Booster" into "Boost"
CPU-LIT: removed "Boost" (redundant)
Audio: moved "PM-QOS" to "Debug" menu
Fixed bugs and improved performance
Older Changelogs
A2N Kernel R60
RAM: Fixed regression from R59 in memory management
RAM: improved multitasking
LED-RGB: added a new sysfs interface to force low_powermode_current
CPUSETS: moved "surfaceflinger", "systemui" and "InfinityWallpaper" to little CPU to save battery
A2N Kernel Control V60
RAM: optimized zRam routine
Misc: optimized red LED (ability to force low_powermode_current instead of dynamic_current)
Updated strings (help text)
A2N Kernel R59
Re-enabled CONFIG_MEMCG - to reduce memory usage
LMK/HPA: updated driver for better memory management - by me
CPU/GPU: updated voltages - increased a bit for stability
Fixed USB-JIG feature
SELinux: fake enforcing enabled by default
LMK: updated minfree values to work more efficient with updated LMK driver
Init: removed init.d.a2n - instead we use now default init.d folder
A2N Kernel Control V59
GPU: improved "Gaming Mode"
RAM: simplified swap control
CPU/GPU: added ability to check temperature
Updated defaults & fixed bugs
A2N Kernel R58
Source update to LK 4.4.302 (only memory management)
zRam: updated driver to LK 4.9.337
zRam: tiny bug fix
A2N Kernel Control V58
Fixed bugs
A2N Kernel R57 (Hotfix)
Fixed low FPS in games
Improved RAM
Improved DVFS for CPU/GPU
Added "gaming mode"
A2N Kernel Control V57
CPU: allow input booster up to 5000 ms
GPU: added "gaming mode"
A2N Kernel R56
Updated wireguard to the latest version
CPU DVFS: removed hardcoded voltages for stock Freqs (since it's painful)
CPU: re-added Samsung patch for app launch boost (all cores at max Freq while opening an app)
CPU: fixed big CPU hotplug feature
A2N: removed kernel settings lock caused by 3rd-party apps or (wrongly applied) user init.d scripts
Memory management: sync with Android kernel 4.4.194 + some other optimizations
LMK: updated driver
CPU/GPU: reduced device heat (since it's painful for the battery)
A2N Kernel Control V56
CPU: disabled CPU input booster by default
CPU/GPU: disabled CPU boost by default
Audio: set PM-QOS-BIG to 741 MHz (if you face audio issue, increase it)
CPU/GPU: removed voltage control for stock Freqs (still possible over shell script)
CPU: fixed CPU boost and up_threshold doesn't able to change after using CPU hotplug feature
CPU/GPU: set DVFS temp to 60 °C
Fxed other minor bugs
Debug menu: added DRM L1/L3 patch (only in demo version available or Google will kill me!!!)
A2N Kernel R55
Camera: fixed lags
GPU: re-added 260MHz-step
GPU: relaxed aggressive powersaving (using GPU power-policy "always-on" is no longer needed!)
RAM: optimized CMA/RBIN usage (more efficient RAM usage)
CPU: fixed cpu-hotplug instabilities
CPU: added ability to hotplug big CPU or only while suspend(screen OFF)
Screen: reverted to 214MHz while screen ON - caused screen tearing while scrolling in chrome-browser
Fixed "memory allocation failure order: 0" warnings
Added upstream patch to fix read_ahead_kb performance
Overall improvements (performance, battery life, memory management etc)
Improved boottime
A2N Kernel Control V55
GPU: re-added 260MHz-step
CPU: added ability to hotplug big CPU or only while suspend(screen OFF)
Bug fixes
Improved app performance
Kernel R54
CPU/GPU DVFS: improved stability & performance
Improved boottime
A2N Kernel Control V54
Fixed zRam
Bug fixes
Improved app performance
Kernel R53 (Hotfix)
HMP: fixed overheating issue
CPU: improved stability for 2,8 GHz step
Kernel V. 2022.10.14
Audio: re-added PM-QOS 1170 MHz for big CPU
Fixed random reboots introduced from previous release
CPU/GPU: updated voltage table
Lowered last_kmsg size from 2MB @ 1MB
Fixed tiny bugs in various drivers
DTS: updated source code and added korean DTS for S8/S8+/Note8
Korean devices: set proper WLAN_REGION= 200 for proper WiFi power
Screen: reduced min_freq 214 MHz @ 134 MHz for power save
Network: re-added PM-QOS to fix some issues
CPU/GPU: removed useless freq steps and updated governor
CPU/GPU: updated logic of DVFS driver
Devfreq: fixed wrong suspend/resume Freq settings for RAM, INT, LCD and so on
CPU: use min_freq = 832 MHz for LIT (CPU IDLE fix)
HMP_CUSTOM: optimize up/down-threshold more aggressive
Charger Control: updated chg_float_voltage from 4.35 V to 4,40 V for properly charging battery to 100%
DTS: user proper thermal zome name for CPU, so apps can detect CPU/GPU/BAT temp properly (remove also useless/duplicate temp sensors for better view in stats apps !!)
Updated kernel config
A2N Kernel Control V5.2
CPU/GPU: added voltage control for stock max_freq and OC Freq steps
Audio: add both pm-qos for lit/big CPU
Fixed bugs
Updated app defaults
Improved app performance
Kernel V. 2022.08.23
Audio UHQ: re-implemented on big CPU
Fixed deep sleep issue (caused by UHQ audio patch)
HMP_CUSTOM: tiny optimizations
Re-enabled several kernel security features
Re-enabled all HID drivers as suggested by Google
CPU/GPU OC: updated custom DVFS table for better OC stability - thanks @PORTER2002 for testing 2,8GHz stability
Fixed Samsung DexPAD - S-PEN works now - thanks @Illutorium for testing
Fixed as well other Samsung accessoires
Dex should still work with 3rd-party adapters as well
GPU: added some more optimizations, especially for Vulkan render
Optimized various system clocks for higher efficiency
Optimized input booster for higher efficiency - it uses now Freqs from "balanced" profile to be more power efficient
GPU: slow screen orientation should be fixed as well
Audio: fixed audio scratching when adding a lot of filters
A2N Kernel Control V. 5.1
GPU: voltage control: synced voltages from kernel release
Performance Profiles: updated all profiles
CPU: updated "little only" switch
Audio: UHQ: replaced PM-QOS-LIT with PM-QOS-BIG since we use now audio on big CPU
Updated defaults
Kernel V. 2022.07.01
DEX: bug fix for 3rd-party HDMI adapters
DVFS table: removed hardcoded OV for big CPU by me
Reduced power consumption for IDLE + low Freq steps (especially for Note8)
UHQ Audio: exported pm_qos_lit to userspace (to fix audio scratching)
A2N Kernel Control V. 5.0
Audio: added UHQ pm_qos_lit control (to fix audio scratching)
Kernel V. 2022.06.24
Charger Control: fixed bugs in LPM and battery IDLE feature
CPU/GPU/RAM/etc...: added voltage control
CPU/GPU: improved OC stability (CPU lit works stable @ 2 GHz for me)
Sound: updated pm_qos - should reduce sound scratching while idle and screen off
A2N Kernel Control V. 4.9
GPU: added voltage control for OC steps (stable up to 839 MHz)
CPU: added "little only" (for powersave)
updated defaults
Kernel V. 2022.06.12
GPU: updated voltage table - stable OC up to 839 MHz !!!
Kernel V. 2022.05.13
HMP_CUSTOM: updated driver
Audio: fixed stuttering - thanks @MUNISH MONGA for report and tests
DRM switched to L3 (Netflix fix)
Improved stability
A2N Kernel Control V. 4.8
Debug: added "fix permissions" (useful if you use this app with other kernel manager apps)
Improved stability
Bug fixes
A2N Kernel Control V. 4.7
Improved stability
Bug fixes
Kernel V. 2022.04.26
USB: fixed MTP/PTP/USB-tethering connections
USB-OTG: fixed SSD/HDD connection - thanks @PORTER2002 for testing
HMP_CUSTOM: updated driver - reduced delay on task migration - fixed background tasks that was sometimes going back to BIG CPU !
Disabled stacktrace
Changed dexopt to "speed" - for quick app launch
Kernel V. 2022.04.20
Improved stability
Improved memory management
Improved multitasking
Fixed BT issues
Fixed MTP Android version
Fixed compatibility issues with emulators apps like Windows emulator
Optimized USB-OTG driver
USB: improved speed for USB-tethering
Added support for F2FS
A2N Kernel Control V. 4.6
Screen: added HDMI/DEX custom resolution changer (to fix low resolution / refresh rate)
Misc: fixed MTP driver version Android
Screen: moved input booster to CPU
Source update
Reduced startup time
Improved stability
Fixed bugs
Kernel V. 2022.04.06
Stability fix
Improved memory management
Improved multitasking
CPU/GPU: updated DVFS driver - allowed again up to 100 °C
Compiled with -O3 - for higher speed
Enabled CONFIG_SYSVIPC - required for some emulator apps
DEX: allowed all resolutions (presets) as well for HDMI 1.4b (experimental)
USB-OTG: enabled support for HID, PRINTER & MASS_STORAGE (experimental)
Added better support for secure folder in kernel - not tested yet
(to enable it on custom ROMs with secure folder support, after you flashed this kernel and Magisk, write this simple cmd to your init.d script: "start secure_storage", save and reboot.)
A2N Kernel Control V. 4.5
CPU/GPU: DVFS max allowed 100 °C
Stability fix (kernel & app)
MISC: added MTP version changer
Improved performance (kernel & app)
Know issues: MTP version changer is broken in kernel and will be fixed soon.
Kernel V. 2022.03.11
Fxed lags with and without zRam enabled
CPU/GPU: ondemand gov --> updated scaling logic
CPU/GPU: decreased Freq switching delay from 40 to 20 ms
I/O: increased throughput - read_ahead_kb: 32 @ 256 KB
Overall improvements (speed, responsiveness, lagfree and battery life)
A2N Kernel Control V. 4.4
RAM: added page-cluster and read_ahead_kb tunable
Updated defaults
Kernel V. 2022.03.05
Improved stability - needs some testing now
Improved memory management
Improved performance & battery life
CPU/GPU: updated DVFS driver - reverted to max 95 °C
CPU/GPU: updated ondemand boost logic - uses only min/max freq to reduce freq switching related lags !
Fixed potential deep sleep issues
NET: moved L2TP & Wireguard to modules - (you can load modules over A2N full app or over init.d script)
GPU: updated driver - memory allocation improvements
USB-OTG: should support now also USB 2.0 & USB 1.1 devices (not only USB 3.0) - needs testing
Dex: re-added patch: enable Dex with any HDMI adapter (was accidentally removed)
Experimental: Dex: support more resolutions
A2N Kernel Control V. 4.3
Network: added L2TP & Wireguard support
Updated defaults
Bug fixes
Improved stability
Kernel V. 2022.02.06
Improved stability
Optimized memory management
Enabled CONFIG_USER_NS
Added Note8 support - (DUG6)
Source code update --> DUG6 (jul 2021)
Tiny updates to WiFi and HMP driver
Charger Control: increased default Max charging Temp: 35 @ 40 °C
A2N Kernel Control V. 4.2
Added Note8 support
Kernel V. 2022.02.02
Improved stability
HMP: improved for battery and speed
CPU/GPU: updated DVFS driver
Lib: sync LZ4 LZO ZLIB with LK 5.16.2
Ashmem: sync with AK 4.9.194
Samsung Dex: WQHD support with every adapter - thanks @ craftingmod
A2N Kernel Control V. 4.1
Improved stability
Updated defaults (swappiness=175)
CPU/GPU: DVFS Max 95 @ 100 °C
Kernel V. 2022.01.16
Improved stability
zRam: backport from Android kernel 4.9.194 (incl. zsmalloc and lz4 lib)
A2N Kernel Control V. 4.0
Bug fixes
Improved performance
Kernel V. 2022.01.10
Improved stability
CPU: updated HMP driver
Optimized MIF & INT Freqs qos-requirements
Removed F2FS driver
Kernel V. 2021.12.20
Fixed random reboots
CPU/GPU: governor update
CPU/GPU: DVFS update - for stability & performance
SELinux: removed fake enforce (enable MagiskHide in Magisk)
Phone status: official (fake)
Wireguard: source update
A2N Kernel Control V. 3.9
Bug fixes
Improved performance
Improved stability
Updated settings
Kernel V. 2021.12.06
Another attempt to fix random reboots
Swap: reverted zRam driver to stock - with some fixes by me
Improved LPM charging
Updated torch sysfs interface - for ultra bright torch
Updated kernel config
Disabled CONFIG_MEMCG (memory resource controller)
Optimized LMK driver (minfree values - should fix bad multitasking)
Wireguard: source update
A2N Kernel Control V. 3.7
Re-added autostart on boot
Torch: increased Max value: 15 @ 17 (Stock: 10)
Bug fixes
Improved stability
Reduced mobile data usage
Updated defaults
Kernel V. 2021.10.29
Fixed random reboots
Fixed apps force close
Reduced device heat
Improved memory management - especially multitasking
Updated Wireguard to the latest version
Fixed minor bug in Wi-Fi driver
Updated USB OTG drivers
CPU/GPU: updated DVFS (OC driver) and ondemand governors
Updated / fixed moisture detection for USB and jack port
HMP_CUSTOM: updated to allow to use all 8 cores at the same time for just one app (if the app has at least 8 threads)
Disabled "CONFIG_RT_GROUP_SCHED" as suggested by Google AOSP upstream, for the proper handling of real-time tasks
Added support for CIFS/SMB V2 + V3 and NFS V.4.2
CIFS: Fixed infinite loop when using hard mount option
SELinux: optimized "fake enforce" hack
Swap: updated zRam driver
A2N Kernel Control V. 3.6
RAM: LMK: added 64 MB choice,
added "Swappiness" tunable
CPU: Little: re-added "Disable Boost" and "up_threshold"
Switched to "DarkMode"
Bug fixes
Improved stability
Reduced mobile data usage
Updated defaults
Kernel V. 2021.06.03 (Hotfix)
Charger Control: Fixed AFC regression
Kernel Config: re-enabled CONFIG_PGTABLE_MAPPING
Disabled CONFIG_RBIN - maybe this will fix zRam random reboots (needs some testing)
Kernel V. 2021.05.30
CPU/GPU: updated ondemand gov
Charger Control V. 2.9: optimized AFC handling
Kernel Config: re-enabled CONFIG_SECURE_OS_BOOSTER_API for maximum speed for iris, fingerprint and face unlock
Disabled CONFIG_PGTABLE_MAPPING - maybe this will fix zRam random reboots (needs some testing)
Kernel V. 2021.05.22
zRam: set to 50 % size by default
improved stability
Memory Management: optimized low-memory-killer to have min 192 MB free RAM
for quick response even if RAM is in high pressure state
Torch: fixed torch control interferences with Android's quick settings
SELinux: added ability to fake enforce status (in demo app)
CPU big/lit: updated ondemand gov for the better smoothness and battery life - up_threshold 95 by default
CPU big/lit: up_threshold=95 and disabled boost always fixed on suspend for more power saving
CPU little: increased min_freq to 598 MHz, up_threshold 95 and enabled boost but on suspend it'll use 455 MHz for power saving
GPU: updated ondemand gov for more powersaving - up_threshold 95 - boost enabled
GPU: removed unused governors
Input Touch Booster: disabled by default for more power save
A2N Kernel Control V. 3.5
New: check for new A2N Kernel release on app launch
Misc: fixed torch control interferences with Android's quick settings
Updated defaults
Bug fixes
Removed redundant buttons
Reduced network traffic and debugging
Kernel V. 2021.04.17
Source code update: DTF1 -> DUA3 - thanks @ Samsung
HMP_CUSTOM: update - should fix several bugs e.g. with BT
zRam: updated driver for higher efficiency in MM and higher security (encryption) - thanks @ minchank
zRam: improved performance and compression ratio
MM: optimized CMA*/RBIN* usage - for the better memory allocation
MM: saved around 100 MB of a wasted RAM from RBIN - zRam driver will use it now
Debug: reverted some debug log buffers sizes to stock - probably it caused some instabilities
Fixed BT disconnections - thanks @traversone for testing in Android-Auto !
Improved stability
HMP_CUSTOM: updated driver
Optimized MM
zRam: updated LZ4 lib
Encryption: enabled hardware acceleration
Optimized boot-script for boot glitch fixup (needs some testing)
Added some patches e.g. EXFAT support provided by @ remilia15
Some more minor kernel tweaks
Uploaded also patched stock kernel - DUA3
Uploaded twrp with latest a2n kernel inside
*MM = Memory Management
*CMA = Contiguous Memory Allocator
*RBIN = recyclable reserved RAM for camera (228 MB)
A2N Kernel Control V. 3.4
Charger Control: added USB-CDP ( for USB charging in cars)
CPU/GPU: optimized DVFS
Profiles: Performance Plus: allow custom Freqs
Network: added more TCP congestions algorithm
Advanced Power Menu: updated
Kernel V. 2021.03.24
Fixed audio call recording - thanks @rostifaner for help
Charger Control: added support for USB-CDP (used in cars) - thanks @traversone for report and log
Thermal Throttling: driver update and allow up tp 95 °C stable CPU/GPU Temp (adjustable over the app or script) and add a proper overheat protection
Added more TCP congestions algorithm
lib/lz4: updated to LK 4.11.12 (for zRam stability and performance)
zRam: decreased overhead and reduced memory usage
I/O: increased read_ahead_kb for max speed
mm/zsmalloc: removed all samsung changes
Enable WQ_POWER_EFFICIENT_DEFAULT & MALI_DMA_FENCE
Custom HMP: update
Kernel V. 2021.02.06
Fixed device heating up - this time for real
CPU/GPU: added my custom (DVFS) thermal throttling driver
range: 45 - 85 °C
default: 65 °C**
adjustable temperature separately for CPU/GPU !
STABLE OC up to 2.8 GHz !! ***
Fixed random reboots - thanks @rostifaner for the hint !
Swap: added more optimizations for zRam
** Max possible performance only @ 85 °C for CPU/GPU !
*** I was able to pass Geekbench + 3DMark @ CPU 2.8 GHz / GPU 572 MHz with DVFS 85 °C
A2N Kernel Control V. 3.3
CPU/GPU: replaced "Cool Freq" (DVFS) with "Max Temperature"
Profiles: updated "Performance Plus" BIG-CPU 2.5 @ 2.8 GHz
Optimized reboot routine
Kernel V. 2021.01.26
Fixed device heating up
CPU/GPU: optimized thermal throttling (performance)
A2N Kernel Control V. 3.2
CPU/GPU: updated "Cool Freq" (DVFS)
Kernel V. 2021.01.20
Optimized system clocks
Fixed stability issues with/without zRam from previous release
Charger Control: added battery volt & battery (charge) max_temp interface
Reverted all temperature settings to stock
HACK: allow to reset battery capacity without JIG
FIX: fast charging in LPM and any issues with fast charging, likely with wireless fast charging
CPU: updated ondemand governor
GPU: added a simple ondemand governor
Source code cleanups
Reduced log buffer to the Min
Reenabled touch booster driver
Swap: improved zRam performance (page-cluster reset to stock)
Wi-Fi: allow to disable 5 GHz or 2.4 GHz band (this will fix severe issues with Wi-Fi routers that doesn't allow to use different SSID for 2.4 GHz / 5 GHz band)
Extended driver
RAM: 3724 MB
A2N Kernel Control V. 3.1
Power: added "Battery Voltage Check"
fixed 3500 mA current for S8+
added "Battery Cycles" & "Real Battery Capacity" and allow to reset it
added "Max Charging Temperature"
CPU/GPU: readded "up_threshold" & "Disable Boost"
added "Increase Sampling Rate"
Added more dialogs / checks
RAM: optimized "Drop Caches / Buffers"
Screen: readd "Input Boost Duration"
Added a quick 3-way reboot menu
Network: added "Wi-Fi Band Set"
Stability fix
Grammar fixes
Updated defaults
A2N Kernel Control V. 3.0
Improved stability
Kernel 2020.11.06
Fixed graphical screen glitches at resolutions > 1080
Optimized system clocks
RAM: Allowed to use higher RAM Freq - 1794 @ 2093 MHz (if Supported by binning)
CPU: updated cool freq logic - by default it uses system default (depending on binning)
GPU: improved stability, performance and readded OC up to 839 MHz
GPU: added "Cool Freq" Interface as well like on CPU for better handling of the higher Freqs > 572 MHz (since fully disabling DVFS would overheat the Phone)
CPU: Fixed Suspend Max Freqs feature
Power: Updated Charger Control to V. 2.6
Charger Control 2.6: increased default charging current to:
AC/USB-PD: 1500 @ 2200 mA(S8) / 1800 @ 2600mA (S8+)
Wireless: 900 @ 1200 mA
Disabled a lot of excessive debugging / log spamming / tracing
RAM: 3710 @ 3727 MB (with latest stock kernel it's 3679 MB)
Source cleanup
Fully disabled INPUT_BOOSTER to avoid painfully battery draining even when it's not needed e.g, if you just keep your finger on the Screen
CPU: switched from conservative gov to ondemand (conservative gov was cool but it's time for the new sh!t !)
SWAP: improved zRam Stability (disabled PGTABLE_MAPPING ... caused freezes and random reboots for me)
Patched system binary "dex2oat" to run only on big CPU - faster Apps optimization after wiping dalvik-cache and in general also it speeds up usual app installation and updating time from Play Store
More responsive, smoother and better performance ..... better battery life as well ?? - Let me know as i didn't test it yet
A2N Kernel Control V. 2.9
GPU: re-added OC up to 839 MHz
GPU: added GPU Cool Freq
Power: added Battery Cycle Info
Apply settings earlier on boot
Updated defaults / text
Fixed crashes
Kernel 2020.09.27
RAM: Optimized memory management - higher memory pressure for better multitasking even without swap
Charger Control V.2.5: increased max allowed batt temp to 45 °C - faster charging for Wireless and Cable
LED-RGB: allowed also to disable lowpower-mode for RED and GREEN LED
BIG CPU: enabled BOOST by default
CPU: enabled touch booster by default with 500 ms duration
Charger Control V.2.5: fixed battery level wrongly increasement when battery level is high at around 95 % and battery idle mode is active
Fixed all bugs with Battery iDLE, Battery Care and the mess with RGB-LED (now it finally works properly)
GPU: Removed Freq steps > 572 MHz since it doesn't work stable
GPU: added some useful sysfs interfaces to /sys/kernel/gpu (for debugging)
More responsive and smoother
A2N Kernel Control V. 2.8
RAM: added very easy and fail-safe control over Low-Memory-Killer
CPU: added CPUSET Control - ability to disable some unstable cores in order to get higher stable overclock rate
CPU: added ability to set a custom max_freq for Screen OFF
Misc: added ability to optimize also GREEN and RED LED
Reworked App layout
Updated defaults / Profiles
Removed unnecessary features
Simplified usage
Kernel 2020.08.27
Charger Control: increased high_temp_recover from 40 @ 43 °C (faster charging)
Battery Care: Fixed Blue LED / Non-Charging randomly
A2N Kernel Control V. 2.7
Compiled with SDK 29 (Google Play requirement)
Power: fixed "Battery IDLE mode" description
Kernel 2020.08.24
Improved Performance - also more smoother
LED-RGB: Proper handling of BLUE LED for Battery Care / Battery IDLE
Extended Input Support for mouse, keyboard, joysticks and touchscreen panels
A2N Kernel Control V. 2.6
Misc: LED-RGB: replaced "disable low-power-mode" with "Optimize Blue LED" (higher brightness in the darkness)*
* Since only the Blue LED needs an increasement
Kernel 2020.08.11
Fixed Call Audio
Kernel 2020.08.06
Source update DTC6 --> DTF1
Ramdisk Update DTEA --> DTF1
Partially enabled HMP Driver for proper handle of both CPU's
Updated Charger Control to V. 2.4: added support for battery idle* and battery care
LED-RGB: added ability to adjust blink delays for missed notifications
LED-RGB: added ability to disable low_power_mode - higher LED brightness in the darkness
Power: USB: ability to disable water detection
Drivers: enabled support for Xbox / Sony PS / Nintendo Wii / Gamepads
CPUSETS: moved some tasks and services (e.g. Audio encoder) to the little CPU in order to relieve the big CPU, improving performance for foreground Apps !
Optimized some system clocks
*= when battery is in idle, the LED will light up BLUE
A2N Kernel Control V. 2.5
Power: added battery care support (e.g. stop charging at 95 %)
Power: added battery idle feature (power your phone over cable-only)
Power: added ability to disable water detection (to deal with wrong water detection)
Misc: added ability to adjust LED-RGB blink delays (for missed notifications)
Misc: LED-RGB: added ability to disable low-power-mode (higher LED brightness in the darkness)
RAM: added ability to drop all caches and buffers (to free some RAM)
Kernel 2020.06.03
Ramdisk Update DTC1 -> DTEA
defconfigs: switched back to EXT4_FS_ENCRYPTION *
Build.prop tweaks (dalvik-heap)
* if you are using device encryption and your device can't boot with this release, then flash previous release
A2N Kernel Control V. 2.4
CPU: DVFS: unlocked all Frequencies - allows to disable CPU DVFS entirely
GPU: DVFS Fix
Kernel 20200519
Source Update DTA6 -> DTC6
Charger Control: allowed higher chg_temp - should charger faster, especially for 3000+ mA
defconfigs: re-enable Gear VR related drivers
Kernel 20200513
Memory Management: reverted to stock minfree values - slightly optimized
Dex with any HDMI Adapter - thanks @ Barna Keresztes from GitHub
zRam: stability Fix
init.d Fix
Improved Demo App auto installation - stability fix
Kernel 20200509
Memory Management: decreased memory pressure since it caused hangs
init.d Fix
Improved Demo App auto installation
Kernel 20200507
FIXED: VoLTE and Wi-Fi Calling for all ROMs and SIM Cards (especially Jio 4G VoLTE) - thanks @Orangelelo for testing
Charger Control: AFC Fix
enabled CONFIG_IP_NF_TARGET_TTL
FIXED: random reboots from previous version
FIXED: Lags from previous Version
Wi-Fi: Driver bug fix
Improved Demo App auto installation
Kernel 20200427
Charger Control: Driver update to V. 2.2
Charger Control: Auto AFC - user friendly
Charger Control: Fixed Wireless Charging overheat issue - thanks @Ranbir7878 for testing
Charger Control: Reduced heat when charging with > 5 V (AFC aka fast charging)
Charger Control: Fixed S8+ max charging current 3000 -> 3500 mA
RAM: optimized multitasking - fixed (restarting) notifications
Kernel config: disabled MPTCP
Binary Code Optimizations (CRC, Crypto, FPU, NEON)
Fixed init.d interferences with A2N App Full Version
Fixed Demo App auto installation - thanks @ChronoMonochrome for help
A2N Kernel Control V. 2.3
Updated Defaults
Power: Auto AFC (removed switch)
GPU: DVFS Fix (3D improvement)
Power: added batt temp
Bug Fix - Fixed interferences with init.d scripts
A2N Kernel Control V. 2.2
Request Root on App startup
Bug Fix
Kernel 20200403
FIXED: moving Apps to micro-sd card
FIXED: USB-PD Charging
RAM: optimized memory management - especially improved Multitasking
RAM: increased dalvik heap from 512 to 768 MB
Updated Kernel Config
Disabled HMP - this Kernel uses hardcoded CPUSETS (background tasks only on small CPU and foreground tasks only on big CPU)
Optimized system Clocks
CPU: conservative gov update - added Boost Control - in order to switch from min to max freq immediately
UFC/CPU: use stock cool_freq by default - 1469 MHz (but you can increase it over the App up to 2002 MHz)
GPU: Optimized OC - now Freq's higher than 572 MHz are also available but uses the same Voltage like 572 MHz (before the voltage wasn't set at all)
GPU: Enabled DVFS by default - (but you can disable it in A2N Kernel Control App if you need higher 3D Performance even on high temps)
Charger Control: updated driver to V. 2.1
SWAP: optimized zRam
Re-Added Wireguard importer - latest version
Updated kernel source to DTA6
Updated Ramdisk to DTC1
A2N Kernel Control V. 2.1
GPU: unlocked all steps up to 839 MHz
CPU: added Boost Control - in order to switch from min to max freq immediately
GPU: allows to disable DVFS - for higher 3D Performance
Updated defaults and Performance Profiles
A2N Kernel Control V. 2.0
Improved Stability
Allowed to use the App in Offline-Mode - Check "INFO" in the App description in google Play
Kernel 20200117
Fixed Device Encryption
NET: total available tcp congestion algorithm: cubic(default), reno, bic, westwood
Fixed Wifi-Calling (VoLTE already worked in previous release)
HMP: re-eneabled and reworked / optimized for max speed + Battery life
zRam: optimized for full speed (use all 8 cpu cores at the same time)
added choice for loading one of the three sizes: 25, 50 or 75 % of the RAM size
Improved Memory Management + Multitasking
Cooling Control: Added interface for adjusting the cool down CPU Freq max limit
Optimized input booster - enabled hmp_boost by default
Default USB Config is now sec_charging (if u need MTP or else, enable yourself in statusbar)
Higher performance + Better battery lifetime + smoother
Uploaded also new TWRP powered with this kernel release inside + fixed USB MTP
A2N Kernel Control V1.9
Performance Profiles: optimized for higher efficiency
Network: added TCP Congestion Control (cubic, reno, bic, westwood)
RAM: Swap / zRam: added choice for size 25 %, 50 % and 75 % of total RAM
CPU: Device Cooling Control: allows to change the CPU Max Freq limit for cool down
Cooling Control: check if there is currently an cooling event
Screen: Reworked Input Boost Control - Adjust Freq and duration
Bug Fix: Fixed back arrow
Kernel 20191224
Fixed Audio in Calling
Fixed VOLTE / Wifi-Calling
Fixed boot loop if magisk canary was installed
Charger Control: added support for USB-PD and increase default charging current for S8+ from 1500 to 1800 since it has higher capacity
Charger control: increased max charging current from 3000 to 3500 mA for S8+
Swap: optimized zRam
RAM: optimized Multitasking
Overall improvements - performance, battery, scrolling
Removed Wireguard
Improved my TWRP Version stability
Uploaded also updated/optimized twrp for S8/S8+ and stock kernel for reference purposes
This Version may fix a bunch of other bootloop issues with custom ROMs - Needs testing!
A2N Kernel Control V1.8
Power: added USB-PD current control
Charger control: increased max charging current for S8+ from 3000 to 3500 mA
Charger control: increased default charging current for S8+ from 1500 to 1800 mA
CPU: added all available overclock frequencies steps - for both CPUs
Kernel 20191216
Kernel source code update DSI1 --> DSJC
Ramdisk update DSI1 --> DSK9
Updated conservative gov
Re-enabled input_booster by default since it makes scrolling on chrome browser smoother (Home Tab)
Disabled HMP driver since it caused randomly overheating issue
Foreground tasks will run only on big CPU while background tasks will run only on small CPU - this will eliminate tasks migration relates delays between both clusters completely
Updated GPU config
Optimized system clocks like MIF clock and so on
Reduced boottime: cluster0 @ 1,9 GHz and Cluster1 @ 2,5 GHz during boot sequence
Reverted all the network stuff to stock (only the disabled ones .., not new enabled features)
Changed back to stock: ECRYPT to EXT4 encryption
Added filesystem encryption support for F2FS
Fixed USB Tethering (tested on win xp lol)
Cluster0 min_freq 715 @ 455 MHz back for screen ON in order to save some power
Fixed several errors from logs
A2N Kernel Control V1.7
Screen: updated input booster (for max smoothness)
CPU/Profiles: Cluster0 is back stock min_freq of 455 MHz (still smooth )
Perf. Profiles: added Performance Plus and updated the other profiles
Fixed app reset settings if stock kernel was installed (now settings will survive if u go back to a2n kernel)
Added new menus RAM + Network and sorted things properly into it
Kernel 20191118
Attempt to fix randomly heating up
HMP: Calibrated Tunables - now it works properly when the Small Cpu is overclocked
Removed OC Freqs for the Big CPU - not stable (caused miscalculations)
Improved performance and battery life
More smoothly and more responsive
Extras:
Uploaded also twrp recovery including this kernel version for S8 / S8+ (fixed instability and improved speed)
A2N Kernel Control V1.6
CPU/Profile: Removed OC Freqs for Big CPU (was not stable)
Performance Profile works properly now
Kernel 20191114
Fixed stability + performance issues from previous Version
Charger Control: set AC / WC current 1200 @ 1500 mA by default
Updated kernel config
Enabled CONFIG_NETFILTER_XT_TARGET_NFLOG and CONFIG_NETFILTER_XT_TARGET_LOG to support Afwall
Optimized CPU/GPU Governor
Disabled input booster by default - but it can be enabled in userspace (e.g. over scripts or App)
Re-enabled HMP Driver - but this time patched to finally work PROPERLY
Added KVM Support - (low-level VM support for max performance)
Optimized zRam - max_compression_streams = 4 @ 8
Optimized memory management
Improved performance and battery life
More smoothly and more responsive
Extras:
Uploaded also twrp recovery including this kernel version for S8 / S8+
Uploaded also patched stock kernel - Fixed Camera
A2N Kernel Control V1.5
Power: AC / WC current 1200 @ 1500 mA by default
Removed unsafe Frequencies Steps
Updated defaults and strings
GPU: added min Freq control
Screen: added input booster control (Freq and time)
Kernel 20191019 BETA
FULL Android 9 Pie Support
Based on Stock Source Code DSI1
Ramdisk DSI1
Compiled with the OFFICIAL ARM/Linaro GCC 8.3
Optimized Memory Managent
Improved Performance
Improved Battery Life
Reduced Device heat
More Responsive
Fixed Laggs (especially for some 2D Games)
Increased Efficiency
RAM: 3485 @ 3711 MB
Unlocked higher CPU/GPU Freq Steps - Thanks @Noxxxious
SELinux in permissive mode - Thanks @Noxxxious
Disabled SSWAP
Added zRam Support with fast LZ4 Compressor
Added KSM Support - patched for Android by me
Optimized Input Booster
Fixed very bad CPU IDLE
CPU: Interactive @ conservative gov - for higher efficiency
Added Wireguard Support
CPU: Cluster 0: Screen ON min_freq 455 @ 715 MHz to Fix Lags - 455 MHz Step is used for Screen OFF
Compiled with DEFAULT_USE_ENERGY_AWARE / WQ_POWER_EFFICIENT_DEFAULT - for better Battery Lifetime
Optimized Crypto, NEON SIMD Hardware Acceleration (e.g. faster device encryption due of hardware acceleration)
Disabled HMP since it serves nothing - Hardware doesn't allow to use real cpu_hotplugging ...
Added Charger Control 2.0 by me - Allows to configure custom max input current from 100 - 3000 mA in 100 mA Steps separately for AC / USB 2.0 / USB 3.0 / Wireless - that means real Fast Charging even with Screen ON - Allows even to charge at max current possible with 3rd-party Chargers !!
Added Flashlight Torch Control - You can adjust Brightness of your Torch from 1 - 15 - Default/Stock Kernel is just 5
SELinux: Removed Audit dependency - Thanks @ kerneltoast && arter97
Added Support for F2FS
Accurate remaining time to full charged battery
init.d Support
And many more Kernel Tweaks - i can't list them all here ... changelog is already too long isn't it ?! :laugh:
A2N Kernel Control V1.4
The best Way to manage this Kernel for full functionality (3rd-party Kernel Manager Apps will not work properly with this Kernel)
Compiled with API 28 Android 9 Pie
Power: Charger Control - Allows to configure custom max input current from 100 - 3000 mA in 100 mA Steps separately for AC / USB 2.0 / USB 3.0 / Wireless - that means real Fast Charging even with Screen ON - Allows even to charge at max current possible with 3rd-party Chargers !!
Added switch for "Adaptive Fast Charging" so u can directly toggle AFC in the App.
Ability to check actual accepted charging current and Input Voltage
CPU: OC Control: Cluster 0: up to 2002 MHz and Cluster 1: up to 2808 MHz
CPU Governor tuning: Adjust up_threshold to balance between Battery Lifetime and Performance separately for each Cluster
GPU: OC Control up to 839 MHz
Hardcoded Performance Profiles:
--> Powersave (Underclocked)
--> Balanced (Kernel Default)
--> Performance (Overclocked)
Misc: switch for zRam, KSM
Misc: Torch Brightness Control - up to 3 times brighter flashlight than with a stock Kernel !!
Misc: Ability to load kernel Module for CIFS and NFS with just one Tap
Misc: Accelerometer Calibration
Debug: u can call this Menu over the App built-in Menu (3 dot) - ability to save logcat and dmesg with one tap to your sdcard ..
Kernel 20190105
Patched ramdisk to fix Copy & Paste and maybe VoLTe too ?
Enabled 12 usb_audio drivers for testing (Modules)
Disabled some left overs useless drivers
A2N Kernel Control [G95x] V1.2
Compiled with API 26 instead 28
We use still API 26
Kernel 20181231
Sources update - CRGH -> CRL3
Fixed WifiCalling / VoLTE (not confirmed yet)
Compiled with latest GCC 8.2 ARM Toolchain
Fixed ADB
Re-enabled USB Sound Card Drivers
Optimized Memory Management
USB-OTG: Updated Max Vbus draw Current from 500 mA -> 900 mA, since USB 3.0 Spec allows 900 mA
Updated AC Charge Current from 1000 -> 1200 mA
and AC Fast Charge Current from 2000 -> 2200 mA
A2N Kernel Control [G95x] V1.1
Supports now all Galaxy S8 & S8 Plus with Exynos Chip
Adjusted AC Charge Current according to the CRL3 Source from 1000 -> 1200 mA
and AC Fast Charge Current from 2000 -> 2200 mA
Updated Tips for CPU-Max-Freq on Suspend
Kernel 20181209
Fixed mount ext-sdcard
Uploaded new Packages: stock kernel, twrp fully patched with latest A2N Kernel
Full Version of A2N Kernel Control for Galaxy S8 is now available!
A2N Kernel Control [G950] V1.0
Initial Release - All Features you can see in the built-in Demo App by flashing the Kernel package
Supports for now only G950F
Kernel 20181205
Initial Release - All changes compared to the Stock Kernel u can find it in Post #1 "A2N Kernel Features"
Based on Stock CRGH Source
Compiled with GCC Linaro 7.3.1
FAQ
Q: With which ROMs this Kernel is 100 % Compatible ?
A: Currently only with Android 9 custom ROMs, but Samsung stock ROM is recommended.
Q: Is this Kernel 100 % Safe ?
A: Yes.
Q: Will this Kernel Overheat the Phone if I use Highest Settings ?
A: No, you can't do anything wrong. Your phone has hard- and software overheat protection.
Q: How to Revert all Changes Made by this Kernel ?
A: Flash latest 3-parted stock ROM with ODIN or flash the Samsung kernel from my download site.
Q: How to bypass SafetyNet ?
A: Anable MagiskHide in Magisk app.
Q: How i can Tune this Kernel ??
A: Everytime you install or update this kernel you will face an red (demo) app "A2N Kernel Control..." open this app, and it'll redirect you to Google Play to get the full version (blue app).
Q: Can i use and Tune your Kernel with other Kernel Manager Apps ?
A: Yes, but you need first to unlock kernel with the A2N app full version.
Q: I've Installed the Full Version of the App, Will it Change any Kernel Settings by Default if i do not Change them ?
A: No, default app settings = default kernel settings.
Q: I've the Full Version of the A2N Kernel Control App, Do i still need the Demo Version of the App ?
A: Yes, there are some special features in-app-menu like "Fake Enforce" and debugging features for easy bug reports.
Q: How to Charge from 10 % to 100 % In just 1 h ?
A: E.g. set "AC Current Max" and "Maximum Charging Temperature" to the Max.
Q: How to get Max Speed for e.g. Highest FPS in Games ?
A: Set BIG / LITTLE CPU and GPU Freq to the Max, but avoid to use "unsafe" Freq's.
Then set CPU / GPU --> DVFS --> "Maximum Temperature" to the Max.
Now you can even cook an egg on your phone !
Q: Will my Custom A2N Settings Survive if i install Stock Kernel and then going back to A2N Kernel ?
A: Yes, as long as you don't uninstall it.
Q: Can i use your Kernel Control App with other Custom Kernels ?
A: No, it's not universal kernel manager app.
Q: My A2N App is Crashing after an Update, how to fix it ?
A: Re-install it. If it doesn't help, wipe dalvik-cache in recovery.
Q: My A2N App shows: "Please check your internet connection" - But i've good internet connection. - How to fix it ?
A: Settings --> network settings --> use private DNS server like "dns.adguard.com" - confirmed to work by user @Arnz09 - see his post here.
Otherwise send me a pm with the screenshot and you current location (city)
Q: Why I get lower benchmark scores with this kernel compared with the Samsung kernel ?
A: This kernel uses by default Max CPU/GPU DVFS Temp 65 °C to reduce the device heat. You can buy the full version of the A2N app to set the DVFS Temp up to 100 °C to get higher scores than on stock kernel.
Q: Why the Android Battery setting "fast charging" has no effect on this kernel ? - It charges always with around 1500 mA.
A: Because it would conflict with the built-in charger control.
The default charging current of approx. 1500 mA means no fast charging by default, even if you actually see "fast charging" in the notification section. This is also useful to reduce battery stress and device heat. To charge even with higher speed/current than on stock kernel you need to buy the full version of the A2N app.
Q: Why I've to pay money for just changing kernel settings ?
A: Well quality has its price. Also nobody forces you to use this kernel.
You can flash other custom kernels or flash the Samsung stock kernel from my download site. Good luck !
Q: When we get an update ?
A: This kernel is almost 100 % stable and works very well. Also this phone is now a bit "old" and therefore don't expect frequent updates.
Also don't ask for ETA's and if you do anyway, I'll ignore.
Q: How to fix audio stutering ?
A: Increase the PM-QOS-LIT / PM-QOS-BIG Freq in A2N app in debug menu --> "Audio" section.
Q: What is the benefit of editing the voltage table ?
A: to increase OC stability increase voltage and to decrease the device heat, decrease voltage. Last one will improve performance due to less throttling ! So it depends on your needs.
Q: How much is safe to undervolt ?
A: approx -50 mV is considered to be "safe".
Q: How to Report Bugs ?
- Please DO NOT report bugs if you are:
--- using "unsafe" Freqs
--- not using the latest release !
--- not using Samsung stock ROM (based stock ROMs are custom ROMs !)
A: Open the red A2N Kernel Control demo app and check in-app-menu (3 dots) then "Debug" and then on "logcat and dmesg" if you faced an app crash or if some features didn't work.
If the phone rebooted randomly, then tap on "last_kmsg". You will find the logs in your internal storage. After that you can attach them here in your bug report, by clicking "Attach files".
ROM:
Kernel version:
A2N app version:
BUG:
How to reproduce:
Same bug with stock kernel ? : YES / NO
Download stock kernel for bug reference: S8 / S8+ / Note8
BUG REPORTS THAT DO NOT FOLLOW THESE RULES WILL BE IGNORED !!!
Play playstore app support only galaxy ace 2 ?
unfortunately something went wrong with the s8 app release.
need to contact Google later.
please be patient.
are u going to release a version for sm-g955f? your kernel sounds rly interesting would appreciate that.
thanks! maybe yes ... if many users want it.
G95/ g955/ f/ n?
For now it's only for G950F and only tested to work 100% stable with the CRGH Build.
Tested for very long time on my G950F.
Honestly i don't like to build software for a device i don't own .. and even not to mention to release Software without to test it on my own.
However if'll receive positive Feedback then i'll buy all S8 Variants in order to build a perfect Kernel for you Guys !
But for now lets start with this.
I'll test and update this Kernel on latest available Stock ROM...
So, stay tuned
Thank you very much, I will continue to pay attention to it. I am G955N.
I have s8+ g955f. I know that it is only for s8 but anyway, I tried to test the kernel, it is booting up but I have no touch screen. I would be more than happy to test any test build if you decide to make it for s8+ too in the future.
Στάλθηκε από το SM-G955F μου χρησιμοποιώντας Tapatalk
installed with rom deodex ambasadii deo mod v1.3 and it works perfectly, only with mtweaks I can not regulate much, especially the battery current, moreover, why is there only interactive and deadline scheduler? another interesting feature is the dex only with the cable, I have to buy it so I try it, great job, when the app comes out in the play store I try it better, now I want to test consumption.
@ace2nutzer could you send me the apk of the kernel controller in trial version on telegram, my nikname is @ pablonik79
I really cant wait to use it on s8+. Thx for your efforts #respectthedevs
G955f not available?
If the kernel I only for s8 variant it shouldn't be posted on cross device topic....I think?
But anyway, nice futures so it'll be nice to have a new alternative for both devices. There's not much development in s8/+ especially from kernel side.
Thx for your work
installed this kernel on my s8 g950fd,my sd card cant be identified
Why CRGH when latest build is CRK1(november) ?
Lmperio said:
installed this kernel on my s8 g950fd,my sd card cant be identified
Click to expand...
Click to collapse
Im same, g950f says its corrupted, flash another kernel and its back.
This kernel soynds very promising, can't wait to try it on my S8+ when it comes out for the S8+?
Initial Release
Changelog
Kernel 20181205
Initial Release - All changes compared to the Stock Kernel u can find it in Post #1 "A2N Kernel Features"
Based on Stock CRGH Source
A2N Kernel Control [G950] V1.0
Initial Release - All Features you can see in the built-in Demo App by flashing the Kernel package
Version Info
This Thread // Kernel is only for G950x.
I'll release G955x Kernel and App in a new Thread just to keep things more sorted.
----------------------------------------------------------------------------------------------------------------------------------
Lmperio said:
installed this kernel on my s8 g950fd,my sd card cant be identified
Click to expand...
Click to collapse
53EYA said:
Im same, g950f says its corrupted, flash another kernel and its back.
Click to expand...
Click to collapse
Which Filesystem are u using on the sdcard?
pablonik79 said:
installed with rom deodex ambasadii deo mod v1.3 and it works perfectly,
Click to expand...
Click to collapse
This Kernel is optimized to work best with the Stock ROM, but it's nice to hear that it works as well with custom ROM.
only with mtweaks I can not regulate much, especially the battery current,
Click to expand...
Click to collapse
Yeah that's normal it's a fully optimized custom Kernel, all features works only with the original Kernel Control App from me. Using such "Universal" Kernel Manager Apps can even make your Phone unstable and will not make things better. That's why i build for every Device // Kernel a separate Kernel Control App.
Otherwise i would build also an Universal Kernel App ... but it's not that efficient and this is what u Guys definitely don't want for sure.
moreover, why is there only interactive and deadline scheduler?
Click to expand...
Click to collapse
Because we only need one good working CPU Governor and I/O Scheduler ... right ?
Short and easy explanation:
Interactive: it's the perfect gov for low latency workloads. - So it's perfect for Android to have a smooth and quick response experience.
Deadline: It's optimized for Flash Devices, it's simple and stable - Also appropriate for Android.
All other Gov and I/O are unstable or will decrease the Performance and or battery lifetime ...
(at least not very appropriate for Android .... however there's also I/O sched "ROW" or "FIOPS" which would be also ok for android, but they are not that stable like "deadline" and the difference in I/O Performance isn't that much.
So i've removed them so that u Guys can't change (accidentally) this important Drivers.
when the app comes out in the play store I try it better, now I want to test consumption.
Click to expand...
Click to collapse
G950 App comes hopefully Today out .. unless Google will block it again.
could you send me the apk of the kernel controller in trial version on telegram, my nikname is @ pablonik79
Click to expand...
Click to collapse
Sorry, there's no Trial Version at all ... only the Demo u can find in the Kernel Package.
But i know, u can't Tweak anything.... Please wait for the full Version.
Thank u very much Guys for your Appreciation. :good:

Categories

Resources