[HTC One X] show-p1984:
v0.65 Beta 7

Changelog for 0.657:

Zip:

* switched to InsertCoin Ramdisk again

* modified Ramdisk, removed all governor overrides

* updated precompiled modules to stock 2.17, some were still from the old base

Kernel:

* 75ea875 (Dennis Rassmann) : defconfig: v0.65 beta 7

* b77d81e (Dennis Rassmann) : mach-tegra: tegra_mpdecision: use unique lock names

* 5d58efb (Dennis Rassmann) : mach-tegra: tegra_mpdecision: adjust delays to fit NVIDIA specifications

** New toolchain, linaro 09/12 (prev: linaro nightly gcc4.7)

* 719fa42 (Dennis Rassmann) : defconfig: v0.65 beta 6

* f06f4be (Dennis Rassmann) : mach-tegra: tegra_mpdecision: We were paused, even only for a short time

* 2bf63db (Dennis Rassmann) : mach-tegra: set 1.4Ghz as default max (everything else would be overclocking since we clock ALL cpus @ max)

* fe4e24a (Dennis Rassmann) : defconfig: update, version 0.65 beta 5

* baadcb8 (Dennis Rassmann) : Revert "Multitouch fix (loss of touch) - removing unneeded recalibration part."

* 40992db (Dennis Rassmann) : Revert "augment previous commit with ifdefs for aosp"

* b67c2ac (Dennis Rassmann) : input: touchscreen: sweep2wake: fix unsafe locking

* 3dae8c4 (Dennis Rassmann) : mach-tegra: tegra_mpdecision: lphandler: add robustness checks for clks

* 002a880 (Dennis Rassmann) : mach-tegra: tegra_mpdecision: lphandler: return error if mutex cannot be locked

* d2676ac (Dennis Rassmann) : mach-tegra: tegra_mpdecision: cancel/resume main work thread on ES/LR

* 5e686c0 (Dennis Rassmann) : mach-tegra: tegra_mpdecision: if lpcpu fails to come up on ES, schedule lpchecks

* f744d59 (Dennis Rassmann) : defconfig: 0.65 beta 4

* 11924b9 (Dennis Rassmann) : mach-tegra: tegra_mpdecision: fix sysfs enable/disable

* b3561e8 (Dennis Rassmann) : mach-tegra: tegra_mpdecision: the suspend wq task should be non freezable

* f70f702 (Dennis Rassmann) : defconfig: 0.65, beta 3

* 6e863c9 (Dennis Rassmann) : mach-tegra: tegra_mpdecision: add lpcpu_down hysteresis loop+sysfs

* f1bfdad (Dennis Rassmann) : mach-tegra: tegra_mpdecision: fix tegra_mpdec_suspended_work_thread

* 54c81bd (Dennis Rassmann) : cpufreq: ondemand: add power_save_bias screen off override

* b2efe2f (Dennis Rassmann) : cpufreq: ondemand: adjust default parameters

* c21fcab (Dennis Rassmann) : drivers: base: cpu: remove NVIDIA cpu-plug workqueue with all it's stuff

* 30b251c (Dennis Rassmann) : mach-tegra: cpu-tegra: readd ril boost

* 56d93ba (Dennis Rassmann) : mach-tegra: platsmp: use gmode_notifier

* bc8a7bb (Dennis Rassmann) : mach-tegra: tegra_mpdecision: use own workqueues

* f33f7cd (Dennis Rassmann) : mach-tegra: tegra_mpdecision: only catch-up with gov target speed if there is no error

* c95b90f (Dennis Rassmann) : mach-tegra: tegra_mpdecision: reset lpup hysteresis counter in all other states

* ed9c9b1 (Dennis Rassmann) : mach-tegra: tegra_mpdecision: remove useless mutex locks/unlocks

* 42b1335 (Dennis Rassmann) : defconfig: we are in testing mode again. (0.65)

* dc1289e (Dennis Rassmann) : mach-tegra: tegra_mpdecision: fix a possibibility where the lpcpu up/down would not respect min delay

* 6f234d3 (Dennis Rassmann) : mach-tegra: tegra_mpdecision: lp_cpu_handler: check if we are in lpmode before powering down

* 30c7bd0 (Dennis Rassmann) : mach-tegra: tegra_mpdecision: suspended worker: check if we CAN switch to lp now

* 32cb408 (Dennis Rassmann) : mach-tegra: tegra_mpdecision: export lpcpu_hysteresis to sysfs

* 10182c7 (Dennis Rassmann) : mach-tegra: tegra_mpdecision: fix an epic bracket fail, which most likely caused the lockups

* b7e0ca9 (Dennis Rassmann) : mach-tegra: tegra_mpdecision: add mutex to suspend worker

* 0159143 (Dennis Rassmann) : mach-tegra: tegra_mpdecision: fix return of tegra_lp_cpu_handler() if mutex cannot be locked

Download me.

Why only clock with 1.4 Ghz max?

That's not a fix, just a point of opinion. I provide stock or close-to-stock kernel settings in regards to UV/Clocks. Usually I don't take HTC's 'stock' but the manufacturer of the component. In this case the soc, so NVIDIA.

Our stock-phone is clocked with 1.5Ghz single core and 1.4Ghz multicore (as soon as the 2nd core comes up). Usually, whatever you do, you will instantly trigger the second core to come up, if even only for a short time. This would effectively limit the cpu clock speed to 1.4Ghz for that time.

Since I overwrote the clock reduce, our phone will clock with the set max at all times. Which, in this case, is overclocking.

So I just reduced the clock back to it's "stock" setting and please trust me that you won't notice the difference to stock in Benchmarks, UI performance, or anywhere else. Not only because it is only 100Mhz on ONE CORE, but also because that core seldom runs alone and therefore can only use the 1.5Ghz for a very short time.

You are ofc free to clock it back to 1.5Ghz again. Please note that this counts as overclocking and the same rules as undervolting apply to it.

To the deadlock issue:

renamed the locks in mpdecision to avoid the same locknames in mpdecision & cpu-tegra.