Add my Hotplug driver code. All previous commits are squashed into this version.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: reschedule early with the user chooses either 0 or 100 as the load_threshold for quad-core or dual-core respectively.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
update 1
mako_hotplug: clean up some code, remove the high priority flag from the workqueue, don't see why we need it and on screen on instead of onlining all cores just online cpu1 and 1 second after screen on, at least for now to test.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: online cpu1 right after screen on instead of waiting 1 second. Also fix identations and remove blank spaces.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: instead of calculating the load every sample (which is kinda expensive) we can use the governors load calculation instead of trying to recreate the same thing (adding unecessary overhead). Also cleanup some code.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: we're getting the load from the governors, no need to increment the counter by 2 and we can increase the threshold to 70 to balance things out.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: fix a bug where cores would get stuck online caused by a wrong if check during an input boost case.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: clean up a little bit.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: we should care about very high load spikes so when the load
is 100% the core that is next in line is onlined, no questions asked.
It won't go through the 1s minimum time for a core to be online before
hotplug though.

hackbench -p -T:
Before: 1.816sec
After: 0.917sec

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: code revision

  * clean it up to remove clutter on the main function
  * move all the hard-work to the cpu_revive and cpu_smash wrappers
for code clarity
  * for load spikes instead of relying on a single sample on 100% load
the counter needs to be >= 2 to avoid spurious online calls

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: simplify whole process, I was not happy with the solution of cpu0->cpu2 / cpu1->cpu3 logic. And besides it created extra overhead.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: fix styling.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: fix a small bug.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: we also don't need it that low at this point.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: we can now cap max freq to 1GHz on screen off.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: without updating the policy nothing actually happened.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: make sure the notifier does not go through for every damn CPUFREQ_ADJUST otherwise it's a mess.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: lets try this fix for the crippling sound when changing networks.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: minor code optimisations.

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