Intelliactive (Squash)

cpufreq: intelliactive: initial coding and introduction!

intelliactive is based on Latest Google Interactive cpufreq governor from
Google.  The original Interactive provides smooth UI operations but suffers
slight battery drain due to its aggressive policies.  Intelliactive is an
improvement built on top of it.
It has the following enhancements added:
1. self-boost capability from input drivers (no need for PowerHAL assist)
2. two phase scheduling (idle/busy phases to prevent from jumping directly to
   max freq
3. Checks for offline cpus and short circuits some unnecessary checks to
   improve code execution paths
4. removed trace calls
Signed-off-by: Paul Reioux <reioux@gmail.com>
Conflicts:
	drivers/cpufreq/Kconfig
	drivers/cpufreq/Makefile
	include/linux/cpufreq.h
Change-Id: I2214389244ed25f19f6b4d9ee594e471e3ed214f

intelliactive: fix race condition when unregistering input handlers

Change-Id: I9cface82f978b094b8fca7fd0b5df9441ec39e4d
Signed-off-by: Paul Reioux <reioux@gmail.com>

intelliactive: add upstream patches

Change-Id: Ic95683ae6b72bb83bb8b07be903086eb00d2eecd
Signed-off-by: Paul Reioux <reioux@gmail.com>

intelliactive: make touch boost interface generic

Change-Id: I5e7eb774c17822efdb2e2504fdd21e1d3c0d995c
Signed-off-by: Paul Reioux <reioux@gmail.com>

drivers/cpufreq/cpufreq_intelliactive.c: GCC 4.9.x warning fix up

Change-Id: I25e8e7a63ec1fab9f45f82b15cc373ebc394b973
Signed-off-by: Paul Reioux <reioux@gmail.com>

intelliactive: rework input register/unregister

Change-Id: I0b012758636a269af80ac4d8a7d03d832bc634a2
Signed-off-by: Paul Reioux <reioux@gmail.com>

Defconfig: Enable Intelliactive

cpufreq: intelliactive: Move get_cpu_idle_time() to cpufreq.c