msm: camera: add fields to msm_stats_buf for cache operations.

Add a couple of fields to the msm_stats_buf structure
for cache coherence support on stats buffers from
user-space.

(cherry picked from commit 073e0cab00d6cf60279de167d8063c5e5f4b5715)

Change-Id: I4358bb9f8fff444d9879e351af29e47513d114ed
Signed-off-by: Ankit Premrajka <ankitp@codeaurora.org>
(cherry picked from commit 490e18c8ccde8c4450d20781faf7529c8c9d1512)
(cherry picked from commit 1467469bb4783e9fd18f2081b2c3eb044815e22b)
msm: clock-8960: Change source of DSI escape clock to byte clock

Changing DSI escape clock source from PXO to byte clock to add
flexibilty for customers. They can modify the escape clock by
changing the pinfo divider.

Change-Id: I3ad072fc524fe5fae9695a55bba24ce23b97efc7
CRs-Fixed: 361022
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
msm: cpufreq: Fix the race between dbs_refresh and hotplug.

The demand based switching responds to input events and schedules
work items on all online cpus to increase the frequency. This will
call the dbs_refresh_callback on respective cpu. If this work item
kicks in while cpu1 is progressing its way through cpufreq_add_dev,
there is a chance that work item grabs the cpu_policy_rwsem of cpu1
and relases that of cpu0, when add device is working through releas-
ing lock of cpu1 and reaquiring that of cpu0. This is locking out
cpu1 when it tries to come up online next time. The fix is hold the
hot plug lock while processing refresh work items.

CRs-Fixed: 362444
Change-Id: I57db7c7a9b58369bf059302896f3bf9eca2bc2bb
Signed-off-by: Krishna Vanka <kvanka@codeaurora.org>
import Ondemand from Jellybean Branch
Revert "cpufreq: ondemand: Add boost interface"

Switching to the CodeAurora version.

This reverts commit 981815e70915fc31f713c69d06aeedc2787ac80b.
cpufreq: Add a boostpulse interface to ondemand

For applications that require a one-shot increase in frequency,
the boostpulse interface would help to scale to max for the time
specified in boostime. This helps applications that currently
increases scaling_min_freq and resets later after a fixed duration.
Instead of changing scaling_min_freq applications can directly write
to boostpulse and governer resets during regular timer after the time
expires.

Change-Id: Ie5f490ff06b41364aa76dd468573433495da28a4
Signed-off-by: Narayanan Gopalakrishnan <nargop@codeaurora.org>
cpufreq: notify avg load for short sampling_rate

If the sampling rate is less than 50ms reporting
the actual load may lead to poor decision making
at user space. So, for sampling rates less than 50ms
report the average of load across two samples.

Change-Id: I0d1cf00801732bee8e4380158d7e892758226594
Signed-off-by: Narayanan Gopalakrishnan <nargop@codeaurora.org>
cpufreq: boost the sampling rate on touch event

For better Ux responsiveness ondemand sampling rate
needs to be 20ms. But, a 20ms sampling rate increases power
consumption. So, boost the sampling rate to 20ms on every
touch event for 2.5 ms and later reset to default rate.
Also, change sampling down factor proportional to the
sampling rate.

Change-Id: I111b1cf3b8ed133347149afc34d329d0384ecfcb
Signed-off-by: Narayanan Gopalakrishnan <nargop@codeaurora.org>
cpufreq: ondemand: Fix the boostpulse interface

 * Boostpulse was not working because no default frequency was set.
 * We don't need an input handler to push the freq to max, userspace
   does a better job with the Power HAL.
 * Tweak boost time to 500ms

Change-Id: Ib377e22fb4fbe5f41e85ac16806fdad9537a3077