FORUMS
Remove All Ads from XDA
H10 Turbo

[KERNEL][DEFUNCT]CM10/CM9/AOKP Kernel v6.3.6 [8/23] - UV/OC/GPU-BLN-Governors

632 posts
Thanks Meter: 745
 
By InstigatorX, Senior Member on 20th June 2012, 05:56 AM
Post Reply Email Thread
This kernel no longer works with current CM10/AOKP ROMS - PLEASE DO NOT USE
PLEASE READ THIS ENTIRE POST THOROUGHLY BEFORE PROCEEDING...

This is a customized kernel built from SGH-I727 (aka Skyrocket) source code. This ROM has all the fixes from CyanogenMod & Team Chopsticks tree along with some other stuff.

It's very simple to install.
  1. Ensure you've already installed a working ROM
  2. Install Zip from CWM.
  3. Wipe both caches (just to be safe)
  4. Reboot

FSync Control - Courtesy of Ezekeel

Quote:

FSync Control which can be used to disable the fsync system calls for single files and filesystems (echo 0 > /sys/class/misc/fsynccontrol/fsync_enabled). These fsync syscalls are used by kernel modules and user space programs to flush an I/O buffer (which is in RAM) to disk to make sure that this data is actually savely stored on the disk before executing the next step. Disabling fsync can result in data loss on a crash/freeze since the data is still in the I/O buffer and has not been saved to disk as it should be and can also lead to problems due to race conditions if two or more processes access the same file. On the other hand disabling fsync reduces the number of I/O operations which potentially could reduce the battery drain and also improve I/O performance.

Governors

Wheatley Governor - Courtesy of Ezekeel
http://rootzwiki.com/topic/14685-ker...13#entry405813

Badass (default)
Badass removes all of this "fast peaking" to the max frequency. On a typical system the cpu won't go above 1080Mhz and therefore use less power. To trigger a frequency increase, the system must run a bit @ 1080MHz with high load, then the frequency is bumped to 1350MHz. If that is still not enough the governor gives you full throttle. (this transition should not take longer than 2-5 seconds, depending on the load your system is experiencing).

You can tweak the Phase 2 (1080MHz) and Phase 3 (1350MHz) via sysfs (if you don't know, then just leave it alone).

NOTE: Due to it's nature, this is not a benchmark governor. It is meant as a governor that gives you a smooth experience while saving battery.

InteractiveX
Created by kernel developer "Imoseyon," the InteractiveX governor is based heavily on the Interactive governor, enhanced with tuned timer parameters to better balance battery vs. performance. The InteractiveX governor's defining feature, however, is that it locks the CPU frequency to the user's lowest defined speed when the screen is off.

Lazy
This governor from Ezekeel is basically an ondemand with an additional parameter min_time_state to specify the minimum time CPU stays on a frequency before scaling up/down. The Idea here is to eliminate any instabilities caused by fast frequency switching by ondemand. Lazy governor polls more often than ondemand, but changes frequency only after completing min_time_state on a step overriding sampling interval. Lazy also has a screenoff_maxfreq parameter which when enabled will cause the governor to always select the maximum frequency while the screen is off.

GPU Overclocking
GPU is stock clocked at 3D@320 & 2D@266 (default).

Example: To increase maximum GPU frequency in 3D mode to 320 MHz:
echo 320000000 > /sys/devices/platform/kgsl-3d0.0/kgsl/kgsl-3d0/max_gpuclk

Example: To increase maximum GPU frequency in 2D mode to 266 MHz:
echo 266667000 > /sys/devices/platform/kgsl-2d0.0/kgsl/kgsl-2d0/max_gpuclk
echo 266667000 > /sys/devices/platform/kgsl-2d1.1/kgsl/kgsl-2d1/max_gpuclk

Available frequencies:
3D: 320000000, 300000000, 266667000, 228571000, 200000000, 177778000, 27000000
2D: 266667000, 228571000, 200000000

Kernel-based MPDecision
100% kernel-based multi-core decision! (should cpu1 be online or not?)
This replaces your /system/bin/mpdecision binary which is disabled by the CWM flashable.

Check /sys/kernel/msm_mpdecision/conf/ for the configuration.

startdelay = time until mpdecision starts doing it's magic (70000)
delay = time between checks (500)
pause = if something else plugs in the cpu, fall asleep for 10000
scroff_single_core = if the screen is off, don't plug in cpu1 (1)
nwns_threshold_up = runqueue threshold, if this is reached cpu1 will be hotplugged (35)
nwns_threshold_down = runqueue threshold, if this is reached cpu1 will be unplugged (5)
twts_threshold_up = time threshold, this amount of time must have passed (250)
twts_threshold_down = same as above (250)
enabled = enable(1) or disable(0) mpdecision. This does not affect scroff_single_core!
(all times are in ms)

CURRENT

Version 6.3.6 - http://tinyw.in/L1BW <-- JB: CM10 or AOKP 4.1.x
Version 6.3.4 - http://d-h.st/L8K <-- JB: CM10 or AOKP 4.1.x
Version 6.2.1 - http://d-h.st/NWo <-- JB: CM10 or AOKP 4.1.x
Version 6.0.3 - http://d-h.st/hEI <-- ICS: CM9 or AOKP 4.0.4 <- Updated 8/22 - WiFi fixes
Version 5.4.5 - http://d-h.st/ngT <-- ICS: CM9 or AOKP 4.0.4

Governor scripts
NOTE: Not needed for v6.0.2 or v6.2 and beyond
These scripts will set the CPU0 & CPU1 governors correctly. Using a tool like System Tuner only sets CPU0 to the selected governor, but leaves CPU1 running the default. This was the only way I found to ensure both CPUs had the correct governor set. Basically this overwrites your init.qcom.post_boot.sh script with one that sets both CPUs to the same governor.

SmartAssV2 - http://d-h.st/zeQ
Badass - http://d-h.st/2CU
OnDemand - http://d-h.st/GAH

Non-CM9 Camera Fix
http://db.tt/vvMoadEo <-- Thanks endlessevo for this and thanks eliminat for pointing it out!

Battery life problems?
Read this first...http://forum.xda-developers.com/show....php?t=1759541

Then go here to grab Better Battery Stats (BBS) ... http://forum.xda-developers.com/show....php?t=1179809

Mega thanks to...

Team Chopsticks
Cyanogenmod Team
showp1984
gokhanmoral
faux123
TamCore
Ezekeel
FraciscoFranco
h0tw1r3
...and the other many countless kernel devs that I've Kang'd from
The Following 135 Users Say Thank You to InstigatorX For This Useful Post: [ View ] Gift InstigatorX Ad-Free
 
 
20th June 2012, 05:56 AM |#2  
InstigatorX's Avatar
OP Senior Member
Thanks Meter: 745
 
More
I don't claim credit for any unique code. I've managed to cobble this together from the following sources with various tweaks of my own to get it all running.

Hope I'm not violating any form of informal code of conduct in grabbing your guys' code.

CHANGELOG


Version 6.3.4
Removed Governor's that just plain do NOT work on our devices
Upgrade Adreno GPU drivers
Removed WiFi PM
Various CAF updates
Added ROW I/O scheduler
OnDemand Governor enhancements to support better battery usage - Applied to OnDemand-based governors (Badass, Wheatley, Lazy).
Added Gallimaufry, Aggressive, and Scary governors

Version 6.2.1
Merged Kernel up to 3.0.41
InteractiveX and Interactive screen off max freq set to 594Mhz
ram_console added to help debug CM10 - post /proc/last_kmsg to pastebin and link here

Version 6.2
Added new Governors: Lazy, Lagfree, InteractiveX (this is V2), Interactive updated to V3 (Imoysen didn't change the name for V3)
Fixed governor change not setting CPU1 (thanks to Imoysen) - No more governor setting scripts!
Added BFQv4 i/o scheduler

Version 6.1
Merged Kernel up to 3.0.40 (works great this time)
FSync control
WiFi PM control
Added fixes from Team Chopsticks git to get Alpha 2 working...not everything, but some of the juicer pieces
LMK from 3.4 kernel
Wheatley governor added - Please test and report back
As always see Github for all the bit/bytes

Version 6.0
Reverted back to 3.0.8 kernel core
Incorporated JB necessities
See Github for the bits/bytes

Version 5.5.3
Disabled ZRAM, Westwood, and LZO kernel compression
Removed some frequency steps - UnderVolting should be a little easier since there will be less knobs to turn
Changed some GPU iofractions
Updated pegasusQ governor - Works pretty good. Disable mpdecision, though. See OP to set "enabled" to 0.
Added some JB compiler options - Would be curious to see if this works OOB if someone wants to try on JB ROM

Version 5.5.1
Big update - Merged Linux kernel up to 3.0.39 (latest and greatest fixes/enhancements)
Enable ZRAM
TCP congestion control changed to Westwood (Google it)
jRCU for small systems
WiFi tweaks for battery life and flexiblity
Check out my Github commit log for a complete list - There's just too many

Version 5.4.5
Fixed 2D GPU bus speed
Implemented fixed ala Team Chopsticks to prevent emmc erasure to prevent bricking
Minor tweaks - Trying to fix vbus_present wakelock

Version 5.4.4
Added kernel-based 3-phase thermal management
OC GPU by default
DVFS disabled

Version 5.3.2
Updated OC code to default to 1.512Ghz, but OC up to 1.89Ghz (doesn't work for me very well, but ymmv) - Thanks to jjiggens for the help!
Volume bug fixed (would remain max or silent)
New BLN code
Check Github commit log for full details

Version 5.3
Really removed 1.836Ghz OC this time
UTF-8 support added back in
Reverted voltages back to the default - should fix instabilities for some. I would suggest under-volting as they start pretty high

Version 5.2z
Removed 1.836Ghz OC - Use 5.2 if you reallllly want that extra juice.

Version 5.2
SGH-I717 (Note) Source code base
GPU Overclocking support (see OP)
Upped max OC to 1.836GHz (defaults to 1.782Ghz)

Version 5.1
UTF-8 support
Various fixes
Compiler optimizations
BLN support

Version 5.0
UCLF6-based Source (e.g. official SGH-I727 from Samsung)
BadAss, SmartAssV2 Governors
OC to 1.782Ghz
Added GPU-level control to BadAss
Lowered BadAss Phase 2 Freq to 702Mhz (you can chance ala sysfs)
Hopefully reduced wifi wakelocks by filtering more unnecessary packets
VR and SIO schedulers added (let me know how they work out)

Version 3.3
RAMDISK updates from CM9
Badass tweaked for better battery (e.g. lowered phase2/3 frequencies)
Installs init.qcom.post_boot.sh with badass set as default for CPU0 & CPU1 and disables mpdecision <-- IF YOU MADE CHANGES TO THE ONE INSTALLED, MAKE A BACKUP OF YOUR'S AND COPY OVER MINE AFTER YOU INSTALL
Added support for HFP 1.6 wideband speech
Disabled GENTLE_FAIR_SLEEPERS

Version 3.2
BLN added back in
Governors: Badass (thanks showp1984), PegasusQ, SmartAssV2, standard ones
Toolchain updated to 4.6.3
Compiler optimizations
Raised max OC to 1.782Ghz
Kernel-based MPDECISION (thanks showp1984)
Various fixes (you can check my github commit log)
WiFi: WiFi wakelock reductions (tell me if things are out of whack)
WiFi: Power off wlan interface when wifi disabled to save battery
Touchscreen lock fix (ala Team Chopsticks)

Version 2.8
Non-standard governors removed - Not really aSMP aware and caused all sorts of funky weirdness
Underclocking enabled
Clock voltages tweaked - UV for some battery savings

Version 2.5e
Reverted back to fixed max freq @ 1.728Ghz (temp until I get some other things fixed)
SmartAssV2 tweaks
Fixed L2 Frequency inconsistencies (I think this was causing the freq to stick at 1.242Ghz)
Updated PegasusQ code

Version 2.4d
Added Pegasusq governor

Version 2.3
Min/Max CPU Frequency can now be set
SmartAssV2 Governor tweaked for battery life

Version 2.2.1a
Reverted early suspend/late resume driver mod

Version 2.2
Tweaked SmartAssV2 and Lulzactive governors
Added some other power tweaks
Disabled BLN - I think this is causing some problems atm. Will add back once they're ironed out.

Version 2.1
Tweaked Lulzactive and SmartAssV2 governors
Added OC/UV code from Faux123 repo

Version 2.0
Added Lulzactive governor

Version 1.0
Stock Kernel compiled from source with SmartAssV2 governor

My Github - https://github.com/InstigatorX
The Following 36 Users Say Thank You to InstigatorX For This Useful Post: [ View ] Gift InstigatorX Ad-Free
nrm5110
20th June 2012, 05:57 AM |#3  
Guest
Thanks Meter: 0
 
More
First good work

Sent from my SAMSUNG-SGH-I727 using Tapatalk 2
The Following 2 Users Say Thank You to For This Useful Post: [ View ] Gift Ad-Free
20th June 2012, 05:58 AM |#4  
mindmajick's Avatar
Senior Member
Flag Cape Coral, FL
Thanks Meter: 3,108
 
Donate to Me
More
Downloading. Will report back in a few minutes.

--
SGH-I727 using XDA premium, running cm9.
Questions? look here: http://forum.xda-developers.com/search.php
The Following 3 Users Say Thank You to mindmajick For This Useful Post: [ View ] Gift mindmajick Ad-Free
20th June 2012, 06:05 AM |#5  
Grut's Avatar
Member
Shenandoah, PA
Thanks Meter: 12
 
More
Downloading! Gonna test this on Chimera beta 2 flashed over CM9 A5. Will report back shortly, stay tuned...

Sent from my SGH-I727 using xda premium

Edit/Update.... Running GREAT! Set to smartass V2 and set min freq to 192. I used NSTools to set and double checked the govenor and frequencies with Rom Toolbox pro and Set Cpu, everything is sticking and running smooth. Been running this for an hour now, will report back if I find any issues in the future. Thanks again for the kernel, InstigatorX, GREAT WORK!!!!!!!!! (high 5)
The Following User Says Thank You to Grut For This Useful Post: [ View ] Gift Grut Ad-Free
20th June 2012, 06:06 AM |#6  
mindmajick's Avatar
Senior Member
Flag Cape Coral, FL
Thanks Meter: 3,108
 
Donate to Me
More
Nothing broken
Set to smartass v2 min 192

Feels smooth. Really smooth. Hopefully this means i can leave my charger at home now

Edit: holy crap! Phone is on usb charging from laptop. This is the first time on cm9 its actually charging FAST while I'm using it!
--
SGH-I727 using XDA premium, running cm9.
Questions? look here: http://forum.xda-developers.com/search.php
The Following User Says Thank You to mindmajick For This Useful Post: [ View ] Gift mindmajick Ad-Free
20th June 2012, 06:26 AM |#7  
Kole_Ackerson's Avatar
Senior Member
Flag Minden, NV
Thanks Meter: 191
 
More
I know it says that to be on a cm9 from but could I possibly flash this on sky ics?

Sent from my SAMSUNG-SGH-I727 using xda premium
20th June 2012, 06:28 AM |#8  
mindmajick's Avatar
Senior Member
Flag Cape Coral, FL
Thanks Meter: 3,108
 
Donate to Me
More
No.

Btw-loses backlight after screen off. Not every time though, weird.
--
SGH-I727 using XDA premium, running cm9.
Questions? look here: http://forum.xda-developers.com/search.php
20th June 2012, 06:29 AM |#9  
BaconStep's Avatar
Senior Member
Flag Las Vegas
Thanks Meter: 1,486
 
Donate to Me
More
Quote:
Originally Posted by Kole_Ackerson

I know it says that to be on a cm9 from but could I possibly flash this on sky ics?

Sent from my SAMSUNG-SGH-I727 using xda premium

dont do it.


But yeah this kernel rocks!
The Following 2 Users Say Thank You to BaconStep For This Useful Post: [ View ] Gift BaconStep Ad-Free
20th June 2012, 06:48 AM |#10  
Senior Member
Thanks Meter: 177
 
More
Ok I'm on chimera flashed over aokp where are the performance settings at on here?

Edit: Using rom toolbox to set it. It seems to be sticking..
Sent from my SGH-I727 using Tapatalk 2
20th June 2012, 07:06 AM |#11  
mindmajick's Avatar
Senior Member
Flag Cape Coral, FL
Thanks Meter: 3,108
 
Donate to Me
More
Should i be able to underclock? Not sticking.

If not, is it a PITA to enable?
--
SGH-I727 using XDA premium, running cm9.
Questions? look here: http://forum.xda-developers.com/search.php
Post Reply Subscribe to Thread

Tags
aokp, cm10, cm9, kernel, not for touchwiz, skyrocket

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes