[Kernel][CM12/CM11][5.0.x/4.4.x]jamiethemorris's kernel[S2W/DT2W][CPU/GPU OC](Dec 1)

Search This thread

jamiethemorris

Senior Member
Jan 7, 2013
1,851
803
Like what? Kernel tweaks get me giddy. I tried it myself but it's much past what I know how to do

I've tried various methods of trying to get the different GPU OC's into one kernel, I tried lz4 compression for faster boot time, and I tried implementing gamma control. So far I haven't been able to get any of those to work. There's tons of tweaks out there, I just don't know what lots of them are. For example, I keep seeing everyone adding "kernel mode neon" support to their m7 kernels, but I have no idea what it is and have learned basically nothing by researching it.

Any suggestions are welcome.

Sent from my Droid DNA using Tapatalk
 
  • Like
Reactions: krazya and WEM97

-DroidIsDNA-

Senior Member
Jan 14, 2013
986
343
rochester
I've tried various methods of trying to get the different GPU OC's into one kernel, I tried lz4 compression for faster boot time, and I tried implementing gamma control. So far I haven't been able to get any of those to work. There's tons of tweaks out there, I just don't know what lots of them are. For example, I keep seeing everyone adding "kernel mode neon" support to their m7 kernels, but I have no idea what it is and have learned basically nothing by researching it.

Any suggestions are welcome.

Sent from my Droid DNA using Tapatalk

This is obvious, but I'm sure crpalmer can help. Also the guy who does lean kernel. And Franco. They seem helpful, especially the lean kernel guy. He did good work on the galaxy nexus
 

WEM97

Senior Member
Jun 25, 2011
978
929
Woodinville
I've tried various methods of trying to get the different GPU OC's into one kernel, I tried lz4 compression for faster boot time, and I tried implementing gamma control. So far I haven't been able to get any of those to work. There's tons of tweaks out there, I just don't know what lots of them are. For example, I keep seeing everyone adding "kernel mode neon" support to their m7 kernels, but I have no idea what it is and have learned basically nothing by researching it.

Any suggestions are welcome.

Sent from my Droid DNA using Tapatalk

Just curious. What would you suggest in terms of Kernel control applications for your kernel? I Normally would use SetCPU or trickster, but what would you suggest?
 

jamiethemorris

Senior Member
Jan 7, 2013
1,851
803
Just curious. What would you suggest in terms of Kernel control applications for your kernel? I Normally would use SetCPU or trickster, but what would you suggest?

Honestly probably the best method is to just use crpalmers init.d scripts, but I've been using trickstermod lately because I've been testing a lot of different things.

Sent from my Droid DNA using Tapatalk
 

jamiethemorris

Senior Member
Jan 7, 2013
1,851
803
This is obvious, but I'm sure crpalmer can help. Also the guy who does lean kernel. And Franco. They seem helpful, especially the lean kernel guy. He did good work on the galaxy nexus

Yeah I'm gonna start asking for help, I just wanted to see if I could figure it out myself first. I also usually feel like I'm pestering people when I ask for help so I try to do it sparingly

Sent from my Droid DNA using Tapatalk
 

rejectedjs

Senior Member
Apr 1, 2012
463
154
@jamiethemorris Hey jamie, there's a new 4.4.2 ROM out that I want you to try, the new cfX one. The ROM doesn't boot if you flash either the bionic or dalvik libs you made, any idea?
 

jamiethemorris

Senior Member
Jan 7, 2013
1,851
803
@jamiethemorris Hey jamie, there's a new 4.4.2 ROM out that I want you to try, the new cfX one. The ROM doesn't boot if you flash either the bionic or dalvik libs you made, any idea?


Yeah I noticed that when I tried the ROM last night. Apparently the original moto x dalvik libs don't work either. I think it has something to do with other optimizations they've done. I'm gonna see if I can figure something out

Sent from my Droid DNA using Tapatalk
 

jamiethemorris

Senior Member
Jan 7, 2013
1,851
803
Totally unrelated to the kernel... I never really liked the included android sounds, especially the cheesy song ones. I'm considering creating some custom ringtones and notifications in SuperCollider. Probably wouldn't be music but rather just sounds that I think are cool sounding. And of course I would be releasing the source code for anyone that wants to play with them. Is that something anyone be interested in?

Sent from my Droid DNA using Tapatalk
 

Mav3rick40

Senior Member
Apr 25, 2013
172
29
Arnold Nebraska
Totally unrelated to the kernel... I never really liked the included android sounds, especially the cheesy song ones. I'm considering creating some custom ringtones and notifications in SuperCollider. Probably wouldn't be music but rather just sounds that I think are cool sounding. And of course I would be releasing the source code for anyone that wants to play with them. Is that something anyone be interested in?

Sent from my Droid DNA using Tapatalk

Yeah, that would be nice. I would like to go through it and see what's what and how things work.

Sent from my HTC6435LVW using Tapatalk
 

rchrdcrg

Senior Member
Nov 19, 2010
205
35
Branson, MO
www.youtube.com
Awesome tweak of crpalmer's kernel! My phone's running solid at the max 1.89GHz OC as well as the 500MHz GPU OC. It upped my AnTuTu benchmark score from around 17,500 to 20,800 (still a far cry from the 34,000+ my Tegra Note 7 gets, but it's still good for a 1 1/2 year old piece of hardware).

I do have a question... does this kernel not work with ART? I had my phone set to ART, but when I installed this it reverted to Dalvik and won't let me switch back to ART.
 

jamiethemorris

Senior Member
Jan 7, 2013
1,851
803
Awesome tweak of crpalmer's kernel! My phone's running solid at the max 1.89GHz OC as well as the 500MHz GPU OC. It upped my AnTuTu benchmark score from around 17,500 to 20,800 (still a far cry from the 34,000+ my Tegra Note 7 gets, but it's still good for a 1 1/2 year old piece of hardware).

I do have a question... does this kernel not work with ART? I had my phone set to ART, but when I installed this it reverted to Dalvik and won't let me switch back to ART.

It should work on ART. I've run it on ART a few times and I know a few others running it are only using ART. So I'm not sure why that would be happening. What ROM are you running? If you flash back to the stock kernel does it let you go back to ART?

Sent from my Droid DNA using Tapatalk
 

Top Liked Posts

  • There are no posts matching your filters.
  • 17
    This is my version of crpalmer's kernel with some additional features:

    -Android 5.0 support
    -Sweep2Wake/Sweep2Sleep, DoubleTap2Wake (from Beastmode)
    -force fast charge (credits to chad0989)
    -kexec-hardboot support (for use with MultiROM, credits to Tasssadar for the multirom and the m7 patch I used)
    -FauxSound (faux123)
    -Moar overclockingz (up to 1890 mhz)
    Note: Every chip is different, your device may not support these higher frequencies.
    -GPU overclocking (up to 533 mhz) (credits to faux123, )
    Note: Again, every chip is different, your device may not support higher frequencies.
    -Additional CPU governors and I/O schedulers. Read about CPU governors here.
    -Dynamic Fsync (faux123)
    -Simple GPU Governor (faux123)
    -L2 Cache overclock
    -600 MHz bus overclock
    -F2FS support (still no luck with getting this fully working, testers are welcome)
    -LZ4 compressed kernel (faster boot)
    -More TCP Congestion algorithms
    -Lots of slimbus improvements thanks to poondog

    For maximum performance, I recommend some optimized dalvik libraries (KitKat only):
    -For 4.4.4 ROMs, use the "CM11 Dalvik_Final" zip in this post

    -For older (4.4.2) ROMs:
    -For 4.4.2 CM11-based ROMs released before March 1st, use my Sense dalvik libraries here.
    -If you are using a 4.4.2 CM11-based ROM released after March 1st, or any ROM with this commit you will need to use the 4.4_qc-optimized_dalvik-cm11.zip here. Credits to kszaq for this one.
    -For LiquidSmooth, use these Sense dalvik libraries here.
    -Also, credits to kszaq because these were based on his flashable zip.

    If you find any ROMs where none of these zips work, let me know and I will try to make one for that ROM.



    I am not responsible for anything that happens to your phone. It is your device and your responsibility.

    The following scripts are not required to change settings, they only exist as an alternative for people who don't want to use a third-party app. You can still use your favorite tuner app to tweak most of these kernel settings.

    init.d tweaks

    I created some scripts that run on boot (init.d) because I install my kernel so many times that I would go insane if I had to use an installer to configure it each time. By using these scripts and configuration files on the sdcard, I can just configure it once and keep installing away to my heart's content.

    After installing this kernel, there will be:

    /system/etc/init.d/99crpalmer

    run at boot, even if you switch to another kernel. It is safe to leave this file there and to let it run as it only makes changes if the kernel contains "crpalmer" in the version. If run with a kernel that contains crpalmer in the version, it will rename mpdecision so it can't run. If you install another kernel it will then rename mpdecision back so that it will run in the new kernel. In addition to stopping the built-in mpdecision it will allow the following tweaks:

    CPU Frequencies
    * Frequencies loaded from /sdcard/crpalmer-cpufreq-min and /sdcard/crpalmer-cpufreq-max
    * Governor loaded from /sdcard/crpalmer-cpufreq-governor
    * If you specify either or both of these frequencies, it will lock down all of the CPU frequency controls. I had to do this because HTC overrides them in a script that is run very late in the boot process (thanks HTC!).
    * E.g. adb shell su -c "echo 192000 > /sdcard/crpalmer-cpufreq-min"
    * E.g. adb shell su -c "echo 1728000 > /sdcard/crpalmer-cpufreq-max"
    * E.g. adb shell su -c "echo interactive > /sdcard/crpalmer-cpufreq-governor"

    Undervolting
    * + or - value loaded from /sdcard/crplamer-uv
    * The undervolting in 2.0.23 for FAST binned CPUs would be specified as:
    * E.g. adb shell su -c "echo -100 > /sdcard/crpalmer-uv"

    Lightsensor
    * My light sensor changes didn't sound like they worked well for everyone. If you don't like them you can disable them by:
    * E.g. adb shell touch /sdcard/crpalmer-stock-lightsensor

    HTC Colour "Enhancement"
    * If this file is present then the HTC's colour "enhancement" will be used, otherwise it will be disabled.
    * If this file contains the string "m7" then it will use one of the colour enhancement that was used in the M7 kernel for a panel most like ours.
    * E.g. adb shell touch /sdcard/crpalmer-color-enhancement


    DoubleTap2Wake:
    * This allows you to wake the device by double tapping in the bottom half of the screen, just above the hardware keys.
    * To enable or disable, create the file /sdcard/jamiethemorris-dt2w
    * If this file contains a 1, dt2w is enabled. If it contains a 0 it is disabled. Enabled by default.

    Sweep2Wake/Sweep2Sleep:
    * This allows you to wake the device by sweeping from left to right over the hardware keys, and sleep the device by sweeping from right to left.
    * To enable or disable this, create the file /sdcard/jamiethemorris-s2w.
    * If the file contains a 1, s2w and s2s are enabled. If it contains a 0, they are disabled. Enabled by default.

    GPU Overclock:
    * The GPU's max frequency is loaded from /sdcard/jamiethemorris-gpu-oc. If this file does not exist, the stock frequency of 400 MHz is used.
    * To set this GPU overclock, you need that file containing the GPU frequency in MHz. Frequencies from 400 to 550 MHz are available.
    * E.g. adb shell su -c "echo 450 > /sdcard/jamiethemorris-gpu-oc"

    GPU Governor:
    * You can choose from either ondemand, simple, or performance GPU governors. Default is ondemand.
    * The governor is loaded from /sdcard/jamiethemorris-gpu-gov
    * E.g. adb shell su -c "echo simple > /sdcard/jamiethemorris-gpu-gov"

    Dynamic Fsync:
    * From Faux123: The dynamic sync control interface uses Android kernel's unique early suspend / lat resume interface. While screen is on, file sync is disabled. When screen is off, a file sync is called to flush all outstanding writes and restore file sync operation as normal.
    * Disabled by default. To enable or disable, create the file /sdcard/jamiethemorris-dyn-fsync. Use 0 to disable and 1 to enable.

    Force Fast Charge:
    * To enable or disable fast charge, create the file /sdcard/jamiethemorris-fastcharge
    * Use 0 to disable, and 1 to enable. Disabled by default.

    Intelliplug and Eco Mode:
    * Intelliplug is a replacement hotplug driver for HTC's mpdecision, Eco Mode limits your device to dual-core operations.
    * To enable or disable, use create the file /sdcard/jamiethemorris-intelliplug
    * If the file contains 0, intelliplug and eco mode are both disabled and your phone will use crpalmer's hotplug driver. If the file contains a 1, intelliplug is enabled but eco mode is disabled. If the file contains the string 'eco', intelliplug and eco mode are both enabled. Both are disabled by default.

    I/O Scheduler:
    * To change the I/O scheduler, create the file /sdcard/jamiethemorris-iosched, and your device will use whatever I/O scheduler you specify.
    * E.g. adb shell su -c "echo row > /sdcard/jamiethemorris-iosched"

    Undervolt Override:
    * This allows you to globally undervolt your device, but leave the 1836 MHz, 1890 MHz, and 1917 MHz frequencies at their default voltages.
    * To enable or disable:
    - First you need to find your PVS bin number. You can find this by checking the file /sys/module/acpuclock_krait/parameters/pvs_number.
    - Create the file /sdcard/jamiethemorris-pvs and put your PVS number in that file.
    - After a reboot, your device will automatically set the highest frequencies to the default voltages for your chip.
    * If you are either lazy or confused, you can put '?' in the file and your phone will set itself to the voltages for a 'nominal' binned chip.





    For the rest of the features and changelog, see crpalmer's original cm11 kernel thread.

    Thanks: crpalmer for all of his help (before I started on this I didn't even know how to use git), coachcrey for originally inspiring me to do this, and all the other devs/builders here that may or may not know I'm learning from them constantly.

    Downloads

    Latest version:

    Version 6.0.1



    Older versions:

    Older versions on Android File Host

    Source:
    Kernel Source
    Build Tools

    Recommended Settings
    You can either use an app such as TricksterMod or Kernel Tweaker to set these parameters or use my scripts.
    -Minimum CPU frequency: 162000
    -Maximum CPU frequency: 1890000 for performance, 1512 for battery life, 1728 for balanced
    -Undervolt: -100 for battery life, -50 for balanced/stability
    -Color enhancement (script only): m7
    -DoubleTap2Wake: Enabled for convenience or pretending you have a G2, disabled for battery life
    -Sweep2Wake: Enabled for convenience, disabled for battery life
    -Fastcharge: Disabled for safety, enabled for convenience
    -GPU overclock: 500 MHz or 533 MHz for performance, 400 MHz or 320 MHz for battery life, 450 MHz for balanced
    -GPU governor: ondemand for battery, simple for performance
    -CPU governor: preservative for battery or balanced (decrease up threshold for faster response at the expense of battery), intelliactive for general performance, performance for benchmarking
    -Intelliplug/Eco mode: Disabled for performance, enabled for balanced, Eco Mode for battery life
    -I/O Scheduler: BFQ for balanced/stability, vr for performance
    -Dynamic Fsync: Disabled for safety (less likely to have data loss in the event of sudden power off), enabled for performance, enabled for balanced
    -Undervolt Override (script only): set jamiethemorris-pvs to your chip's PVS bin. Recommended for those with high overclock that are undervolted.

    To make things easier for those who do not wish to use a third-party app, I have posted some zips with the necessary files. Just unzip them and put the files on your sdcard.​

    Default settings
    Recommended settings (these are the settings I use, good performance vs. battery compromise
    For best battery life
    For best performance

    XDA:DevDB Information
    jamiethemorris's kernel, Kernel for the HTC Droid DNA

    Contributors
    jamiethemorris, crpalmer
    Source Code: https://github.com/jamiethemorris/dna-kernel/tree/6.x

    Kernel Special Features: dt2w, kexec-hardboot, overclock, fastcharge, fauxsound

    Version Information
    Status: Stable

    Created 2014-01-28
    Last Updated 2014-12-04
    8
    New Version!

    5.5.5:
    -Dynamic Fsync (Enable this only if you are sure your device is stable! If you have too many reboots, your data may get corrupted and you will have to reflash your ROM.)
    -Simple GPU Governor
    -Intelliplug hotplug driver with Eco mode (dual core operations). When this is disabled, it will use crpalmer's hot-plug driver.
    -Intellidemand tweaks - I'm still working on this one, it tends to have random reboots at the moment.
    -Decrease GPU OC to 533 MHz and increase bandwidth
    -1917 MHz overclock is back, should be more stable now
    -Sweep2wake + Sweep2Sleep
    -Doubletap2sleep is not implemented in this version, sorry. Use your ROM's dt2s feature for now. I do plan on adding this back.
    -Doubletap2wake can be used anywhere on the screen
    -There should be scripts for all features, let me know if I missed something.
    -Undervolt override for high overclocks. You can globally undervolt while leaving 1836 MHz, 1890 MHz, and 1917 MHz clocks unaffected.
    -L2 cache overclock
    -600 MHz bus overclock for 1674 MHz - 1917 MHz frequencies
    -Support for F2FS filesystem (F2FS TWRP and MultiROM are coming as well, as soon as I have time to test)
    -FIOPS I/O Scheduler

    You guys should notice a drastic performance and smoothness improvement with Dynamic Fsync Enabled :D
    5
    Changelog:

    6.0.1
    - All updates from CM:
    - F2FS updates. Maybe F2FS works now (probably not).
    - UID-based routing
    - Enable selinux development
    - Initial support for Lollipop (KitKat 4.4.4 ROMs are still supported)

    5.8.2
    - Updates from crpalmer:
    * Update some video bandwidth parameters
    * Interactive governor updates
    - Pretty sure that's it.

    5.8.1
    - Updates from crpalmer:
    * Patched up to linux 3.4.99 (latest version of as now)
    * Patched up to latest CM (fixes a couple of CVEs, not a whole lot else was missing)

    5.7.7.1:
    -Force Fast Charge should now be fixed
    -Make sure all cores are enabled when using performance CPU governor

    5.7.7:
    -Moved from Linaro 4.8.3 to 4.9.1
    -Update modem restart commit from stock CM kernel
    -No more intelliplug due to random reboots and the fact that simple plug works just fine. I may bring it back future versions.
    -Reduce memory usage of input driver + oom tweaks that theoretically help a little bit with the touchscreen wake issue. I am still working on finding a real fix.
    -SLIMBUS: m8 port, caf updates, new OC from poondog (better audio quality)
    -Update BFQ to v7r3
    -Update to latest F2FS driver

    Older versions:
    5.7.6:
    -NOTE: There are 2 different zips for this version to avoid conflicts between crpalmer's simple plug and faux123's intelliplug.
    -IMPORTANT: On the intelliplug version, intelliplug is enabled by default. If you disable intelliplug, there will be no hotplug driver running which will kill your battery quickly. So if you decide you don't want to use intellidemand, please use the simple plug version instead.
    -Memory optimizations from Motorola
    -Enable Linaro's power-efficient workqueues
    -Intelliplug updates
    -Merge latest CM commits
    -Merge crpalmer's latest commits
    -Update to Linux 3.4.86
    -Update F2FS to the latest version

    5.6.4:
    -Hopefully fix voltage for "faster" binned chips
    -Fixed random reboots when using intellidemand governor
    -Fix scripts
    -Disable intellidemand's active max frequency to prevent it from interfering with overclock
    -Enable additional TCP congestion algorithms (thanks iHateWebOS)
    -Sync s2w/dt2w/pocket detection with Beastmode
    -Add Preservative governor (credits to bedalus)
    -Update BFQ I/O Scheduler to v7r2
    -Merge latest CM commits
    -Merge crpalmer's latest commits
    -Update to Linux 3.4.79
    -Add LZ4 kernel compression/decompression for faster boot
    -I think I forgot to mention this before, but I am now using a Cortex a-15 optimized Linaro toolchain.

    5.5.5:
    -Dynamic Fsync (Enable this only if you are sure your device is stable! If you have too many reboots, your data may get corrupted and you will have to reflash your ROM.)
    -Simple GPU Governor
    -Intelliplug hotplug driver with Eco mode (dual core operations). When this is disabled, it will use crpalmer's hot-plug driver.
    -Intellidemand tweaks - I'm still working on this one, it tends to have random reboots at the moment.
    -Decrease GPU OC to 533 MHz and increase bandwidth
    -1917 MHz overclock is back, should be more stable now
    -Sweep2wake + Sweep2Sleep
    -Doubletap2sleep is not implemented in this version, sorry. Use your ROM's dt2s feature for now. I do plan on adding this back.
    -Doubletap2wake can be used anywhere on the screen
    -There should be scripts for all features, let me know if I missed something.
    -Undervolt override for high overclocks. You can globally undervolt while leaving 1836 MHz, 1890 MHz, and 1917 MHz clocks unaffected.
    -L2 cache overclock
    -600 MHz bus overclock for 1674 MHz - 1917 MHz frequencies
    -Support for F2FS filesystem (F2FS TWRP and MultiROM are coming as well, as soon as I have time to test)
    -FIOPS I/O Scheduler

    5.5.4.1:
    -Now only one kernel zip
    -GPU overclock is set with /sdcard/jamiethemorris-gpu-oc between 400 and 550 MHz. Default is 400.
    -New wheatley governor
    -Some more optimizations

    5.5.4:
    -Fixed video undderrun (blue flickering) issue with GPU overclock
    -Updated FauxSound to 2.1
    -Now only 2 kernel zips. One is stock GPU clock and the other is for 450 and 500 mhz overclocks. Default is 500 on the OC version.
    -New governors: intellidemand, intelliactive, smartassV2, lagfree, badass, Lionheart
    -New I/O Schedulers: zen, vr
    -Improved touchscreen sensitivity - If this causes problems for people I will revert it.
    -SLIMbus overclock which should in theory improve audio quality
    -Various performance optimizations, see github for full details
    5.5.3.4:
    -Switch linaro optimization level from -03 to -0fast
    -A few other optimizations, see github for full details
    5.5.3.3: Up to 500 mhz GPU overclock. For now, there are 3 different downloads depending on what GPU frequency you want - stock (400 mhz), 450 mhz, and 500 mhz. There are no other changes, so if you don't want a GPU overclock there is no need to update to this version.
    5.5.3.2: Up to 1890 mhz CPU overclock
    5.5.3.1: Added FauxSound
    5
    New build is up!

    Try the preservative governor... Awesome battery life while keeping good performance.

    5.6.4:
    -Hopefully fix voltage for "faster" binned chips
    -Fixed random reboots when using intellidemand governor
    -Fix scripts
    -Disable intellidemand's active max frequency to prevent it from interfering with overclock
    -Enable additional TCP congestion algorithms (thanks iHateWebOS)
    -Sync s2w/dt2w/pocket detection with Beastmode
    -Add Preservative governor (credits to bedalus)
    -Update BFQ I/O Scheduler to v7r2
    -Merge latest CM commits
    -Merge crpalmer's latest commits
    -Update to Linux 3.4.79
    -Add LZ4 kernel compression/decompression for faster boot
    -I think I forgot to mention this before, but I am now using a Cortex a-15 optimized Linaro toolchain.


    Read an explanation of the new Preservative governor here, by the creator, bedalus: http://xdaforums.com/nexus-4/general/kernel-moob-t2549750/post50173462
    5
    @jamiethemorris, have you pulled the recent s2w dt2w PD and synaptics_3200.c code, we seemed to have fixed sleep issues (you should literally be able to just copy them from ours)

    Not yet. Thank you, they will be in the next release.

    For some reason I'm not having these problems, not sure why.

    Sent from my Droid DNA using Tapatalk