[KERNEL] vz-oc-linaro kernel v4: CM10.1 overclocking kernel - Linaro build

Search This thread

vanja_z

Senior Member
Oct 1, 2012
125
130
Introduction
This is a replacement kernel for CyanogenMod 10 and 10.1 evita builds. The kernel is designed to be as close as possible to the stock CyanogenMod kernel with a few improvements.

Linaro toolchain:
The kernel is compiled with the latest Linaro toolchain based on gcc 4.7 rather than the default Android toolchain. This may provide performance improvements in some situations. I have made a few patches applied to make it compatible with gcc 4.7.

Overclock:
The highest frequency now available under Settings -> Performance with these kernels is,
Code:
CPU: 1782 MHz 1.25 V
L2:  1350 MHz 1.15 V
BUS:  532 MHz
I've also included a modified thermald.conf in the flashable zip.

Refresh rate:
I've reverted the refresh rate to the original value from the sense source code (57 Hz). This works better when "Disable HW overlays" is selected.

Downloading and installing
Download the flashable zip,

cm10.1_vz-oc-linaro.4.zip MD5=7233ccffa17fa16a2dc6292ecf755fb4
mega.co.nz
ubuntuone.com

Older versions:
cm10.1_vz-oc-linaro.3.zip MD5=5e0efdfd0390f3f923090a574d142808
mega.co.nz
ubuntuone.com
cm10.1_vz-oc.2.zip MD5=cf2c4ee8ba09627e598b78dcea225d39
cm10.1_vz-oc-linaro.2.zip MD5=2931cc59515949fa461a89ea17c99328
vz-oc.1.zip MD5=2f1740d67cd1d5c02a7ac5489bafe7a0
vz-oc.2.zip MD5=4e4d444130e8eb71c27cc23fed65fc88
vz-oc-linaro.1.zip MD5=ca674641e05595e64698afda8aa02943
vz-oc-linaro.2.zip MD5=2b01472d00e069c53f934c30b49475d1
cm10.1_vz-oc.1.zip MD5=576db9e99b2289dae7fc5b548a0d61b4
cm10.1_vz-oc-linaro.1.zip MD5=1a5f3b50608e6b44da50829b2c04ec5c

If you have HBOOT earlier than 1.14 or have S-OFF, then you can just flash the zip from recovery. This will flash the kernel as well as all required modules and thermald.conf. Otherwise, HBOOT 1.14 users will need to extract the boot.img, enter bootloader mode and run
Code:
fastboot flash boot boot.img
Then you will also need to flash the zip to get modules and themald.conf.

Compatability
cm10.1_vz-oc-linaro.4 is compatible with CM10.1 UNOFFICIAL build from 16/04/2013 onwards.
cm10.1_vz-oc-linaro.3 is compatible with CM10.1 NIGHTLY build from 01/03/2013 onwards.
cm10.1_vz-oc.2 (and linaro) are compatible with CM10.1 NIGHTLY build from 19/02/2013 only.
cm10.1_vz-oc.1 (and linaro) are compatible with CM10.1 UNOFFICIAL build from 06/02/2013 only.
vz-oc.2 (and linaro) are compatible with CM10 NIGHTLY builds from 26/12/2012 to 13/01/2013.
vz-oc.1 (and linaro) are compatible with CM10 NIGHTLY builds from 28/11/2012 to 25/12/2012.

Future development
I hope to introduce GPU overclocking soon and there will be updated builds as
soon as changes come into the main CyanogenMod repo.

Building the kernel
For those who would like to build the kernel themselves, here are some basic
instructions. First you will need to acquire some tools. You can get the default
toolchain from the CM10 source code at,
Code:
system/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/
Otherwise, if you want to use the Linaro toolchain, you can get it at
Linaro toolchain
You will also need a working boot image to get the ramdisk from. You can build
mkbootimg using these instructions
building mkbootimg
Finally, you can get split_bootimg_pl from William Encks site
download split_bootimg_pl
Clone the repo and change to your desired branch
Code:
git clone https://github.com/vanja-zecevic/android_kernel_htc_msm8960.git
git checkout jellybean-oc
Now export an environmental variable pointing to your desired toolchain
Code:
export CCOMPILER=$PATH_TO_TOOLCHAIN/bin/arm-eabi-
Copy the config file, run menuconfig once and start the build replacing -j12
with your desired number of threads
Code:
cp ./config-oc ./.config
make ARCH=arm SUBARCH=arm CROSS_COMPILE=$CCOMPILER menuconfig
make ARCH=arm SUBARCH=arm CROSS_COMPILE=$CCOMPILER -j12
Extract a ramdisk from a working boot image and repack with your freshly built
kernel using the following command for cm10,
Code:
./split_bootimg_pl ./boot.img
./mkbootimg --base 0x80400000 --ramdiskaddr 0x81800000 \
  --cmdline 'console=ttyHSL0,115200,n8' \
  --kernel arch/arm/boot/zImage --ramdisk boot.img-ramdisk.gz \
  -o boot_vz-oc.img
cm10.1 will need the following cmdline
Code:
--cmdline 'console=ttyHSL0,115200,n8  androidboot.hardware=qcom'

You are ready to flash your new kernel!

Contact
I hope you enjoy using this kernel! Please also visit the github page for this project for alternative download links and for the source code.

GitHub

Cheers,
Vanja
 

Attachments

  • vz-oc.1.zip
    5.4 MB · Views: 98
  • vz-oc.2.zip
    5.4 MB · Views: 83
  • vz-oc-linaro.1.zip
    5.3 MB · Views: 31
  • vz-oc-linaro.2.zip
    5.3 MB · Views: 66
  • cm10.1_vz-oc.1.zip
    5.5 MB · Views: 47
  • cm10.1_vz-oc-linaro.1.zip
    5.3 MB · Views: 86
  • cm10.1_vz-oc.2.zip
    5.5 MB · Views: 166
  • cm10.1_vz-oc-linaro.2.zip
    5.3 MB · Views: 272
Last edited:

superchilpil

Senior Member
Sep 26, 2009
4,278
1,432
Texas
OnePlus 8 Pro
Nubia Red Magic 6
1. Could you post flash able zips for the majority of us who can flash these in recovery?

2. Very few users including myself have issues with kernels without stock voltage values. The device will just not boot, any way to have separate versions without different voltages just to rule that issue out when people ask why their device won't boot?


Sent from my One X using Tapatalk 2
 
Last edited:
  • Like
Reactions: mlaws90

badvcr

Senior Member
Apr 21, 2010
141
47
1. Could you post flash able zips for the majority of us who can flash these in recovery?

2. Very few users including myself have issues with kernels without stock voltage values. The device will just not boot, any way to have separate versions without different voltages just to rule that issue out when people ask why their device won't boot?


Sent from my One X using Tapatalk 2

+1 thank you

Straight talked from my HOX!
 
  • Like
Reactions: tonytober

Koizuma

Account currently disabled
Jun 6, 2011
755
66
GB
meettomy.site
OnePlus 7T
OnePlus 9
I like the idea of a stockish CM10 OC kernel, Me myself i underclock. I would give this a go see how it holds up. the increase in clock speed is usually a nice thing to have even if not used. Also a 2.0GHz version would be awesome too.
 

vanja_z

Senior Member
Oct 1, 2012
125
130
Thanks for the feedback people!

I'm currently running HBOOT 1.14, so I will need to downgrade to 1.09 before I can make/test flashable kernel zips. I think I will get around to this in the next week.

I will also look into some other requests.

Is anyone running the kernel? Are you happy with it? Any benchmarks?
 
  • Like
Reactions: neocryte

xyrovice

Senior Member
Dec 21, 2009
365
54
Manhattan
Quick question: Sweep2Wake support?

I know OP stated 'as close to stock as possible,' searched thread for 'sweep' and turned up nuffin, so I'm just curious. Glad to see another kernel option (and prospective CM10 material!).
 

taylor.fowler

Senior Member
Aug 14, 2010
543
551
NYC
1. Could you post flash able zips for the majority of us who can flash these in recovery?

2. Very few users including myself have issues with kernels without stock voltage values. The device will just not boot, any way to have separate versions without different voltages just to rule that issue out when people ask why their device won't boot?


Sent from my One X using Tapatalk 2

I don't plan on maintaining them, but if newer versions come out, just rename to boot.img and swap out the file in the zips:

With Linaro toolchain
without Linaro toolchain

Vanja, if you want these gone, let me know.
 
  • Like
Reactions: vanja_z

nespid

Senior Member
Oct 21, 2008
372
42
Kearny, NJ
hands on CM boot screen animation

running stable build cm10, and like the title says, hangs on boot screen animation. Do you have to configure the thermald.conf first?

thanks
 

vanja_z

Senior Member
Oct 1, 2012
125
130
running stable build cm10, and like the title says, hangs on boot screen animation. Do you have to configure the thermald.conf first?

thanks

Hi nespid, unfortunately, these kernels currently only support builds from 28/11/2012 onward. I've re-written the "Compatibility" section to make that more clear.

I will put up a build compatible with the "stable" build in a few days if you like.
 
  • Like
Reactions: nespid and Simba501

nespid

Senior Member
Oct 21, 2008
372
42
Kearny, NJ
Hi nespid, unfortunately, these kernels currently only support builds from 28/11/2012 onward. I've re-written the "Compatibility" section to make that more clear.

I will put up a build compatible with the "stable" build in a few days if you like.

That would be absolutely great!

Thank you!

Sent from my HTC One X+ using xda app-developers app
 

hv6478

Senior Member
Apr 14, 2009
587
230
Re: [KERNEL] vz-oc kernel: CM10 overclocking, normal & Linaro builds

Any feedback on battery life with this one? And how does it play with No Frills CPU and such?

Thanks for the hard work!

Sent from my CM10ified Beast (a.k.a. HTC One XL)
 

hv6478

Senior Member
Apr 14, 2009
587
230
I've put up cm10.1 kernels!

ps. cm10.0 stable kernel is coming soon, I haven't forgotten, sorry for the delay

That's awesome, I will be testing this soon. I know it was asked before but I'm also very interested to know, any plans on implementing sweep2wake? After using it for even a little bit it spoils you, it really is an awesome feature. Otherwise thank you for your hard work, I'll leave feedback in a couple days after testing!
 

macropterous

Senior Member
May 14, 2012
187
42
nyc
Thanks much, got the kernel running on CM10.1 with 1.14 hboot no problems. Modified thermald.conf and seems to allow oc to stick thus far.

great work,
dbd

UPDATE: this kernel is working wonderfully with cm10.1. +1 for linaro toolchain.
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 21
    Introduction
    This is a replacement kernel for CyanogenMod 10 and 10.1 evita builds. The kernel is designed to be as close as possible to the stock CyanogenMod kernel with a few improvements.

    Linaro toolchain:
    The kernel is compiled with the latest Linaro toolchain based on gcc 4.7 rather than the default Android toolchain. This may provide performance improvements in some situations. I have made a few patches applied to make it compatible with gcc 4.7.

    Overclock:
    The highest frequency now available under Settings -> Performance with these kernels is,
    Code:
    CPU: 1782 MHz 1.25 V
    L2:  1350 MHz 1.15 V
    BUS:  532 MHz
    I've also included a modified thermald.conf in the flashable zip.

    Refresh rate:
    I've reverted the refresh rate to the original value from the sense source code (57 Hz). This works better when "Disable HW overlays" is selected.

    Downloading and installing
    Download the flashable zip,

    cm10.1_vz-oc-linaro.4.zip MD5=7233ccffa17fa16a2dc6292ecf755fb4
    mega.co.nz
    ubuntuone.com

    Older versions:
    cm10.1_vz-oc-linaro.3.zip MD5=5e0efdfd0390f3f923090a574d142808
    mega.co.nz
    ubuntuone.com
    cm10.1_vz-oc.2.zip MD5=cf2c4ee8ba09627e598b78dcea225d39
    cm10.1_vz-oc-linaro.2.zip MD5=2931cc59515949fa461a89ea17c99328
    vz-oc.1.zip MD5=2f1740d67cd1d5c02a7ac5489bafe7a0
    vz-oc.2.zip MD5=4e4d444130e8eb71c27cc23fed65fc88
    vz-oc-linaro.1.zip MD5=ca674641e05595e64698afda8aa02943
    vz-oc-linaro.2.zip MD5=2b01472d00e069c53f934c30b49475d1
    cm10.1_vz-oc.1.zip MD5=576db9e99b2289dae7fc5b548a0d61b4
    cm10.1_vz-oc-linaro.1.zip MD5=1a5f3b50608e6b44da50829b2c04ec5c

    If you have HBOOT earlier than 1.14 or have S-OFF, then you can just flash the zip from recovery. This will flash the kernel as well as all required modules and thermald.conf. Otherwise, HBOOT 1.14 users will need to extract the boot.img, enter bootloader mode and run
    Code:
    fastboot flash boot boot.img
    Then you will also need to flash the zip to get modules and themald.conf.

    Compatability
    cm10.1_vz-oc-linaro.4 is compatible with CM10.1 UNOFFICIAL build from 16/04/2013 onwards.
    cm10.1_vz-oc-linaro.3 is compatible with CM10.1 NIGHTLY build from 01/03/2013 onwards.
    cm10.1_vz-oc.2 (and linaro) are compatible with CM10.1 NIGHTLY build from 19/02/2013 only.
    cm10.1_vz-oc.1 (and linaro) are compatible with CM10.1 UNOFFICIAL build from 06/02/2013 only.
    vz-oc.2 (and linaro) are compatible with CM10 NIGHTLY builds from 26/12/2012 to 13/01/2013.
    vz-oc.1 (and linaro) are compatible with CM10 NIGHTLY builds from 28/11/2012 to 25/12/2012.

    Future development
    I hope to introduce GPU overclocking soon and there will be updated builds as
    soon as changes come into the main CyanogenMod repo.

    Building the kernel
    For those who would like to build the kernel themselves, here are some basic
    instructions. First you will need to acquire some tools. You can get the default
    toolchain from the CM10 source code at,
    Code:
    system/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/
    Otherwise, if you want to use the Linaro toolchain, you can get it at
    Linaro toolchain
    You will also need a working boot image to get the ramdisk from. You can build
    mkbootimg using these instructions
    building mkbootimg
    Finally, you can get split_bootimg_pl from William Encks site
    download split_bootimg_pl
    Clone the repo and change to your desired branch
    Code:
    git clone https://github.com/vanja-zecevic/android_kernel_htc_msm8960.git
    git checkout jellybean-oc
    Now export an environmental variable pointing to your desired toolchain
    Code:
    export CCOMPILER=$PATH_TO_TOOLCHAIN/bin/arm-eabi-
    Copy the config file, run menuconfig once and start the build replacing -j12
    with your desired number of threads
    Code:
    cp ./config-oc ./.config
    make ARCH=arm SUBARCH=arm CROSS_COMPILE=$CCOMPILER menuconfig
    make ARCH=arm SUBARCH=arm CROSS_COMPILE=$CCOMPILER -j12
    Extract a ramdisk from a working boot image and repack with your freshly built
    kernel using the following command for cm10,
    Code:
    ./split_bootimg_pl ./boot.img
    ./mkbootimg --base 0x80400000 --ramdiskaddr 0x81800000 \
      --cmdline 'console=ttyHSL0,115200,n8' \
      --kernel arch/arm/boot/zImage --ramdisk boot.img-ramdisk.gz \
      -o boot_vz-oc.img
    cm10.1 will need the following cmdline
    Code:
    --cmdline 'console=ttyHSL0,115200,n8  androidboot.hardware=qcom'

    You are ready to flash your new kernel!

    Contact
    I hope you enjoy using this kernel! Please also visit the github page for this project for alternative download links and for the source code.

    GitHub

    Cheers,
    Vanja
    8
    Hey all, posted a new build with some minor updates. Works well with Corys unofficial builds.
    4
    I am really glad that people are enjoying this kernel but I would like to urge you guys to NOT report any issues in the CM10.1 thread or anywhere other than in this thread unless you are using the stock kernel for that ROM.

    Also, just to reiterate, cm10.1_vz-oc(linaro).2.zip kernels are ONLY properly compatible with cm-10.1-20130219-NIGHTLY-evita.zip

    ps. I will look at Rohans helpful suggestion soon but probably not for the next build.
    3
    There has been a lot of active development on the kernel for our device with new commits almost every day. For this reason, the kernels I put up have been becoming outdated pretty quickly. For example, the cm10.1-oc(-linaro).2 builds are only EXACTLY compatible with the 20130219-NIGHTLY. You may find the kernels also work with other builds however it is not guaranteed.

    I will be putting up new builds roughly once per fortnight and I will attempt to keep the compatibility section up to date.

    If you set the kernel to install the modules the kernel build generates as well, you will almost completely rid your kernel of these compatibility problems. Unless a kernel commit is merged that also has parts in the device trees, your kernel will still function as it was intended, and nothing should break.

    If you need help with an installer for the modules, feel free to grab one of my recent kernel release packages and see how the updater script i use does it.
    2
    I've put up cm10.1 kernels!

    ps. cm10.0 stable kernel is coming soon, I haven't forgotten, sorry for the delay