Revert "fix simple govenor"

This reverts commit 686fbaa2f024340a3d2750ee9affb958eb8dd19b.
Revert "fix cherry-picking"

This reverts commit 0e05297893e006b79d47b82af30cc2bf4637076d.
Revert "KGSL: Simple Governor: fix minor logic issue"

This reverts commit 2fa95369ed2c8290ca534e3eec5edc84c64ba376.
Revert "KGSL: simple governor: expose tunables to sysfs interface via module_param"

This reverts commit 6563048890319c36b272fcf40f80332cd22eebf6.
Revert "KGSL: make simple govenor a selectable option, co-exist with ondemand"

This reverts commit 3ac183a41c2832aa346680d1c1e5b4e0a373a9d8.
Revert "KGSL: Add a simple GPU governor for Adreno xxx GPU series"

This reverts commit eb121a970d58f493a82b979908725a65f40571d4.
evita: remove kgsl simple govenor

Change-Id: I95ca62544d5937399f878b95836c5efd48661bf4
Add Thalamus ARM Generic Hotplug interface because its time to get rid of mpdecision. All credits to Thalamus of course.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
Couple more flags - building with -O2 now as well.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
block: deadline: initial flash storage tweaks.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
smp: patches from mainline 3.5 to hopefully help with hotplug
efficiency

Thomas Gleixner's generic-idle patches:

smp: Add task_struct argument to __cpu_up()
Preparatory patch to make the idle thread allocation for secondary
cpus generic.
http://git.kernel.org/?p=linux/kernel/git/tip/tip.git;a=commit;h=8239c25f47d2b318156993b15f33900a86ea5e17

smp: Add generic smpboot facility
Start a new file, which will hold SMP and CPU hotplug related generic
infrastructure.
http://git.kernel.org/?p=linux/kernel/git/tip/tip.git;a=commit;h=38498a67aa2cf8c80754b8d304bfacc10bc582b5

smp: Provide generic idle thread allocation
All SMP architectures have magic to fork the idle task and to store it
for reusage when cpu hotplug is enabled. Provide a generic
infrastructure for it.
Create/reinit the idle thread for the cpu which is brought up in the
generic code and hand the thread pointer to the architecture code via
__cpu_up().
Note, that fork_idle() is called via a workqueue, because this
guarantees that the idle thread does not get a reference to a user
space VM. This can happen when the boot process did not bring up all
possible cpus and a later cpu_up() is initiated via the sysfs
interface. In that case fork_idle() would be called in the context of
the user space task and take a reference on the user space VM.
http://git.kernel.org/?p=linux/kernel/git/tip/tip.git;a=commit;h=29d5e0476e1c4a513859e7858845ad172f560389

arm: Use generic idle thread allocation
http://git.kernel.org/?p=linux/kernel/git/tip/tip.git;a=commit;h=84ec6d5796e095e2f8698bd2b5d33849ed26d9e2
Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
Signed-off-by: Hieu Phan <aznrice2k4@gmail.com>

Change-Id: I0a22ba39166863a3c64d64918db1f7936183ee3e
b38

Change-Id: I497929ab7fd1a5ae1cdcf0dfceb2d174c6db08f8
Signed-off-by: Hieu Phan <aznrice2k4@gmail.com>
msm: kgsl: re-add Simple Governor.

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
Signed-off-by: Hieu Phan <aznrice2k4@gmail.com>
msm: kgsl: forgot to add the header for the Simple Governor on the latest revert and re-add.

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
Signed-off-by: Hieu Phan <aznrice2k4@gmail.com>
msm: kgsl: we don't need this routine anymore. We save CPU cycles not going through this small, now deleted, piece of code.

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
Signed-off-by: Hieu Phan <aznrice2k4@gmail.com>
Mako (absolute) Voltage control.

This started out as just including the existing work of someone else.
But that was so obfuscated and needlessly moved in sysfs, i turned it into the type control
we have on NP, meaning same sysfs location and output formatting.
Since the various kernels range from no preUV to different levels of UV it is best to encourage the user
to think in absolute voltages.
"I can UV -150 on kernel X! Really? Odd, i can only UV kernel Y -50mV!"
Kernel X has no preUV, kernel Y has 100mV preUV, so they both run the same.
This is needlessly confusing to users.

Talking in absolutes, users will get a better understanding of "what the other guy's" device is capable of.
Sticking to a common sysfs location and to the common absolute voltage is thus the right thing to do.

This seems to work now as it should.

This is heavily based on coolbho3k's NP patch. from Paul's mess we might have a few function names, but not the contents.
This is not his, if he claims otherwise, he can go fuck himself.

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>

This was originally made for the mako kernel but with testing it's
compatible with the evita.

Change-Id: Ida4a57bee2dfa352c654e30af0e1e46978197e2b
Signed-off-by: Hieu Phan <aznrice2k4@gmail.com>
Undervolt: clean it up, make it elegant and remove the constrain of fixed set of NUM_FREQS - its not dynamic based on the number of freqs used for scaling via an external function.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
Signed-off-by: Hieu Phan <aznrice2k4@gmail.com>
Undervolt: few minor changes, mostly for clarity.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
Signed-off-by: Hieu Phan <aznrice2k4@gmail.com>
Undervolt: add checks to disallow too extreme voltages, min and max.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
Signed-off-by: Hieu Phan <aznrice2k4@gmail.com>
evita: enable voltage control

Change-Id: Ia190e601aff8ed1883f2f3883596eb0e339101e1
Signed-off-by: Hieu Phan <aznrice2k4@gmail.com>