arm/dt: msm8610: Add DT support for haptics

Add necessary DT settings for haptics on msm8610 devices

Change-Id: I116dcc02de5b259410b3a6b6c64a149bd3e7c613
Signed-off-by: Chun Zhang <chunz@codeaurora.org>
arm/dt: msm8610: Update device tree for audio

Update device tree to support low latency audio and
mi2s interface for audio playback and capture.

Change-Id: I19e48007daf93b21cc91c7c803160e57eff804d5
Signed-off-by: Kuirong Wang <kuirongw@codeaurora.org>
arm/dt: correct the max supported load by Q6

On msm8x10, Q6 supports a max load of one
720p decode for H264.

Change-Id: I61a7366722382be21bc8ede500ea394f99dac61e
Signed-off-by: Arun Menon <avmenon@codeaurora.org>
Revert "hrtimer: Prevent enqueue of hrtimer on dead CPU"

This reverts commit 878f1bd9ddd4b9734ad72d187b0266e640c99e08.

Based on upstream mailing list discussions, this patch is not
necessary since switch_hrtimer_base() is called with interrupts
disabled.

Change-Id: I53c64b1a4cea3a310ef53d1729a00baee6e4534a
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
Revert "hrtimer: Consider preemption when migrating hrtimer cpu_bases"

This reverts commit f31b9b9f30f76847c94155f9da4da12f912b0885.

Based on upstream mailing list discussions, this patch is not
necessary since switch_hrtimer_base() is called with interrupts
disabled.

Change-Id: I0244a744516e1c289af25043ee8b866be54813e3
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
msm: ipa: added debugfs support to dump ipa nat table

Currently there is no way to dump ipa nat dynamically using
a command. So added debug fs ip4_nat to dump ipa nat table
dynamically using "cat /sys/kernel/debug/ipa/ip4_nat".
With this change, users/testers can view ipa nat table using
above command.

Change-Id: Ia30b2371c5737e9cee5e42450377372637fff11d
Signed-off-by: Ravi Gummadidala <rgummadi@codeaurora.org>
msm: ipa: tx interrupt mitigation changes

Original scheme queued a work item for every TX interrupt.
This led to high CPU utilization and also impacted
throughput. This change applies the existing RX interruption
mitigation scheme to the TX path also. The polling sleep
interval values are tuned for TX path. Also, this scheme
applies only to data packets and not immediate commands.

Change-Id: Id87da0c2665aa6af56a0fcd1bda329bd15bf9f0c
Signed-off-by: Ravi Gummadidala <rgummadi@codeaurora.org>
msm: kgsl: Remove extra call to sync_fence_put()

sync_fence_put is called twice and cause NULL pointer dereference.

Change-Id: Ia29e676af28d9040d1ba1ee8669f1306cc8b4035
Signed-off-by: Alex Wong <waiw@codeaurora.org>
msm: kgsl: reduce iommu pagefault logging

Remove duplicate log messages that were happening for
every iommu page fault.

Change-Id: I13bebcd3e93165d1b22ca859c39d0b169d3a53eb
Signed-off-by: Jeremy Gebben <jgebben@codeaurora.org>
msm: camera: Add support to skip all output frames from ISP

Add this support for cases where we don't need image buffers but want
to maintain the hardware streaming and generate statistics buffers.

Change-Id: I7925aedeafda0525a08ce59d1f6640d9fca30ed9
Signed-off-by: Kevin Chan <ktchan@codeaurora.org>
arm/dt: msm8226: default to svs for cx/mx

Vote from regulator is not propagated to RPM because
the notification system does not receive the sleep vote
when it is cached. As a result of which, super turbo is
sent as the voltage during sleep by default. As a workaround default
to svs for cx and mx temporarily.

Change-Id: I5936059210953d32cd117917e4221d0f083dfe0a
Signed-off-by: Priyanka Mathur <pmathur@codeaurora.org>
defconfig: 8610: disable SLUB_DEBUG on perf defconfig

There is a 30% improvement on some benchmarks with CONFIG_SLUB_DEBUG
disabled. Hence disable it on perf defconfig to improve performance.
This also reduces the memory footprint.

Change-Id: Ib2fee1cab72abdbe1074c9cbc887a2281e3d9752
Signed-off-by: Syed Rameez Mustafa <rameezmustafa@codeaurora.org>
msm: mdss: remove 64M alignment while requesting bus bandwidth

Currently bus bandwidth update is skipped if new bandwidth request is
within 64M boundary of current request. While enforcing this rule, new
request is changed to 64M aligned and then compared. This results in
higher bandwidth request then necessary which may lead system to higher
clock rate. Fix this by removing 64M alignment to new bandwidth request.

CRs-Fixed: 479711
Change-Id: Ib25afa00b6e9276146ca78a4ce9cbdf3a84288c4
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
msm: pil-mss: Add support for error services ready interrupt

Set up the "error services ready" IRQ so that the subsystem
framework can check for this indication as a boot up requirement
for MSS.

Change-Id: I876745469908a5a8feef636e15cce69e8a01bcfb
Signed-off-by: Seemanta Dutta <seemanta@codeaurora.org>
arm/dt: boot_stats: add mpm sleep counter node

Enable msm boot stats for the common MSM 8610/8226
image by adding the MPM sleep counter node.

Change-Id: I1c9773eae136ac688f4047082cab6ca9d13873ff
Signed-off-by: Abhimanyu Kapur <abhimany@codeaurora.org>
ASoC: msm: qdsp6v2: Add support for clip bank selection

When audio codec triggers clip interrupt it will
update the clip values in 4 pcm bank registers.
AFE module on dsp needs to be configured by apps
from which clip bank pcm values should be consumed.
This change exposes interface to afe driver clients for
configuring the clip bank selection.

Change-Id: I94fdb97b49abe28c8ec815a10d262651879eaa07
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
ASoC: msm8974: Enable clip interrupt

Configure pcm clip bank selection registers and enable
the clip interupt during initialization of audio driver.

Change-Id: I761840bff1f49a1a0535adfec94411539e110a29
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
ASoC: wcd9320: Fix clip registers bitmask

This change fixes the bit mask for clip registers.
Dsp uses bit mask and number of bits fields for read/write
operations on clip registers.

Change-Id: I621b9a082a74440a6e95ad8acfbc69727f8e2674
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
mmc: block: Update error handling if block data is not available

While handling IOCTL command, if the block is not available then in the
bail-out path it is trying to free the block data which will be executed
against NULL pointer.

So, don't attempt to free the block data and only release the IOCTL
data.

CRs-Fixed: 476581
Change-Id: Icba46c861258d2d84b1fae5a2f5fca52ffe54255
Signed-off-by: Pratibhasagar V <pratibha@codeaurora.org>
mmc: core: Add runtime PM calls for debugfs/sysfs entries

Few debugfs/sysfs entries may require access to host and card.
Currently, read/write to these entries are not updated with
mmc_rpm_hold and mmc_rpm_release APIs due to which the device
is not getting resumed if it is already runtime suspended.
Fix this by calling those APIs at relevant code paths.

CRs-fixed: 482172
Change-Id: I937694650b9e6097a28785e529d2952cff89c7de
Signed-off-by: Sahitya Tummala <stummala@codeaurora.org>