The overclock modules for HTC One XL, should be applicable on our One S

Search This thread

coolbho3000

Retired Senior Recognized Developer
Dec 26, 2008
897
785
Hi, can you add support for the EVO LTE?

kernel version is:

adb shell cat /proc/version
Linux version 3.0.8-01360-g3fd0422 (root@ABM032) (gcc version 4.4.3 (GCC) ) #1 S
MP PREEMPT Sat Apr 28 05:10:07 CST 2012

here's a random file in case you still need it.

Thanks for the file. I'll try soon.

Also, regarding other versions of the One S, I don't see why this method won't work with the MSM8260A.
 
  • Like
Reactions: freeza

Rapier

Forum Moderator
Staff member
hi can i try this on my moto MSM8960 xt907 running CM12 lolipop?
This is a thread dead for 3 years (last post was in 2012 now we're in 2015). Are you serious hoping to get an answer? Anyways this method doesn't make sense at this time as there are kernels with OC capabilities that works on both Android 5.0.2 (like CM12) and Android 5.1.0. Try IceCode, Mrak, Void or Frosted all have OC capabilities at least up to 1.72 (Void and Frosted go up to 1.8)

EDIT: Now I've noticed you don't even have a Ville, you have a Moto...then DON'T TRY ANY of the above kernels, they are not for your phone. But for sure you have some similar kernels for Moto in your device specific dev section
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 5
    It can apply on phones running with Qualcomm MSM 8960 chipset.
    Quoting from the OP:

    One XL/AT&T/Rogers One X 1.8GHz overclock module

    Please let me know about the module's compatibility with your phone. It has been reported to work on the latest AT&T version kernel, and I have a Rogers device myself.

    Hey guys! I've created a kernel module that overclocks the MSM8960 Qualcomm Krait to over 1.8GHz. It also allows you to specify a custom voltage and frequency instead of 1.8GHz. This method works on ANY MSM8960-based rooted HTC One X, even on locked bootloader devices. This allows AT&T users to overclock, and others to overclock without necessarily needing to unlock the bootloader. This overclock makes the already tremendously fast MSM8960 about 20% faster.

    Note that this mod is ONLY for the Qualcomm MSM8960-based Krait HTC One X and HTC One XL. This includes the AT&T HTC One X, Rogers HTC One X, and any phone branded as the HTC One XL.

    The module is loaded using this command: insmod /data/local/krait_oc.ko pll_l_val=67 vdd_uv=1300000

    The pll_l_val parameter determines how high the overclock is. Multiply this number by 27 to get the final clock speed in MHz. For example, 67*27 is 1809000, which is what the module defaults to.

    The vdd_uv parameter determines the voltage used at the overclocked speed, in microvolts. The default for 1.5GHz is 1200000, and I was able to get a stable overclock at 1300000 at 1.8GHz. Raise the vdd_uv parameter if the overclock is unstable. The current maximum for this field is 1300000, so don't go higher than this. If your system crashes or is unstable at this frequency/voltage, lower the pll_l_val one by one until you reach stability. You can run rmmod krait_oc and then insmod krait_oc.ko with different parameters without having to reboot.

    You'll also need a custom, tweaked thermald.conf. This thermald.conf raises thermal tolerances slightly (I've found that they're a little too strict, even at stock clocks and voltages). I've included this in the package, and instructions for installing it are below.

    Video, demonstrating the overclock on a Rogers HTC One X:
    YouTube Video

    Screenshots




    Source code is included in the package. If anyone has an HTC One S, this method will work on that, too. Please post below a dump of /system/lib/modules and I should be able to add support for any MSM8960-based HTC device with just that.

    Instructions
    First, determine which kernel module to use. Do an adb shell cat /proc/version and choose a ko file that matches your version number (these instructions assume you've renamed it to krait_oc.ko). 21/05/2012: If you don't see your kernel version here, try loading the module anyway. If it fails to load, please post a file from /system/lib/modules (any file) here and I will add support.

    Install the overclock (only once):
    1. Push the kernel module to your device:

    adb push krait_oc.ko /data/local

    2. Install the new thermald.conf, making sure to back up the old one, and reboot. The thermald.conf is included in the download. If you want to target a frequency other than 1809000 KHz, you should edit the thermald.conf and replace "1809000" to whatever frequency you want to target.

    adb push thermald.conf /data/local
    adb shell
    su
    mount -o rw,remount /system
    cp /system/etc/thermald.conf /system/etc/thermald.conf.bak
    rm -r /system/etc/thermald.conf
    cp /data/local/thermald.conf /system/etc
    reboot


    Load the overclock (every time you reboot):
    1. Load the kernel module (replace pll_l_val and vdd_uv with your desired voltages and L value as explained above. It defaults to 67 and 1300000 if you don't give it any parameters):

    adb shell
    su
    insmod /data/local/krait_oc.ko pll_l_val=67 vdd_uv=1300000

    2. Bring core 1 temporarily offline so it gets updated with the new max frequency:

    echo 0 > /sys/devices/system/cpu/cpu1/online

    3. You'll now have an additional CPU frequency! SetCPU can configure your maximum frequency up to this speed. You can also choose to keep running at 1.5GHz at any time - this method doesn't eliminate any available frequencies. Set the max at 1.8GHz to verify it's stable here.
    4. Restart thermald by running "ps". Look for "thermald" in the list, and find thermald's pid (it's usually a number in the low hundreds, higher up in the list). Run "kill [thermald's PID]" in adb shell. The kernel does not currently have kernel-level temperature throttling turned on, so thermald is important for now.

    Remove the overclock by restoring your backup of thermald.conf:

    adb shell
    su
    mount -o rw,remount /system
    rm -r /system/etc/thermald.conf
    cp /system/etc/thermald.conf.bak /system/etc/thermald.conf
    rm -r /system/etc/thermald.conf.bak
    reboot

    Rebooting clears any kernel modules that are loaded, so you're now clean. You can then delete anything left over in /data/local, but it doesn't matter.

    If the module loads but the overclock doesn't seem to have any effect, even after putting max and min at 1.8GHz, your device might use a different SoC bin than the "nominal," and the kernel module is looking at the wrong place. Please reboot your device and post an adb shell dmesg right after the reboot so I can look at it.

    Download current pack of modules:
    http://www.setcpu.com/files/krait_oc_v2.zip (current)
    http://www.setcpu.com/files/krait_oc.zip (old)

    Finally, it'd be great if we as a community tried to work harder to encourage HTC to hurry up and 1. Release kernel source on time, all the time and 2. NOT cave into carrier pressure and stick to their written bootloader policy! S-OFF would be nice, too. 

    Sent from my HTC One S using xda premium
    2
    Original OP here. You can undervolt more frequency steps with this method too, but you need to modify the sources. Most phones should have a "nominal" chip, but there's also a "fast" spec with lower voltages at each step.

    I will write a proper tweakable undervolting driver for the 8960 when sources come out.
    1
    As I'm not a dev... Could it be possible to override stock values in this struct, by specifying them manually?

    Current one (in the source) :

    /* Frequency-Voltage table */
    static struct freq_voltage freq_vdd_table[] = {
    { 1620000, 1200000 },
    { 1728000, 1200000 },
    { 1809000, 1250000 },
    { 1917000, 1300000 },
    { 0, 0 },
    };


    Exemple "overriden" one :

    /* Frequency-Voltage table */
    static struct freq_voltage freq_vdd_table[] = {
    [...]
    { 1512000, 1000000 },
    { 1620000, 1200000 },
    { 1728000, 1200000 },
    { 1809000, 1250000 },
    { 1917000, 1300000 },
    { 0, 0 },
    };

    Well, it may be possible, but modifying that table won't work. The module needs a little modification.
    1
    Hi, can you add support for the EVO LTE?

    kernel version is:

    adb shell cat /proc/version
    Linux version 3.0.8-01360-g3fd0422 (root@ABM032) (gcc version 4.4.3 (GCC) ) #1 S
    MP PREEMPT Sat Apr 28 05:10:07 CST 2012

    here's a random file in case you still need it.

    Thanks for the file. I'll try soon.

    Also, regarding other versions of the One S, I don't see why this method won't work with the MSM8260A.