ASoC: wcd9320: remove runtime PM voting

All the codec reads/writes go through slimbus satellite driver on APPS.
Slimbus satellite driver is already voting for slimbus clock before any
codec read or write so remove the vote from codec driver

Change-Id: If54f33739ff82b9388fa9417ef0f6152a4cddeea
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
ASoC: Fix the sync problem after SSR

After SSR default registers needs to be restored. Then
we need to sync all the registers with cache values. This
fixes the problem where register values got changed
after SSR causing AAC clip playback failure.

CRs-Fixed: 579574
Change-Id: Ibb99d69425dcb16ba09cfb131b5059f666f75012
Signed-off-by: Anish Kumar <kanish@codeaurora.org>
Signed-off-by: Fred Oh <fred@codeaurora.org>
ASoC: msm: fix RX3 MIX1 INP3 path setting

The path RX3 MIX1 INP3 is not functional as its setting a wrong
regiser.

CRs-Fixed: 631013
Change-Id: I1916a4c6e1b2399c146471ca7a20791c36e14962
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
(cherry picked from commit 7668dc3e642cff27a349bba09d9c4c3caf755c7a)
ASoC: wcd9xxx: Set HPH PA register to volatile

Set HPH PA register to volatile to make sure the register will be
updated with proper bits during bringup

CRs-Fixed: 625324
Change-Id: I5a0caec730a902d6f8f251d5d87f407f9c1777ac
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
(cherry picked from commit 1ef34b44e6b89da20bd500a2de64d5e52187d878)
ASoC: msm: fix the target crash due to the NULL pointer dereference

During the close of the FE, the mclk is disabled which accesses the
codec drv data.
In case if the tapan codec was not initialized, then close sequence
will result in the null pointer dereference.
Fix by adding a null check before accessing the codec data structure.

CRs-Fixed: 635065
Change-Id: I0678826d073a69b99a05a5b628920be89d210519
Signed-off-by: Aviral Gupta <aviralg@codeaurora.org>
ASoC: wcd9320: increase DMIC CLK drive-strength

Increase DMIC CLK drive-strength for WCD9320 codec from 2mA
to 4mA. This increase will improve setup and hold times for
DMICs in WCD9320 codec.

Change-Id: Id8603a994281b9c7f1a3eeb2d258ce2805f03575
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>

Conflicts:
	sound/soc/codecs/wcd9320.c
ASoC: wcd9320: Enable impedance detect

Change-Id: I7925bfde5084ae2e781d9fb48ad3c0eadf6296fe

Conflicts:
	sound/soc/codecs/wcd9320.c
ASoC: wcd9320: Fix for audio recording

If multiple mixer widgtes share the same kcontrol,ASoC framework
will create common controls. For audio capture usecase we need
each AIF cap mixer widget to have its own control.
Change creates control for each of the AIF capture mixer widgets.

Change-Id: Id178c7154cd50c21fa8b6715c16e6db950ba1d4c
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
ASoC: wcd9320: release codec mutex before calling dapm function

DAPM calls will internally acquire soc_card class locks for its
operations. Therefore, release codec->mutex before calling into
snd_soc_dapm_mux_update_power and snd_soc_dapm_mixer_update_power.
This will help avoid deadlock inside those functions.

CRs-fixed: 612080
Change-Id: I6bb943389240b67e1847bc533ac56fdd20799bce
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
ASoC: wcd9320: Change compander parameter for 192Khz playback

Update the meter rate parameter for compander in order to achieve
better performance with Compander support for headphone, lineout
and speaker paths for 192 KHz sampling rate. Update the static gain
offset accordingly depending on the buck voltage requested.

CRs-fixed: 481501
Change-Id: I4bb3c41e1042ba9327a21bf9375541d36487484e
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
ASoC: wcd9xxx: Re-order codec DAIs definition

AIF3_PB and AIF3_CAP codec DAIs order and enum
definitions order are different. Reorder DAI
definitions to match with enum definitions

Change-Id: I0d16355b1b0997177e138c4fcf669365dc942baa
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>