ASoC: wcd9xxx: Update button release thresholds based on current micbias

During short button press, the button release threshold
registers are updated based on the determined button number
so that when mic voltage goes above the programmed value,
release interrupt will be triggered. This reduces delay in
reporting button release. However, the release thresholds
should be programmed based on the current micbias voltage
instead of programming based on 2.7V micbias. Otherwise,
it is possible that during playback where micbias is switched
to VDDIO (1.8V), the mic voltage would never go beyond the
voltage programmed in release threshold registers there by
not generating release interrupt at all.

CRs-Fixed: 641486
Change-Id: Ied9891f88b89d6f972db5e197200886c6aab3ab2
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
msm: kgsl: Do not detect faults when GPU core is idle

Do not detect GPU faults when GPU hardware status is idle,
this leads to incorrect fault detection.

Conflicts:
	drivers/gpu/msm/adreno.h

Change-Id: I7a9f8c49eb819241698f99fd50aaed400aadd4f4
Signed-off-by: Tarun Karra <tkarra@codeaurora.org>
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
(cherry picked from commit 8002a0061d3ccfeccb93af50bce4ef44977845af)
msm: hotplug: Add MSM Hotplug driver
msm: hotplug: Max 1036MHz during screen off
msm: hotplug: Remove spinlock in load stats

It's too expensive and not nessecary.
msm: hotplug: Stop hotplug work a tad later
msm: hotplug: Schedule suspend/resume work

Dennis is right, this is the proper way to suspend and resume.
hammerhead: touch: Remove touch boost

https://github.com/myfluxi/kernel_msm/commit/90a14ff127b60a0342467e3c55ebe0a2f9445bdc
msm: hotplug: Increase down lock duration and janitize
msm: hotplug: Use high-priority workqueue
msm: hotplug: Add input boost handler

Add an input handler to hotplug additional cpus. Down lock will
take care of keeping the cpu boosted.
msm: hotplug: Add minimum interval for input boost
msm: hotplug: Remove deprecated msm_cpufreq_set_freq_limits
msm: hotplug: Cleanup hotplugging routines

Remove paroid atomic operations that were causing issues.
cpufreq: add new routine cpufreq_verify_within_cpu_limits()

Most of the users of cpufreq_verify_within_limits() calls it for
limiting with min/max from policy->cpuinfo. We can make that code
simple by introducing another routine which will do this for them
automatically.

This patch adds another routine cpufreq_verify_within_cpu_limits()
and updates others to use it.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Dirk Brandewie <dirk.j.brandewie@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
msm: hotplug: Optimize hotplugging routines

- Power down the slowest cpu
- Move checks from callback to calling function
- Clean it up a bit
msm: hotplug: Add pm ops
msm: hotplug: Fix symbol export
msm: hotplug: Fixup sysfs interface

* Use proper return values
* Fix store_down_lock_duration()
* Add some more checks
* Cleanup some mess
msm: hotplug: Update threshold values and down lock duration

* Power up additional cpus earlier
* Power down cpus later
* Keep cpus online at least 5 seconds