cpufreq: interactive: realign with mainline 3.4

per:
  f3ce554 cpufreq: interactive: run at fraction of hispeed_freq when load is low

bulk of what i wanted removed:
 2bb0abf cpufreq: Disable hotplug during UI interaction
  *leftover input boost stuff
 2f4cbf8 cpufreq interactive governor: Update target frequency calculation
 + several fixup commits
 5893efb cpufreq: mid-range frequency bias
  *nvidia ramp logic

the rest will be added back
full list:

reverted:
da26503 cpufreq: interactive: always limit initial speed bump to hispeed
4c47242 cpufreq: interactive: run at fraction of hispeed_freq when load is low
f7596b0 cpufreq: interactive: remove depreciated go_maxspeed_load
d58e1c8 cpufreq: interactive: remove input_boost handling
1d33ef5 cpufreq: interactive: add duration to boostpulse
5893efb cpufreq: mid-range frequency bias
8d2c34f cpufreq: interactive: add boost pulse interface
2f694c2 Revert "Revert "cpufreq: Disable hotplug during UI interaction""
a75df69 Revert "cpufreq: Disable hotplug during UI interaction"
2bb0abf cpufreq: Disable hotplug during UI interaction
fe713a4 cpufreq: Backport Android 3.0 interactive governor
ca757eb cpufreq: interactive: change timer rate
806fff6 cpufreq: set go_maxspeed_load to 85%
4e1ec69 cpufreq: update target freq always
c8c6328 cpufreq: Add a knob to treat IO wait as busy
5bfda21 cpufreq: change min_sample_time
55f60ec cpufreq interactive governor: Unify attribute store functions
041013a cpufreq interactive governor: Reduce permissions
fb38f41 cpufreq interactive governor: Made sysfs nodes writable
08580dd cpufreq interactive governor: Fix attribute write bug
2da5414 cpufreq interactive governor: add max_boost sysfs node
6b9c5a2 cpufreq interactive governor: Init idle times on governor start
2f4cbf8 cpufreq interactive governor: Update target frequency calculation
30524c4 Revert "cpufreq: interactive governor: apply intermediate load on curren
bba6bd9 Revert "cpufreq: interactive governor: scale to max only if at min speed
0d8cdc5 Revert "cpufreq: interactive governor: go to intermediate hi speed befor
d7d5c43 Revert "cpufreq: interactive governor: default 20ms timer"

squashed:
f3ce554 cpufreq: interactive: run at fraction of hispeed_freq when load is low
63c3cf9 cpufreq: interactive: always limit initial speed bump to hispeed
2ed8f64 cpufreq: interactive: remove input_boost handling
856cb1e cpufreq: interactive: handle speed up and down in the realtime task
56a8a75 cpufreq: interactive: keep freezer happy when not current governor
f6bebb6 cpufreq: interactive: take idle notifications only when active
5068ec9 cpufreq: interactive: restart above_hispeed_delay at each hispeed load
0ae3e67 cpufreq: interactive: add boost pulse interface
5fa0404 cpufreq: interactive: set floor for boosted speed
096b789 cpufreq: interactive: Add sysfs boost interface for hints from userspace
447c84d cpufreq: interactive: remove unused target_validate_time_in_idle
8091d5b cpufreq: interactive: Boost frequency on touchscreen input
c233b58 cpufreq: Separate speed target revalidate time and initial set time
9c7ccc1 cpufreq: interactive: based hispeed bump on target freq, not actual
e0cfd52 cpufreq: interactive: adjust code and documentation to match
4a41891 cpufreq: interactive: configurable delay before raising above hispeed
a9e5894 cpufreq: interactive: don't drop speed if recently at higher load
be68b3f cpufreq: interactive: set at least hispeed when above hispeed load
b467c8e cpufreq: interactive: apply intermediate load to max speed not current
7ddbc2a cpufreq interactive governor: event tracing

Change-Id: Ic186427aa0474811663a7dfba14acffe9ce6ae88
cpufreq: change min_sample_time

We prefer a min_sample_time of 30ms. This is tied to our cluster switch
and auto-hotplug artificial delays.

Signed-off-by: satya popuri <spopuri@nvidia.com>

original commit message:

cpufreq: reduce min_sample_time

Reduce the minimum amount of time the interactive governor spends at a
frequency before ramping down. This parameter (min_sample_time) was 80ms
now reduced to 30 ms based on perf and power sweep numbers.

Reviewed-on: http://git-master/r/86900 (cherry picked from commit
581f20a5b7b8c3e4ee2c211b28dbc81510af2ae7).
Signed-off-by: satya popuri <spopuri@nvidia.com>

Change-Id: I24f4cd52737950fd4e78a36b4ee34a84551e0e12
Reviewed-on: http://git-master/r/89217
Reviewed-by: Satya Popuri <spopuri@nvidia.com>
Tested-by: Satya Popuri <spopuri@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>

Conflicts:
	drivers/cpufreq/cpufreq_interactive.c
cpufreq interactive governor: Init idle times on governor start

When governor starts initialize time_in_idle and idle_exit_time
variables with current data, and restart timer. This is required
to properly start governor on busy CPU that would not enter idle
state for a long time.

(cherry picked from commit 876dc6eddc68054e6abe23f6287cfbf5302a75b9)
(cherry picked from commit d0024f3ad1e4c6d4885355df3fda02435ccc471d)

Change-Id: I992ca9193cb95e64cc9ef8bfb86675b32ad6d43d
Reviewed-on: http://git-master/r/61712
Reviewed-by: Varun Colbert <vcolbert@nvidia.com>
Tested-by: Varun Colbert <vcolbert@nvidia.com>

Rebase-Id: Ra79d9a3ca97b0cfd49fb642ba7cafb98c11c04f1

Conflicts:
	drivers/cpufreq/cpufreq_interactive.c
cpufreq: Add a knob to treat IO wait as busy

The new sysfs node io_is_busy enables the interactive governor to
account any time spent by the CPU waiting for IO as non-idle time.
This helps us improve run-time of IO bound tasks by making up for
lost IO time in speeding up the CPU bound parts of the task.

Reviewed on http://git-master/r/#change,86894
cherry picked from 13a15aadc1134b5dae05cdcf9687396644f87411
Signed-off-by: satya popuri <spopuri@nvidia.com>

Reviewed-on: http://git-master/r/89218
Reviewed-by: Satya Popuri <spopuri@nvidia.com>
Tested-by: Satya Popuri <spopuri@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>

Conflicts:
	drivers/cpufreq/cpufreq_interactive.c

Change-Id: Ieea68df41cc730535b3572035d1a6f55efb2a86d
cpufreq: interactive: Fix "Init idle times on governor start"

Change-Id: I16531abf7ccf406fcd28ab8926468158d80ebd39
cpufreq: interactive: use google style store logic for io_is_busy

Change-Id: Ic00cea5267ebe0634f50ef65dd412eb41802bb4e
cpufreq: interactive: add back duration to boostpulse

Change-Id: I7c7224026844825081e3460cc7b4882aca98d71b