ASoC: msm: qdsp6v2: Add timestamp in voip frame header

Uplink timestamp needs to propagate to userspace for AV sync.
timestamp field is added in voip frame header to
capture the timestamp from LPASS for each uplink packet.

Change-Id: Id701df56e5a3d36bf83771ba9731c61a03dae3ba
Signed-off-by: Helen Zeng <xiaoyunz@codeaurora.org>
ASoc: msm: Fix for pcm_read getting struck in alsa core.

Advance hardware pointer by period size even if the packet
size is 0. QDSP6 sometimes(for rapid device switches) gives
0 size packets and this results in elapsed_timeout in pcm core.

CRs-fixed: 578738
Change-Id: I4578b1d3566d5f3eea965102b00fdb4c6838765d
Signed-off-by: Anish Kumar <kanish@codeaurora.org>
(cherry picked from commit 2c18c9501ce62998d8ad84fd7d47e5edb2a2b39f)
ASoC: msm: qdsp6v2: Add support for probe deferral in audio ocmem driver

It is possible that ocmem notifier register would return
EPROBE_DEFER when ocmem driver probe is not completed
successfully. Add support to handle this probe deferral
in audio-ocmem driver.

CRs-fixed: 565880
Change-Id: Ia314cd6d2f6f48478406604115e616d7cabfc15c
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
ASoC: msm: q6: check upper bounds when copy ac3 params

Although AC3 maximum param size is fixed, better check upper bounds
when copy user data. It might cause overflow, possibly cause memory
corruption.

Change-Id: I2f7cec8edd9e013de1433ea06480b963ec307196
Signed-off-by: Fred Oh <fred@codeaurora.org>
ASoC: msm: qdsp6v2: Fix bug in device V2 command

This change is to fix missing braces in Device V2
command. Without the braces Device V2 command will
return error code even though the command is
successful. Device V2 command is used to send device
configuration to CVD during voice call. This command
is used to inform ADSP about internal or external EC mode.

CRs-Fixed: 492994
Change-Id: I2bf12b8cdbc6765bffb2ed9e6460160cf8afa81a
Signed-off-by: Venkat Sudhir <vsudhir@codeaurora.org>
ASoC: msm: Move ASM custom topology data out of Debugfs define

Move variables used for ASM custom topology out of
the debugfs define. ASM custom topology should be
enabled even when debugfs is not.

Change-Id: Ie16191c04d80981e48e11ddda71ccbe1ccbc18ca
CRs-fixed: 551711
Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
ASoC: msm: Add missing backends for Multimedia4

Some backends for the front-end Multimedia4 is missing in the
routing driver. This results tunnel recording failure for
USB headset/BT SCO usecases.

Change-Id: I7998309df4e7da9545bdc75e9b67873cc0417870
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>

Conflicts:
	sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.c
ASoC: msm: Add error returns to ACDB driver

Change the ACDB kernel driver to return error codes
for any failures.

Change-Id: Ib2ffab8c9e5e9a044bbaaf83bd879d6b17c3918d
Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
ASoC: msm: Add voice volume boost support

Add support for the volume boost feature. Volume
boost pushes a new voice volume table with boosted
gains. To support this feature new API's are added
to the voice driver to register & deregister the
voice volume table. New IOCTLs are also added for
audio_acdb to support registering & deregistering
tables.

Change-Id: I154fdedad78760393e2cd8cc11fa10178dfce320
Signed-off-by: Ben Romberger <bromberg@codeaurora.org>

Conflicts:
	sound/soc/msm/qdsp6v2/q6voice.c