[KERNEL][AOSP-3.4.y][AXDEV][d2] Harkness - 05/01/14

Search This thread

Synthetic.Nightmare

Inactive Recognized Developer
Mar 29, 2011
952
1,211
I was able to make a quick build today and try out some cm-10.2. This update has all the recent kgsl updates so keep that in mind when trying this on your rom. I've been running it on the most recent cm nightly and it's been working fine so far. If you're running this, get some undesirable behaviour, and suspect it is because of the kernel, please include logging of some sort in your report. Thanks :)

Changes:
- merged in cm/cm-10.2
- merged in proxy exec structures from sched-dl V8
- reinclude -mtune flag for Cortex-A9 (showed steady performance increases overall)
- remove __cpuinit function (https://lkml.org/lkml/2013/5/20/589)

Also, I'm likely to stop supporting 4.2.2 in the very near future, because I already feel I have enough to maintain and after a while of focusing on Harkness, I broke inline kernel compilation with my rom (well I didn't break it, but it won't boot when compiled inline lol and last_kmsg's didn't point to anything directly), so I'm weeding that out in my mainline jb-mr2 branch while maintaining a jb-mr2-exp in parallel, at least until I can get a cleaner branch that is up to date with jb-mr2-exp.
 
Last edited:

Synthetic.Nightmare

Inactive Recognized Developer
Mar 29, 2011
952
1,211
With the new CM11 builds being churned out, I decided to give the 12-08 nightly an install. I had also seen that Juri (jlelli) started up a branch for a new sched-dl ABI on the current Linux mainline kernel, so I decided to work on bringing that over and running my own kernel on top of things. I managed to get a full implementation of -deadline this time around so I thought I'd share.
This build doesn't have all the stuff from the prior version but a handful of things from the previous version(s) got merged this morning (still includes fauxsound, fast charge, off the top of my head).

I'll try getting something more formal out soon as well as redoing the OP with the proper details, etc.

Here's this morning's build if you want to try it out.

http://goo.im/devs/aokpx/Harkness-Kernel/Harkness-kernel-d2att-2013-12-09.zip

Source:
kitkat branch
new sched-dl branch

Sent from my SGH-T999 using Tapatalk
 
Last edited:

phoenix2217

Senior Member
Dec 21, 2010
1,068
249
18518
With the new CM11 builds being churned out, I decided to give the 12-08 nightly an install. I had also seen that Juri (jlelli) started up a branch for a new sched-dl ABI on the current Linux mainline kernel, so I decided to work on bringing that over and running my own kernel on top of things. I managed to get a full implementation of -deadline this time around so I thought I'd share.
This build doesn't have all the stuff from the prior version but a handful of things from the previous version(s) got merged this morning (still includes fauxsound, fast charge, off the top of my head).

I'll try getting something more formal out soon as well as redoing the OP with the proper details, etc.

Here's this morning's build if you want to try it out.

http://goo.im/devs/aokpx/Harkness-Kernel/Harkness-kernel-d2att-2013-12-09.zip

Source:
kitkat branch
new sched-dl branch

Sent from my SGH-T999 using Tapatalk

This is awesome :) loved your kernel. Going to give it a flash now and report back

Sent from my SAMSUNG-SGH-I747 using XDA Premium 4 mobile app
 
  • Like
Reactions: Synthetic.Nightmare

dieselford

Senior Member
Jan 8, 2012
1,058
867
Tampa, FL
Is this compatible with 4.3 as well? Didn't know if all linux 3.4 builds could use it

Sent from my SGH-T999 using Tapatalk
 

Synthetic.Nightmare

Inactive Recognized Developer
Mar 29, 2011
952
1,211
Is this compatible with 4.3 as well? Didn't know if all linux 3.4 builds could use it

Sent from my SGH-T999 using Tapatalk

The major factor in compatibility with older builds is the display drivers. I haven't looked at what all changed in that aspect between cm11 and the last cm10.x build, but it might work if its recent. If thats the case, you can try giving it a shot and see how it goes. If it doesn't work, you could always simply reflash your kernel or dirty flash your ROM's zip to restore the stock kernel.

Sent from my SGH-T999 using Tapatalk
 

matrixzone

Senior Member
Mar 19, 2012
3,534
3,584
With the new CM11 builds being churned out, I decided to give the 12-08 nightly an install. I had also seen that Juri (jlelli) started up a branch for a new sched-dl ABI on the current Linux mainline kernel, so I decided to work on bringing that over and running my own kernel on top of things. I managed to get a full implementation of -deadline this time around so I thought I'd share.
This build doesn't have all the stuff from the prior version but a handful of things from the previous version(s) got merged this morning (still includes fauxsound, fast charge, off the top of my head).

I'll try getting something more formal out soon as well as redoing the OP with the proper details, etc.

Here's this morning's build if you want to try it out.

http://goo.im/devs/aokpx/Harkness-Kernel/Harkness-kernel-d2att-2013-12-09.zip

Source:
kitkat branch
new sched-dl branch

Sent from my SGH-T999 using Tapatalk
Good news, after long time :good:
 
  • Like
Reactions: Synthetic.Nightmare

dieselford

Senior Member
Jan 8, 2012
1,058
867
Tampa, FL
I would imagine it would be okay then. BMS is compatible with both and I'm sure any others should be as long as they are synced after CM's graphic driver change from a month or so ago. Thanks for the info

Sent from my SAMSUNG-SGH-T999 using Tapatalk
 
  • Like
Reactions: Synthetic.Nightmare

Synthetic.Nightmare

Inactive Recognized Developer
Mar 29, 2011
952
1,211
The update is official. Uploaded my build for this morning, updated the OP, now for a changelog:

- Started over w/ recent CM kernel as a base (includes recent merges from Kernel.org and CodeAurora)
- Fully implemented shed-deadline's new ABI
- Updates to MSM's cpufreq driver from CAF
- Re-branded for axDev
- Re-stripped some modules
- Re-included FauxSound, VoltageControl, FastCharge, -O2/Cortex-A9 optimizations
- Re-implemented patches from TripNRaVeR, franciscofranco, Linux Mainline, ARM, imoseyon, faux123, and plenty more
(I also removed a commit from the last build that seemed to cause some problems with lowmemorykiller after some runtime)

I cut it short since, excluding the new sched-dl, there's a lot of the same (with a good bit removed) and as usual, you can check out github. Gonna try steering clear of a few things this time around, for the sake simplicity and not subtly breaking things.

Download - 12.10.2013:
GooManager
DevHost


Good news, after long time :good:

Yeah. I had too much going on so I had to step back for a bit.
 
Last edited:

Synthetic.Nightmare

Inactive Recognized Developer
Mar 29, 2011
952
1,211
Here's an early Sunday morning update. I've backported some power efficient workqueue patches from Linaro, which should (as the name implies) save some power, since it allows per-cpu workqueues to be more power-oriented (unbound).
Let me know how it runs.

12/15/2013 Download:
goo.im

d-h.st

There were quite a few changes so imo this was the best way to post the changelog. Sorry if it's too much. Click the spoilers for details.

Changelog:
- Power efficient workqueue patches from Linaro

0aa7b4f d2: defconfig: Enable power efficient workqueues by default
45390d7 [LINARO] block: queue work on power efficient wq
c31536d [LINARO] workqueue: Add system wide power_efficient workqueues
d2f58a4 [LINARO] workqueues: Introduce new flag WQ_POWER_EFFICIENT for power oriented workqueues

- Sched/franco updates from @xcstacy's franco-based kernel

2f20606 sched: Fix clear NOHZ_BALANCE_KICK
32e9e9c sched: Micro-optimize the smart wake-affine logic
ae4ab45 sched: Implement smarter wake-affine logic
50ae492 sched: Fix select_idle_sibling() bouncing cow syndrome
15ab744 writeback: fix race that cause writeback hung
59fa04d softirq: reduce latencies
6d4537f ARM: sched_clock: Load cycle count after epoch stabilizes
44c4c34 sync: don't block the flusher thread waiting on IO
ad5289e writeback: Fix occasional slow sync(1)
289cc56 mm: pass readahead info down to the i/o scheduler
e3ac658 mm: change initial readahead window size calculation
e0a5994 Added optimized ARM RWSEM algorithm.
052da22 sched/rt: Remove redundant nr_cpus_allowed test
99aebd8 staging: android: Fix three checkpatch issues in binder.c
e700d5a msm: Allow lowmem to be non contiguous and mixed.
0ed2a0e ARM: sched: clear SD_SHARE_POWERLINE
b325ffb sched: add a new SD SHARE_POWERLINE flag for sched_domain
f0418ea sched: implement usage tracking
59a4fdf sched: make __update_entity_runnable_avg() fast
a2c3960 sched: update_cfs_shares at period edge
5f7adee sched: refactor update_shares_cpu() -> update_blocked_avgs()
1bcf964 sched: replace update_shares weight distribution with per-entity computation
0e58cdd sched: maintain runnable averages across throttled periods
8b79768 sched: normalize tg load contributions against runnable time
572d167 sched: compute load contribution by a group entity
42c3994 sched: aggregate total task_group load
3211142 sched: account for blocked load waking back up
2ddb5b2 sched: add an rq migration call-back to sched_class
ee99ca8 sched: maintain the load contribution of blocked entities
d00aa7f sched: aggregate load contributed by task entities on parenting cfs_rq
4766f30 sched: maintain per-rq runnable averages
4ba8d6a sched: track the runnable average on a per-task entity basis

- Fixes to allow ARM RWSEM algorithm from franco updates

339c0b6 d2: defconfig: Use rwsem algorithm
2e76493 board: M2: system_rev should be unsigned

- Updates to interactive cpufreq from CAF/google(AOSP)

d8a5b0d cpufreq: interactive governor drops bits in time calculation
d42e523 cpufreq: interactive: delete timers for GOV_START
bf95a1a cpufreq: interactive: Remove trace event from idle_start handler
c36beff cpufreq: interactive: sync freq feature for interactive governor
5cb4014 cpufreq: interactive: Reset floor_validate_time if busy at max for 100ms
cc044f9 cpufreq: interactive: Allow 1 ms error in above_hispeed_delay comparisons
2db4190 cpufreq: interactive: Add a sampling_down_factor for max frequencies

- Patches from Linuxsociety

87a29ba SCHEDULER: Autogroup Patch by Godmachine/Linuxsociety (Group by current user android UID instead of task ID)
aa34f37 CPU GOV: Online CPU core when switching govs

- Cherry-pick previous merge removing deprecated "__cpuinit"

- Disable GENTLE_FAIR_SLEEPERS (this should benefit sched-dl as well, since sleeping tasks won't be treated as if they're in a run-queue)​
 
Last edited:

Sajoeee

Senior Member
Jun 8, 2013
801
469
going to try this with the new pa 4.0 on my d2att. need to check the gs3 tmo threads more often. :) thanks.
Sent from my SAMSUNG-SGH-I747 using Tapatalk
 
  • Like
Reactions: Synthetic.Nightmare

Synthetic.Nightmare

Inactive Recognized Developer
Mar 29, 2011
952
1,211
Normally, I wouldn't post an update after I just asked for status on power consumption without giving everyone a chance to do a good power cycle, but I woke up last night after a couple of hours of sleep and saw I was only up to 96% charge due to charging in low power mode on my stock charger. I think CM might have re-disabled power collapse in an attempt to fix it, but I went ahead and imported some updates to our battery driver from the Samsung 4.3 update just to be safe. So far, my device is charging the way it is meant to (and no low power mode traces from msm_otg yet either). Hopefully, we can get some more accurate results on how well Linaro's unbound wq's work after getting a good night's charge next power cycle.

12-16-13 Download:
goo.im

d-h.st

Not too many changes in this one:


- Merge in changes from CM (CAF merge, kernel.org merge, disable power collapse)
- Update Samsung battery driver

EDIT3: Made up my mind. It IS a bug. And I fixed it (this probably should have been done when CM did its apexq bring-up). Also, I've managed to port over dkp's cool new light features ("breathing" notification light & touchkey backlight animation/touchkey brightness control). This will all be in the next release.
 
Last edited:

Synthetic.Nightmare

Inactive Recognized Developer
Mar 29, 2011
952
1,211
Got an upload for today onto goo. I'll make the mirror to dev host soon... maybe. Files there normally end up going away though.

12-17-2013 Download:

goo.im

Changelog:

- Ported over dkp's awesome LED "breathing" notification & touchkey backlight animations (fixes and all)
- Got rid of OTG checking for charging status (gets rid of OTG low power mode when plugged into charger)
- Picked a fix-up to remove the stupid vdd min causing voltages to not properly set to voltage tables (faux123)
- Linaro cpu topology modifications for Cortex-A9 & enable arch dependent cpu power functions for sched
- cpu policy matching improvements from LeanKernel
- Inline some functions for acpuclock-krait (stratosk)
- Revert a change to interactive, causing it to stick at sync_freq on occasion (kt)
- smp patches from 3.5 (motley)
- Clean up some cflag optimizations
 

OffDatGoGo

Senior Member
Oct 21, 2010
387
152
MD
Samsung Galaxy S23 Ultra
I am about to download this right now. Never mind my sig, I'm currently running LiquidSmooth 2.10 & stock kernel with no other mods. I'll let ya know how it goes after flashing. Thanks for the kernel @Synthetic.Nightmare.

UPDATE: Guess I have to flash a different ROM b/c this version of LS doesn't like any kernel upgrades. Ugh!

DEVICE: SGH-T999 + ROM: LiquidSmooth v2.37 + KERNEL: KT747 + MODS: TKMOD 2.4 = A FREAKIN' BEAST!
 
Last edited:

jukiewalsh

Senior Member
Sep 16, 2013
866
346
going to try this with the new pa 4.0 on my d2att. need to check the gs3 tmo threads more often. :) thanks.
Sent from my SAMSUNG-SGH-I747 using Tapatalk

Can you confirm this working on D2att? I get nothing but bootloops after flashing over both clean cm11 and quantum
Edit: sometimes it will go as far as a black screen and say systemui has stopped
 
Last edited:

Synthetic.Nightmare

Inactive Recognized Developer
Mar 29, 2011
952
1,211
Friday morning build...
Added a bit more to the OP

12/20/2013 Downloads:

goo.im

d-h.st

Changelog:

- More uses for power_efficient workqueues [pe_wq]
(Linaro pushed some updates using pe_wq in different areas)

- A couple of sched updates from Linaro
(a couple of things that should help pe_wq work better on dual cores)

- Implement less deprecated Linaro topology implementation with cpupower driver
(the last implementation used a generalized freq table, this one includes a platform-specific config & dual-core specific driver)

- Import semaphore-n4's ondemand cpufreq driver
(cleaned up of a lot of PowerHAL-reliant stuff & tweaked by stratosk w/ input tunables, see OP)

- Set sched_mc_power_savings to 2 by default
(to take advantage of cpu_power driver)

- Merge in cm-11.0
(smart dock changes)

- Increase max readahead to 1024

- Optimize for Cortex-A15 & neon-vfpv4



Can you confirm this working on D2att? I get nothing but bootloops after flashing over both clean cm11 and quantum
Edit: sometimes it will go as far as a black screen and say systemui has stopped

Strange.
It should work on d2att as long as it's a recent build. The config is set to build for d2att to begin with.
Hard to tell for sure without logs though.
 
Last edited:

jukiewalsh

Senior Member
Sep 16, 2013
866
346
[/QUOTE]
Strange.
It should work on d2att as long as it's a recent build. The config is set to build for d2att to begin with.
Hard to tell for sure without logs though.[/QUOTE]
I would post one but to my knowledge you can't logcat during boot can you?
 

Synthetic.Nightmare

Inactive Recognized Developer
Mar 29, 2011
952
1,211
I would post one but to my knowledge you can't logcat during boot can you?

No but if you install the kernel, let it boot up/fail, then right after go into recovery and flash a working backup kernel afterwards, you might be able to catch a last_kmsg [last kernel message] (only thing a logcat might do is tell me whether or not its your ROM thats the problem... And that depends on how far it boots). I use an app called SysLog for quick and easy access to any type of log if you want to try that out and not have to take logs manually.

Also I was almost certain there were a couple of people on d2att that were using this at some point and might still check in. Hopefully they can provide some feedback as well.

If all else fails my gf has a d2att, but she's still running one of my old jelly bean builds on it. Once she gets back home from out of town, I can try setting her up on a kitkat build for some tests.

Sent from my SGH-T999 using Tapatalk
 
Last edited:

Synthetic.Nightmare

Inactive Recognized Developer
Mar 29, 2011
952
1,211
https://docs.google.com/file/d/0B_eFS8Sv1_BBbUVBZnBvVkNzcHc/edit?usp=docslist_api
edit: nevermind I messed it up i think
Sent from my SAMSUNG-SGH-I747 using Tapatalk

Ah okay. Don't mind the request then lol. I had a minute to spare so I was gonna look into it really quick. You can also copy and paste the contents to pastebin and post the URL. I'd understand if you don't want to be booting over and over though.

Sent from my SGH-T999 using Tapatalk
 
  • Like
Reactions: phoenix2217

Top Liked Posts

  • There are no posts matching your filters.
  • 25

    ...AX Developers Present...
    ...In association with Team Inferno...
    axDev Harkness
    "Self determination is NOT a malfunction" -Harkness (Android A3-21)


    This kernel is experimental. All patches used, source code, etc. can be found here with as many of the original authors intact as possible.
    ***ONLY RECENT (aka inline with CMs display drivers) AOSP-BASED ROMS SUPPORTED***

    FEATURES:
    - based off of Cyanogenmod's 3.4.y kernel
    - compiled using Sourcery CodeBench Lite GCC 4.7 toolchain (-Os)
    - floating-point & graphite loop optimizations
    - cleaned up some modules and debugging
    - Tweaked GPIO debounce timing [Increased vol. long press]
    - Increased touchscreen sensitivity
    - dkp notification/backlight LED fade animations (DecimalMan)
    - faux sound support
    - patches from a plethora of sources (including franciscofranco, WillDeacon, ConKolihas, etc.)
    - fast charge capable (imoseyon)
    - UV capable (faux123)
    - full sched-deadline implementation (jlelli)
    - semaphore n4's conservative & ondemand driver (stratosk)
    - Power efficient workqueues (Linaro)
    - Plenty of backports from mainline [sched, cpuidle, random, smp, etc.] (Linux)
    - asm-generic rwsem (Will Deacon)
    - Imports from Motorola's msm kernel source:

    * always update vfp_current_hw_state when forcing reloading
    * fixup to allow sched to play nice with CPU_HOTPLUG
    * Krait memutils
    * acpuclock-krait: init to max speed (improve boot time)
    * lmk/compaction: updates to allow improved/stricter memory management

    - I'll add more as I remember​

    BUG REPORTS:
    Please include a kmsg/dmesg to any bug reports: http://code.google.com/p/tegraowners-ics-rom/wiki/How_to_get_logs
    If you you are unable to do so for whatever reason, try to use as much detail as possible and give me a way to replicate it, so that I may attempt to log it. Thanks!

    NOTES:
    - Reserved for notes about bugs.
    - Cleared since we seem to be golden with trickstermod and I have yet to have a recent cm build fail on init. Let me know if you find anything.

    SCHED_DEADLINE:

    Not to be confused with the iosched deadline, Sched_deadline is a scheduling class that implements a real-time CPU scheduling algorithm; EDF (Earliest Deadline First), augmented with a bandwidth isolation mechanism (called Constant Bandwidth Server, CBS) that makes it possible to isolate the behaviour of tasks between each other. SCHED_DEADLINE allows the CPU to reserve a portion of the CPU time to a specific application very accurately. A key feature is that it ensures "temporal isolation", which means that the temporal behavior of each task (i.e., its ability to meet its deadlines) is not affected by the behavior of any other task in the system. In other words, even if a task misbehaves, it is not able to exploit larger execution times than the amount it has been allocated. When a task tries to execute more than its budget, it is slowed down, by stopping it until the time instant of its next deadline. When, at that time, it is made runnable again, its budget is refilled and a new deadline is computed.


    POWER EFFICIENT WORKQUEUES:

    With per-cpu workqueues, the scheduler considers a CPU idle if it doesn't have any task to execute and tries to keep idle cores idle to conserve power; however, for example, a per-cpu work item scheduled from an interrupt handler on an idle CPU will force the scheduler to excute the work item on that CPU breaking the idleness. Power efficient workqueues are allowed to be unbound, meaning they are not forced to queue up on what could be an idle CPU; instead, the scheduler allows work to be rescheduled on a core that is already awake.


    SEMAPHORE ONDEMAND TUNABLES:

    touch_load: the simulated load when there is a touch on screen (default 75)

    touch_load_threshold: over this load the touch_load will be applied (default 10)

    touch_load_duration: the duration of the simulated load in msec (default 1100)


    VOLTAGE TABLES/BINNING:

    What CPU do you have? Nominal, Fast :)...or Slow:(

    The phones with the lower default voltage values use the "fast" frequency table, consider yourself lucky. This explains why some can't UV as much as others since they are starting with lower mV's to start. These are built in factory tolerances that depend upon the binning of your chip. Hopefully folks don't go freaking out because they have a nominal chip like I do. It's probably good for a dev to have a nominal chip so we can better honor the limits.

    http://en.wikipedia.org/wiki/Product_binning

    How do I tell what I have?
    If you boot up your phone fresh and look at the dmesg output (kernel log) while the messages are still there, you will find one of the following output messages where it selects it's frequency plan depending on the binning of the chip.

    commandline:
    adb shell dmesg | grep PVS

    (acpuclk-krait in our kernel defines PVS as id numbers)

    acpuclk-8960: ACPU PVS: 0 = Slow
    -or-
    acpuclk-8960: ACPU PVS: 1 = Nominal
    -or-
    acpuclk-8960: ACPU PVS: 3 = Fast


    - thanks to _motley for this awesome write-up on his kernel/kernel features... and for providing explicit detail on his works

    A Note for Developers:
    CODEBENCH COMPILE CACHING:

    Ccache is commonly used to reduce compile times for C-related files. CodeBench's toolchains utilize their very own compile caching that works EXTREMELY well. You MUST be on at least the 5-23 version of CodeBench (CodeBench Lite can be found here). The related patch for using this feature will be posted below. Examples of use are in the commit message.

    Basic CS cache patch

    Please pull request any improvements/post discussion.


    I'll add more info about key features as I work along.

    DOWNLOADS:
    - -
    https://code.google.com/p/harkness-d2/
    !! NOTE: this OP no longer reflects what this kernel is. See the URL above for the latest. !!

    CREDITS/THANKS:
    Cyanogenmod
    MentorGraphics
    Juri Lelli (and everyone else in the SCHED_DEADLINE project)
    MotorolaMobilityLLC
    existz
    TripNRaVeR (tripndroid)
    Will Deacon (ARM)
    stratosk
    franciscofranco
    decimalman
    _motley
    Con Kolihas
    imoseyon
    showp1984
    faux123
    f1vefour
    ryuinferno
    xcstacy
    Linaro
    Eli Billauer
    kerneldedup.org
    Bethesda
    and countless others (may they be remembered on github)
    8
    anybody ran this lately on latest nightlies?
    Should be fine, there haven't been many changes to the cm kernel.

    Although, I uploaded another build today. :p

    Direct URL -
    http://dl.bintray.com/syntheticnightmar3/rivet/Harkness-Kernel-d2-2014-10-11.zip

    Changelog:
    - Merge cm-11.0
    - Fix-up memutils (import newer patch from moto & clean up)
    - Import pskm (Anon-Page KSM: https://code.google.com/p/pksm/)
    - ARM updates for branch predictor maintenance

    Let me know if there's any issues with it (pksm might need some tuning). Same deal as last time, just built and uploaded (but tested in similar builds). As long as it uploaded alright, it should be fine.
    7
    I know it's been a while since I posted a release (after the test) but thats only because I wanted to make sure everything was in tip-top shape and with the amount of adjustments made between then and now, I wanted to have something that was working nicely before releasing. I don't want to say I'll do nightlies, weeklies or even monthlies, due to the fact that I try testing things as intensively as I can and because kernels can take some time before they "settle." But I do want to try releasing more often.
    As stated, I've pulled in and made a couple of changes since the test, and there are a few I wanted to touch on and possibly ask your opinion about...

    1. I have included the tripndroid iosched by TripNRaVeR. It's based on noop, deadline and vr and meant to have minimal overhead. I would like to know if it would be preferred in place of zen.

    2. Harkness is now being compiled using -O2 with Sourcery CodeBench Lite's gcc-4.7.3 toolchain (compiles -O2 cleanly and at the speed of the gcc-4.8 toolchain I was testing out). I went with this one because a post by ezekeel some time ago debunking the effect of optimized toolchains in benchmarking, it seemed this one actually made somewhat of a difference. Though, I have also read that previous revisions of this toolchain can be buggy with neon if I remember right, so I'd like to see if there are any problems with this revision of the toolchain (but after a few days, I've yet to see anything wrong on my current rom).

    3. Off this last charge cycle, I've gotten ~20.5 hours with about 5 hours and 16 minutes screen time (screenies at request; they're on my device). Which is something my d2tmo hasn't done before. At least not in recent memory. But that is not the point... I had forgotten to turn off proprietary mpdecision (and raise my auto_hotplug settings for testing), so I'm thinking it's working well enough to do away with auto_hotplug, but I'd like to know opinions on the current implimentation and how it works for you, any preferred settings and whatnot would also be appreciated; that way if it does stay, I can have an idea on some tunings that work (because I can't seem to find a satisfactory one).

    Unfortunately, the ondemand/powerHAL combo will have to wait until I get to test some things, but this last cycle worked well with CM's defaults, but the good news is, I've gotten this source to compile with ZER0 warnings. :cool: remove-warnings branch has been added to OP if any dev is interested in getting rid of some useless common warnings on cm source.

    Ack. Too many words for a forum post. I think that's the important stuff I wanted to cover lol.

    Changelog: http://pastebin.com/xMvAXbmQ
    07/24 Download: http://d-h.st/Pmr
    7
    Been testing this and wanted to push sooner, but didn't get the chance to til now (I also wanted to clean the commits up some more, but everything seems to be working on my d2tmo, so screw it).

    05-01-2014 Download -
    GooManager

    Changelog:
    - Merged in CM
    - Built with CodeSourcery gcc-4.8 (will update script once I get my new CrunchBang setup finalized [so long, Mint])
    - Imported some changes to our display/video drivers from the Sprint KK update

    I'll fix this up if I need to tomorrow. Gonna knock out now and test the latest changes with a full charge tomorrow.
    6
    Finally got around to installing kitkat on my gf's d2att and had the same problem on a clean install @jukiewalsh.
    I had to install my rom and gapps first, let it boot, then reboot and install the kernel. CM11 on our devices is buggy on init and I'm thinking that may just be a part of it. Afterwards, it worked as expected.
    So now that I have 2 devices to test on with varying usecases, I can find out about things I broke sooner.
    And while out of town, I found out my commit for touch_load caused some deep sleep trouble (on occasion, it would get cpu0 as offline and set it that way while the ondemand driver checked the cpu). So I've got a quick update that will likely fix the issue:

    12-27-2013 Downloads:

    goo.im

    dev-host

    Changelog:
    - ondemand: only account for touch_load when cpu0 is online
    - Update led touchkey animation to current dkp-4.4 (just because I was here doing things already)