cpufreq: ondemand: Only start dbs_sync threads when active

Even when using parked threads, there is still a cost per hot-
plug event to have these threads started so let's avoid that
cost entirely.

Change-Id: I09a7dedaedf5b527f010f0197235d8116a68c30f
mondrianwifi: msm_rq_stats: Tone down mpdecision

Add a new Kconfig to enable more conservative computations sent
to mpdecision:

 * Do not make IO busy
 * Do a time window weighted load computation instead of just a sum
 * Do an sliding window averaged time computation for number runnable

The purpose of these changes is to make mpdecision less likely to
keep extra cores online.  It currently has a tendancy to run more
cores running than needed and this can even cause some lag issues.

Change-Id: Ibbe9dca04c8b3425e288afef9ef6166fbc4a0613
tabpro: defconfig: Enable new rq_stats computation

Change-Id: I51db95c3f3c7f5f02d051d1db3c04a507f73883e
Bump version after cm merge

Change-Id: I13320dfb2b21d89c09a727887a96a3b5838cedd5
Signed-off-by: Josue Rivera <prbassplayer@gmail.com>
Mondrianwifi: Disable Simple_Plug

Change-Id: I33a708603ec6ce854a7a9ca80a41d14150f07af2
Signed-off-by: Josue Rivera <prbassplayer@gmail.com>
Add Graphite flags

Change-Id: I0629ef88782277384b3ec46e3da67569210f11af
Signed-off-by: Josue Rivera <prbassplayer@gmail.com>
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

Change-Id: Ibc7f129ccb760f89fdb190055484c3f6c4c39af4
Signed-off-by: Paul Reioux <reioux@gmail.com>
powersuspend: fix logci derps :p

Change-Id: If4113501712457ffa3fc4a5cce051dc7aa19990d
Signed-off-by: Paul Reioux <reioux@gmail.com>
kernel/power/powersuspend: remove userspace dependency from powersuspend

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

Change-Id: I5c1f84352d509f4aaca8dacc0e7cbdd4e32081d2
Signed-off-by: Paul Reioux <reioux@gmail.com>
kernel/power/powersuspend: add back userpace control w/ default kernel control

make kernel / userspace mode switchable

Change-Id: Icaeb45c6d5fe9203781fb000216bf0f67e7bfa20
Signed-off-by: Paul Reioux <reioux@gmail.com>
kernel/power/powersuspend: default to userspace for now

Change-Id: I137c691b3adc3b3fdbb7475c086a818b7ace1b71
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)

Change-Id: Ic9173707182c4f23ec4e3517eb94c2ddb44e8eb2
Signed-off-by: Paul Reioux <reioux@gmail.com>
kernel/power/powersuspend: cumulative update to version 1.5

- fix hybrid-kernel mode cannot be set through sysfs

kernel/power/powersuspend: new PM kernel driver for Android w/o early_suspend v1.4 (Yank555.lu)

- add hybrid-kernel mode (autosleep and panel, first wins)
- default to hybrid-kernel mode
- harmonize debug message with my other stuff
- include all 3 modes as default, so it's only commenting out to change

kernel/power/powersuspend: new PM kernel driver for Android w/o early_suspend v1.3 (Yank555.lu)

- fix stupid typo
- add an alternative hook for screen on / off detection in the display panel driver
(sleeps ~0.1s sooner, wakes up ~1s later then autosleep)

kernel/power/powersuspend: new PM kernel driver for Android w/o early_suspend v1.2 (Yank555.lu)

- make kernel / userspace mode switchable

kernel/power/powersuspend: new PM kernel driver for Android w/o early_suspend v1.1 (Yank555.lu)

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

kernel/power/powersuspend: new PM kernel driver for Android w/o early_suspend (faux123)

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

Change-Id: Id87d45e6b5d1f0f03eb9e4ccda4fe12d6bd7d174
Signed-off-by: Paul Reioux <reioux@gmail.com>
Enable power suspend

Change-Id: I46aa6fdae5b757eaac06a7f48771e72f2e99baba
Signed-off-by: Josue Rivera <prbassplayer@gmail.com>
msm_cpu_freq_limit: initial coding for controlling MSM quadcore cpus

this module will allow proper max frequency control across all msm cores

Change-Id: I3fc67d2f5df081284b82c1c5f88e52ad4f2756ee
Signed-off-by: Paul Reioux <reioux@gmail.com>
msm_cpufreq_limit: add GPL V2 licensing to access to GPL symbols

Change-Id: I428c6a14c359c541aba58bf73fce185da1e84a3c
Signed-off-by: faux123 <reioux@gmail.com>
Signed-off-by: Josue Rivera <prbassplayer@gmail.com>
cpufreq_limit: remove unused vars

Change-Id: Ic0a958e50b9823727927f23b5fbf4c7297934c04
Signed-off-by: faux123 <reioux@gmail.com>
mach-msm:cpufreq_limit: fix merge derp and minor code clean up

Change-Id: Icaedb008e9c1ba0782b119a9c9c4159c16f3c970
Signed-off-by: Paul Reioux <reioux@gmail.com>
cpufreq_limit: adapted for use as built-in kernel option

set default stock frequency and remove unnecessary debug messages

bump version to 1.2

Change-Id: I79bc00ed67c4a1873b3abc387d14188c308ac9e1
Signed-off-by: Paul Reioux <reioux@gmail.com>
msm: cpufreq: Add API to allow limiting of min and max cpu frequencies

CPUFreq provides scaling sysfs nodes to set min and max frequencies, but
there are times when the operating range has to be controlled
irrespective of the scaling limits, to ensure the thermal stability of
the device.

The API allows kernel thermal safeguards to pitch in and limit the
frequencies.

Also make sure mondrian uses the limit algorithm  that was disabled by samsung

Change-Id: I3dc7496747792e6223695131f1644dd87054b025
Signed-off-by: Praveen Chidambaram <pchidamb@codeaurora.org>
Signed-off-by: Paul Reioux <reioux@gmail.com>
Signed-off-by: Josue Rivera <prbassplayer@gmail.com>