Solved camera take picture issue!
USB: msm_otg: Acknowledge PMIC BSV events, if ID is set

Currently not all the PMIC BSV events are handled due to check
that was introduced for handling spurious interrupts in Host Mode.
Rather than checking the OTG state as apart of these spurious interrupts
which gets updated in workqueue context, check for ID state and return
only, if ID is clear. This will fix all the corner cases and race
conditions as part of handling ACA use cases as well.

CRs-Fixed: 411036
Signed-off-by: Chiranjeevi Velempati <cvelempa@codeaurora.org>
(cherry picked from commit 2e1048bfda3f7eec6b9ba21ad9962f6b9388d89f)

Conflicts:

	drivers/usb/otg/msm_otg.c

Change-Id: Ie8c6f68bfd6111d9f8ad95b24e66856967b07e72
Signed-off-by: Srivalli Oguri <oguri@codeaurora.org>
diag: Improve handling of IOCTLs

DIAG kernel driver interacts with user space processes using
IOCTLS. This change adds conditions to avoid potential integer
over/underflow, incorrect buffer copy.

CVE-2012-4220
CVE-2012-4221

Change-Id: If62cbdc953d67436a0a785f43f263a2cb0a76973
CRs-Fixed: 385352
CRs-Fixed: 385349
Signed-off-by: Ravi Aravamudhan <aravamud@codeaurora.org>
msm: kgsl: Set sysfs max clock for devices with no power scale policy

When the sysfs entry for max clock is updated, set it immediately for the
devices that has no power scale policy. This prevents the device from
running with undesired clock.

(cherry picked from commit 6ca8011b4feb30c29e8e6fb5b3571fd2314879e0)

Change-Id: I3a4d689d90036edc243fa97562a79394ace94c2a
CRs-fixed: 408963
Signed-off-by: Ranjhith Kalisamy <ranjhith@codeaurora.org>
power: pm8921-charger: disable battery temperature wakeup

The battery temperature interrupts are functional only when there is a
valid charger source present. There is no point making it a wakeup
interrupt, since if the charger is absent the interrupt wont be
triggered (if it is triggered it should be ignored).

Note that for 8921 charging, the software does not take any action if
the battery gets hot/cold. The 8921 hardware state machine stops
charging if the battery temperature goes out of the limits.

For external chargers which depend on the temperature monitoring of
8921, we rely on the fact that the external charger will hold a wakelock
and avoid sleep as long as charging is in progress.

In cases when external charging is finished and the system did go into
suspend, we don't want to wakeup the device only to realize that external
charging was not in progress.

Basically no case requires that we wakeup from battery temperature
interrupts.

(cherry picked from commit a845ec32e6cd85db01c9c5706c0677226e4854b9)

Change-Id: I435e9b4840d5a96d7bca498bee29e49af265dfd3
CRs-Fixed: 395312
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
msm: kgsl: Turn off the CP_DEBUG dynamic clock

The CP dynamic clock seems to be glitchy when the CP clocks are turned
back on after a power event. Turn off said dynamic clock control at
init time. The impact of leaving the dynamic clock control off is
negligible since the CP clock is only on when the CP is actually in
use.

CRs-fixed: 402119
CRs-fixed: 409253
CRs-fixed: 413224
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
(cherry picked from commit ed201aa291dfe13629d8c6cfa1d6e6f229b0c3c2)

Conflicts:

	drivers/gpu/msm/adreno_ringbuffer.c

Change-Id: I97d82ab71def370c16d4a5504087467aba82e4bb
Signed-off-by: Srivalli Oguri <oguri@codeaurora.org>
Squashed update of kernel from 3.0.60 to 3.0.61
Fix warnings for ariesve!
ancora_tmo: Change to correct camera sensor for this phone
More camera fixes

Both front and back camera works on ICS for ancora now.

On Jelly Bean switching to front camera freezes the phone.
Not sure yet if it's caused by using different toolchains, as I use
4.4.3 for ICS kernel and 4.6 for JB.
ARMv7: Flush the vectors page using the base address
sched: LOAD_FREQ (4*HZ+61) avoids loadavg Moire
ARM: Add optimised swahb32() byteswap helper for v6 and above

ARMv6 and later processors have the REV16 instruction, which swaps
the bytes within each halfword of a register value.

This is already used to implement swab16(), but since the native
operation performaed by REV16 is actually swahb32(), this patch
renames the existing swab16() helper accordingly and defines
__arch_swab16() in terms of it.  This allows calls to both swab16()
and swahb32() to be optimised.

The compiler's generated code might improve someday, but as of
4.5.2 the code generated for pure C implementing these 16-bit
bytesswaps remains pessimal.

swahb32() is useful for converting 32-bit Thumb instructions
between integer and memory representation on BE8 platforms (among
other uses).

Signed-off-by: Dave Martin <dave.martin@xxxxxxxxxx>
Merge branch 'ics-3.0' of https://github.com/hadidjapri/samsung-kernel-msm7x30 into ics-3.0
Adding sio and zen scheduler

Conflicts:
	block/Makefile