i'm listing here 2 different 2.6.35 based kernels :
The 1.x series exist for froyo and gingerbread. They are based on a 2.6.35.8 linux kernel. They are cfs only (no bfs version), and forked from richard trip's kernels (
https://github.com/richardtrip/cm-kernel)
the 2.x series are for gingerbread only. They have cfs and bfs versions. They are based on a 2.6.35.13 kernel and forked from _thalamus' kernels (
https://github.com/thalamus/kernel)
all of my kernels have the following characteristics :
- go from 128mhz to 1190mhz. If your phone crashes at those speeds, then don't use them. Not all phones are equal and they won't all accept these frequencies.
- the noop io scheduler is defined as default. I think that all the other schedulers are unnecessary with flash disks. They are too complex and consume more cpu for the same result.
- two-way call recording thanks to avs333 (http://xdaforums.com/showthread.php?t=993793)
the following characteristics are available in some kernels :
- bfs. Brain f*ck scheduler. Only available on the 2.x kernels.
- cfs. Completely fair scheduler. Choose which scheduler suits your needs the best. Check here for a description of both : http://www.stackednotion.com/2010/06/04/what-are-bfs-and-cfs
- axi. Axi optimisation is available in some kernels : http://xdaforums.com/showthread.php?t=665110. When it is enabled, the axi bus speed is lowered to 64mhz instead of 128mhz when the screen is off. In the other kernels, the axi bus speed is throttled according to the current cpu speed.
- havs. Hybrid adaptive voltage scaling. Dynamically changes the phones voltage. Should use up less battery than svs. In comparison with richard's original kernel, i upped the maximum voltage in the overclocking frequencies to 1350mv instead of 1300mv because it didn't seem enough (at least on my phone). I also set the minimum voltage to 900mv. I feel it's a good compromise between 875 and 925...
- svs. Static voltage scaling.
- on the manu kernel series, it is possible to change the voltages table on the fly using the following method. On the svs kernel, the following method was used : http://xdaforums.com/showthread.php?t=821372. See the post below for a simpler description of this
the following kernels are based on an old version of the android kernel. The main advantage is the battery usage : It's very low compared to the latest kernels. The source code is available at
http://github.com/eviollet/cm-kernel.
As of versions 2.1, svs versions are no longer supported. Only havs versions are available.
2.6.35.13 manu-version 2.1 - gingerbread only
gingerbread-havs-cfs ----------------
gingerbread-havs-axi-cfs ----------------
gingerbread-havs-bfs ----------------
gingerbread-havs-axi-bfs ----------------
2.6.35.8 manu-version 1.4
froyo-havs-cfs ----------------
gingerbread-havs-cfs ----------------
froyo-svs-cfs ----------------
gingerbread-svs-cfs ----------------
froyo-havs-axi-cfs ----------------
gingerbread-havs-axi-cfs ----------------
froyo-svs-axi-cfs ----------------
gingerbread-svs-axi-cfs ----------------
many thanks to richard trip for helping me out with the 1.4 kernel, and to thalamus for help on the 2.0 kernel.