I’ve recently added some modifications to the Cyanogenmod kernel. They include overclocking up to 2ghz as well as lower idle voltages (undervolting) and a higher default maximum frequency. The maximum frequency after bootup is now 1516800hz. It can be changed up to 2016000hz. Frequencies higher than 1612800hz are unstable when using the ondemand governor on my phone, they seem to be stable when used with the performance governor or even the conservative one, so I think it might be related to the fast frequency switching. At 2ghz the phone gets really hot in a matter of minutes so be careful, you can probably damage it using this kernel. Thus I take no responsibility for any damages resulting from using this kernel!
My frequency(in hz)/voltage(in mV)-table is the following:
I just was able to lower the voltages a bit, here is the new kernel: zImage_v2
I made a third version containing a crude hack to fix the problem with the governors. Now my phone runs at min 245mhz and max 1920mhz using the ondemand governor.
Source: acpuclock-7×30 (The only file I changed) https://github.com/CyanogenMod/htc-kernel-msm7x30
The easiest way to flash it is using fastboot and adb from the android sdk. I guess I could also build a flashable zip, but I don’t feel like figuring how that works. If someone makes one, feel free to send me a copy, I’ll attach it here.
Flashing the kernel:
fastboot flash zimage zImage
Flashing the new WiFi module:
adb push bcm4329.ko /system/lib/modules
After using my kernel for quite a while it seems to be pretty stable on my phone. Running at 2GHz I sometimes get random freezes, but 1.92GHz seems stable for daily use. I also tried playing 3d games on 1.92GHz for about half an hour and even though the phone got noticeably hot everything went peachy. 🙂