summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarthikeyan Mani <kmani@codeaurora.org>2016-12-09 16:39:42 -0800
committerKarthikeyan Mani <kmani@codeaurora.org>2017-01-12 12:35:49 -0800
commit50ff05affc3133ca9ec496601f889141cde58e4c (patch)
tree13e9bcf094419d1518adf6ffb356fb464fa840a9
parent3c45c2a8a2a07a76e2d129d02561d061211e70c8 (diff)
ASoC: wcd9xxx: Fix codec regulator override
Fix regulator override functionality to remove mute check for overriding to class AB from class H. Add check to vneg_ctl function to execute only for Tasha. CRs-fixed: 1099810 Change-Id: I082027fc6347ae98b6fd3fe0d5aadac805fb0b84 Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
-rw-r--r--sound/soc/codecs/wcd934x/wcd934x.c8
-rw-r--r--sound/soc/codecs/wcd9xxx-common-v2.c5
2 files changed, 7 insertions, 6 deletions
diff --git a/sound/soc/codecs/wcd934x/wcd934x.c b/sound/soc/codecs/wcd934x/wcd934x.c
index b0bb89c8d9c2..12757dd5b1e0 100644
--- a/sound/soc/codecs/wcd934x/wcd934x.c
+++ b/sound/soc/codecs/wcd934x/wcd934x.c
@@ -1880,12 +1880,8 @@ static void tavil_codec_override(struct snd_soc_codec *codec, int mode,
if (mode == CLS_AB || mode == CLS_AB_HIFI) {
switch (event) {
case SND_SOC_DAPM_POST_PMU:
- if (!(snd_soc_read(codec,
- WCD934X_CDC_RX2_RX_PATH_CTL) & 0x10) &&
- (!(snd_soc_read(codec,
- WCD934X_CDC_RX1_RX_PATH_CTL) & 0x10)))
- snd_soc_update_bits(codec,
- WCD9XXX_A_ANA_RX_SUPPLIES, 0x02, 0x02);
+ snd_soc_update_bits(codec,
+ WCD9XXX_A_ANA_RX_SUPPLIES, 0x02, 0x02);
break;
case SND_SOC_DAPM_POST_PMD:
snd_soc_update_bits(codec,
diff --git a/sound/soc/codecs/wcd9xxx-common-v2.c b/sound/soc/codecs/wcd9xxx-common-v2.c
index 47518ec92661..9e857276c498 100644
--- a/sound/soc/codecs/wcd9xxx-common-v2.c
+++ b/sound/soc/codecs/wcd9xxx-common-v2.c
@@ -579,6 +579,11 @@ static void wcd_clsh_set_hph_mode(struct snd_soc_codec *codec,
static void wcd_clsh_set_flyback_vneg_ctl(struct snd_soc_codec *codec,
bool enable)
{
+ struct wcd9xxx *wcd9xxx = dev_get_drvdata(codec->dev->parent);
+
+ if (!TASHA_IS_2_0(wcd9xxx))
+ return;
+
if (enable) {
snd_soc_update_bits(codec, WCD9XXX_FLYBACK_VNEG_CTRL_1, 0xE0,
0x00);