[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
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
 
Last edited:

jamiethemorris

Senior Member
Jan 7, 2013
1,851
803
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
 
Last edited:

jamiethemorris

Senior Member
Jan 7, 2013
1,851
803
Multirom link is in the op. I plan on getting s2w working soon also. The code is there, but it's made for an HTC one so it doesn't work yet. Technically logo2menu is in there as well lol

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

d08speed3

Senior Member
Jul 23, 2010
2,723
522
Dt2w works perfect! Will this kernel be updates as CP pushes changes in the future?

HTC DNA
LG Optimus G
 

d08speed3

Senior Member
Jul 23, 2010
2,723
522
CM double tap to sleep. Doesn't work well with dt2s. It turns off then back on.

HTC DNA
LG Optimus G

---------- Post added at 07:57 AM ---------- Previous post was at 07:56 AM ----------

CM double tap to sleep. Doesn't work well with dt2s. It turns off then back on.

HTC DNA
LG Optimus G

Edit: turning the CM dt2s works. I'm guessing you have this enabled for status bar double tap to sleep?

HTC DNA
LG Optimus G
 

jamiethemorris

Senior Member
Jan 7, 2013
1,851
803
CM double tap to sleep. Doesn't work well with dt2s. It turns off then back on.

HTC DNA
LG Optimus G

---------- Post added at 07:57 AM ---------- Previous post was at 07:56 AM ----------



Edit: turning the CM dt2s works. I'm guessing you have this enabled for status bar double tap to sleep?

HTC DNA
LG Optimus G

Just to clarify, in that last edit you're just saying that turning dt2s off in the settings makes the kernel's version of dt2s work right? Cause that's what I'm seeing on my phone. Thanks for the heads up, I enabled the dt2s setting a while ago but I always forget that I did so I hadn't tested it yet.

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

d08speed3

Senior Member
Jul 23, 2010
2,723
522
Just to clarify, in that last edit you're just saying that turning dt2s off in the settings makes the kernel's version of dt2s work right? Cause that's what I'm seeing on my phone. Thanks for the heads up, I enabled the dt2s setting a while ago but I always forget that I did so I hadn't tested it yet.

Sent from my Droid DNA using Tapatalk

Yea. Turning off CM's dt2s settings off makes your dt2s work. I see it enabled in sys>android_touch.

HTC DNA
LG Optimus G
 

-DroidIsDNA-

Senior Member
Jan 14, 2013
986
343
rochester
That's weird then. You have to double tap the status bar in case you didn't already know that. If that's still not working, then enabling the ROMs version of it in settings should do the trick.

Sent from my Droid DNA using Tapatalk

Ohhhhhh, yeah I was double tapping above the menu keys. Status bar works flawlessly. Thanks! Idk if its in the op or if I just blanked out
 

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