Cpufreq: interactive: Add fresh google interactive gov

Existing interactive gov code diverged significantly from
the version maintained by Google.

The change ports current version of Google interactive governor
code maintained in "android-3.4" branch.

Merge branch 'android-3.4' into android-tegra-nv-3.4

Conflicts:
drivers/cpufreq/cpufreq_interactive.c
include/trace/events/cpufreq_interactive.h

Bug 1281679

Signed-off-by: Puneet Saxena <puneets@nvidia.com>
Cpufreq: interactive: change min_sample_time

Reduce min_sample_time so that frequency can be
ramped down quickly.

Bug 1281679

Change-Id: I1585c30a6bb4c2cb6e5567c8e472e03af3596971
Signed-off-by: Puneet Saxena <puneets@nvidia.com>
Reviewed-on: http://git-master/r/227977
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
Reviewed-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Cpufreq: interactive: Check actual freq before setting new freq

In case Actual freq is not updated till next timer interrupt
and new target freq comes same as actual freq.
Don't go for setting same frequency again.

Bug 1316765

Reviewed-on: http://git-master/r/249103
(cherry picked from commit d5a4d9622c27db40334ba2df3503c2d2e7457bcb)

Change-Id: If81786911fd85adb8469b49c59f2ab70ae12f96a
Signed-off-by: Prashant Gaikwad <pgaikwad@nvidia.com>
Signed-off-by: Puneet Saxena <puneets@nvidia.com>
Reviewed-on: http://git-master/r/254352
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
sched: add back missing brace