cpufreq: interactive: set at least hispeed when above hispeed load

If load is above go_hispeed_load, always go to at least hispeed_freq,
even when reducing speed from a higher speed, not just when jumping
up from minimum speed.  Avoids running at a lower than intended
speed after a burst of even higher load.

Change-Id: I5b9d2a15ba25ce609b21bac7c724265cf6838dee
Signed-off-by: Todd Poynor <toddpoynor@google.com>
(cherry picked from commit 1c41e01a514bc6b5136fd9040bed5137cfd712a8)

Conflicts:
	drivers/cpufreq/cpufreq_interactive.c
cpufreq: interactive: don't drop speed if recently at higher load

Apply min_sample_time to the last time the current target speed
was originally requested or re-validated as appropriate for the
current load, not to the time since the current speed was
originally set.  Avoids periodic dips in speed during bursty
loads.

Change-Id: I250bda657985de60373f9897cc41f480664d51a1
Signed-off-by: Todd Poynor <toddpoynor@google.com>
(cherry picked from commit e04e953b657d6e8b4f00b9e341370e339b1a0c97)

Conflicts:
	drivers/cpufreq/cpufreq_interactive.c
cpufreq: interactive: configurable delay before raising above hispeed

Change-Id: I4d6ac40b23a3790d48e30c37408284e9f955e8fa
Signed-off-by: Todd Poynor <toddpoynor@google.com>
(cherry picked from commit c2ad521b982d949c5dfabe5ff257bb4f33ca8b51)

Conflicts:
	drivers/cpufreq/cpufreq_interactive.c
cpufreq: interactive: adjust code and documentation to match

Change-Id: If59c668d514a29febe5c35404fd9d01df8548eb1
Signed-off-by: Todd Poynor <toddpoynor@google.com>
(cherry picked from commit 801cb6260fb5cae3bbc513927b583447c38d9deb)

Conflicts:
	Documentation/cpu-freq/governors.txt
cpufreq: interactive: based hispeed bump on target freq, not actual

For systems that set a common speed for all CPUs, checking current
speed here could bypass the intermediate hispeed bump decision for
this CPU when another CPU was already at hispeed.  This could
result in an overly high setting (for all CPUs) in situations
where all CPUs were about to drop to load levels that map to
hispeed or below.

Change-Id: I186f23dcfc5e2b6336cab8b0327f0c8a9a4482bc
Signed-off-by: Todd Poynor <toddpoynor@google.com>
(cherry picked from commit 4e3800ea447962106a962f5279ea508edd6ca160)
cpufreq: interactive: Boost frequency on touchscreen input

Based on previous patches by Tero Kristo <tero.kristo@nokia.com>,
Brian Steuer <bsteuer@codeaurora.org>,
David Ng <dave@codeaurora.org>,
Antti P Miettinen <amiettinen@nvidia.com>, and
Thomas Renninger <trenn@suse.de>

Change-Id: Ic55fedcf6f9310f43a7022fb88e23b0392122769
Signed-off-by: Todd Poynor <toddpoynor@google.com>
(cherry picked from commit 2e21b68cd68be556224aee775f67fbbb5d6870a6)

Conflicts:
	Documentation/cpu-freq/governors.txt
	drivers/cpufreq/cpufreq_interactive.c
	include/trace/events/cpufreq_interactive.h
cpufreq: interactive: remove unused target_validate_time_in_idle

Change-Id: I37c5085b91318242612440dfd775ad762996612f
Signed-off-by: Todd Poynor <toddpoynor@google.com>
(cherry picked from commit 66510aa1148e3457e7d46e0a2582dac7c591b95d)

Conflicts:
	drivers/cpufreq/cpufreq_interactive.c
cpufreq: interactive: Add sysfs boost interface for hints from userspace

The explicit hint on/off version.

Change-Id: Ibf62b6d45bf6fb8c9c055b9bdaf074ce9374c04f
Signed-off-by: Todd Poynor <toddpoynor@google.com>
(cherry picked from commit 5d61d3a6e2103801565048202999423657b4430a)

Conflicts:
	Documentation/cpu-freq/governors.txt
cpufreq: interactive: set floor for boosted speed

Allow speed to drop to flooor frequency but not below, don't pin
to speed at last boost.

Change-Id: I0147c2b7a2e61ba16820605af6baaf09570be787
Signed-off-by: Todd Poynor <toddpoynor@google.com>
(cherry picked from commit fd8bc3774515bc6d2af3dfe567f902098cb0dea8)

Conflicts:
	drivers/cpufreq/cpufreq_interactive.c
cpufreq: interactive: add boost pulse interface

Change-Id: Icf1e86d2065cc8f0816ba9c6b065eb056d4e8249
Signed-off-by: Todd Poynor <toddpoynor@google.com>
(cherry picked from commit 5702c9182d292356aba0f0dd6f2f230a7e53fa15)

Conflicts:
	Documentation/cpu-freq/governors.txt
cpufreq: interactive: restart above_hispeed_delay at each hispeed load

Change-Id: I2e5b91d45e8806b0ab94ca2301ed671c9af9ab13
Signed-off-by: Todd Poynor <toddpoynor@google.com>
(cherry picked from commit c12914672a97c8a6c3800d52a5c40ac06878d6db)

Conflicts:
	drivers/cpufreq/cpufreq_interactive.c
cpufreq: interactive: fixup trace of string params

Change-Id: Iac47f62437e61b13724afbbf9df1a0729f58f236
Signed-off-by: Todd Poynor <toddpoynor@google.com>
(cherry picked from commit 8a2755204da8afdbefc317874087e7823ae71f42)
Revert: cyanogenmod_tuna_defconfig: Enable LZO Compress, Decompress and for Initram
Kernel Version: ak.009.jb.exp
cyanogenmod_tuna_defconfig: Fine tuning