mako_hotplug: if the cores go online one by one we still want the performance tunables if we hit the second level threshold with all the cores online for at least 5 seconds.

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
cpufreq: interactive: improve governor routines, clean up old crap and remove tracing. Also add 3 tunables.

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
mako_hotplug: adapt according to the new interactive code.

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
cpufreq: interactive: fix a bug and remove some, in my opinion, useless code.

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
mako_hotplug: increase first_level to 90.

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
msm: cpufreq: Break out early if target frequency is the same as the current

Signed-off-by: Stratos Karafotis <stratosk@semaphore.gr>
Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
Revert "cpufreq: interactive: fix a bug and remove some, in my opinion, useless code."

This reverts commit 2b193a2a9a54228d576debc195a1da8d4b13df3f.
cpufreq: interactive: reverted last patch to fix a 3-4fps loss, but still need this commit to fix a bug where the freq could be stuck at 1GHz depending on the input_boost_freq.

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
Decrease timer_rate to 35ms, inincrease above_hispeed_delay to 20ms and decrease first_level threshold to 80, again.

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
Merged updates from FrancoKernel

mako_hotplug: new algorithm

Every 0.1 second it polls for load. if the load is higher than the "threshold"
(configurable via first_level), it scores 1 point. If the load is lower than
the "threshold", it takes away 1 point. On the scoreboard, if the points reach
10 --> 4 cores -> polls every 0.25 second from now on. Whenever the points
on the scoreboard drops below 10 --> 1 core operation --> polling
(frequency of calculating scores) back to 0.1 second.

So basically the hotplug driver has either 1 core or 4 cores. And 2 cores are
up by touch boosts.

"lighter games" will have 4 cores too because the load is not calculated from
all the cores. Instead the new driver only takes the load from cpu0
(most games, esp light ones focus on stressing cpu0) so there will be a higher
chance to reach 10 points on the scoreboard --> 4 cores --> points dont drop
because of constant gaming --> constant 4 cores ->> ultimate fps while gaming.

My theory is that whenever you game, you dont care about battery and so the
kernel gives best fps. Out of gaming? The prevention of unnecessary cores
jumping will save more juice!

Also for anyone worrying about the scoreboard having too many points, the
maximum points for the cpus to score is 50.

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

Conflicts:
	arch/arm/kernel/mako_hotplug.c