vorkKernel-OC/UV Kernel for CM[20111105]

Search This thread

Benee

Retired Recognized Developer
Mar 15, 2010
921
1,735
Hi. The following kernel is presented to you by

vorkKernel Team:
- kiljacken
- Benee​


This kernel is for Cyanogenmod and Miui. *Could* be incompatible with latest kangs or nightlies (after a kernel update from CM team). No support for stock or mcr...


It's incompatible with MIUI and CM Builds before #177

New vorkKernel Twitter Bot: Here

First I want to make clear that all credit goes to aremcee/arcee/rmcc (man so many nicks :D). He did an awesome job with the kernel.
I just tweaked it a little bit to my needs.

Features:
  • uv/oc support. OC up to 1,5GHz (With E-Peen version)
  • AVP/System/RAM/GPU OC with E-Peen version
  • 1,2 Ghz for batt safe version.
  • Special tweaked (working!) Performance and Powersave Govenors which don't lock the freq to one level (they choose between 3-4 Freq steps)
  • It's even possible to set max/min clock via setcpu or CMSettings!
  • Voodoo sound. Thanks supercurio! So awesome
  • Default IO-Sched is Deadline with a special flash storage tweak
  • Slub allocator
  • tweaked CFS cpu sched (Low latency)
  • compiled with a tweaked toolchain (base linaro gcc - optimized for tegra2)
  • VFP optimizations (vfpv3-d16) and overall compiler optimizations
  • flags! (more below in the flag section)
  • A App for easy downloading and configuring. Credits to kiljacken!

The standard part:
I'm not responsible for melted phones or something like that...

The camera is unstable with E-Peen mode (due to AVP OC). After a reboot it needs to stabilize a few minutes (so you break it with every reboot again). Same for Bluetooth. Please don't report a problem regarding this. It's known and can't be fixed.

And the source code here.


Download (Market)

Credits to kiljacken for this awesome app! You need OI File Manager for the app (Comes with CM)!

(and if you refuse to use the app - or the app is refusing to work with you: here)

Only change something, if you want to enable OC - No need to touch anything else (like govenors, schedulers)

What are flags and how can I use them?
I recommend to use the App kiljacken made, because it's super easy for you guys. If you not want to use the app *sadpanda* then you can click this link. This is the file the app is fetching to generate the UI.

The layout is following:
Available for following device/Element style (more below)/the flag you need to add/Flag name in App/Description for general Flag/Choice name in app/actual value you need to add after flag name

If the last two points are added you first enter the flag name and than the value. For example: density230

You connect the flags with a: -
Example: -camera-ring ...

The script is configured to detect flags after vorkKernel-VERSIONNUMBER. So you can add some flags after this.

Element style
c = Checkbox
l = List you can choose things from
e = you can enter your own value

Error Reporting Guide

Start with rebooting, if that doesn't help, reflash CM and then the kernel, and check again. If you're using the updater app (make sure you have the latest version), use the error report function (and describe what you're problem is). If you're not using the app, then post what flags you are using, along with what your problem is.


Additionally I just want to point out that I'm not doing this as a fulltime job, so don't expect daily updates or something like that. I will try to fix a problem as fast as possible but in some cases it can take a while.

If you want to support me you can sign up on dropbox via my referral link or just push this nice thanks button .. If you want to donate you can donate to aremcee/arcee/rmcc something. I'm learning C and linux and vorkKernel is my learning project and it is a hobby for me. Anyway if you still want to support a poor student, I have a link in my signature ;)

Thanks to:
arcee + the whole CM Team
morfic for all the avp oc tweaks and other stuff
thalamus (for saving me going crazy with the toolchain :D)
Erasmux
All guys that made pull request and contributed in any possible way ;)
Donators to our project (app or kiljacken's donate link)
the android community

and a very big thanks to b3ndech0 for his buildbox.
 
Last edited:

sibbor

Senior Member
Jul 28, 2008
663
330
sibbor.nu
This kernel is amazing! Nice work with the filename flags. It's brilliant! This way we don't have to have the same setup, but can enjoy both CM7 and the kernel.
 
Last edited:

Benee

Retired Recognized Developer
Mar 15, 2010
921
1,735
I'll try this kernel later. Will wait for CM7 getting more optimized for our devices first. 2000 Quadrant scores out of the box just don't cut it - I don't want to overclock to 1.4 GHz just to reach speeds of MCR FR14 ;-)

Planning on including any changes from kholk?

More things will be in it soon. And Quadrant doesn't matter. CM feels better in normal use (except a few problems but it is a really good starting point).
 
  • Like
Reactions: TheBo

sibbor

Senior Member
Jul 28, 2008
663
330
sibbor.nu
More things will be in it soon. And Quadrant doesn't matter. CM feels better in normal use (except a few problems but it is a really good starting point).
Yes I know it doesn't really matter. Although, generally speaking, higher scores means the software is more optimized to the hardware; framework, kernel and/or drivers.

CM7 should be able to smash the performance out of the LG stock ROM without problem...

Thanks for you kernel additions! Subscribed to this thread now so I can follow your progress.
 

Benee

Retired Recognized Developer
Mar 15, 2010
921
1,735
Yes I know it doesn't really matter. Although, generally speaking, higher scores means the software is more optimized to the hardware; framework, kernel and/or drivers.

CM7 should be able to smash the performance out of the LG stock ROM without problem...

Thanks for you kernel additions! Subscribed to this thread now so I can follow your progress.

Nah. You can boost quadrant to oblivion via data2ext for example on desire/nexus but it didn't helped in real life performance. The sql sync disable doesn't help with real usage, but boost quadrant etc. So many things which doesn't improve real usage, boost quadrant. Like deleting your /system :D (pro move...).
But yeah in some parts you are right and optimizing drivers boost it too + help real use performance, so I will do this too.

is this kernel for a stock rom?
thanks

Really? Just read the title: vorkKernel-OC/UV Kernel for CM. For Cyanogenmod. Not stock...
 

emprize

Senior Member
Jan 15, 2007
1,300
135
seems the IO from quadrant score still low, is it same sqlite hack with paul that one?
 

emprize

Senior Member
Jan 15, 2007
1,300
135
ok, flash this kernal and using cm7 oc to 1.4, quadrant get 31xx

edit : fail to exec smartbench
 

Benee

Retired Recognized Developer
Mar 15, 2010
921
1,735
Benee any chance you could add the OC support to the CM settings?

Sent from my LG O2X CM7 Nightly

Yep but this would break pimp my cpu support and I think pimp my cpu is the better deal. A easy user interface with undervolting support. Awesome! .. so no I won't add it to cm settings ;)
 
Last edited:
  • Like
Reactions: svceon

spences10

Senior Member
Jan 18, 2010
731
50
London
I know I'm going to get flamed for this but how do you o/c once you have flashed the kernel? when i open setCPU its already at the max 1g when i go to the CM settings there's no frequencies to select in the cpu management option

is it different on the tegra chips as opposed to qualacom?
 

Benee

Retired Recognized Developer
Mar 15, 2010
921
1,735
Planning on including any changes from kholk?

Ok if I understand the changelog from kholk correct, most of the changes are already included (don't know exactly because he didn't copied the commit names and sums the function up). One commit isn't in it because it introduced the graphic glitches. vfp3-d16 support and compiler optimization will be added with next update. Then most things are in it.
 

Tayutama

Senior Member
May 21, 2010
1,310
20
Helsinge
I know I'm going to get flamed for this but how do you o/c once you have flashed the kernel? when i open setCPU its already at the max 1g when i go to the CM settings there's no frequencies to select in the cpu management option

is it different on the tegra chips as opposed to qualacom?

Is stated in the OP:
So I compiled it with uv/oc support via pimp my cpu.

Pimp My CPU can be downloaded from here: http://xdaforums.com/showthread.php?t=1018411
 

Benee

Retired Recognized Developer
Mar 15, 2010
921
1,735
I know I'm going to get flamed for this but how do you o/c once you have flashed the kernel? when i open setCPU its already at the max 1g when i go to the CM settings there's no frequencies to select in the cpu management option

is it different on the tegra chips as opposed to qualacom?

Nah no flaming ;). You need pimp my cpu for it. Cpasjute did some kernel hacks to enable oc and add a uv function. That means you can undervolt without compiling the kernel again. Unfortunatly it isn't compatible with setcpu..
 

lukemo

Senior Member
Feb 17, 2008
621
92
Milan
The kernel seems ok; I tried OC till 1200 with 50-100 UV (depending on OC).
What's very good with CM7 (and this kernel) is battery life, 30-40% more compared with Modaco ROM (till FR14).

Anybody have tried higher frequencies (1300-1400)?

Thanks a lot.
 

Birthe88

Member
Dec 20, 2010
32
3
Bramming
www.s-off.dk
The kernel seems ok; I tried OC till 1200 with 50-100 UV (depending on OC).
What's very good with CM7 (and this kernel) is battery life, 30-40% more compared with Modaco ROM (till FR14).

Anybody have tried higher frequencies (1300-1400)?

Thanks a lot.

I have been using this all day running 1300Mhz @ 1200mV - normal use with wifi on - 84% battery left after ap. 12 hours
 

Top Liked Posts

  • There are no posts matching your filters.
  • 80
    Hi. The following kernel is presented to you by

    vorkKernel Team:
    - kiljacken
    - Benee​


    This kernel is for Cyanogenmod and Miui. *Could* be incompatible with latest kangs or nightlies (after a kernel update from CM team). No support for stock or mcr...


    It's incompatible with MIUI and CM Builds before #177

    New vorkKernel Twitter Bot: Here

    First I want to make clear that all credit goes to aremcee/arcee/rmcc (man so many nicks :D). He did an awesome job with the kernel.
    I just tweaked it a little bit to my needs.

    Features:
    • uv/oc support. OC up to 1,5GHz (With E-Peen version)
    • AVP/System/RAM/GPU OC with E-Peen version
    • 1,2 Ghz for batt safe version.
    • Special tweaked (working!) Performance and Powersave Govenors which don't lock the freq to one level (they choose between 3-4 Freq steps)
    • It's even possible to set max/min clock via setcpu or CMSettings!
    • Voodoo sound. Thanks supercurio! So awesome
    • Default IO-Sched is Deadline with a special flash storage tweak
    • Slub allocator
    • tweaked CFS cpu sched (Low latency)
    • compiled with a tweaked toolchain (base linaro gcc - optimized for tegra2)
    • VFP optimizations (vfpv3-d16) and overall compiler optimizations
    • flags! (more below in the flag section)
    • A App for easy downloading and configuring. Credits to kiljacken!

    The standard part:
    I'm not responsible for melted phones or something like that...

    The camera is unstable with E-Peen mode (due to AVP OC). After a reboot it needs to stabilize a few minutes (so you break it with every reboot again). Same for Bluetooth. Please don't report a problem regarding this. It's known and can't be fixed.

    And the source code here.


    Download (Market)

    Credits to kiljacken for this awesome app! You need OI File Manager for the app (Comes with CM)!

    (and if you refuse to use the app - or the app is refusing to work with you: here)

    Only change something, if you want to enable OC - No need to touch anything else (like govenors, schedulers)

    What are flags and how can I use them?
    I recommend to use the App kiljacken made, because it's super easy for you guys. If you not want to use the app *sadpanda* then you can click this link. This is the file the app is fetching to generate the UI.

    The layout is following:
    Available for following device/Element style (more below)/the flag you need to add/Flag name in App/Description for general Flag/Choice name in app/actual value you need to add after flag name

    If the last two points are added you first enter the flag name and than the value. For example: density230

    You connect the flags with a: -
    Example: -camera-ring ...

    The script is configured to detect flags after vorkKernel-VERSIONNUMBER. So you can add some flags after this.

    Element style
    c = Checkbox
    l = List you can choose things from
    e = you can enter your own value

    Error Reporting Guide

    Start with rebooting, if that doesn't help, reflash CM and then the kernel, and check again. If you're using the updater app (make sure you have the latest version), use the error report function (and describe what you're problem is). If you're not using the app, then post what flags you are using, along with what your problem is.


    Additionally I just want to point out that I'm not doing this as a fulltime job, so don't expect daily updates or something like that. I will try to fix a problem as fast as possible but in some cases it can take a while.

    If you want to support me you can sign up on dropbox via my referral link or just push this nice thanks button .. If you want to donate you can donate to aremcee/arcee/rmcc something. I'm learning C and linux and vorkKernel is my learning project and it is a hobby for me. Anyway if you still want to support a poor student, I have a link in my signature ;)

    Thanks to:
    arcee + the whole CM Team
    morfic for all the avp oc tweaks and other stuff
    thalamus (for saving me going crazy with the toolchain :D)
    Erasmux
    All guys that made pull request and contributed in any possible way ;)
    Donators to our project (app or kiljacken's donate link)
    the android community

    and a very big thanks to b3ndech0 for his buildbox.
    11
    Hi guys. Yep I'm back.. after some asshole stole my Galaxy Nexus..

    Anyway. I'm working on a new kernel and I wanted to release a sneak peak. I'm adding more features later and a app. I will most likely release it under a new name on rootzwiki (Still thinking about a nice name - if you have some ideas: Post them ;) ). So stay tuned.

    Download

    I'm not responsible for any damage you do to your device !
    Only use the interfaces, if you know what you're doing!

    The biggest feature are many sysfs interfaces like the following: (Until I release it, I will create a app which allows you to easily control these interfaces)

    Fsync
    /sys/class/misc/fsynccontrol/fsync_enabled (1 for fsync enabled (0 default))
    WARNING: This could lead to data loss!

    PM_FAST
    /sys/class/misc/pmfasttoggle/pmfast_enabled (1 for PM_FAST enabled (0 default))

    GPU_Freq
    /sys/class/misc/gpucontrol/gpu_pc (1 for 366 MHz, 0 for 333 MHz)

    Freq change: Yeah! You can change the whole freq table !
    /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies (rw)
    /sys/devices/system/cpu/cpu0/cpufreq/scaling_step_freqs (rw)

    Volt change:
    /sys/devices/system/cpu/cpu0/cpufreq/scaling_step_volts (enter volts like 750)
    /sys/devices/system/cpu/cpu0/cpufreq/UV_mV_table (setcpu compatible)

    Info:
    /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
    /sys/devices/system/cpu/cpu0/cpufreq/cpu_voltage

    Possible freqs
    1 216000
    2 312000
    3 456000
    4 608000
    5 760000
    6 816000
    7 912000
    8 1000000
    9 1100000
    10 1216000
    11 1408000

    So. If you want to use them I would recommend that you use cat first to read the interface and then you can just echo the values to it.

    Example:
    Code:
    echo 1 > /sys/class/misc/pmfasttoggle/pmfast_enabled

    Example for a freq table change:
    Code:
    echo "216000 312000 456000 608000 760000 816000 912000 1000000" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
    echo "216000 312000 456000 608000 760000 816000 912000 1000000" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_step_freqs
    echo "750 775 800 850 875 900 950 975" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_step_volts

    EDIT: Kernel isn't compatible with gb. Only ICS.

    EDIT2: it's a 3.0 Kernel
    8
    Hi guys. Just a little update.

    After I lost my sources, I started today again. I'm nearly at the same state as before. But everything is cleaner and nicer.
    I noticed something else. The gpu oc sysfs isn't working and I believer spica's otf pack isn't working too (Havn't looked at it deeply)(spica - if you read this: feel free to contact me via g+ or just post in the thread).

    I'm currently working on it, but as always tegra is a bit pita.

    I will update this post, when I make progress. So no new kernels for now.
    7
    Hi everyone :)

    You may heard that I'm writing an app to control the Kernel and that I'm rebranding it to JARVIS (The Computer in Iron Man's suit).

    This app needs a pretty icon - so if someone is capable of using the mighty Photoshop (or whatever) and wants to do me a favor.. Go ahead. And credits where credits due of course.
    When there are more than one person who wants to do the icons, I will make a small icon contest.

    Sent from my LG-P990 using XDA

    Edit:
    Here are some (pretty rough) pictures from the app. Pretty early so don't try to be critical ;-)

    OC/UV screen
    set and save new freq/volt dialog
    Misc setting

    More to come ;) Pretty slow developement progress - First app and so I need to look through many samples and such stuff, hehe.
    6
    Just a little update: Still developing for the o2x ;)

    Currently testing a possible release in irc. Head over there to grab it for your device - like always maybe not perfectly stable. This is the reason for the testing ;).