Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,786,442 Members 39,806 Now Online
XDA Developers Android and Mobile Development Forum

[KERNEL] [AOSP] leanKernel: minimalistic kernel (v5.1.0, 11/16/11)

Tip us?
 
Imoseyon
Old
(Last edited by Imoseyon; 16th November 2011 at 06:50 PM.)
#1  
Imoseyon's Avatar
Recognized Developer - OP
Thanks Meter 3,845
Posts: 1,426
Join Date: Dec 2010
Location: Mountain View, CA

 
DONATE TO ME
Default [KERNEL] [AOSP] leanKernel: minimalistic kernel (v5.1.0, 11/16/11)

This is a minimalistic Thunderbolt kernel based on the official gingerbread kernel source, patched to 2.6.35.14, and then a bunch of lean mods added (look at feature list below).

DOWNLOADS:
1) lean (normal lean version), 1) 184Mhz (184Mhz can be unlocked via st - note for many people 184Mhz is unstable and cause issues, also supports outgoing call recording)

speedtweak.sh
This script will allow you to "transform" your kernel into normal, extreme, 1.92, 1.92X and battsaver versions (ie. it allows you to control speed, voltage, and slots to a certain degree). Once you run the script, everything will be self-explanatory. To run the script:
1) Open Terminal Emulator (install it from market if you don't have it).
2) Type "su" (without quotes) and hit enter.
3) Type "speedtweak.sh" (without quotes) and hit enter.
Quote:
leanKernel kernel speed tweaker
------------------------------_
1) normal: undervolted, overclocked to 1.41Ghz
2) extreme: extremely undervolted, overclocked to 1.41Ghz
3) 1.92: undervolted, overclocked to 1.92Ghz
4) 1.92X: extremely undervolted, overclocked to 1.92Ghz
5) battsaver: extremely undervolted, not overclocked

6) Unlock 184Mhz
7) Lock 184Mhz
8) View current settings

Please type 1, 2, 3, 4, 5, 6, 7, or 8:
speedtweak.sh and SetCPU
The risk of running setcpu is that it can inadvertently override the min and the max that were set by the speedtweak script. (oh it can also override the governor setting but that's not as bad). Other than that it's pretty harmless - it can't mess with the voltage settings. So if you're going to use SetCPU, keep this in mind. One way to make this work is to use SetCPU to configure governor and min/max, and use speedtweak.sh to configure voltage settings. Or just don't use SetCPU.

FEATURES
  1. Includes lots of goodies from kernel source (2.6.36.x & 3.x from kernel.org) newer than stock.
  2. speedtweak.sh script to adjust clock frequencies and voltages.
  3. SVS - manual voltage tweaking via /etc/init.d/01vdd_levels
  4. InteractiveX and ondemandX governors! Added my own suspend code to interactive and ondemand code to make the phone lock at low clock speed when screen is off. No need for sleep setcpu profile anymore.
  5. For 1.92Ghz builds, interactiveX and smartass governors were modified to minimize unnecessary spikes above 1.8Ghz to keep phone stable.
  6. vm, minfree, memory, buffers readahead buffer tweaks
  7. All unnecessary kernel components removed to make kernel lean and fast!
  8. low # (5-10) of cpufreq slots for simple management and less governer transitions.
  9. Undervolted for longer battery life.
  10. SWAP and EXT4 enabled.
  11. Filesystems mounted via EXT4, and tweaked for performance.
  12. init.d enabled in ramdisk
  13. TUN, CIFS, NSIO (netspector) module support
  14. zram (from linux 3.1) module support (to enable, go into Terminal, type su, and then type "zram enable" without quotes). What is zram?
  15. TINY_PREEMPT_RCU.
CHANGELOGS

4.2.0 (10/28/11) - last "stable" kernel based on cm7 source.
5.0.0 (10/29/11) - based on official kernel source from HTC.
5.0.3 (11/1/11) - bluetooth, video playback, scaling frequencies sysfs all fixed. audio levels tweaked. netspector(nsio) module upgraded to 2.0.
5.0.4 (11/13/11) - 5.0.3 with audio levels reverted stock for better compatibility with MIUI (no need to upgrade from 5.0.3)
5.1.0 (11/16/11) - cpufreq and cpuidle updated to linux v3.2rc1, suspend support for LTE, 184mhz version supports in-call recording now (outgoing only).

DIRECTIONS
Uh.... flash the zip in clockworkmod. You may need to wipe Dalvik cache and/or delete /data/misc/dhcp, /data/misc/wifi.

Donate to your favorite charity, or donate to me.
twitter: @imoseyon
The Following 93 Users Say Thank You to Imoseyon For This Useful Post: [ Click to Expand ]
 
Imoseyon
Old
(Last edited by Imoseyon; 16th November 2011 at 06:51 PM.)
#2  
Imoseyon's Avatar
Recognized Developer - OP
Thanks Meter 3,845
Posts: 1,426
Join Date: Dec 2010
Location: Mountain View, CA

 
DONATE TO ME
GOVERNORS
First, my take on the governors that are out there: http://forum.xda-developers.com/show...&postcount=617
I offer three governors: interactiveX, ondemandX, and smartass. What are they?
  • interactiveX - it's the interactive governor from CM, but I added suspend/wake logic so when the phone screen is off it runs at below 400Mhz. Also, I modified its code some more to minimize unnecessary cpu spikes above 1.8Ghz if you happen to be running one of my 1.92 kernels. Most tbolts are unstable above 1.8Ghz, and it's the quick jump above 1.8Ghz that usually locks up the phone. It will hit 1.92Ghz only when it makes sense (ie. sustained high load). This is my favorite governor - perfect combination of speed and power efficiency.
  • ondemandX - ondemand governor code from latest linux source *plus* the suspend/wake logic described above, except it has the ability to ramp to 369Mhz while screen is off. No additional code was added for stabilizing above 1.8Ghz.
  • smartass - smartass code from erasmux, but I wasn't happy with its performance so I tuned it for quicker ramp up in speed. It has the same suspend/wake logic as ondemandX, and the same >1.8Ghz stabilizing mod as interactiveX.

Source code
AOSP: https://github.com/imoseyon/leanKern...read/tree/aosp

AOSP FAQ
  1. Wifi is not working - 1) first make sure you flash kernel via CWR, not kernel manager or rom manager, 3) clear dalvik cache, 2) delete all files in /data/misc/wifi and /data/misc/dhcp, and reboot.
twitter: @imoseyon
The Following 18 Users Say Thank You to Imoseyon For This Useful Post: [ Click to Expand ]
 
patdroid1
Old
#3  
Senior Member
Thanks Meter 30
Posts: 270
Join Date: Mar 2011
Quote:
Originally Posted by Imoseyon View Post
Thread split into GB and Froyo. "
finally took my advice huh???? lol

good work, flashing now!
 
psicrest
Old
#4  
Senior Member
Thanks Meter 14
Posts: 115
Join Date: Nov 2007
Whats the change log on 2.5.3test2 ?

Will that work on cm7?
----
 
Breezer23
Old
#5  
Breezer23's Avatar
Senior Member
Thanks Meter 90
Posts: 898
Join Date: Nov 2009
Location: Arlington Heights
Great work as always! Very impressed!

Sent from my ADR6400L using Tapatalk
 
Pithism
Old
#6  
Senior Member
Thanks Meter 62
Posts: 1,017
Join Date: Dec 2010
Location: Boston, MA
well we need to run scripts to over clock gbtest kernel like the previous ones for froyo and cm7
 
patdroid1
Old
#7  
Senior Member
Thanks Meter 30
Posts: 270
Join Date: Mar 2011
Quote:
Originally Posted by psicrest View Post
Whats the change log on 2.5.3test2 ?

Will that work on cm7?
he's working on changelog and the 2.5.3 test 2 kernel is only for the "gingersense" leak...for cm7 flash the AOSP kernel

by default the 2.5.3 kernel will run at 1408mhz in "normal" mode
The Following User Says Thank You to patdroid1 For This Useful Post: [ Click to Expand ]
 
jaydizzle333
Old
#8  
Member
Thanks Meter 8
Posts: 69
Join Date: Sep 2010
Awesomeness...finally able to boot all the way up...running battsaver...and confirmed camera is working...thank you imoseyon!!!
 
Forgetfull
Old
#9  
Senior Member
Thanks Meter 17
Posts: 366
Join Date: Apr 2011
Saweeeet!!!!
I'll check back later with my experiences running
Device = HTC ThunderBOLT
ROM = Changing...
Kernel = Imoseyon v(whatever's current) Undervolt
 
arcanexvi
Old
#10  
arcanexvi's Avatar
Senior Member
Thanks Meter 295
Posts: 973
Join Date: Aug 2010
This may have fixed the slow charge issues inadvertantly. its not in your change log but either this (test2) or 1.3 on jcases build fixed it.

Sent from my ADR6400L using XDA Premium App

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes