msm: ADSPRPC: Fix offset for input and output buffers

The buffers being passed to remote processor did not have
the right offset into the IOMMU VA for cases where the offset
was greater than 4K.

Change-Id: I32360a337ecbb9ebe3d33e5a6d680b1033945641
Acked-by: Sathish Ambley <sambley@qti.qualcomm.com>
Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
Signed-off-by: Akhila Musunuri <makhila@codeaurora.org>
qseecom: Add boundary checks for offset within message.

Qseecom driver does not have boundary checks for offset within the
message. So this patch add checks to validate the offsets sent by
client to modify data within the command request message and it
should not exceed the memory allocated for that message.

Change-Id: I29bfbdc154eebb4f3f4bfbb31789562e37fa5886
Signed-off-by: Mona Hossain <mhossain@codeaurora.org>
Signed-off-by: Mallikarjuna Reddy Amireddy <mamire@codeaurora.org>
msm: vidc: Fix race condition in power collapse sequence

There is a race condition if client queued an ETB between
RELEASE_RESOURCE (OCMEM) and PC_PREP commands in power
collapse sequence where the client will never receive
ETB_DONE because the clocks are already turned off.
Avoid the problem by counting the number of commands
queued to video hardware to skip power collapse sequence
if client queues any commands.

Change-Id: I0bb908e11308cfc4f8bdbdc01fd92dac67b78eac
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
diag: Handle spinlock correctly

Currently, if failure happens while writing data over to USB,
spinlock is not released. This leads to deadlock and kernel panic
which re-accessing it. This patch fixes that issue.

Change-Id: Ic34cfdb8c145329177b0b0ab0da9fb8b361196c9
Signed-off-by: Katish Paran <kparan@codeaurora.org>
USB: composite: Fix issue of get interface returning wrong altsetting

Currently composite driver will block and doesn't forward the set
interface with zero index vlaue after set configuration request.
This leads to returning wrong altsetting value for get interface
request from Host for interfaces that does support multiple
alternatesettings when host sends set interface with one followed
by set interface with zero index value after device is configured.
This could cause USB3.0 complaince test fail. Hence fix this value
by forwarding set interface request for interfaces that does
support mutliple altsettings.

CRs-Fixed: 747760
Change-Id: Ib82d4acc90f577308e18f0e0af1e616dbc8ce6a8
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
ASoC: update codec driver to handle new SSR design.

Update codec driver to reduce the time for wait to check Q6 core
is ready.

LNX.LA.3.7 Change-Id: I06f7124dda56bf867df32c3a03a63e1ee0e2bd94

Change-Id: I2067772e2cb66a1b7a59a84ccf072927580a38ee
Signed-off-by: Divya Narayanan Poojary <dnaray@codeaurora.org>
ASoC: msm: qdsp6v2: handle VoIP call recovery during SSR

Add support for VoIP call auto recovery during Sub System Restart(SSR)

Change-Id: Ie8dce8f575ba3af5560c523a00e8520aef1c68c3
Signed-off-by: Venkata Narendra Kumar Gutta <vgutta@codeaurora.org>