cpufreq: Introduce CPU-boost framework

The CPU-boost framework allows you to place hooks in various drivers to boost the CPU for either a specified duration or indefinitely (until it is manually unboosted). If a new boost request is sent while the CPU is boosted then the new boost request will take precedence and immediately override the current boost.

Signed-off-by: Sultanxda <sultanxda@gmail.com>
Add initial CPU-boost hooks

CPU is currently boosted for these activities:
*Taking a picture (1188MHz for 3s)
*Starting video playback (1242MHz for 5s)
*Recording video (594MHz indefinite)
*Turning on the display (972MHz for 7s)

Signed-off-by: Sultanxda <sultanxda@gmail.com>
Sultan*_defconfig: Enable CPU-boost framework
qt602240_ts: clear unused slots in the framework after calibration

It is possible for the state of the framework and the driver to get out
of sync resulting in "stuck" touch points from the framework's perspective.
This seems to happen only if there are touches during the device's
calibration.  The result is a locked up touchscreen for the user.

After error cases and after calibration, send an "unused" message
(-1 for ABS_MT_TRACKING_ID) for all unused slots. This fixes the
phantom stuck points.

Change-Id: I1fc22175dde9deb68ac69c322e305fc174fdba78
qt602240_ts: fix incorrect #if !defined(CONFIG_*_MODEL) usage

  * When trying to avoid compiling some code for a specified set of models,
    #if !defined() was used with ||'s instead of &&'s. This ends up enabling the
    code on all models, which is not the intended purpose.
  * #demorganfail

Change-Id: If42c933ae144f8c3b7c64cd5a8da36ac418a6efc
qt602240_ts: add additional mutex protection

Change-Id: I174920431e0eaba2b59dda78e478af228affb9d7
msm8660: fix incorrect gpio_config in touchkey driver

  * drivers/gpio/pm8xxx-gpio.c:pm8xxx_gpio_config() does not take the
    raw GPIO number
  * fixes this error in kmsg:
    "pm8xxx_gpio_config: called on gpio 13 not handled by any pmic"

Change-Id: I78609eb6019dcabe9abfdafc6f65e7a007311185
msm8660: add additional locking protection to touckey driver

Change-Id: Ic00b8c37ce445f933981d41c727403e6ae9f5cbd
cypress-touchkey: Fix unused-label warning
input: cypress: Add Sweep2Wake

By Showp-1984 and Yank555.
Sultan*_defconfig: Enable Sweep2Wake
Update misc. drivers from SGH-T989_NA_JB_Opensource

Signed-off-by: Sultanxda <sultanxda@gmail.com>
Sultan*_defconfig: v1.3.6