intelli_plug: intelligent hotplug cpu driver with eco mode

Sync with faux123's latest, it's very good. :)

Signed-off-by: Paul Reioux <reioux@gmail.com>

Conflicts:

	arch/arm/mach-msm/Kconfig
	arch/arm/mach-msm/Makefile

Conflicts:
	arch/arm/mach-msm/Makefile

Change-Id: I2d5f4f00b88f05bc3bedc0d469e5aa547f455d75
intelli_plug: move to its own directory and squash 3.7

 It's been cross platform for a while

intelli_plug driver has been working on OMAP44xx, TEGRA 3, Exynos and
MSM Krait/Cortex multi-core SOCs.  So it doesn't make sense to patch on a per
SOC basis, move it to its own ARM platform independent folder so patches can
apply to all supported ARM platforms

Signed-off-by: Paul Reioux <reioux@gmail.com>

Conflicts:
	arch/arm/mach-msm/Kconfig
	arch/arm/mach-msm/Makefile

Conflicts:
	arch/arm/mach-msm/Kconfig

Change-Id: I5c79480c0ecde4a904b0bf565718832eaef32c09
Squashed Faux powersuspend driver

powersuspend: new PM kernel driver for Android w/o early_suspend

Android early_suspend/late_resume PM kernel driver framework has been
deprecated by Google. This new powersuspend PM kernel driver is a replacement
for it and existing early_suspend drivers can be easily adapted to use this
new replacement driver

Signed-off-by: Paul Reioux <reioux@gmail.com>

powersuspend: fix logci derps :p

Signed-off-by: Paul Reioux <reioux@gmail.com>

Conflicts:
	kernel/power/Kconfig

kernel/power/powersuspend: remove userspace dependency from powersuspend

make powersuspend not depend on a userspace initiator anymore, but use a hook
in autosleep instead.

Signed-off-by: Paul Reioux <reioux@gmail.com>

kernel/power/powersuspend: add back userpace control w/ default kernel control

make kernel / userspace mode switchable

Signed-off-by: Paul Reioux <reioux@gmail.com>

kernel/power/powersuspend: default to userspace for now

Signed-off-by: Paul Reioux <reioux@gmail.com>

kernel/power/powersuspend: LCD screen on/off hooks (Yank555.lu)

- add an alternative hook for screen on / off detection in the display
  pannel driver
- sleeps  ~0.1s sooner, wakes up ~1s later then autosleep
- clean up source formatting a bit (Paul Reioux)

Signed-off-by: Paul Reioux <reioux@gmail.com>

mdss_dsi_panel.c: add powersuspend hooks

Signed-off-by: Paul Reioux <reioux@gmail.com>

Conflicts:
	drivers/video/msm/mdss/mdss_dsi_panel.c

Update defconfig

Conflicts:
	arch/arm/configs/cm_m8_defconfig

Change-Id: I600527ae23ed52e0b75f7a62560d3caa7639d590
overall_stats: add overall stats for all available cores

this is much more accurate stats tracking than just displaying core 0's
stats from most other kernels

Signed-off-by: faux123 <reioux@gmail.com>
overall_stats: make dual/quad core stats configurable via meunconfig

Signed-off-by: faux123 <reioux@gmail.com>
overall_stats: forward port to kernel 3.4+

by replacing deprecated functions with native add/sub for 64bit data types

Signed-off-by: faux123 <reioux@gmail.com>
msm: kgsl: show current power level for 8974 SOCs.

since 8974 uses duplicate frequencies in its table, it's not possible to tell
which of the duplicates is actually in use

Signed-off-by: Paul Reioux <reioux@gmail.com>
Simple GPU Algorithm: Initial coding for devfreq based Adreno Drivers

This is an open source user configurable simple GPU Control Algorithm used to
replace the closed sourced Qualcomm TrustZone GPU controller

Signed-off-by: Paul Reioux <reioux@gmail.com>

Conflicts:
	drivers/devfreq/Kconfig
	drivers/devfreq/Makefile

Conflicts:
	drivers/devfreq/Kconfig
	drivers/devfreq/Makefile
IntelliDemand and IntelliActive squash

Change-Id: I67d56b64e4581906092b3737724c53f44e498a44
cpufreq: enable/disable cpu-boost via sysfs
cpufreq: enable cpu-boost

Now that we can turn it on and off with sysfs, thanks to Savoca,
may as well enable it; it's off by default

Change-Id: I13fe4f1adf93f3a4e8a5356e7bc96335099752fd
LCD_KCAL: Introduce configurable kcal_min

Lower values such as 0-10 ultimately create a dark, washed out display, if a user accidently sets their kcal values to "0 0 0" they will loose visual control of the device, potentially requiring a hard reboot.
Introduce minimum kcal values to prevent this behavior.

Willing users can disable this protection by setting the kcal_min value to '0', however the default value of 35 is recommended.

sysfs:
echo "1/255" > /sys/devices/platform/kcal_ctrl.0/kcal_min

kcal_min will detect and block values attempting to set lower than itself, resetting the specific values to that of kcal_min. There is also behavior to adjust the kcal if kcal_min is set to a level higher than that of any kcal value(s).
LCD_KCAL: Prevent out-of-range input values
fast charge: fix kconfig typo

Change-Id: I0390b9d159b4b5056b8cf04322d5270f88d697b1
Revert "OC/UV interface"

This reverts commit 2b4b27cc6bafb37bb423500ea296875c2a797722.

Conflicts:
	arch/arm/configs/cm_m8_defconfig

Change-Id: Ifcbcfffa2ed1c3e08aa0a22bb2f05866f34025ec
defconfigs: enable minmax

2.3/2.26 GHz by default; can change if you want using an app

Change-Id: Ief183759ce90b0e0c36418db56d77701668cfc70
dts: msm8974pro: initial Krait 8974AB overclocking

Signed-off-by: Paul Reioux <reioux@gmail.com>

Conflicts:
	arch/arm/boot/dts/msm8974pro.dtsi
dts: msm8974pro: overclocking tweak for 3.0 GHz

Signed-off-by: Paul Reioux <reioux@gmail.com>

Conflicts:
	arch/arm/boot/dts/msm8974pro.dtsi
dts: regulator update for 3.0 GHz overclocking

Signed-off-by: Paul Reioux <reioux@gmail.com>

Conflicts:
	arch/arm/boot/dts/msm8974pro-pm8941.dtsi
	arch/arm/boot/dts/msm8974pro-pma8084-regulator.dtsi
CPU Overclocking: fix freq table for max overclocking

Signed-off-by: Paul Reioux <reioux@gmail.com>