[Kernel]Amaze ICS(v031)OC~1.73/IntellidemandV3/UV/CIFS+UTF-8/FauxSound[May-21] - HTC Amaze 4G

Installation Instructions:
Here's a step by step instruction to install this kernel:
************************** Ice Cream Sandwich (S-OFF ONLY) **************************
[ CFS ] (Ultimate Edition - should work with most phones but NOT GUARANTEED!)
The File ==> Amaze ICS Kernel <==
MD5SUM ==> <==
************************** Gingerbread **************************
[ CFS ] (Ultimate Edition - should work with most phones but NOT GUARANTEED!)
The File ==> Amaze GB Kernel <==
MD5SUM ==> <==
CWM Flash Instructions: (NO LONGER SUPPORTING CWM METHOD DUE TO HTC's STUPID S-ON UNLOCK!!!)
1. Copy file to SDcard
2. Reboot to CWM recovery
3. Flash the Zip file (if you noticed an error, Flash the same file the 2nd time)
4. Reboot, Done!
Easy Kernel Flasher Instructions:
1. download the above file (via phone directly or to a PC)
2. unzip to a folder then depends on PC or Linux
[ Windows ] open command prompt window and type Flash.bat
[ Linux ] open terminal window and type ./Flash.sh (make sure permission is set to 755 for the Flash.sh)
3. Let the script complete!
NOTE: Because the previous kernel included a Secured RAM Disk, so you may need to run the script twice. (Once this is done, then any subsequent flash should complete on the first time)
Note: After FLASHING, the first reboot may take longer than usual, please be patient... After the first reboot, it may lag during initial load (let everything finish loading). Once everything is loaded and phone is ready for use, reboot the phone a 2nd time and the lag will be gone and everything should be silky smooth...
[ Optional: ]
NOTE: if you come from a ROM with my kernel pre-installed, you DO NOT NEED to flash the reset kernels from above!
[ For Kernel Devlopers ONLY: ]
Optional Under voltage: Version 0.0.x+ ONLY
Code:
[ to over volt ALL frequencies by 25000 uv (microvolts) ]
echo "+25000" > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels
[ to under volt ALL frequencies by 25000 uv (microvolts) ]
echo "-25000" > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels
[ to set a specific frequency (ie 1.18 GHz)
with a specific voltage (ie 1.0875 volts) ]
echo "1188000 1087500" > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels
CPU Frequency Voltage Table Example
Code:
192000: 812500
310500: 812500
384000: 812500
432000: 812500
486000: 837500
540000: 850000
594000: 862500
648000: 875000
702000: 900000
756000: 925000
810000: 937500
864000: 962500
918000: 962500
972000: 962500
1026000: 975000
1080000: 987500
1134000: 1000000
1188000: 1012500
1242000: 1025000
1296000: 1050000
1350000: 1075000
1404000: 1100000
1458000: 1112500
1512000: 1125000
1566000: 1150000
Optional: Stock Clock Frequencies for Dual CPUs
Code:
su
echo 192000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo 1188000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
echo 1 > /sys/devices/system/cpu/cpu1/cpufreq/online
echo 192000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
echo 1188000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq
Low Voltage - Under Volt the processor, therefore uses Less Battery, but NOT ALL CHIPS can handle Under Volt.. If you experience instability, try the Stock Voltage Version.
Stock Voltage - Uses the voltage values from ORIGINAL HTC Kernel Source.
There are NO PERFORMANCE DIFFERENCE between the Under Volted and Stock Voltage versions!
Please don't hesitate to talk among yourselves and help each other out... The XDA community is what inspired me to hack kernels for everyone since everyone here is nice and helpful to each other... Keep helping each other.... Famous proverb: It's better to give than to receive...
Not All CHIPS ARE CREATED EQUAL
Standard Disclaimer: Not responsible for bricking your phone, voiding your warranty, or any other pain or suffering you may feel as result of using this kernel!!!
My github Complying with GPL and XDA rulez
Follow me on
:
If you find this Kernel useful, feel free to hit the [Thanks] button below

FauxClock App recommended Settings"
CPU Control
Max clock - GHz 1.72 GHz for performance, 1.512 GHz for battery
Min clock - MHz 192 MHz for both
CPU Governor - Ondemand for performance, Intellidemand for battery
mpdecision - Off
Set On Boot - On
SOC Control
Set On Boot - On
C0 - On
C1 - On
C2 - On
Voltage Control
Set On Boot -
Global CPU Voltage - Your preference
intellidemand gov control
Up Threshold - 90 for both
Two Phase Freq - 1134000 for both
Limit Max Freq - 1728000 for performance, 1512000 for battery
Sampling Rate - 30000 for both
Set On Boot - On
GPU Control
GPU Governor - ondemand for both
GPU Clock - 300Mhz for performance and 266Mhz for battery
GPU Vsync Toggle - On for both
Set On Boot - On for both
I/O Scheduler Control
I/O Scheduler (eMMC) - SIO for both
Readhead Size (eMMC) - 384 for both
Set On Boot - On for both
Misc Control
Dynamic File Sync - On for both
TCP Congestion Control - Westwood for both
Vibration Control
Set On Boot - On for both
Vibration Control - Your own Preference
Above is what I use personally. MAY NOT be optimal for all :fingers-crossed:

[ History Gingerbread]
Version 004 - Dec 16, 2011 (Deprecated, GB)
Add OC to 1.73 GHz
Add UV table
Add PPP async for VPN users
add CIFS+UTF-8
add Fast NoHz RCU option
CFS Auto Group V2
Optimized memmove and memcpy
Opitmized JHash
code sourcery: fixed code sourcery compilation warnings
dm-cache: block level disk cache target for device mapper
kernel:sched: LOAD_FREQ (4*HZ+61) avoids loadavg Moire
Version 005 - Dec 17, 2011 (deprecated, GB)
Removed some annoying kernel debugging messages from Spamming dmesg log
Switched to Xboarder's Easy Kernel Flasher Version 3 (EKF)
Version 006 - Dec 17, 2011 (deprecated, GB)
Lowered LED button back light current
Enabled Automatic Brightness on LED button back light.
Version 008 - Jan 22, 2011 (Short Term Release, GB)
http://faux.eth0.it/Amaze-EKF-008b13-sense.zip
Disable CPU time statistics (this is the same as my Sensation kernel, a slow memory leak which leads to a kernel crash!)
Patched KGSL (GPU)
Patched MMC for better battery savings
PM / Hibernate: Correct additional page calculation
arm: Allow CPU-supported unaligned accesses
ARM/MM: reduce memory footprint
partition_sched_domains: Do not destroy old sched domain on cpu_up
lockdep: print lock name for lockdep_init_error
init/main.c: execute lockdep_init as early as possible
cpufreq: ondemand gov tweaks
msm: audio: qdsp6v2: Close smd ports upon failure to open.
msm: audio: qdsp6v2: Reduce the pcm write timeout value
cpufreq: add ondemand two-phase scheduling
msm: cpufreq: Use INIT_COMPLETION instead of init_completion
cpufreq: add CPU sibling code to remember last cpu freq before unplug
msm: cpufreq: Create cpufreq workqueue for freq changes
Fixed CPU1 voltage and frequency issues introduced in Beta 9
added XZ compression (reduce kernel size)
more MMC patch
added SHA-1 for faster boot
added SMP optimization
disable USB OTG capability
Updated USB, OTG, VIDC, Camera and DMA drivers from Telus Kernel source.
disabled CPU overclocking
sdio: Handle graceful shutdown
sdio: fix MCI_CLK corruption
driver/vibrator: reduce debug message spam to dmesg log
Added JRCU (thanks to Joe Korty!)
Patched MMC lock up issue
Removed additional Panasonic Gyro Log Spams
Patched RPC and SMD drivers
Version 009 - Mar 13, 2011 (Current, GB)
Reverted back to Fast NoHz RCU (better battery life than jRCU)
disabled Gentle Fair Sleepers (supposedly better for Android interactivity)
tweaked RAMDISK settings for kernel scheduling parameters for better interactivity
Reduced 2D instantaneous bandwidth demand to conserve more battery life

Hello and welcome faux.
I have your kernels on my G2X (DS OC/UV) and family plan member's MT4G (stock).
I will be trying this as soon as the link is up. Will also be helping you to get the phone, but am traveling (back in CA) right now.
I like this device so far. Has the best camera and video cam I have tried so far.
Will be even better after HTC drops the source - it needs AOSP/Cm7(?)/Miui real bad.
Xboarder (all 16 years) has been doing all the heavy lifting so far, so your coming over here - especially with respect to kernels, is a very good thing.

Thanks faux, gonna update my rom today how about tmobile compatibilty?
Sent from my HTC Sensation Z710e using Tapatalk

I need some help....
Can someone with the phone tell me which partition the boot.img is located?
My guess is either /dev/block/mmcblk0p28 or /dev/block/mmcblk0p32
Thanks!

Faux123 it's so great to see you over here in the Amaze forum, loved your great work over on the MT4G. Hope to see the bounty take off so you don't have to dev blind.

faux123 said:
I need some help....
Can someone with the phone tell me which partition the boot.img is located?
My guess is either /dev/block/mmcblk0p28 or /dev/block/mmcblk0p32
Thanks!
Click to expand...
Click to collapse
I am not sure how to find that out. There had been a thread on the partition layout of the Amaze, but now can't find it.
New thread in General says Amaze source just dropped - will that show it?
http://www.mobileburn.com/17631/news...ire-s-amaze-4g
Actual link:
http://www.htcdev.com/devcenter/downloads

faux123 said:
I need some help....
Can someone with the phone tell me which partition the boot.img is located?
My guess is either /dev/block/mmcblk0p28 or /dev/block/mmcblk0p32
Thanks!
Click to expand...
Click to collapse
i'm still waiting for my precious and, by the way, it's great to see you here
but maybe this will help
http://forum.xda-developers.com/showthread.php?t=1306211

Amaze Enhanced Kernel with JRCU is OUT.. Check OP for link and check 2nd post for change log for this initial BETA.
WARNING: THIS IS A BLIND BUILD, please keep this in mind when flashing this kernel. This kernel is stock @ 1.512 GHz with NO OC and NO UV enabled. Once I get my hand on the hardware and TEST the OC/UV myself, I will add those capabilities to this phone.
ALSO this is BASED ON T-MOBILE kernel source. I realize there's a separate Telius source and I WILL MERGE the two together as 1 unified kernel but again I will reserve it until I have the hardware in hand.

Thank you Faux. Will SetCPU work for underclocking?
Just tried installation and received error: assert failed:
write_raw_image (" /emp/newboot.img", "boot")
E:Error in /sdcard/download/Amaze-kernel-001B-J-sense.zip
(Status 7)
Installation aborted.

pc2828 said:
Thank you Faux. Will SetCPU work for underclocking?
Just tried installation and received error: assert failed:
write_raw_image (" /emp/newboot.img", "boot")
E:Error in /sdcard/download/Amaze-kernel-001B-J-sense.zip
(Status 7)
Installation aborted.
Click to expand...
Click to collapse
Give this one a try...
First time Kernel for Amaze:
http://www.multiupload.com/F4N05ZCH32

Welcome bro,
I hear your a kernel god.
And thanks for further clarifying what kernels do for us semi-noobs lol
Can't wait for your releases.
Sent from my HTC Amaze 4G using xda premium

faux123 said:
Give this one a try...
First time Kernel for Amaze:
http://www.multiupload.com/F4N05ZCH32
Click to expand...
Click to collapse
Recovery flash says successful... however still shows HTC kernel. Should I push ADB or do I have to do fastboot because I am HTCDev unlocked S-On...?

macheteZen said:
Recovery flash says successful... however still shows HTC kernel. Should I push ADB or do I have to do fastboot because I am HTCDev unlocked S-On...?
Click to expand...
Click to collapse
Hm.. that is interesting! I wonder if S-On had something to do with it

Also, can someone please post a screenshot of the
Stock kernel Version number...
Settings->about phone->software information->more
and post it here.

I believe you have to flash the kernel with xboarders method.. There's a thread for it, but I'm on my phone so i can't link it
Sent from my HTC_Amaze_4G using XDA App

{
"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 think this is stock, looks like it.don't remember if i messed with it or not. Someone else confirm?
Sent from my HTC_Amaze_4G using XDA App

Because we're s-on you have to use xboarders work around to flash kernels, thats one of the few things you cant change with htc unlock method normally
That is the stock kernel information with the latest public ota applied
Sent from my HTC Ruby using xda premium

Teo032 said:
I think this is stock, looks like it.don't remember if i messed with it or not. Someone else confirm?
Sent from my HTC_Amaze_4G using XDA App
Click to expand...
Click to collapse
That's the same as what I have after installing the kernel script. It appears to be stock kernel.

Related

[KERNEL][ExTweaks] SiyahKernel v2.6.14 | "One kernel to rule them all" | 3/19/12

[KERNEL][ExTweaks] SiyahKernel v2.6.14 | "One kernel to rule them all" | 3/19/12
NOTE: I (CWC3) DID NOT MAKE THIS KERNEL. I JUST TAKE CARE OF THIS POST. 110% OF THE CREDIT GOES TO GOKHANMORAL.
{
"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"
}
THIS THREAD HAS BEEN RETIRED | THIS IS FOR ANDROID: 2.3.4, 2.3.5, 2.3.6, 2.3.7​
Developer: Gokhanmoral | Donate | Website | Original Thread​Download: SiyahKernel v2.6.14 | ZIP | TAR​ExTweaks - The Kernel Tweaker​​​
2.6.14 (Latest):
Preempt_rcu
Xz compression (to reduce bw on the servers. other than that, don’t believe anybody telling you that it is faster)
New touch recovery (the one in my ICS repack) with gestures
GPU staycount implemented (this is the main reason of this release. this was droidphile’s request and I could not say no to him )
Disabled autogroup (samsung ICS kernel doesn’t use it neither)
ARM_ERRATA_754322 (once again, ICS has it)
Reverted workqueue implementation to old one
Some cleanup of redundant and non-necessary code
Reverted BFQ changes which were causing lags and lockups (thanks to Entropy512. I used the version in his repository. it was the easiest way )
Added “reboot into download mode” in advanced menu of CWM recovery and also added power-off back in. I had no time to remove dual-booting options. instead, I put “not implemented” message. they are ready but I am having a tiny problem while prompting user to choose the rom. you’ll have it in ICS, I hope.
Some fixes and corrections in extweaks interface (thanks to Entropy512 for some of them)
Initialization of led buttons to off (thanks to myfluxi)
Enabled cpu alignment (thanks to codeaurora)
Some other tweaks and “small changes”
2.6.13:
Fixed decoding issues because of the new cpuidle driver (thanks to Entropy512)
Set default I/O scheduler to deadline
Reverted lots of code back to v2.6.9 (based on the user experience, it is the best version until now)
Completed universal config interface implementation (the app will be posted when it is finished. the implementation at the kernel side is ready)
You may need to flash this in CWM recovery if you mess with the default config (especially when trying too much undervolting. although most of the settings are safe, changing gpu voltage and freq settings may cause lockups or bootloops): siyah-resetdefaultprofile.zip. this script will reset default profile and your device will boot with default settings.
This will be the last GB kernel release of SiyahKernel.
2.6.12:
Fixed BTHID issues (thanks to Entropy512)
Some wifi driver changes to prevent wlan_rx wakelocks preventing the device to sleep
New cpuidle driver from galaxytab (thanks to Entropy512)
Reverted top-off current back to default
2.6.11:
Replaced the recovery with Hyperdroid Redpill Kernel Recovery. (Thanks to Hyperdroid team and Redpill kernel developer(s)). this recovery can also mount both internal and external sd. (thank you [email protected])
Set the default cpu governor back to ondemand. conservative governor settings are still the same. ondemand governor settings are tweaked a bit (50000-90-5)
Changed some mali internals (set staycounts for steps to: 0-1-1 and down threshold for second step is set to 35). I did not use AndreiLux’s settings for not breaking the compatibility with voltage control app but I highly recommend you try it because it can save a lot of battery juice.
Some patches from upstream
2.6.10:
Default governor is set to conservative with sampling rate of 20msec. those who still say that lionheart is different than conservative governor should inspect the sources or those who don’t know how to do that should try this kernel to get a proof. if you still want EXACTLY the same lionheart governor, just flash lionheart.zip. Unlike what others say it will behave EXACTLY THE SAME as lionheart governor in void kernel if you flash it on this kernel, neak or several others who use netarchy’s change on conservative governor.
(Postponed to 2.6.11 to make a fair comparison of the conservative governor effects) drastic changes in gpu frequencies (thanks to [email protected]). you can use voltage control app to use modify them if they cause any lag in games or video playback but I didn’t feel any lag and they are just perfect. freq set is (40,167,267) with thresholds 85% 30% 80% 30%.
(Postponed to 2.6.11)Some other tweaks for performance and mostly battery life (made cpu hotplug threshods a bit high and some patches from upstream etc)
Set default i/o scheduler to bfq. it seems that song skipping doesn’t happen with bfq @ 100MHz (thanks to [email protected] for the feedback)
Applied Mel Gorman’s patches to SLUB allocator.
This release may not be as battery friendly as v2.6.9. I will make ondemand governor default and use different settings in v2.6.11 to target more battery life. apart from the slub allocator change (which should not effect the performance anyway) all changes in this release can be applied to v2.6.9 by using init scripts or voltage control app (just flash lionheart.zip and set i/o scheduler to bfq).
External SD/Internal SD are mounted backwards, careful when deleting information from them (emmc/sdcard) - Backup first!
Works with Samsung / CM7 / MIUI
Gokhanmoral - "Although I compile at&t version, Entropy512's kernel may be a better choice because there are some differences which I cannot test. He knows what he is talking about and I mean it..."
Flashing .ZIP's in CWM will change once flashing this KERNEL. You will now use the POWER BUTTON to select, and CHOOSE ZIP FROM INTERNAL SDCARD. Same goes for doing Backup/Restore, choose the Internal Card.
USB Debugging is turned off first flash, Just turn it back on Settings->Applications->Development
Great Explanation of Governors & I/O Schedulers
Using lulzactivev2? More control of the Governor from his Application
Overclock & Undervolt
SetCPU - Thread - Overclock CPU, Undervolt CPU, Profiles, Governor Control
Voltage Control - Market - Overclock CPU/GPU, Undervolt CPU/GPU, Profiles (Paid), BUS Change (Paid), Charging Speed, Governor Control
Battery Life
BetterBatteryStats - Thread (Bottom 2nd Post) - With BetterBatteryStats you can analyse the behavior of your phone, find applications causing the phone to drain battery while it is supposed to be asleep and measure the effect of corrective actions
CPU Spy - Market - This is a simple app to display the time the CPU spends in each frequency state. This can be a useful tool in diagnosing battery problems or tweaking your over-clock settings.
It also displays the current kernel information.
[GUIDE] – TIPS / TRICKS & Achieving MAXIMUM battery life - Thanks to AMDPOWERFIST
Can be flashed on Samsung ROMs and AOSP Based ROMS. Currently all Samsung 2.3.4, 2.3.5, 2.3.6, 2.3.7 based ROMS, CM7 and MIUI ROMS are supported. Based on linux kernel 2.6.35.14 + drivers from Samsung sources
Auto-Rooting
ClockworkMod Recovery v5.0.2.7 with back button support
Touch Recovery
Boot animation support
Supports SetCPU (OC upto 1600MHz, UC downto 100MHz)
User customizable frequency steps. You cannot change the step count but you can change the frequencies at each step.
Supports undervolting (UV between 800 mV and 1500 mV)
Supports voltage control via SetCPU (thanks to netarchy, ninpo, hacre)
Stock voltages as default
smartassV2, lulzactive, lagfree governors. and lots of other governors which are available as modules
Default governor is ondemand (200-1200MHz)
Default I/O scheduler is deadline
Tweaked ondemand and conservative governors
Compiler optimizations
User customizable charging speed (use at your own risk). You have to echo AC, MISC and USB charge currents to a misc device.
Touchscreen fix (thanks to vitalij)
Increased touchscreen sensitivity
GPU clock and voltage control interface (thanks to netarchy).
I/O, scheduler, hotplug and vm Tweaks
Automatic battery calibration. (removed. thanks to Entropy512. we do not need battery calibration for SGS2)
Available I/O schedulers: noop, deadline, CFQ, BFQ, V(R), SIO (default)
Available CPU governors: see this thread for the list of available governors and modules (thanks to droidphile)
/system/etc/init.d startup scripts support
Automatic backup of efs partition. You will have the files in your sdcard as well as /data/.siyah directory. copy them to a safe location in case you may need them later.
Updated jhash to version 3
Increased charging speed.
BLN (thanks to creams), liblights is autoinstalled if the existing one doesn't support BLN
Supports advanced touch tune driver. thanks to vitalij Link. the control app from Web, from Mobile. Thanks to tegrak for the driver patch file download
2nd core application support (thanks to tegrak)
Automounting of NTFS volumes for USB sticks (ntfs on external card is not supported)
XZ compression for the kernel to have smaller image size. the size is still similar to previous versions after adding new features
Integrated new sha-1 and crc32 slice-by-8 algorithms
SCHED_MC enabled to have less power consumption. It will have a better support in the next version as it needs more changes in the scheduler code.
Lower brightness levels for low-light conditions to save battery.
Experimental brightness behaviour modification via setting min_bl and max_gamma values.
Native BLN support for CM7 based roms.
Three GPU stepping (160-267-300) instead of two
Optimized and configurable hotplug thresholds and rates.
Thunderbolt! script integrated (thanks to pikachu01)
CIFS, SLQB, FUSE, NTFS, cgroup_timer_slack, autogroup, cleancache... and lots of other mambojambo that I forgot...
ZIP: Place zip on Internal SD -> Boot into CWM -> Clean Cache/Dalvik -> Install Zip
TAR: Download Odin -> Open Odin -> Boot into Download Mode -> Put .tar in PDA -> Start​
Changelog: http://www.gokhanmoral.com/
Although some parts can be considered as original, all are based on inspirations, examples and other people's code. I have no claim to be original. I am only trying to make my (and probably other's) SGS2 experience better and fun.
About source codes: I do not release source codes during beta testing. I do not use git. I have already proven that I share source code, but only once per release. I don't think that mods will be uncomfortable with this but if they are I can create an account in github and share an old code just like most of the other developers do. I will not choose that path if I don't have to. You can download sources for the releases using the links below. I will simply ignore mails and posts asking about the source code because they are already shared. Also, GPL doesn't force me to use github nor it forces me to release the source code as soon as possible. Therefore, releasing the source code may be delayed for several days. If you don't like this sue me
Source code and releases can be found here: http://www.gokhanmoral.com/
Credits: Samsung, supercurio, hardcore, Hacre, Entropy, RAvenGEr, tegrak, cattleprod, codeworkx, hellcat, creams, vitalij, arighi and others I might have forgotten...​
​Unofficial:
Init.Doh by cwc3
ThunderBolt! [Governor + SGSII fixes] by pikachu01
[CWM Flashable] Kernel Cleaning Script (Cleans Cache) by jivy26
Example CWM-flashable /system/etc/init.d/99gpuv script (thanks to AndreiLux)
Example GPU/CPU undervolting and underclocking scripts by kwerdenker
Improved version of CPU undervolting script by kwerdenker
Another couple of nice init.d scripts created by fenomeno83
Enable Android Logger - CWM flashable (android logger is disabled by default in this kernel)
Disable Android Logger - CWM flashable (use this script if you have enabled the logger by using EnableLogger script)
flashable lionheart cpu governor and setting default i/o scheduler to deadline (remove /system/etc/init.d/01lionheart to uninstall. thanks to knzo for the tweaked conservative governor settings)
Older Versions​(pm me if you have one I don't)​
Its pretty fast!!!
http://www.gokhanmoral.com/gm/2011/11/29/siyahkernel-v2-2i-att-for-sgh-i777-devices/
That's great... more options. I'd like to see Hardcore's kernel ported too.
Here are some screen shots of Siyah kernel being OC to 1.6 on conservative governor. My rom is Unnamed 1.3.1 This is without any major tweaking such OC the GPU. Its extremely powerful
Sent from my SAMSUNG-SGH-I777 using XDA App
Here are some random Antutu bench scores. These were done on 1.2 GHz conservative governor. Awesome, we finally surpass the galaxy nexus
And we didn't need to OC to do it too. With ICS, we'll blow galaxy nexus out of the waters!
Sent from my SAMSUNG-SGH-I777 using XDA App
Question? If were running a hellraised rom will this kernel work our do we need an att rom?
Edit: just looked at his thread in the i9100 section. the kernel said compatible with aosp roms as well as in cm7 and miui. Is this true for this one?
Sent from my GT-I9100 using XDA App
Any issues with it? Wifi, reboots, battery life, ect, ect?
Edit: flashed it and everything went smoothly. No issues to report on. According to his thread it's just as stable as stock. Hope it stays that way for us.
Sent from my páhhōniē
I would also link to know if it's compatible with cm7/miui
Looks really interesting
Sent from my SGH-I777 using xda premium
Here's a quick link to the Siyah kernel over in the i9100 forums. Everything as far as information about the kernel should apply to our phones except the obvious (battery charging steps, anything with the home button, in other words strictly hardware difference related points) as he now has made an i777 kernel version.
http://forum.xda-developers.com/showthread.php?t=1263838
This kernel should get posted in the development thread by someone willing to keep up on all it's changes as the Siyah kernel seems to get updated all the time. Unfortunately once I heal up from surgery I won't have the time to be able to do that.
Sent from my páhhōniē
insaneturbo13 said:
I would also link to know if it's compatible with cm7/miui
Looks really interesting
Sent from my SGH-I777 using xda premium
Click to expand...
Click to collapse
Yes it is compatible with all stock roms, cm7 roms, and MIUI roms (both 2.3.4 and 2.3.5 variations of all three)
Sent from my páhhōniē
Confirmed flashed this kernal and I am using cm7. Everything is kosher so far.
don't work USB with siyahkernel for i777
I got about 5500 in Quadrant (1.6 ghz, conservative) but everytime I oc to 1.6 and try to run CFBench the phone crashes at Java MFLOPS.
jcracken said:
I got about 5500 in Quadrant (1.6 ghz, conservative) but everytime I oc to 1.6 and try to run CFBench the phone crashes at Java MFLOPS.
Click to expand...
Click to collapse
Yeah I've read that at 1.6 it crashes..its best to stay at 1.5..
Sent from my GT-I9100 using Tapatalk
Working smoothly thus far for me, running CM7. Benchmarks are pointless.
jcracken said:
I got about 5500 in Quadrant (1.6 ghz, conservative) but everytime I oc to 1.6 and try to run CFBench the phone crashes at Java MFLOPS.
Click to expand...
Click to collapse
Getting the exact same... gonna try 1.5.
Sent from my SAMSUNG-SGH-I777 using xda premium
The CWM .zip will not download via phone browser, and when downloading from a windows 7 (IE browser) PC it successfully downloads but when flashing it says the package is bad. I think he needs to reupload it or put an MD5 checksum in place.
For stability, I ran a setcpu stress test on my phone all morning at 1.6 (nearly blew up my battery) and had no issues at all on conservative governor.
Try downloading it with Firefox.. it works fine for me..
rdubyah said:
Try downloading it with Firefox.. it works fine for me..
Click to expand...
Click to collapse
My mistake, it did not transfer from dropbox correctly.

[KERNEL][Mar 10][b49] _motley kernel for the N4 (add faux sound control)

_motley kernel for the Nexus 4
Disclaimer: You know the gig...I am not responsible for damaging your device or voiding your warranty. Play at your own risk!
ROM devs/cooks: If you want to use this kernel in your ROM, I am fine with that, but please include a "thanks" AND a link back to this thread. Thanks!
Features
Highly customizable with scripts. See post #2 for all the tuning options.
Google 3.4 base. All stock features are of course supported (camera, NFC etc.)
Compiler optimizations (-O2 + others) - using 2012.12 Linaro toolchain
Full ramdisk install with init.d support for stock/AOSP (CM already has support, for stock you must install busybox!)
CPU Overclock steps 1.56, 1.62, and 1.67GHz (default freq is still stock on boot, OC is optional)
304MHz lowest CPU freq step added with lower voltage than stock, since the device spends a lot of time at this frequency.
Safe UV by default for nominal, fast, and faster binned chips.
Voltage control - be careful to not save the setting on boot until you are 100% sure it is stable! (thanks faux123! + my tweaks)
In-kernel auto_hotplug (thanks to thalamus). I have added and exposed all the tuning parameters and a debug mode to userspace.
Customized in-kernel thermal solution smart scaling, dynamic polling, and configurable throttle temp.
Custom PowerHAL module (spam-free Android log from PowerHAL events)
Controllable touchboost frequency and duration
Gamma and Sound control (thanks faux123!)
Fsync control (3 modes)
USB Force Fast Charge
I/O schedulers - SIO(optimized), deadline (optimized), row, cfq, noop, and fiops
TCP Congestion Control (several choices available) - veno is the default
Governors - Interactive (default), OnDemand, PowerSave, Conservative
CIFS, NFS, NTFS r/w, TUN - built-in, no need for any kernel modules
Other misc patches and tweaks (see github link at the bottom of this post)
GPL compliant - source is kept up to date at github.com and released at the time the kernel is released to the public via this post. Demand that other devs do the same!
Requirements (please read carefully and visit the other dev threads as necessary)
Boot-loader must be unlocked and you must have a custom recovery installed (CWM or TWRP).
Have your ROM zip on your /sdcard so you can restore your whole ROM if necessary.
Do a complete backup using custom recovery so you can restore your boot.img and ROM if necessary!
System Tuner is recommended for monitoring/tuning the CPU, especially for voltage control. Other kernel apps like faux123's will likely work as well, but they have not been tested.
AOSP ROMs including stock - for init.d support, you must have a working busybox install in /system/xbin.
Installation
Check the requirements above and read release notes below for the build # you are installing for any extra instructions!
If coming from another kernel, read the instructions in red below and follow them before flashing.
Flash the the kernel zip using your custom recovery.
Optional: if you want to revert back to what you had, restore your backup of your boot.img in recovery. Another option for reset back to stock is to flash the stock reset zip above. For other custom ROMs, dirty flash your custom ROM in recovery to get your default kernel and ramdisk back.
If you have issues and are coming from another custom kernel or ROM, follow these instructions first before the install. Many custom kernels are changing the ramdisk or other binaries that require a reset before moving back to stock or another kernel.
Reset for Stock ROM - flash this reset package that includes the stock kernel, ramdisk, thermald, mpdecision, and PowerHAL binary. This can also be used if you are using the stock ROM and want to go back to stock.
4.2.1 View attachment N4_421_stock_kernel_and_components.zip
4.2.2 View attachment N4_422_stock_kernel_and_components.zip
Reset for any non-stock ROMs like CM, AOKP etc - dirty flash your current ROM or nightly zip then your gapps in recovery (just flash, no wiping). This will give you back your original ramdisk, kernel, and other binaries that other kernel devs may have tweaked, renamed, replaced etc.
Builds
Build 49 - 2013-03-10 (stable) - Android 4.2.2
Added faux123's "Sound Control: Sound control for WCD93xx codec" for testing (thanks!)
AnyKernel UPDATE ONLY - must already be on b37 or higher first! Anykernel is the same for both Stock/AOSP and CM 10.1
View attachment motley_anykernel_422_nexus_4_build_49.zip
Build 48 - 2013-03-09 (stable) - Android 4.2.2
Turned off touchscreen accuracy filter by default and allow users to turn them on via the same interface (see git for all the details). In the commit comments on github, I also document how the stock kernel already allows these adjustments, but now we have easier control of them individually. Let me know if this fixes issues for those having them.
Reverted back the changes for notification delays. They didn't fix anything. If you swapped out your prime WiFi INI file, I recommend changing back to stock for now.
AnyKernel UPDATE ONLY - must already be on b37 or higher first! Anykernel is the same for both Stock/AOSP and CM 10.1
View attachment motley_anykernel_422_nexus_4_build_48.zip
Build 44 - 2013-03-04 (beta) - Android 4.2.2
Updated touchscreen Accuracy Filter Control with franco's cleanup patch. Reverting back to a single threaded workqueue should hopefully help fix the touchscreen issues some reported.
Per Google's kernel devs, we should not have CONFIG_NF_CONNTRACK_SIP/CONFIG_NF_NAT_SIP turned on in the config. Testing is under way (introduced in b43 posted in the thread).
AnyKernel UPDATE ONLY - must already be on b37 or higher first! Anykernel is the same for both Stock/AOSP and CM 10.1
View attachment motley_anykernel_422_nexus_4_build_44.zip
Build 42 - 2013-03-02 (beta) - Android 4.2.2
Added faux123 Speaker Amp Control by request for testing (thx!)
Added franciscofranco touchscreen Accuracy Filter Control by request for testing (thx!)
Reverted "Mako Gamma: allow values greater than 31 for array positions 5 and 6". Brought to faux's attention and his app is now fixed, so this is no longer needed. Values should be capped at 31 like we have always known.
AnyKernel UPDATE ONLY - must already be on b37 or higher first! Anykernel is the same for both Stock/AOSP and CM 10.1
View attachment motley_anykernel_422_nexus_4_build_42.zip
Build 40 - 2013-02-25 (stable) - Android 4.2.2
Added upstream smp patches from 4.2.1 back into 4.2.2 build
Added optimized ARM RWSEM algorithm backin into 4.2.2 build
AnyKernel UPDATE ONLY - must be on b37 or higher first! Anykernel is the same for both Stock/AOSP and CM 10.1
View attachment motley_anykernel_422_nexus_4_build_40.zip
Build 39 - 2013-02-20 (stable) - Android 4.2.2
Added usb/hsic patches into 4.2.2 build
Turned off prima debugging in 4.2.2 build
AnyKernel UPDATE ONLY - must be on b37 or higher first! Anykernel is the same for both Stock/AOSP and CM 10.1
View attachment motley_anykernel_422_nexus_4_build_39.zip
Build 38 - 2013-02-17 (stable) - Android 4.2.2
Loosen up validation for gamma interface to allow values greater than 31 for array positions 5 and 6.
AnyKernel UPDATE ONLY - must be on b37 or higher first! Anykernel is the same for both Stock/AOSP and CM 10.1
View attachment motley_anykernel_422_nexus_4_build_38.zip
Build 37 - 2013-02-17 (stable) - First build with 4.2.2 support added
4.2.2 - rebased upon android-msm-mako-3.4-jb-mr1.1, ramdisk updated etc.
All major features added back in, but I have left a few patches out (hsic etc.) so we can evaluate before adding them back in.
Back to b32 colors, from here out you are on your own using the gamma interface of choice.
Fixed issue where fsync was still on like in previous builds. Dynamic fsync is now the default (see post 2)
Added franco gamma interface, so the kernel can support all popular interfaces until/if a standard interface is adopted.
Added refresh_screen sysfs (see post 2). This should only be called by apps or scripts while adjusting colors "live" with the motley or faux interface and NOT implemented on startup via init.d or apps since it will compete with the normal power on process and the colors will be set twice.
Use a 4.2.2 ROM and binaries. I will not troubleshoot any issues if you use this on 4.2.1 ROMs and binaries
Stock/AOSP with init.d support: View attachment motley_422_n4_exp_build_37_initd.zip
-or-
CM 10.1: View attachment motley_422_build_37_CM.zip
Previous builds and release notes:
Exp build 35 - 2013-02-11 (stable) - Last build for 4.2.1 for now
New default gamma values (this is an experiment, so let's see how everyone likes it)
cifs support for 4.2 (no modules required) - make sure you pass unc=\\\\server_name\\share_name as a mount option, or it will not work. It is a problem in the mainline kernel for 3.4 where they seem to have accidentally made the unc option mandatory. Also, no promises that the mount will be solid after the device sleeps. For now, I suggest you unmount after you are done using the file system unless we find a workaround. I have tested with cifsmanager from the app store. Other apps may or may not work.
Vibrator default is now 80 in init.mako.rc. This thing was anemic and it was about time.
FIOPS io scheduler added for testing by request
Applied several kernel\sched patches
auto_hotplug tweaks, nothing major.
Added dynamic fsync (thanks faux123) - I will update post 2 with the 3 different FSYNC options. Both toggles were left in the kernel since they are both available in different apps. If someone liked it the way it was, I didn't want to take that away.
Stock/AOSP with init.d support: View attachment motley_n4_exp_build_35_initd.zip
-or-
CM 10.1: View attachment motley_exp_build_35_CM.zip
Exp build 32 - 2013-02-03 (stable)
Merged Google's latest kernel patches for off-mode charging (from android-msm-mako-3.4-jb-mr1)
Interactive governor default tweaks - seems to give better user experience in testing thus far.
One other patch from Google's common 3.4 repo (sync: Fix race condition between merge and signal)
AnyKernel UPDATE ONLY - You must already be on exp b31. If not flash that first, then flash this. This works for both Stock/AOSP and CM
View attachment motley_anykernel_nexus_4_EXP_build_32.zip
Exp build 31 - 2013-01-28 (stable)
Added support for generic gamma control via sysfs with scripts (will update post #2 with details and examples). Again, thanks to faux123 for sharing his code.
Back on Linaro toolchain. Touch Control (PGM) support is still working fine.
TCP Congestion Control default changed to "veno" to see if it helps achieve faster speeds for some. Also added cubic, bic, illinois, and yeah for testing. Westwood+, reno, and vegas still available.
Stock/AOSP with init.d support: View attachment motley_n4_exp_build_31_initd.zip
-or-
CM 10.1: View attachment motley_exp_build_31_CM.zip
-or-
AnyKernel UPDATE ONLY - If you already on this kernel exp b17 or higher. For both Stock/AOSP and CM (keep this around for those who may want it for some reason)
View attachment motley_anykernel_nexus_4_EXP_build_31.zip
Exp build 28 update - 2013-01-24 (alpha 3)
Added support for gamma control (thanks to faux123, the faux123 app is required). Will likely provide something more generic in the future for tuning via sysfs without a 3rd party app.
Added some modest CPU OC steps of 1.56, 1.62, and 1.67GHz (voltages are scaled by bin but might not yet be optimal as the defaults). It still boots to the stock 1.5GHz, so it won't affect those that don't want to OC.
Giving the Google 4.7 toolchain a try. This base will give Touch Control a chance to work when the dev has a change to take a look. I am also inquiring to see if he thinks we can give Linaro a try. Google has made a lot of strides in this latest version, but I don't think it is yet on par with Linaro. I may do another alpha build with Linaro so we can compare. Perhaps I don't have the proper optimizations in place. we will see where this goes.
Thermal throttling improvements (new tuneable "min_freq_index" - what freq does it throttle down to before returning to max?)(default = 7 = 1.13GHz). This is the index in the frequency table as seen in Trickster MOD, System Tuner etc. It is zero based (i.e. 304MHz is zero). Several other changes, see my git commits for details.
Touch Control (PGM) support now available (thanks to bponury for his support!)
AnyKernel UPDATE ONLY - If you are not on b17 or higher already, flash build 17 first (Stock/AOSP or CM), then flash the AnyKernel zip for both Stock/AOSP and CM
Exp build 22 update - 2013-01-19 (stable)
Added hsic/usb patches (thanks to code aurora, harsh, thracemerin, and all the other kernel devs that helped with testing and troubleshooting)
See this post for some more info and why it was first released. It is now considered beta and not alpha.
AnyKernel UPDATE ONLY - If you are not on it already, flash build 17 first (Stock/AOSP or CM), then flash the AnyKernel zip for both Stock/AOSP and CM
motley_anykernel_nexus_4_EXP_build_22.zip
Exp build 21 update - 2013-01-19 (stable)
I am hoping this has us back to the b12 smoothness and we have settled in on some good defaults for moving forward.
Upgraded prima WLAN driver to 3.2.1.13 (connected to 3 different WiFi networks yesterday and it is working flawless for me)
Interactive gov tweaks based upon testing and feedback (boostpulse freq is now stock)
Default throttle temp now 67C
Other minor patches: auto_hotplug kick start on resume, update L2 voltage table, etc. (see github)
AnyKernel UPDATE ONLY - If you are not on it already, flash build 17 first (Stock/AOSP or CM), then flash the AnyKernel zip for both Stock/AOSP and CM
View attachment motley_anykernel_nexus_4_EXP_build_21.zip
Exp build 17 - 2013-01-16 (stable)
Back to new 3.4 Google interactive governor base like in b12
PowerHAL and boostpulse setup from b12 is also back. Touchboost default settings have been tweaked based on user feedback (how long does it boost? boostpulse_duration, what freq to boost to? hispeed_freq). If you want to use OnDemand, or don't want any touchboost, then you can flash the "inert" PowerHAL at the bottom of this post.
auto_hotplug enhancements rev 3 (see github) - I will update post #2 as soon as I can. We now have control over how many cpu cores you want online (for battery or performance). Thanks to mathkid for the min_online_cpus commit. It gave me the idea for max_online_cpus.
Back to the partial mako display partial revert by popular demand. My RBG tweak was reverted back to stock (255,255,255). Remember, the RGB can be changed in this kernel and it will persist after screen off/on without an app (see post #2). Trickster MOD can be used to tweak RGB.
OnDemand gov - latest patches from Code Aurora.
Note: Make sure you test with out of the box voltages, especially in the mid-range! There is already a healthy amount of under-volting in this kernel for all binned chips except "slow".
Stock/AOSP with init.d support: View attachment 1651464
-or-
CM 10.1: View attachment 1651468
Exp build 14 - 2013-01-14 (beta)
Reverted back to stock interactive governor base.
Added touchboost changes into stock interactive gov base and tweaked touchboost default settings based on user feedback.
Reverted back to b10 inert PowerHAL (same a separate flash I provided for b12 for those having issues)
Reverted one other scheduler patch that I thought could be playing a role in the reboot. I also didn't think it showed benefits after testing.
Notes: you can control touchboost using the interactive gov (turn off/on touchboost: input_boost, length of boost pulse: above_hispeed_delay, freq to boost to: hispeed_freq)
Stock/AOSP with init.d support: View attachment 1645970
-or-
CM 10.1: View attachment 1645993
Exp build 12 - 2013-01-13 (beta)
Touchboost control - connected custom Android PowerHAL module with interactive touchboost. Then, I married interactive touchboost with autoplug touchboost. If you want to tune tune interactive governor touchboost differently, you can use sysfs scripts, Trickster MOD or other capable apps (how long does it boost? boostpulse_duration, what freq to boost to? hispeed_freq)
Added touchscreen patch (thanks faux123) - seems to make the touchscreen more usable and responsive in my testing.
autoplug enhancements rev 2 - added ability to change # of sampling_periods on the fly using a module parameter (whilst preserving past history). Added get/set methods for all module parameters to make them safe. See github for all the details.
Added "row io scheduler by request - SIO is still the default for now.
Some other misc patches
Stock/AOSP with init.d support: View attachment 1641515
-or-
CM 10.1: View attachment 1641518
Exp build 10 - 2012-12-30 (stable)
Important: Since freqs have been added at the high end below 1.5GHz for smoother scaling, if you use voltage control make sure voltage data is not applied on start-up since you won't have the values for the new freqs.
Userspace tuning for thermal and hotplug (see post 2 for details shortly)
Enhanced thermal throttling and frequency scaling (see github commits for details, too many changes to list here)
Merged Code Aurora HSIC patches that hopefully will reduce duration of the infamous wakelock (and revert of prior trial workaround)
Added optimized ARM RWSEM algorithm
SMP patches from 3.5 that address hotplug efficiency and lay the foundation for other future patches I am studying.
Some other minor patches and changes (see github)
Stock/AOSP with init.d support: View attachment 1604553
-or-
CM 10.1: View attachment 1604557
Exp build 8 - initial release
Same base features as build 57 mainline
ARM auto hotplug v0.220 by _thalamus
Custom PowerHAL (chatter-free Android log)
Interactive (default) - with input boost
MSM-thermal in-kernel solution
thermald and mpdecision are disabled (services are not started in the ramdisk)
Inert PowerHAL library
This is a shell PowerHAL library that allows Android to function and stops the input boostpulse requests
(same as included in b8 and b10 Exp kernels).It was originally released for testing b12, but can be used in other builds. Personally, I would only flash the "inert PowerHAL" if you are using OnDemand full-time and no longer using interactive (set on boot), OR if you are using interactive and want to completely remove the boostpulse requests coming from Android. In the later case, UI performance may be sacrificed a bit for better battery.
View attachment motley_inert_powerhal.zip
Mirror site - thanks tlongren! - will typically be updated within a day after I post
http://www.longren.org/nexus4/motley
Git repo:
https://github.com/motley-git/kernel-Nexus4
{
"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"
}
(http://www.gnu.org/copyleft/gpl.html)
Setting custom RGB color settings via sysfs
This can be done from the adb shell on your PC, or any terminal app. If you change them, they will not persist after a reboot. However, you can set them in an init.d script if you found another color combination that you like better than the one I have used.
Code:
echo "255 255 255" > /sys/devices/platform/kcal_ctrl.0/kcal
echo 1 > /sys/devices/platform/kcal_ctrl.0/kcal_ctrl
Command 1 sets the color and Command 2 commits them. Stock is 255 255 255.
Setting custom Gamma settings via sysfs - Exp kernel build 31+ only - thanks to faux for sharing his code
Warning: changing these values can be potentially be dangerous to your display if you make a mistake. For those that feel comfortable with what they are doing and want to experiment, please report back and share your findings.
Important, please read!
There are ten digits in the string separated by one space
First digit is a checksum and is never stored. The checksum is simply the sum of the other 9 numbers. This is to make it harder to so the interface is respected and you are forced to think about what you are doing.
There are 3 sysfs interfaces for gamma, one for each color:
Code:
#!/system/bin/sh
# Show the current configuration and the checksum
cat /sys/devices/platform/mipi_lgit.1537/kgamma_red
cat /sys/devices/platform/mipi_lgit.1537/kgamma_green
cat /sys/devices/platform/mipi_lgit.1537/kgamma_blue
Update:
Recently molesarecoming started opening this up and showing us what the values can be used to adjust. Franco then suggested that the white and grays should be swapped in moles original work. So, for init.d values using this interface, we have the following "banks" if values if we agree with Franco on the swap of the whites and grays.
Code:
R: checksum, g_white, g_mids, g_black, 0, g_contrast, g_brightness, g_saturation, g_grey, 2
G: checksum, g_white, g_mids, g_black, 0, g_contrast, g_brightness, g_saturation, g_grey, 2
B: checksum, g_white, g_mids, g_black, 0, g_contrast, g_brightness, g_saturation, g_grey, 2
(the zero in position 5's and the 2's in position 10 are recommended to be left alone since they are currently unknowns)
Minus the checksum, the 27 values mirror the 3 color arrays (3 x 9 = 27) in the actual LG LCD driver. Minus the unknowns, we are left with 21 values. Note that every one of the variables can have their value tweaked by color (saturation for red, saturation for green etc.), however, it is recommended that you start with all the values of one type being the same and then tweak from there if you really want to fine tune.
You have a lot of power in your hands even without fine tuning. Many will argue that fine tuning isn't required. If you look at the stock settings by Google in post 2, they took advantage of fine tuning for whatever reason. Even though many don't like these settings by Google, it shows how flexible the interface can be.
Instructions:
1) Start with a preset config (LG or Google) as shown further below. This is a set of 3 lines, 10 numbers for each line.
2) Tweak columns for their values as above. For example, we tweak contrast and brightness as in faux's original app. We could also do the same for saturation, blacks, whites, grays etc.
Example: start with LG presets with numbers to adjust:
383 114 21 118 0 10 4 80 48 2
383 114 21 118 0 7 4 80 48 2
383 114 21 118 0 5 1 80 48 2
3) Now update the checksum in column 1 (first digit = sum of last 9 digits)
397 114 21 118 0 10 4 80 48 2
394 114 21 118 0 7 4 80 48 2
389 114 21 118 0 5 1 80 48 2
4) Create a script inside a text file - my recommendation for your first test
Code:
#!/system/bin/sh
# Set data color pro presets from shared Google spreadsheet (thanks user acer73!)
# Use LG presents as your starting values and then adjust columns 6 & 7 from the spreadsheet
echo "397 114 21 118 0 10 4 80 48 2" > /sys/devices/platform/mipi_lgit.1537/kgamma_red
echo "394 114 21 118 0 7 4 80 48 2" > /sys/devices/platform/mipi_lgit.1537/kgamma_green
echo "389 114 21 118 0 5 1 80 48 2" > /sys/devices/platform/mipi_lgit.1537/kgamma_blue
#Set the complimentary RGB values for this calibration
echo "248 248 248" > /sys/devices/platform/kcal_ctrl.0/kcal
echo 1 > /sys/devices/platform/kcal_ctrl.0/kcal_ctrl
5) Run the script (or you can echo each line manually to test from adb if you prefer).
6) Turn the screen off and on for the gamma change to take effect.
7) Check the dmesg output for any clues and to see the output of the result.
8) Place the script into your /system/etc/init.d/ folder (or equivalent) for a permanent color change!
Screen refresh (added in b37) - this should only be called by apps or scripts while adjusting and testing colors "live" with the motley or faux sysfs interface. It should NOT be implemented on startup via init.d or by apps since it will compete with the normal power on process.
Code:
echo 1 > /sys/devices/platform/mipi_lgit.1537/refresh_screen
Presets:
Code:
#!/system/bin/sh
# Set LG presets (motley stock) - i.e. popular partial revert of Google's tweaks just before release
echo "383 114 21 118 0 0 0 80 48 2" > /sys/devices/platform/mipi_lgit.1537/kgamma_red
echo "383 114 21 118 0 0 0 80 48 2" > /sys/devices/platform/mipi_lgit.1537/kgamma_green
echo "383 114 21 118 0 0 0 80 48 2" > /sys/devices/platform/mipi_lgit.1537/kgamma_blue
Code:
#!/system/bin/sh
# Set stock Google presets (from kernel source code)
echo "332 64 68 118 1 0 0 48 32 1" > /sys/devices/platform/mipi_lgit.1537/kgamma_red
echo "332 64 68 118 1 0 0 48 32 1" > /sys/devices/platform/mipi_lgit.1537/kgamma_green
echo "364 32 35 116 0 31 16 80 51 3" > /sys/devices/platform/mipi_lgit.1537/kgamma_blue
Code:
#!/system/bin/sh
# Set faux Google presets (not sure why his numbers differ)
echo "460 64 68 118 1 32 96 48 32 1" > /sys/devices/platform/mipi_lgit.1537/kgamma_red
echo "461 64 68 118 1 33 96 48 32 1" > /sys/devices/platform/mipi_lgit.1537/kgamma_green
echo "445 32 35 116 0 32 96 80 51 3" > /sys/devices/platform/mipi_lgit.1537/kgamma_blue
Spreadsheet with shared settings
https://docs.google.com/spreadsheet/ccc?key=0AoDp2qRui0u0dGE4T2gtSDBTRHVFSldPS2RrX1Rya0E#gid=0
FSYNC Control
Notes: I thought about combining these options, but many kernel apps already support these two options. So, I have them both and they can be controlled in combination to give us the 3 modes. If you set fsync_enabled = 0 it will be OFF regardless of how Dyn_fsync_active is set.
3 Modes:
Dynamic (default in b35 and higher)- fsync is asynchronous when screen is on, when screen is off it is committed synchronously
dynamic fsync ON
fsync ON
Code:
echo 1 > /sys/kernel/dyn_fsync/Dyn_fsync_active
echo 1 > /sys/class/misc/fsynccontrol/fsync_enabled
Off (best performance, less safe) - fsync is always asynchronous (b32 and prior builds)
dynamic fsync OFF
fsync OFF
Code:
echo 0 > /sys/kernel/dyn_fsync/Dyn_fsync_active
echo 0 > /sys/class/misc/fsynccontrol/fsync_enabled
Stock (safest) - fsync is always committed synchronously
dynamic fsync OFF
fsync ON
Code:
echo 0 > /sys/kernel/dyn_fsync/Dyn_fsync_active
echo 1 > /sys/class/misc/fsynccontrol/fsync_enabled
There is a lot of info out there on fsync, that will not be discussed here. I have run fsync off on several devices for awhile now and haven't experienced any issues. If you are using a device that is not stable and crashes alot, I recommend enabling it via init.d or script manager on boot. Hopefully your N4 is as stable as is mine.
USB Force Fast Charge
You can turn it on with popular apps (like Trickster MOD) that support the common sysfs toggle as shown below.
If you don't like it or don't want to use it, it is off by default.
Turn ON:
Code:
echo 1 > /sys/kernel/fast_charge/force_fast_charge
Turn OFF:
Code:
echo 0 > /sys/kernel/fast_charge/force_fast_charge
Notes:
When it is ON, you will not be able to connect your phone to your PC (adb, mtp etc.). This is expected behavior.
To start charging: turn fast charge ON, plug the USB cable into your PC, and charge up.
To stop charging: unplug the USB cable and turn fast charge OFF. Now you can plug back into your PC for normal trickle charging, adb/mtp etc.
Tip: if you see it connect to your PC (media device or adb), it isn't working. Unplug the cable, wait a couple seconds and plug it in again.
Boostpulse control - Experimental build only
Trickster MOD works great to play with these.
How long does it boost when Android senses touch? (in b10 and b14 it is above_hispeed_delay)
Code:
/sys/devices/system/cpu/cpufreq/interactive/boostpulse_duration
What freq does it boost to?
Code:
/sys/devices/system/cpu/cpufreq/interactive/hispeed_freq
Turn touchboost OFF/ON (in b10 and b14 only)
Code:
/sys/devices/system/cpu/cpufreq/interactive/input_boost
Thermal Throttling and Hotplug Control - Experimental build only
Warning: these do not have to be changed from the defaults and could potentially be dangerous if you make a mistake. For those that know what they are doing and want to experiment with settings, scripts etc. please report back your findings.
msm_thermal:
Throttle temp in C. Default is 70, valid range is 45 to 80 (recommend to not go over 75):
Code:
/sys/module/msm_thermal/parameters/throttle_temp
Minimum freq used in throttle down before returning to max, default is 7 = 1.13GHz. Range is 4 to 8 (810Mhz to 1.24GHz)
This is the index in the frequency table as seen in Trickster MOD, System Tuner etc. It is zero based (i.e. 304MHz is zero).
Code:
/sys/module/msm_thermal/parameters/min_freq_index
Turn on thermal debugging so you can see what is happening in the kernel log:
Code:
/sys/module/msm_thermal/parameters/thermal_debug
auto_hotplug:
Load based hotplugging parameters. I have taken _thalamus' base (thanks!) and have exposed most of the tuning parameters to userspace.
Turn off/on hot_plug debugging Y/N, default N, this spams the kernel log like crazy, turn on only when troubleshooting/testing
Code:
/sys/module/auto_hotplug/parameters/debug
Load at which a CPU is taken offline, 40-125, default 80:
Code:
/sys/module/auto_hotplug/parameters/disable_load_threshold
Load at which an extra CPU is put online, 130-250, default 200:
Code:
/sys/module/auto_hotplug/parameters/enable_load_threshold
Load at which all CPU's are enabled, 270-550, default is 400 (or 100 x number of cores):
Code:
/sys/module/auto_hotplug/parameters/enable_all_load_threshold
Sample rate in milliseconds, converted to jiffies at runtime, 10-50ms, default 20:
Code:
/sys/module/auto_hotplug/parameters/min_sampling_rate
Number of samples in the circular buffer, 5-50, default 10 (more samples = less aggressive; less samples = more aggressive):
Code:
/sys/module/auto_hotplug/parameters/sampling_periods
Maximum number of cores online (regardless of load) when screen is on, 1-4, default 4 (tune down for battery savings):
Code:
/sys/module/auto_hotplug/parameters/max_online_cpus
Minimum number of cores online (regardless of load) when screen is on, 1-4, default 1 (tune up for performance/bench-marking):
Code:
/sys/module/auto_hotplug/parameters/min_online_cpus
Vibration Intensity
You can also use Trickster MOD to set this.
Example increase intensity:
Code:
echo "90" > /sys/class/timed_output/vibrator/amp
To go back to stock:
Code:
echo "70" > /sys/class/timed_output/vibrator/amp
Why are the base voltage tables different on some phones
What CPU do you have? Nominal, Fast, Faster ...or Slow
The phones with the lower default voltage values use the "fast" or "faster" frequency table, consider yourself lucky. This explains why some can't UV as much as others since they are starting with lower mV's to start. These are built in factory tolerances that depend upon the binning of your chip. I am familiar with the same thing in the tegra3 world where I have had more experience. So, don't worry as this is commonly done in this industry. Hopefully folks don't go freaking out because they have a nominal chip like I do. It's probably good for a dev to have a nominal chip so we can better honor the limits.
http://en.wikipedia.org/wiki/Product_binning
How do I tell what I have?
If you boot up your phone fresh and look at the dmesg output (kernel log) while the messages are still there, you will find one of the following output messages where it selects it's frequency plan depending on the binning of the chip.
Code:
adb shell dmesg | grep PVS
acpuclk-8064 acpuclk-8064: ACPU PVS: Nominal
-or-
acpuclk-8064 acpuclk-8064: ACPU PVS: Fast
-or-
acpuclk-8064 acpuclk-8064: ACPU PVS: Faster
-or-
acpuclk-8064 acpuclk-8064: ACPU PVS: Slow
I have tweaked all the frequency tables nominal, fast, and faster (as well as slow to compensate for the lower freq) to keep them similarly scaled relative to stock. If you don't like the safe defaults (already UV'ed), then use voltage control and come up with your own preferred values.
SWEET!
Sweetness! New kernel!
Sent from my Galaxy Nexus using Tapatalk 2
I definitely giving this s try out.
Thanks for your work.
Sent from my Nexus 4 using xda premium
On my phone the zip is showing duplicate files inside?
Sent from my Nexus 4 using Tapatalk 2
stormtroopercs said:
On my phone the zip is showing duplicate files inside?
Sent from my Nexus 4 using Tapatalk 2
Click to expand...
Click to collapse
File looks fine on a computer.
stormtroopercs said:
On my phone the zip is showing duplicate files inside?
Sent from my Nexus 4 using Tapatalk 2
Click to expand...
Click to collapse
hol17 said:
File looks fine on a computer.
Click to expand...
Click to collapse
That is odd. I just looked at it on my phone with ES zip viewer and it looks fine. Also looks good in Linux and flashes fine using CWM touch. Does Root Explorer officially support JB4.2?
I've just added this kernel to the Nexus 4 Complete Index
Sent from my GT-I9100 using xda premium
KidCarter93 said:
I've just added this kernel to the Nexus 4 Complete Index
Sent from my GT-I9100 using xda premium
Click to expand...
Click to collapse
Thx, appreciate it!
Nice work motley. I'm not an overclocker so I'll probably be running this often. Can you look at tweaking the voltage table a bit, 800 mV is not low enough. I think the lower steps will be able to go as low as 600 stable. Just a thought. Thanks for your work.
Sent from my Nexus 4 using xda premium
_motley said:
That is odd. I just looked at it on my phone with ES zip viewer and it looks fine. Also looks good in Linux and flashes fine using CWM touch. Does Root Explorer officially support JB4.2?
Click to expand...
Click to collapse
No idea but it flashed correctly! Good job!
Sent from my Nexus 4 using Tapatalk 2
Running great on the latest Xylon build .. Thanks
Sent from my Nexus 7 using Tapatalk 2
mikeyinid said:
Nice work motley. I'm not an overclocker so I'll probably be running this often. Can you look at tweaking the voltage table a bit, 800 mV is not low enough. I think the lower steps will be able to go as low as 600 stable. Just a thought. Thanks for your work.
Sent from my Nexus 4 using xda premium
Click to expand...
Click to collapse
Thx, definitely will try to push it down for us so we can test it out what works best. Heading to bed now, but should be able to do some tweaks tomorrow and over the weekend.
stormtroopercs said:
No idea but it flashed correctly! Good job!
Click to expand...
Click to collapse
joshnichols189 said:
Running great on the latest Xylon build .. Thanks
Click to expand...
Click to collapse
Awesome, thanks for the quick feedback guys!
Wooow linaro!!! Amazing!!!!
Enviado desde mi Nexus 4 usando Tapatalk 2
mikeyinid said:
Nice work motley. I'm not an overclocker so I'll probably be running this often. Can you look at tweaking the voltage table a bit, 800 mV is not low enough. I think the lower steps will be able to go as low as 600 stable. Just a thought. Thanks for your work.
Sent from my Nexus 4 using xda premium
Click to expand...
Click to collapse
I noticed that Faux kernel's minimum is also 800mv. I wonder if this is some hard coded limit or something
Sent from my Nexus 4 using xda app-developers app
Glad to see you here motley! Your N7 kernel is legendary.... Can't wait to use this!
Sent from my Nexus 4 using Tapatalk 2
Logi_Ca1 said:
I noticed that Faux kernel's minimum is also 800mv. I wonder if this is some hard coded limit or something
Sent from my Nexus 4 using xda app-developers app
Click to expand...
Click to collapse
I don't think it's a limit, as such, I think that's the lower they know is definitely stable at the moment.
As motley said, he'll do some more testing when he's got time, so he'll be able to know for sure if lower would still be stable.
Sent from my GT-I9100 using xda premium
Usb otg work with this kernel?
Sent from my MyTouch 4G using Tapatalk 2
pnut22r said:
Usb otg work with this kernel?
Sent from my MyTouch 4G using Tapatalk 2
Click to expand...
Click to collapse
Features
304MHz lowest CPU freq step added with lower voltage than stock, since the device spends a lot of time at this frequency. 432 MHz removed since it doesn't seem to use it much.
Google 3.4 base. All stock features are of course supported (camera, OTG, NFC etc.)
Fsync disabled by default for performance and battery saving - enable/disable switch is available if you want to turn back on (see below).
Voltage control (thanks faux123!) - be careful to not save the setting on boot until you are 100% sure!
Compiler optimizations (-O2) - using 2012.10.22 Linaro 4.7.1 ARM toolchain
I/O schedulers - SIO(default), deadline (optimized), cfq, noop
Governors - OnDemand (stock ramdisk will set on boot), Interactive (my favorite, responsive + good standby battery usage), PowerSave, Conservative
CIFS, NFS, NTFS r/w, TUN - built-in, no need for any kernel modules
Increased mm read-ahead buffer to 1024
XZ compression
GPL compliant - source is kept up to date at github.com and released at the time the kernel is released to the public via this post. See github link at the bottom of this post.
Other misc patches and tweaks (see github)

[KERNEL] [May26] ElementalX-EVO-4.3 | OC | UV | ZRAM | ROW | S2W | DT2W | BLN

{
"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"
}
Kernel for Sense-based Jelly Bean ROMs
LATEST VERSION: ElementalX-EVO-4.3 (May 26, 2013)
Code:
* Standard disclaimer:
* Your warranty is now void. Use at your own risk.
* In other words: It is your choice to use this software,
* I am not responsible for any damage or problems!
This kernel has tons of options. You can get yourself into trouble. Overclocking and undervolting takes effort, you need to test, test, test in order to find stable settings for your device. Please don't complain about reboots or crashes if you're overclocking and/or undervolting. When you find settings that work well with your specific hardware, this kernel will be very stable and have long battery life.
If you have problems, or simply don't want to endlessly tweak kernel settings, then consider trying the Bulletproof kernel: http://forum.xda-developers.com/showthread.php?t=2181243
If you do want to endlessly tweak kernel settings, and get to know your hardware intimately, then you're in the right place.
FEATURES:
based on HTC Jelly Bean source code 3.16
Aroma installer
choose CPU optimization level: vanilla, elementalx, or ultra
optimized for extended battery life
overclocking/underclocking options
minimum CPU frequency 192MHz or 384MHz
choose max screen off frequency
user voltage control
choose voltage profile in installer
GPU overclocking
sweep2wake
doubletap2wake
pocket detection to prevent accidental wakes
button light notification
/system writable
force fastcharge
optional zRam with snappy compression
NTFS r/w support
governors: intellidemand (default), badass, lagfree, lionheart
i/o schedulers: ROW (default), FIOPS, SIO
option to disable fsync
increased refresh rate for HDMI output via MHL adapter
optimized -O3 linaro 4.7.3
DOWNLOAD
Elemental-EVO-4.3
NOTE: If you downloaded this before 9pm EDT on May 26, please redownload and reinstall the file!
If you have trouble installing or using ElementalX, or you don't know what settings to choose, I recommend you try Bulletproof Kernel: http://forum.xda-developers.com/showthread.php?t=2181243
Previous versions:
Elemental-EVO-4.2
ElementalX-EVO-3.3
ElementalX-EVO-3.2
ElementalX-EVO-3.1
ElementalX-EVO-JB-v2.5: http://goo.gl/Bvx3j
ElementalX-EVO-JB-v2.3: http://goo.gl/KJlgZ
ElementalX-EVO-JB-v2.2: http://goo.gl/qSavM
ElementalX-EVO-JB-v2.1: http://goo.gl/XWDYK
ElementalX-EVO-JB-v1.2: http://goo.gl/LTYN3
ElementalX-EVO-JB-v1.0: http://goo.gl/xNUab
ElementalX-EVO-JB-v0.8: http://goo.gl/FPDra
ElementalX-EVO-JB-v0.7: http://goo.gl/KDDjK
INSTALLATION
1. Install zip from TWRP Recovery
2. Follow the instructions, if you don't know what to do, use the preselected option
3. Reboot!
S-OFF highly recommended for easy installation
The installer includes a method to flash the boot.img with s-on, however, some people still have difficulties. If it doesn't work, extract boot.img from the zip, reboot to bootloader and do:
fastboot flash boot boot.img
Note: you must still run the installer to get all the configuration files!
Please hit the Thanks button if you use this
If you really like this, please consider buying me a beer
Click to expand...
Click to collapse
Special thanks:
zarboz and Sbryan12144 for porting S2W to the One XL
jrior001 for CPU1 fix
backfromthestorm for fstrim
xHausx and amarullz for installer stuff
tbalden for bln
​
NOTES:
Configuration
Your choices in the Aroma installer are used to build a configuration file. The config file is located at /etc/elementalx.conf. You can edit this file to change kernel settings. Whatever is set in this file will take effect when the device is booted (unless other scripts or apps interfere!)
The settings can be changed by editing /etc/elementalx.conf and rebooting. Advanced users can apply settings on the fly by running /etc/init.d/99elementalx as root.
There is no need to edit /etc/init.d/99elementalx. All settings are configured in /etc/elementalx.conf.
If settings are not sticking, make sure the file permissions for /etc/init.d/99elementalx are set to execute. Every time the settings are applied, a log file is created at /data/local/tmp/elementalx-kernel.log. Problems can be diagnosed by looking at the log file.
Please check to see if any /etc/init.d scripts or apps are interfering with your settings If you're on ViperXL, make sure your settings in Venom Tweaks are the same as the ones in /etc/elementalx.conf (for example, sweep2wake settings)
Kernel Tuner
You don't need Kernel Tuner because the ElementalX installer sets everything up automatically, but if you want to check or change settings, Kernel Tuner is recommended. Just be aware that Kernel Tuner is set by default to apply settings on boot, which can interfere with the settings you chose in the ElementalX installer.
Venom Tweaks force close
If Venom Tweaks closes when you try to access the CPU tab, go to Settings->Apps->Venom Tweaks and push the Clear Data button. This should fix the problem.
CPU Optimization
Vanilla: stock voltages, stock l2 cache frequency, stock bus bandwidth
ElementlaX: increases l2 cache frequency and bus bandwidth, allows you to choose voltage level in installer
Ultra: increases l2 cache frequency and bus bandwidth even more. May cause instability, please test thoroughly for stability if you use this option.
Overclocking
Overclocking (underclocking) is optional. Whatever frequency you chose in the installer will be set at boot for both CPUs. Frequencies can be changed any time using apps like No Frills or Kernel Tuner. WARNING: not all devices can handle overclocking. The stock maximum CPU frequency is 1.5GHz. In versions of the kernel prior to 4.2, the frequencies were labeled wrong so you won't be able to overclock as high with version 4.2+.
CPU voltages
CPU voltages can be changed with Venom Tweaks, Kernel Tuner or System Tuner. Be careful, lowering voltages could cause instability. If you have stability problems even at the highest voltages, try the vanilla version
Minimum CPU frequency
Sets the minimum CPU scaling frequency. 192MHz is the recommended default and should work fine on the vast majority of devices. The 384MHz option is available for devices that experience random reboots while the device is idle. It is recommended that you try increasing the minimum voltage by 25mV before changing the minimum CPU frequency.
Max screen off frequency
This sets the highest CPU frequency available while the screen is off. It is recommended to disable this for stability. Also, do not set this to 192MHz or 384MHz, as many devices experience random reboots at these frequencies. The default is 486MHz, which should be safe for most devices. If you experience random reboots while the device is asleep, set this to a higher frequency. This setting can be changed in /etc/elementalx.conf or using an app like Venom Tweaks.
GPU frequencies
3D GPU: 480 (overclocked) or 400 (stock)
2D GPU: 266 (overclocked) or 200 (stock)
Governors
Intellidemand is the default CPU governor. There are other governors included, however, intellidemend is recommended for best balance of battery life and performance.
Installing a new ROM
If you install a new ROM, it will overwrite /etc/init.d/89elementalx and /etc/elementalx.conf. The kernel will run perfectly fine without these files, but you will lose your settings and certain features.
Sweep2Wake
Sweep2wake allows you to wake up your device by swiping your finger across the capacitive buttons from left to right. Swiping from right to left will put it back to sleep (sweep2sleep). There are now options for sweep2wake/sweep2sleep, sweep2sleep only, and disabled. If you use ViperXL, make sure to enable sweep2wake in Venom Tweaks. Note that in Venom Tweaks, the sweep2sleep only option can be selected by choosing Enable (no buttons backlight).
DoubleTap2Wake
DoubleTap2Wake (DT2W) allows you to wake the device by double tapping in the bottom inch or so of the screen, above the capacitive buttons. You can edit /etc/elementalx.conf to change the setting on boot.
/sys/android_touch/doubletap2wake
0=disabled
1=enable doubletap2wake
Pocket Detection
Pocket detection protects against accidental wakes while S2W, DT2W or L2W are enabled and the phone is in your pocket. Pocket detection uses the proximity sensor. A few people have a problem with their proximity sensor that makes DT2W not work, so I've made an option to disable pocket detection. You can edit /etc/elementalx.conf to change the setting on boot.
/sys/android_touch/pocket_detect
0=disabled
1=enable pocket detection
Button Light Notification
With Button Light Notification (BLN), the capacitive buttons will blink on and off when you have a new notification. As soon as the screen comes on, BLN is canceled and the lights will no longer blink until you have another notification. Please note that if you have your screen set to turn on when a message arrives, you will not see the buttons blinking because once the screen comes on, the button light notification is canceled. You can edit /etc/elementalx.conf to change the setting on boot.
/sys/class/leds/button-backlight/bln
0 = disabled
1 = BLN enabled
What is zRam
zRam creates a compressed block device in RAM that is used as swap. Although it claims some of your RAM as swap, everything written to swap is compressed. This increases the apparent memory available to the system and helps with multitasking. Swap files on disk are very slow, but with zRam the swap is on RAM so it can be read as quickly as regular memory. Even though the data need to be decompressed, modern CPUs can decompress quicker than if it had to be to read from disk. The penalty is cpu usage, which could drain battery; however, this is likely negligable in daily use. I didn't enable this by default because not everyone will want it. This is for heavy multitaskers and will allow you to quickly switch between more apps and have more tabs open in your browser without refreshes.
zRam is disabled by default. If you want to enable it, edit /etc/elementalx.conf
change ZRAM=0 to ZRAM=1 and reboot.
You can check if zRam is working by typing the command "free" into the terminal. You should see the total used and free swap. If these are all 0, then zRam is not enabled. Please ensure that other apps are not changing your minfrees, zRam works best with low minfrees and high swappiness.
NTFS support
This is for anyone who wants to use OTG to connect a USB stick or portable harddrive formatted with Microsoft's NTFS filesystem. You will need Stickmount or a similar app, HTC Sense+ won't detect NTFS.
Enable/disable fsync
Disabling fsync can increase filesystem performance. However, there is a small risk of data loss if the system suddenly crashes. If you can't afford to lose data, keep fsync enabled. Many custom kernel disable fsync, I leave it enabled by default for safety reasons.
XBox controller support
There is an experimental module that supports XBox gamepads, however, some people have reported that it draws too much power and doesn't work. I've suggested trying a powered USB hub, but still not sure if it works.
Changelog:
v4.3:
-button light notification
-doubletap2wake
-pocket detection to protect accidental wakes
-optimized AES and SHA1 routines
v4.2:
-correct oc frequencies
-adjust l2 cache frequencies
-gpu overclock frequencies now 480 3D and 266 2D
-fix max screen off limit
-various patches from Linaro and CAF
-WiFi module fix (thanks thicklizard)
-avoid loadavg moire
-enable automatic process group scheduling
-max screen off frequency can be disabled
v3.3:
-optimized build compiled with -O3
-linaro 4.6.3 -> linaro 4.7.3
-force ac for unknown chargers
v3.2:
-use glibc memcopy
-use glibc string
-add /dev/frandom
-add force fastcharge
-change makefile optimizations
-tweak clocks
-fix aroma installer(?)
v3.1:
-based on HTC source code 3.16
-overclock to 2.1GHz
-minimum frequency 192 or 384MHz
-screen off frequency
-optional overclock GPU
-full voltage control
-enable/disable fsync
-intellidemand default governor
-add sweep2wake
-add zRam with snappy compression
-init.d support
-ntfs r/w support
-fix HDMI refresh rate
-add lionheart, badass governor
-add row i/o scheduler
-adjust l2 cache frequencies
-default i/o scheduler is ROW
-add fix for crash when wp_mod.ko loaded
-disable gentle fair sleepers
-xz kernel compression
-fix installer conflicts
-dual zram
-use zcache instead of qcache
-use zsmalloc instead of zxmalloc
-CPU1 governor can be set independently
-set max screen off frequency
-choose 192 or 384 minimum CPU frequency
-update cpu_power according to cpu load
-CPU optimization options: Vanilla, ElementalX or Ultra
-small tweaks to GPU settings
-fstrim at boot
-switch do_fsync() to fget_light()
-adjust readahead to 2048
-made sure that if you flash boot.img in fastboot you get vanilla version
v2.5:
-added 384 MHz frequency step when selecting 192MHz as min frequency (needed because CPU1 will not stay at 192MHz)
-adjustments to init script
v2.3:
-adjustments to init script (now works with Viper4G 3.0.1)
-added extra governors (lionheart, lagfree, interactivex2, and badass)
-new boot.img from 3.16 OTA
v2.2:
-choose minimum CPU frequency (192MHz or 384MHz)
-option to leave minimum voltage at default
-optimized CPU control module, now reads PVS efuse and sets appropriate voltage levels
-streamlined options and config file
-optional XBox controller support
v2.1:
-Option to completely disable overclocking/undervolting
-If overclocking, choose between optimization for stability or performance
-stability option does not increase L2 cache frequency and bus bandwidth
v2.0:
-added intellidemand governor (default)
-added fiops i/o scheduler (default)
-optional zram with snappy compression
-optional ntfs r/w support
-select minimum voltage (800, 825, 850, 875, or 900mV)
-added 1134 and 1242 MHz underclocking options
-increased bus bandwidth
-many changes to installer and configuration files
v1.2:
-minor changes to init.d script
v1.1:
-fix low 3D GPU setting
-undervolt option now undervolts 384MHz frequency step to 800mV
-boost L2 cache frequency for extra performance
-increase readahead buffer to 4096
-tried to fix touch in aroma installer
v1.0:
-add voltage options
v0.8:
-removed 1998MHz frequency step
-added 1647MHz frequency step
-increased voltages slightly for stability
-added option to install without boot.img
v0.7:
-tweaking install method
v0.6:
-fix installer?
Source:
ElementalX-3.2
ElementalX-JB-v2.5: http://goo.gl/uWK4r
Nice thanks! I will be trying this now after I update my SuperJELLY to r201
Niceeeeeee I'll give this a try, downloading now..
Anyone try this yet?
Basically I just need to know if the modules load or not.
If they do, we're good to go.
If not, I need someone to type this in terminal:
su
insmod /system/lib/modules/oc_mod.ko
dmesg > /sdcard/dmesg.txt
and post the relevant lines of dmesg.txt
Flashed it wouldn't let me overclock and it booted
Edit: flashed again it boots I'm overclocked too
Sent from my EVO using xda premium
Im on Super Jelly and phone wont go past boot animation
Alright, don't actually install it, we just need to test the modules.
Could someone who has the stock JB kernel extract wp_mod.ko and oc_mod.ko from the zip file and try to insmod them from the terminal and let me know what the output of dmesg is?
Also, could someone post the output of:
uname -r
It works just aroma installer is a little buggy
Sent from my EVO using xda premium
OMG!! a kernel!! thank you so much bro!! we need some kernels for this device :good: thank u.. i almost **it my self when i seen there was a new kernel!! lol... im down to help test but im only good for flashing zips.. let me kno if i can help.. thank u flar2
It works for me. Overclocked at 1.8 on superjelly
$tack$
so i take it we good to flash this??
I have a question. If the modules didn't flash.. my WiFi wouldn't work right?... Or what wouldn't work?
$tack$
I think I might have fixed the installer, not sure how things work on this device.
evo401 said:
OMG!! a kernel!! thank you so much bro!! we need some kernels for this device :good: thank u.. i almost **it my self when i seen there was a new kernel!! lol... im down to help test but im only good for flashing zips.. let me kno if i can help.. thank u flar2
Click to expand...
Click to collapse
Well, it's not exactly a custom kernel, just some modules and config files to make it work
Sorry for posting screenshots. To happy right now.
$tack$
^^I can get over 7400 on the One XL
1998 MHz likely isn't going to work.
Anyone tested /system write?
evo401 said:
so i take it we good to flash this??
Click to expand...
Click to collapse
At your own risk, I don't have this device so I don't know exactly what happens if you try to flash this.
stacksptdtdm said:
I have a question. If the modules didn't flash.. my WiFi wouldn't work right?... Or what wouldn't work?
$tack$
Click to expand...
Click to collapse
This won't affect wifi. Your existing modules stay the same.
The kernel is the stock JB kernel, I just had to modify the boot image to add init.d support.
flar2 said:
Alright, don't actually install it, we just need to test the modules.
Could someone who has the stock JB kernel extract wp_mod.ko and oc_mod.ko from the zip file and try to insmod them from the terminal and let me know what the output of dmesg is?
Also, could someone post the output of:
uname -r
Click to expand...
Click to collapse
uname -r
3.4.10-g014d33e
when i try insmod /system/lib/modules/oc_mod.ko
i receive "insmod: init_module '/system/lib/modules/oc_mod.ko' failed (file exists)"
I do have overclock though.
I'll post my dmesg since I don't know what part is needed -__- lol
it flashed using the 1809 oc but i am getting fc on messages,gmail,android media, i can open tapatalk and go thru threads but once i try to enter one i get fc. using nova widgetswill not load i used your latest alpha
flar2 said:
^^I can get over 7400 on the One XL
1998 MHz likely isn't going to work.
Anyone tested /system write?
At your own risk, I don't have this device so I don't know exactly what happens if you try to flash this.
This won't affect wifi. Your existing modules stay the same.
The kernel is the stock JB kernel, I just had to modify the boot image to add init.d support.
Click to expand...
Click to collapse
Getting there
$tack$
To stop fc u have to flash a kernel voltage stabilizer zip
Sent from my EVO using xda premium
Installer still dinky. And instead of it saying 0.6 its 0.5?
$tack$

[KERNEL] Semaphore N4 3.4.2

{
"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"
}
This is a kernel based on stock one, tested on stock KK 4.4.3, JB 4.2.2, CM10.1, JB 4.3, Lollipop 5.0
Versions >= 3.0.0b are for Lollipop 5.1.x
Versions >= 2.2.0 are for KK 4.4.3
Versions >= 1.8.5 are for KK 4.4.1 / 4.4.2 only
Versions >= 1.8.0 are for KK 4.4 only
Versions >= 1.5.0 are for JB 4.3 only
More features will be added soon. Please don't ask for ETA.
Features
- Linux kernel 3.4.112
- built with Linaro gcc 4.8.2 201306
- enabled O2 optimizations
- ondemand (Changed calculation of frequency, tweaked)
- conservative
- mpdecision dropped
- dyn_hotplug driver
- Noop scheduler (default)
- SIO scheduler
- Touch wake
- Double Tap to Wake
- Gamma control
- LED triggers: touchwake, thermal
- Undervolting
- removed many debug options
For more information check the semaphore kernel website: www.semaphore.gr
Please use Semaphore Manager application to control every kernel's feature.
Thanks to
- Linux developers
- faux123 for ideas about gamma tables
- Ezekeel for touchwake
- my wife who always supports me
- a German friend who helped to buy N4
All people who support this kernel by testing, reporting issues, donating or simply using it.
Thanks italia0101 for his review.
Change log
3.4.2 (19/05/2016)
- Linux kernel 3.4.112
3.4.1 (24/03/2016)
- Linux kernel 3.4.111
3.4.0 (02/11/2015)
- Linux kernel 3.4.110
3.3.0 (23/09/2015)
- Linux kernel 3.4.109
3.2.6 (16/08/2015)
- Merge Android 5.1.1_r0.14 changes
3.2.5 (21/06/2015)
- Linux kernel 3.4.108
3.2.0 (21/05/2015)
- Merge Android 5.1.1 changes
3.1.5 (20/04/2015)
- Linux kernel 3.4.107
- Double tap to wake: add option to temporarily disable after power key pressed. Auto enabled again after device resumed. Enable this feature using the command:
echo 1 > /sys/devices/virtual/input/lge_touch/dt_wake_pwr_disable
3.1.0 (15/04/2015)
- Merge Android-5.1.0_r0.9 changes
3.0.5 (22/03/2015)
- cpufreq: new per cpu tunable util_threshold (default 25)
- Dynamic hotplug: Change algorithm. If CPUs have different util_threshold, the CPU with the greater one will be chosen
- ondemand: new tunable down_threshold. If load below this threshold lowest frequency will be user.
3.0.2 (18/02/2015)
- Linux kernel 3.4.106
3.0.1 (11/12/2014)
- Merge latest changes from Android source (5.0.1)
3.0.0
- Linux kernel 3.4.105
- Fix initramfs issues (mpdfake, initscripts) due to SELinux. Semaphore init script uses Chainfire's supolicy tool (included in latests SuperSU) to patch sepolicy
3.0.0b (18/11/2014)
- Lollipop release
- Merged latest lollipop branch
- Linux 3.4.104
2.4.0 (19/08/2014)
- Linux kernel 3.4.103
- ondemand: a small fix in check load condition (thanks to moddingg33k)
- tick-sched: Remove unnecessary statistics calculation required by mpdecision (thanks to moddingg33k)
- tick-sched: A couple of fixes from mainline
2.3.3 (19/07/2014)
- Linux kernel 3.4.99
2.3.0 (27/06/2014)
- Linux kernel 3.4.95
- ondemand: Change the calculation of next frequency to utilize lower frequencies more (the governor will be more sensitive to lower loads)
- ondemand: Change default touch load to 65 to keep the touch frequency to 1134MHz (because of the change in calculation)
Please note that you have to change the touch load to 65 in Semaphore Manager until the app update.
2.2.5 (15/06/2014)
- Linux kernel 3.4.93
- ondemand: Be friendly towards latency-sensitive bursty workloads (backport 2 patches that intended for 3.16)
About Double Tap to Wake.
Implemented from scratch and hints from show-p1984 and LG G pad kernels (thanks).
The basic idea is known: touchscreen remains _always_ powered to handle input events
and wake up the device with a double tap.
User have to double tap on the _center_ of the screen (to limit accidentally wake ups).
Double tap is disabled by default. To enable it run the command bellow as su:
echo 1 > /sys/devices/virtual/input/lge_touch/dt_wake_enabled
If you run the above command during screen off, the command will remain pending until
the next power on. Then it will be actually executed.
Touchwake functionality is still implemented and it should be disabled if double tap to wake
is enabled.
1.8.8 (22/12/2013)
- Linux kernel 3.4.75
- dyn_hotplug: Activate the driver 1min after boot (because during init scripts execution all CPUs should be online to get initial settings. Fixes issue where a CPU governor could be set with default performance governor. Thanks to ihancioglu for reporting and reproducing the issue).
- cpufreq: set initial utilization to zero on device CPU addition
Full changelog: http://www.semaphore.gr/changelog/n4-version
Sources
Semaphore kernel sources
Please use it at your own risk!
Zip files in download section are for flashing from CWM recovery.
'j' versions are for JSS15J ROMs only
The normal files are for JWR66V &JWR66Y ROMs only
Alternative download from http://www.semaphore.gr/downloads/nexus-4
XDA:DevDB Information
Semaphore, Kernel for the Google Nexus 4
Contributors
stratosk
Source Code: https://github.com/stratosk/kernel_msm
Kernel Special Features:
Version Information
Status: Stable
Current Stable Version: 3.4.2
Stable Release Date: 2016-05-19
Created 2013-07-30
Last Updated 2016-05-19
About undervolting
As you may know, APQ8064 comes to 4 versions (PVS bin): Slow, Nominal, Fast, Faster.
Every bin has it's own voltage table. Nominal bin chips use lower voltages than Slow bin,
Fast lower than Nominal and finally Faster even lower voltages.
Stock kernel uses a paramater boost_uV. By default, is added in voltages but it can be disabled.
The value of boost_uV is 0 for Slow bin chips and 25000 uV = 25 mV for Nominal, Fast and Faster.
The boost_uV may be disabled (= undervolting by 25000 uV in Nominal, Fast and Faster) using this command:
Code:
echo n > /sys/module/acpuclock_krait/parameters/boost
I implemented 3 more paramater that handle undervolting:
- lower_uV: undervolting value for lower frequencies
- higher_uV: undervolting value for higher frequencies
- higher_khz_thres: above this frequency (default 1350000KHz) higher_uV will be used. Else lower_uV will be used.
Undervolting value is subtracted from stock voltage. The final voltage for each frequency is calulated:
Vdd(final) = Vdd(core) + boost_uV - uV
So, to undervolt frequencies 384000-1242000 by 25mV and the other frequencies by 12.5mV use these command:
Code:
echo 25000 > /sys/module/acpuclock_krait/parameters/lower_uV
echo 12500 > /sys/module/acpuclock_krait/parameters/higher_uV
The higher_khz_thres maybe changed using this command (for example to use higher_uV from 981000KHz):
Code:
echo 918000 > /sys/module/acpuclock_krait/parameters/higher_khz_thres
Also, I added a debugfs file (acpuclk/acpu_table) to show the acpu table frequencies and voltages.
For example to get the information about the current status use this command:
Code:
cat /sys/kernel/debug/acpuclk/acpu_table
and the output:
Code:
CPU PVS: Fast
Boost uV: 25000
Boost uV enabled: No
Higher KHZ threshold: 1350000
Lower under uV: 37500
Higher under uV: 25000
CPU KHz VDD(stock) VDD(final) Difference
384000 875000 812500 -62500
486000 900000 837500 -62500
594000 925000 862500 -62500
702000 950000 887500 -62500
810000 1000000 937500 -62500
918000 1025000 962500 -62500
1026000 1050000 987500 -62500
1134000 1100000 1037500 -62500
1242000 1125000 1062500 -62500
1350000 1150000 1100000 -50000
1458000 1162500 1112500 -50000
1512000 1175000 1125000 -50000
Please note that undervolting may cause instabilities in your phone. Be careful!
reserved for future use
Hey welcome here man! I've heard a lot of good things about Semaphore
Little quick question, do you use Mpdecision or do you have your custom hot-plug?
Thanks and glad to see you!
Envoyé depuis mon Nexus 4 avec Tapatalk
Great to see you here stratosk! I'll try your kernel asap
Sent from my Nexus 4 using xda app-developers app
Use Semaphore on the i9000 good to see you here to.
Sent from my Nexus 4 using Tapatalk 2
Bluewall said:
Hey welcome here man! I've heard a lot of good things about Semaphore
Little quick question, do you use Mpdecision or do you have your custom hot-plug?
Thanks and glad to see you!
Envoyé depuis mon Nexus 4 avec Tapatalk
Click to expand...
Click to collapse
Thanks!
At the moment stock options. Just rebased to Linux 3.4.40 and enabled O2
Always good to see new options been thrown in the forums!
Great to see you in this section! My old SGS is still running your kernel. Hopefully this kernel will become as succesfull as your old one .
Woo, Stratosk! Nice to see you here I used Semaphore on my old SGS1 for what must have been 12-18months straight (well still do technically when I use it for music).
I'm straight on this when my finals are over.
Nice to see a new kernel, I will give it a try.
Welcome to N4 forums, its nice too see you here. I hope this kernel will be at least as good as i9000 one
Sent from my Nexus 4 using Tapatalk 2
Yeeeeeeeeeeeeeeeeeeeees!
Great to see you here, stratosk! Finally got your N4?
Sent from my Gameboy Color
This is like Xmas! Welcome Stratos. I am sure, I am not the only one who is really glad to see you here. Enjoy your new phone!
Bookmarked! Semaphore was always the best for i9000.
Good to see you here :thumbup:
Nice, welcome! I just upgraded from an i9000 where I used your kernel. Will be interesting to see what develops here
Geia sou patrioti!
Gonna try this for sure, welcome to the N4 section!
EDIT: Just flashed with CM10.1 ROM but stuck at boot animation screen. Maybe not compatible with CM ROMs?
Ladies and gentlemen, this guy is a legend in the I9000 forums. Glad to finally see you here stratosk
Ho Kernel Semaphore, I had this kernel in my old SGS... I think I will install this kernel in my N4
Envoyé depuis mon Nexus 4 avec xda app-developers app

[KERNEL][OOS 3.x.x/OldDroid's AOSP] Arsenic.Kernel-V10 (06/12/2016)

Hi Folks!
So here is the gift i was working on! Here I present you Arsenic.Kernel for Oxygen OS and OldDroid's AOSP. Rebased to new source released by OnePlus, Some features "might" be different from cm/aosp version starting with the new naming convention (changed from "release" to "version") for these builds.
Made this Separate thread for OOS builds for better user experience and easier debugging of reports.
If you are running a Custom Kernel already then plz CLEAN FLASH Oxygen OS before flashing Arsenic, official zip doesn't offer system wipe so dirty flash wont work, you gotta clean flash manually!
Zip doesn't offer any module changes and doesnt mess with the ramdisk so you can feel free to dirty flash it over 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 Oxygen OS and OldDroid's AOSP Only!
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. Nuked in OOS builds (as of now)
Lowered Min. GPU Frequency level to 27 Mhz.
Krait C-states customizations.
ExFat support.
Disabled Lots of useless Debuggings and Redundant Code.
New Governors and I/O Schedulers.
Optimized 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, 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..!
Download links:
OOS Compatible Builds :https://www.androidfilehost.com/?w=files&flid=125615
Mirror (basketbuild) : https://basketbuild.com/devs/CheckYourScreen/arsenic/onyx_oos
@OldDroid's AOSP Compatible Builds : https://www.androidfilehost.com/?w=files&flid=132260
Mirror (basketbuild) :https://basketbuild.com/devs/CheckYourScreen/arsenic/onyx_olddroid
Keep in mind:
If you are running a Custom Kernel already then plz CLEAN FLASH Oxygen OS before flashing Arsenic, Official Oxygen OS zip doesnt offer system wipe so dirty flash wont work, you gotta clean flash manually!
Zip doesnt mess with the ramdisk so you can feel free to dirty flash it over Arsenic's previous versions(Dont forget to clear data of kernel adiutor or anyother kernel control app you're using before).
Compatible with Oxygen OS and OldDroid's AOSP ONLY..!
For Custom Rom support head over to THIS THREAD
Bugs and issues:
Little longer Boot Time as compared to stock kernel - working to decrease it! (cant you wait a couple of secs. to boot? it should only bother those people who reboot every hour. lol)
Special Thanks and Credits to (in NO specific order):
@Krustak
@Joshwin Aranha
@sultanxda
@eng.stk
@Lord Boeffla
@franciscofranco
@Exodusche
XDA:DevDB Information
[KERNEL][OOS 3.x.x/OldDroid's AOSP] Arsenic.Kernel, Kernel for the OnePlus X
Contributors
CheckYourScreen
Source Code: https://github.com/CheckYourScreen/Arsenic.Kernel_onyx-oos
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: V10
Stable Release Date: 2016-10-30
Created 2016-10-30
Last Updated 2016-12-07
Changelogs :
V10 (06/12/2016) -
December security patches (partial,left over patches will be merged in next release. Critical ones are merged already)
Nuked non-working GPU Govs from userspace (wont reboot when you select broken governor)
Improved Responsiveness (literally 0 delay/latency while providing input)
Fixed lots of code errors/warnings with better indentation.
Nuked LP11 state of DSI lanes
Removed unwanted debugging
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.
40% more throughput with lower cpu consumption while swapping pages
V8 (28/11/2016) -
Merged OOS 3.1.4 changes
Optimized square root algorithm.
Security Patches
Rowhammer vulnerability patch
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
lowmemorykiller: account for unevictable pages
Fixed uninitialized variables
Enabled DEVMEM and DEVKMEM
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
Switched to XZ Compression
Old Releases:
V5 (13/11/2016) -
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 and Debugging.
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!
Enabled Swap
Decreased VM Swappiness to 40%
Disabled NFC and Nuke its redundant code
V2 (30/10/2016) -
Built with latest GCC 4.9 upstream toolchain
Nuked Adreno Idler.
msm8974pro: Add 27 MHz gpu frequency step (idle freq)
Add support for AudioFX
Switch to row as Default Gov.
xz: optimize sfck compression
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()
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 DirtyCow Vulnerability.
V1 -
Same Changelog as R24 release of CM/AOSP builds. Click Here for it
Suggestions and F.A.Q's :
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
GPU Gov. : msm-adreno-tz
Max. GPU Freq. : 578mhz
Min. GPU Freq. : 27mhz (use 200mhz as min. If you face any UI/UX lag or stutters)
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
GPU Gov. : msm-adreno-tz
Max. GPU Freq. : 578mhz / 462mhz (your choice, 462 if you don't play games)
Min. GPU Freq. : 27Mhz (use 200mhz as min. If you face any UI/UX lag or stutters)
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
Max. GPU Freq. : 330mhz
Min. GPU Freq. : 27mhz (use 200mhz as min. If you face any UI/UX lag or stutters)
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.
reserved
Should i wipe system >Flash oxygen OS >SuperSU >kernel?
EDIT-Coming from boeffla kernel.
Sent from my ONE E1003 using Tapatalk
noonebhargav said:
Should i wipe system >Flash oxygen OS >SuperSU >kernel?
EDIT-Coming from boeffla kernel.
Sent from my ONE E1003 using Tapatalk
Click to expand...
Click to collapse
Open Twrp > Wipe system,data,cache > Flash Oxygen OS > Reboot > Open Twrp > Flash Supersu > Reboot > Open Twrp > Flash Arsenic Kernel > Reboot.
OOS is not like a custom rom so to be on a safer side follow the above procedure.
You can dirty flash the future releases though, but if you are coming from anyother kernel then follow these above steps to avoid any conflicts.
Kernel is great Nimit few days now running like a champ!!
CheckYourScreen said:
Open Twrp > Wipe system,data,cache > Flash Oxygen OS > Reboot > Open Twrp > Flash Supersu > Reboot > Open Twrp > Flash Arsenic Kernel > Reboot.
OOS is not like a custom rom so to be on a safer side follow the above procedure.
You can dirty flash the future releases though, but if you are coming from anyother kernel then follow these above steps to avoid any conflicts.
Click to expand...
Click to collapse
So what is fast charging? Afaik our charger gives max of 1800 mA, so can you explain it a bit?
saurabh40629 said:
So what is fast charging? Afaik our charger gives max of 1800 mA, so can you explain it a bit?
Click to expand...
Click to collapse
By default hardware restricts USB charge current to <500 mA when connected to a PC/laptop, USB Fast charging driver syncs it with AC charge current rate.
Though rate varies accordingly to load average and device usage. Its managed by system for better result instead of forcing with a predefined value.
{
"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"
}
Will restoring boot.img from nandroid backup and then flashing this kernel work?
Sent from my ONE E1003 using Tapatalk
CheckYourScreen said:
By default hardware restricts USB charge current to <500 mA when connected to a PC/laptop, USB Fast charging driver syncs it with AC charge current rate.
Though rate varies accordingly to load average and device usage. Its managed by system for better result instead of forcing with a predefined value.
Click to expand...
Click to collapse
Nice... Thanks for explanation. Keep up the awesome work, will try it.
noonebhargav said:
Will restoring boot.img from nandroid backup and then flashing this kernel work?
Click to expand...
Click to collapse
Yes.. That's mostly true. But better flash oos as nimit mentioned.
noonebhargav said:
Will restoring boot.img from nandroid backup and then flashing this kernel work?
Sent from my ONE E1003 using Tapatalk
Click to expand...
Click to collapse
other custom kernels might leave postboot scripts and modified ramdisk which might conflict so, its better to clean flash.
Flash it working perfectly.
Sent from my ONE E1003 using Tapatalk
Thanks man. This made my day
Any recommended gaming settings for kernel? (no lags using current settings but slight heat)
Sent from my ONE E1003 using Tapatalk
noonebhargav said:
Any recommended gaming settings for kernel? (no lags using current settings but slight heat)
Sent from my ONE E1003 using Tapatalk
Click to expand...
Click to collapse
Just set minimum freq of gpu to 200Mhz instead of 27Mhz for gaming.
And its "OnePlus X", do you really expect it not to heat even while playing games?
Even if i add some custom thermal solution it will impact on UX while playing games as it will try to throttle CPU to control heat which might bug you lol
CheckYourScreen said:
Just set minimum freq of gpu to 200Mhz instead of 27Mhz for gaming.
And its "OnePlus X", do you really expect it not to heat even while playing games?
Even if i add some custom thermal solution it will impact on UX while playing games as it will try to throttle CPU to control heat which might bug you lol
Click to expand...
Click to collapse
Changed the governor to zzmove and profile 10, working fine.
Sent from my ONE E1003 using Tapatalk
Flash it but build number is unknown

Categories

Resources