msm: smem: split out shared memory initialization functionality

For historical reasons, the low level shared memory initialization
functionality exists in a combined driver with the higher level
communication protocols.  Move the low level shared memory functionality
out into its own driver to improve clarity and ease maintenance.

Change-Id: I675db52961df80d6e8e62e771630e562bf1a670c
Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
msm: smd_tty: handle invalid device for open timeout

If an invalid device is passed into the open timeout device attribute,
the code correctly identifies the error, but then proceeds to access an
array with the out-of-bounds index.

Return early with an error code in the case of an invalid device.

CRs-Fixed: 505197
Change-Id: I7a9bf906f2326d8ea627e2ab9310c95bfee98914
Signed-off-by: Eric Holmberg <eholmber@codeaurora.org>
msm: smd: add sanity check on platform resources

Add null sanity checks to fix corner cases.

Change-Id: Ic91ca37d74621ad414d23d8756881ee866250745
Signed-off-by: Brent Hronik <bhronik@codeaurora.org>
msm: smd_tty: add new SMD TTY port

Add new port for exporting DATA4 (ATCoP) to userspace.

CRs-Fixed: 519977
Change-Id: I63f79788ff06a00c3aead4a725039ae14feb020f
Signed-off-by: Eric Holmberg <eholmber@codeaurora.org>
msm: smd_tty: add device tree support to smd_tty drivers

SMD TTY is configured using local tables that do not
allow customization on a per-target basis.

Add device tree support to configure SMD TTY devices.

Change-Id: Ie02dd63a0bec8edff77c8cbeeb72ae7331a0c67a
Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
msm: smd: split out SMD probe and init functions

Current SMD driver code combines all different types of probe
and initialization sequences. For future targets, only the DT init
sequence is necessary.

Move SMD probe and initialization sequences into different files.

Change-Id: I1092cb3946a56840deb3676afea37c7f6f537d19
Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
msm: smsm: add SMSM interrupt logging

Add interrupt logging of SMSM interrupts for debugging issues involving
missing interrupts on the remote subsystems.

Change-Id: Ic39ec1738a34107e21a546fcb28132e1fe8ad339
Signed-off-by: Brent Hronik <bhronik@codeaurora.org>
Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
msm: smd: add support for secondary channel table

The primary SMD channel table only supports 64 entries and is currently at
capacity. Since the primary channel table cannot be extended as the SMEM
item ids following the primary table are already reserved for other
usecases, create a secondary channel table by repurposing the unused block
channel table SMEM items.  This extention creates an additional 64 entries
for new SMD channels allowing the system to support a total of 128
channels.

CRs-Fixed: 525753
Change-Id: Ife9c822e46178b4a8bf21c34efabfd7133ed87b0
Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
msm: smd: enable additional smd logging

Enable additional smd logging to provide channel allocation
information.

Change-Id: Ibf793e30cdb2814c91358b4e7c86f178120c9ae9
Signed-off-by: Brent Hronik <bhronik@codeaurora.org>
msm: ipa : teth_bridge: multi rmnet support

Adds support for Multi-Rrmnet feature. Multi-Rmnet enables bringing up
multiple data calls in parallel.

Change-Id: I247f31890b9bd0ab6ee176c022f4d058bbfbc889
Signed-off-by: Ravit Katzav <rkatzav@codeaurora.org>
Signed-off-by: Lena Salman <esalman@codeaurora.org>
Merge "msm: smem: split out shared memory initialization functionality"
Merge "msm: smd_tty: handle invalid device for open timeout"
Merge "msm: smd: add sanity check on platform resources"
Merge "msm: smd_tty: add new SMD TTY port"
Merge "msm: smd_tty: add device tree support to smd_tty drivers"
Merge "msm: smd: split out SMD probe and init functions"
Merge "msm: smsm: add SMSM interrupt logging"
Merge "msm: smd: add support for secondary channel table"
Merge "msm: smd: enable additional smd logging"
ASoC: mdm9625: Fix Voice over USB on MDM

USB driver uses AFE proxy ports in Audio for Voice over
USB feature. For this to support from Audio side the PCM
device number for AFE proxy ports have to be same across
targets. So the AFE proxy ports are arranged in correct
order in machine driver for USB driver to correctly use
it.
Change-Id: If3aee48ff7cad963e285a43e02116c259ed56270
Signed-off-by: Venkat Sudhir <vsudhir@codeaurora.org>