cpufreq: add generic get_cpuidle_time

Easier to maintain this in one place.

[2.6.32]: Notice i also made the relevant changes to
the interactive governor here to make this commit
atomic.
If anything bad happens in the next few commits, this
should be a "save point" to return to.

Signed-off-by: Blechd0se <alex.christ@hotmail.de>
Signed-off-by: Blechd0se <alex.christ@hotmail.de>

Conflicts:
	drivers/cpufreq/cpufreq.c
	drivers/cpufreq/cpufreq_conservative.c
	drivers/cpufreq/cpufreq_ondemand.c
drivers: cpufreq: squash in my interactive changes

This commit contains all my changes to the interactive
governor from this branch; https://github.com/Blechd0se/kernel-moto-g/blob/97def5b37f3771996df904fc9de2be8c13e537f3/drivers/cpufreq/cpufreq_interactive.c

Of course its stripped down, since thread migration code
is just useless on a single core device. The touchboost
solution has dependency, in case somebody goes wild and wants
to revert this beauty.

[2.6.32]: Changed the allocation for the input workqueue to a
single threaded one, since this kernel has no clue about
WQ_FREEZABLE or WQ_HIGHPRI.

Signed-off-by: Blechd0se <alex.christ@hotmail.de>
cpufreq: interactive: add back suspend/resume handler

Works just like before; caps the frequency during suspend
to a certain value and boosts it back during resume.

It contains a few cleanups here and there, nothing too fancy.

Signed-off-by: Blechd0se <alex.christ@hotmail.de>