Wednesday, June 22, 2011

X8Overclock | Multiple Frequencies CPU!

Intro: (dev post)
Since the X10 kernel is working, we might have a hope that someday we will have our custom kernels. If we can have custom kernels, we can do the overclocking easily.

Until that day, we will still have to overclock with modules. To make overclocking works with our current kernel, as far as I can see, we need to do the following things:
1. Patch cpufreq data to change maximum reported freq (these value will be read by Android for further controls). cpufreq will then call the low-level acpuclock functions to change real cpu freq.
2. Patch acpuclock data + code to change real cpu freq.

Right now I'm working a proof-of-concept module, with finished 1 and half of 2. I will need to patch acpuclock code in the running kernel to make the frequency applicable.

That means, right now, Android reported that I have a 800MHz MSM7227, although it's running at 600MHz, and cpufreq's governor accepts to change to the maximum 800MHz (it's 600MHz for real). We will need to patch acpuclock code to change PLL and apply the correct divisor.

Source on github :

Release history

  • April 11. v004. Default to 691MHz. Multiple frequencies are available for SetCPU: from 614MHz to 826MHz. You can now change frequencies with SetCPU - much like with custom kernels! You can even SetCPU freq at boot.
  • April 07. v003. Compatible with SetCPU. Easier for code maintenance.
  • April 06. v002 for mini pro. x8oc module for x10 mini pro released! Be warned: I didn't have your x10mini pro hardware so I didn't test it throughoutly.
  • April 06. v002 for mini. x8oc module for x10 mini released! Be warned: I didn't have your x10mini hardware so I didn't test it throughoutly. 710MHz was reported not too stable. A lower freq is more stable.
  • April 06. v002. Experimental! It maybe very unstable! Undervoltage for all frequencies except the max freq (Reduced voltages for 128MHz, 245MHz, 320MHz, 480MHz). This can potentially save battery. I need test results for saving battery from you guys 
  • April 05. v001. Default to 710MHz.

- Rooted
- Baseband x15
- xRecovery (for automatic installtation)
- Dare!

a. Manual installation : it will be better if you can do this way.
- Download appropriate (for X8), or (for X10 mini), or (for x10 mini pro) below, unzip
- Remount /system as rw
- Push x8oc.ko in to /system/lib/modules
- Edit /system/etc/, add one line at the beginning

insmod /system/lib/modules/x8oc.ko # x8 overclock

For people who want to set specific freq at boot, write the following instead of the code above:

# x8 overclock
insmod /system/lib/modules/x8oc.ko
sleep 2
echo xAB > /proc/x8oc
Where AB is your desired code for that frequency. Test the frequency carefully before applying it at boot!
(you can edit by pulling it to your PC, edit, and push it back)
- Reboot your phone

b. Automatic installation : much like x8gesture, I will have to prepare for each ROM. I'm pretty busy now, so be patient.


Original thread here


Post a Comment

Above article useful to you? Leave your comment to show your appreciation :)