Squash showp1984's Thermal control

drivers: thermal: create kernel thermal readout

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Remove stock thermal driver

Signed-off-by: Josue Rivera <prbassplayer@gmail.com>

thermal: patch down msm_thermal, pre device

This also removes the cputable freq changes, which
we won't need since we use static values.

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Conflicts:
	drivers/thermal/msm_thermal.c
	include/linux/msm_thermal.h

msm_thermal: 3-phase thermal throttling

This introduces 3-phase thermal throttling to the existing
msm_thermal driver (it now works more like thermald).
This also changes the sampling rate to check every second
for increased temperatures.
Additionally this adds clear thresholds for the 2 new tripping
points.

Signed-off-by: showp1984 <showp1984@gmail.com>

msm_thermal: add sysfs interface

This adds a sysfs interface to msm_thermal.
I've also restructured the tuneables into a struct
for better overview.

Signed-off-by: showp1984 <showp1984@gmail.com>

msm_thermal: move sysfs to /sys/kernel/msm_thermal/conf/

Signed-off-by: showp1984 <showp1984@gmail.com>

msm_thermal: fix saving pre-throttled freq

Signed-off-by: showp1984 <showp1984@gmail.com>

drivers/thermal: create own unbound (highpri) wq for msm_thermal

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

drivers/thermal: adapt msm_thermal for quadcore & mako

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

drivers/thermal: add emergency shutdown

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: emergency shutdown rework

additionally to initiating the shutdown the lowest possible
frequency should be set. (=max throttle atm)
update the cpufreq and do not cancel the workqueue
+ some small code improvements

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: use temperature1 sensor too
The sensor1 seems to be cpu related too, and it usually
shows higher temps (~2°C). Use the higher value of both
to decide if thermal throttling is neccessary.

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: check every 100ms for thermal changes
Tests have shows that the apq8064 likes to jump from
~69°C to ~80°C within 250ms while overclocked.
schedule checks more often to avoid that.
Also increase shutdown temp to 81°C (+1).

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: do not wait, unthrottle now

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: remove not needed condition

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Conflicts:
	drivers/thermal/msm_thermal.c

thermal: fix clear thresholds

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: only update freq if new is not > than saved_max

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: rework throttling states

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: set cpus online to set frequency back to unthrottled

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: fixing debug messages

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: fix mid scaling

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: don't calculate max everytime, once is enough

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: fix hardware issue with temp sensor 1

Ignore insane values and also ignore sensor 1 in suspend.

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: assume that sensor1 fails as default

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm8960_tsens: enable all thermal devices

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Conflicts:
	drivers/thermal/msm8960_tsens.c

msm_thermal: patch to upstream

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Conflicts:
	drivers/thermal/msm_thermal.c

thermal: update upstream msm_thermal with 3-phase control

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Conflicts:
	drivers/thermal/msm_thermal.c

thermal: add sensor id to sysfs

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: check every 150ms

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal: fix previous lazyness

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Revert "thermal: add sensor id to sysfs"

This reverts commit 32941c2ab7c0ffd6f61f1fc2aa9171fcefc9c290.

This was meant for multi sensor control, which will be implemented later.

msm_thermal: remove platform driver

I don't know why I even bothered with this before, since we are no
longer msm_thermal (qcom) compatible anyway.

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_thermal: export if we are currently throttled

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_thermal: fix spacing throughout the whole file

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_thermal: add stats for throttling

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Revert "msm_thermal: remove platform driver"

This reverts commit 242417400ca7814773e9ea3652ef181b84924e67.

thermal: Fix critical enable/disable bug from STOCK source
This fixes a critical bug which only allowed to disable the thermal guard
but not to re-enable it again. Once disabled the thermal guard would stay
off until rebooted. This allows to re-enable it again. (sysfs)

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_thermal: enable msm_thermal

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Defconfig: Set proper min max speeds

Signed-off-by: Josue Rivera <prbassplayer@gmail.com>

cpuinit: get rid of __cpuinit, first regexp
This commit is the result of:

find -name "*.c" | xargs sed -i "s/ __cpuinit / /g"

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

cpuinit: get rid of __cpuinit, second regexp
This commit is the result of:

find -name "*.c" | xargs sed -i "s/ __cpuexit / /g"

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

cpuinit: get rid of __cpuinit, third regexp
This commit is the result of:

find -name "*.c" | xargs sed -i "s/ __cpuinitdata//g"

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

cpuinit: get rid of __cpuinit, fourth regexp
This commit is the result of:

find -name "*.c" | xargs sed -i "s/ __cpuinit$//g"

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

cpuinit: get rid of __cpuinit, fifth regexp
This commit is the result of:

find arch/ -name "*.h" | xargs sed -i "s/ __cpuinit//g"

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

cpuinit: get rid of __cpuinit, sixth regexp
This commit is the result of:

find -name "*.c" | xargs sed -i "s/^__cpuinit //g"

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

cpuinit: get rid of __cpuinit, manual fixups

a few final fixups that haven't been caught by regexps

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Conflicts:
	arch/x86/kernel/cpu/scattered.c

cpuinit: turn __cpuinit into nops

    now that there's no users left, turn __cpuinit into a nop for now,
    to avoid breaking any in-flight code. In a few releases we can just
    drop it entirely.

    Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

kbuild: drop cpuinit/cpuexit checks in modpost

With the removal of cpuinit/cpuexit we no longer need to
do section mismatch checks on these sections.

Drop it from modpost.

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Revert "workqueue: perform cpu down operations from low priority cpu_notifier()"
from 3.4.56 merge.

revert hacks for the previous misuse of __cpuinit for hotplug only functions

Change-Id: I4d3f5f114047a4911b036028c35eae5d44fb044a
Signed-off-by: Dennis Rassmann <showp1984@gmail.com>
Signed-off-by: Josue Rivera <prbassplayer@gmail.com>
Squash Showp1984's mpdecision

mach-msm: Add msm_mpdecision Kconfig & Makefile hooks

Signed-off-by: showp1984 <showp1984@gmail.com>

Conflicts:

	arch/arm/mach-msm/Kconfig

mach-msm: Add msm_mpdecision

This currently only does the following thing:
Screen on -> CPU1 online
Screen off -> CPU1 offline

More to come.

Signed-off-by: showp1984 <showp1984@gmail.com>

Conflicts:
	arch/arm/mach-msm/msm_mpdecision.c

mach-msm: mpdecision: small cleanup

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: add load based decision making

This now works like the mpdecision binary from QCOM.
CPU hotplugging/unplugging based on system load.

A sysfs interface will be built in with a later commit.

Signed-off-by: showp1984 <showp1984@gmail.com>

Conflicts:
	arch/arm/mach-msm/msm_rq_stats.c

mach-msm: mpdecision: restructure locks, add delay

The new delay allows the CPU to come up before any other action is taken.
This prevents fast plugging and also ensures the CPU hotplug process
is really done, before trying to unplug it again (or plug it).

The new locks are more efficient, and only used if necessary.

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: pause if CPU is unplugged outside of mpdecision

This fixes cpu wars if something else tries to control the cpus.
default delay: 10000ms

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: change early_suspend_level to blank_screen

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: don't start immediately

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: show cpumask after up/down

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: always set the suspend var

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: remove up/down delay, our default delay is large enough

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: add email to (c)

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: fix foreign hotplug/unplug detection

Signed-off-by: showp1984 <showp1984@gmail.com>

Conflicts:

	arch/arm/mach-msm/msm_mpdecision.c

mach-msm: mpdecision: show how long the cpu was online

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: rename msm_mpdec_suspend to msm_mpdec_cpudata

Since this is being used for more than suspend stuff the old name
just isn't accurate anymore.

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: add sysfs interface

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: remove debug output

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: increase startdelay for sense

Surprise! Sense needs a lot longer to boot up than aosp...

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: adjust thresholds for sense

Sense is just too hungry...

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: fix foreign cpu control detection

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: allow mpdecision to be disabled (sysfs)

This allows disabling/enabling of mpdecision over sysfs.

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: increase start delay for Sense

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: increase up threshold for Sense

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: sysfs: check if cpu is offline before hotplugging it

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: don't turn off cpu1 if freq > idle

This fixes cpu1 being turned off though it is still working
with a high frequency. The idle_freq can be modified through sysfs.

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: fixup: move idle block to mpdecision()

This belongs in mp_decision() because this influences the decision
mpdecision is about to make.

Signed-off-by: showp1984 <showp1984@gmail.com>

mach-msm: mpdecision: don't turn on cpu1 if cpu0 freq is below idle_freq
If the clock of cpu0 is below the set idle_freq don't enable cpu1 and
disregard the runqueue value.

Signed-off-by: showp1984 <showp1984@gmail.com>

msm_mpdecision: fix check for khz/mhz value (idle_freq sysfs)

Signed-off-by: showp1984 <showp1984@gmail.com>

msm_mpdecision: add debug output

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: make mpdecision() core independent

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: make msm_mpdec_work_thread() core independent

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: fix get_slowest_cpu()

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: make debug output more compact & informative

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: decrease startup delay

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: decrease decision delay

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: update core data on first call

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: don't let msm_mpdec_work_thread() run if we are still booting

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: make earlysuspend/lateresume core independent

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: update header to include full feature list

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: export the new, larger nwns/twts arrays to sysfs

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: fix disabling mpdecision over sysfs for multicore

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: remove useless locking

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: use own workqueues

This will alter mpdecision to alloc it's own wq rather than using
the predefined queue which is a shared resource.

The WQ is not bound to the issuer CPU (=high-priority), has a
rescue worker task and is freezable.
Also destroy the workqueue on exit, and rename msm_mpdec to
msm_mpdec_init.

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: cancel/resume main work thread on ES/LR

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: use unique lock names

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: add max/min cpu limits to sysfs

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: use CONFIG_NR_CPUS for max_cpu sysfs

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: add get_rate()

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: decrease delay between checks to 70ms

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

defconfig: enable mpdecision

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: fix merge errors

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: various fixes and tweaks

- fix get_slowest_cpu_rate(): don't cut off rate to int
- fix get_slowest_cpu_rate(): don't use values from an offline cpu
- fix get_slowest_cpu(): don't return cpu0.
- tweak hotplug thresholds

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

mach-msm/cpufreq: set safe frequencies from config

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Conflicts:
	arch/arm/mach-msm/cpufreq.c

msm_mpdecision: disable debug

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: when returning from sleep, start immediately

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: we can't turn off cpu0

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: turn on cpu1 early

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: on resume pull up cpu1

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: tweak hotplug values

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

mpdecision: don't use sleep, cancel/resume wq instead

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

mpdecision: checking every 100ms is enough

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

mpdecision: update copyright

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Revert "mpdecision: don't use sleep, cancel/resume wq instead"

This reverts commit 4b6f8555481d2c5049eb7cb496283749ed7cd7ca.

msm_mpdecision: add stats & expose to sysfs

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: fix sleep, don't use pause

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: fix spacing across the whole file
In the past year this evolved to a battlefield of tabs, spaces and different sizes of them. Fix that.

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: stats: if cpu is online, add current ontime to stats

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: add input event boost [read more]

This adds an input event boost to mpdecision.
It will basically boost the min freq of all cpus to predefined values if an
input event is detected.
Devices that qualify as boosters must fullfill one of these conditions:
- contain touch in their name
- contain keyboard in their name
This also boosts cpus independently from each other. Meaning:
If a cpu is hotplugged after the boost of another cpu was initiated the next
boost pulse will boost that cpu too.

Sysfs interface underway.

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: add sysfs interface for input event boost

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: input event boost: fix not resetting boost if cpu was unplugged before

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: tune hotplug values

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: boost: detect changed min frequency and update accordingly

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: boost: don't schedule more check than needed

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: increasing the check delay to 130ms
This change brings us down from 10 to 8 checks each second. The input boost reacts without
delay which is why we don't need to check for hotplugs so often anymore.

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: change frequencies for input boost
This should provide us with a more battery friendly setup in light
usage situations while it still provides the obvious advantages
the input boost gives us (faster reaction).

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: min_cpus & max_cpus should on/offline affected cpus

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: several changes [read more]
reworked cpu_up/down handling which removed redundant code
reworked max/min_cpus settings
reworked suspend/resume handling to obide by these new changes
also reworked locking for per cpu settings

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: fix changing boost freq sets min = boost freq

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: boost: if we are not boosted, revib_wq does not need to run at all

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_dcvs: remove no longer existing trace events

Change-Id: Ie15be400707498324f570848f944a1de4a8cf67d
Signed-off-by: Dennis Rassmann <showp1984@gmail.com>
Signed-off-by: Josue Rivera <prbassplayer@gmail.com>
Squash updates for MpDecision and Thermald from showp

msm_mpdecision: add fb callback, keep earlysuspend

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

thermal/mpdec: export throttle indicator and don't input boost if we are throttled

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Conflicts:
	drivers/thermal/bricked_thermal.c

msm_mpdecision: switch to lcd callback and improve sus/res code

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: remove per_cpu suspend value
This is unneccessary and produces overhead when checking/setting over loops

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: offload definitions to header

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Conflicts:
	arch/arm/mach-msm/msm_mpdecision.c

thermal: when we restore the original limits use the norm_min freq from mpdecision inputboost

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: fix definitions for earlysuspend/lcd callback switch

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: fix whitespaces throughout the file to comply with linux coding styles

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

Conflicts:
	arch/arm/mach-msm/msm_mpdecision.h

msm_mpdecision: early continue get_slowest_cpu() and _rate() to save some cycles

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: move startdelay to init to save cycles on each work call

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: also verify that boost frequencies are > minfreq

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: fix boost_time not respecting sysfs changes
This fixes issue #17

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: add missing #ifdefs around thermal related code
This fixes issue #19 (compilation without thermal)

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: add input boost triggers
This fixes issue #27 - No boost event triggered
&
issue #28 - Power button should trigger boost_freq

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: set idle_freq arch specific
This fixes issue #31 - idle frequency needs changing when switching archs

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: fix early_suspend compilation

This was not changed because we do not compile with early suspend
and hence didn't encounter any errors. Fix it.

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: add locking to early_suspend related code, even if we do not use it

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

cpu: noop nonboot_cpu calls if MSM_MPDEC is compiled

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: opt out early if we are thermal throttled

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

mdpec: fix missing ifdefs when compiling with earlysuspend

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>

msm_mpdecision: boost freqs are arch dependent too

Change-Id: I48b3f1fda07cc349feafcc0d4a68d5039be57e2b
Signed-off-by: Dennis Rassmann <showp1984@gmail.com>
Signed-off-by: Josue Rivera <prbassplayer@gmail.com>
mpdec: FIX BUG#27

Unplugging a boosted CPU will cause it to come back with
the boosted minimum frequency and stay on it.
(it gets stuck on boost)

Change-Id: I0f28203d54a9794648fff0577805db722b4bba52
Signed-off-by: Dennis Rassmann <showp1984@gmail.com>
mpdec: if !scroff_single_core unboost all cpus while suspending

Change-Id: If7bf802d407830df8e631e50dd9592420e5cdc26
Signed-off-by: Dennis Rassmann <showp1984@gmail.com>
mpdec: fix missing log message on resume if !scroff_single_core

Change-Id: If2b916e0a86232082fa79fcd4302c5cc051af21f
Signed-off-by: Dennis Rassmann <showp1984@gmail.com>
Tweak mpdecision values

Change-Id: Ied38e8d9aead087f95889568bce911c70d2ecede
Signed-off-by: Josue Rivera <prbassplayer@gmail.com>