[Kernel-.33.3][DIET][05/02] CM 5.0.6, 8 MB+ RAM, Hybrid AVS **STABLE**, Optional OC

170 posts
Thanks Meter: 0
By Ivan Dimkovic, Senior Member on 29th March 2010, 12:40 PM
Post Reply Email Thread
Diet Android Kernel by PsyQ

I am releasing the kernel which I use by myself I removed most of the debugging options useful for kernel/driver debugging and maxed-out possible compiler optimizations. It has Hybrid AVS support using IntersectRaven's improved method as well as optional overclocking (see note)

These kernels feature:

* Hybrid Adaptive Voltage Scaling for extra battery life
* Optional 1.1 GHz Overclocking Support
* Extra 8 MB of RAM reclaimed from Camera
* Based on Cyanogen's 5.0.6 kernel
* Maximum possible compiler optimizations (loop unrolling, tree vectorization, NEON, Cortex A8 compiler tuning, armv7a target, and many more)
* Removed all unnecessary features from the kernel configuration, including debugging options (these kernels are not useful for kernel debugging / driver development)
* All cpufreq governors (ondemand, powersave, conservative, ...) for people that want to tweak the CPU frequency scaling

Following kernels are available: --> Hybrid AVS support, goes down to 0.8 volts and has stock frequency (998 MHz) as max.> EXPERIMENTAL Hybrid AVS with overclocking to 1.1 GHz (0.8v min voltage) --> Hybrid AVS support, goes down to 0.925 volts and has stock frequency (998 MHz) as max.> EXPERIMENTAL Hybrid AVS with overclocking to 1.1 GHz. (0.925v min voltage)

To use it, flash the zimage with fastboot and push the bcm4329.ko to the /system/lib/modules:

[power off your phone and boot into fastboot]
fastboot flash zimage zImage
adb remount
adb push bcm4329.ko /system/lib/modules/bcm4329.ko
Pushing of the bcm4329.ko is necessary as WiFi support would be broken otherwise. If you don't do it, WiFi will not work.


V1.11 - Update - May/02nd/2010

  - Moved to Kernel

V1.10 - Update - Apr/26th/2010

  - Changed floating point model to VFP
  - There are two AVS versions with different lowest voltage limits (800/925mv)
V1.09 - Update

  - Implemented IntersectRaven's Hybrid AVS method
  - Synced with the latest code snapshot of CM kernel

V1.08 - Update
  - Non AVS kernel is now undervolted down to 0.925v
  - Kernel RCU is now of uniprocessor type, saving memory
  - DMA speedup patch from latest CM source
  - Removed "loopback" file device (this is not related to network)
  - Further compiler optimizations

V1.07 - Update

  - 8 MB RAM reclaimed from Camera
  - Further kernel trimming 
  - AVS is now available with 0.925v and 0.850v flavors
  - Some attempts to make AVS more stable (still work in progress)

V1.06 - Update

  - Moved to kernel from Cyanogen's source
  - AVS kernels are capable of undervolting down to 0.925v instead of 1.000v
  - Minor cleanups

V1.05 - Update
  - Further fixes in AVS Support (thx intersectRaven!)
V1.04 - Update

  - Fixed bugs in AVS Support
  - More kernel tweaks
  - Removed "normal" version of the kernel, as _xtra seems to be stable enough
  - Added non-overclocked AVS kernel for maximum battery life  

V1.03 - Update

- Added Experimental Adaptive Voltage Support (AVS)
- Currently AVS is "for test only", and this kernel has debug support and no loop unrolling

V1.02 - Update

- Switched to CFQ I/O Scheduler
- Removed some more stuff (e.g. 10 Gbit Ethernet Support)

V1.01 - Update

- Added Conservative Governor
- Fixed table lookup bug (thanks pershoot!)

V1.0 - Initial Release

- Based on CyanogenMod source
- Overclocking Support (1.1 GHz)
- Undervolted
- Optional extra undervolt (see attachments - _xtra is additional UV)
- Added Powersave CPU governor
- Removed most of the debugging stuff from Kernel (which makes this kernel useless for kernel debugging!)
- Even more C compiler optimizations (almost -O3 level + extra stuff, like loop unrolling, etc...)
- Audioboost patch

For other kernel developers - you can find the source code here (note that for AVS support you need AVS sources from ChromeOS):
29th March 2010, 12:45 PM |#2  
Senior Member
Flag Beltsville
Thanks Meter: 476
Donate to Me
Do you use the xtra version, if so have you noticed any problems
29th March 2010, 12:54 PM |#3  
britoso's Avatar
Senior Member
Flag Orlando
Thanks Meter: 302
Donate to Me
Nice release, will definitely try sometime.
29th March 2010, 12:58 PM |#4  
Senior Member
Thanks Meter: 40
Grrr!!! checked for updated version right before leaving for work, and just missed it!

I am using the one you posted in the other forum without any issues. Does it possess the same undervolting as the Xtra version?
29th March 2010, 01:09 PM |#5  
OP Senior Member
Thanks Meter: 0
Yes, _xtra is using same undervolt as the version from yesterday.

Additionally, this version contains more optimizations (loop unrolling) that I managed to cram-in by removing more debug options of the kernel (otherwise it would not fit)
29th March 2010, 02:34 PM |#6  
Senior Member
Flag L√ľneburg
Thanks Meter: 35
Donate to Me
What is loop unrolling?
29th March 2010, 02:51 PM |#7  
Senior Member
Flag Warsaw
Thanks Meter: 29
Awesome, I'll pull the config to see what you have done...
29th March 2010, 03:08 PM |#8  
Junior Member
Flag Kirkland WA
Thanks Meter: 0
just installed on my device. so far so good, using the extra undervolt. booted fine and everything so will report back later if I notice anything weird.
29th March 2010, 03:08 PM |#9  
Senior Member
Sarno - Italy
Thanks Meter: 10
Donate to Me
Hi man, in first thanks for this work...
Now can u tell me how can i use your kernel?

Thanks in advanced
29th March 2010, 03:09 PM |#10  
Senior Member
Flag L√ľneburg
Thanks Meter: 35
Donate to Me
[power off your phone and boot into fastboot]
fastboot flash zimage zImage
adb remount
adb push bcm4329.ko system/lib/modules/bcm4329.ko
29th March 2010, 03:10 PM |#11  
Senior Member
Thanks Meter: 1,565
Donate to Me
interesting...I've been experimenting with the compiler optimizations in my own made the kernel bigger although I feel a bit more responsiveness now...almost not noticeable but I think its there...
Post Reply Subscribe to Thread

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

Advanced Search
Display Modes