From fb77f24b5a9d7642e048b17cbe361f1a748461ce Mon Sep 17 00:00:00 2001 From: Faiz Nabi Kuchay Date: Mon, 8 Jun 2020 19:02:55 +0530 Subject: [PATCH] asoc: codecs: Fix mute after SSR issue in rouleur codec Make dev_up true before giving 500 ms delay in case of AATC variant during BOLERO_WCD_EVT_SSR_UP event. Change-Id: Ie8306c92a80df69f087f055d425b22f48f319873 Signed-off-by: Faiz Nabi Kuchay --- asoc/codecs/rouleur/rouleur.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/asoc/codecs/rouleur/rouleur.c b/asoc/codecs/rouleur/rouleur.c index d2cf31a5100a..e2c324179241 100644 --- a/asoc/codecs/rouleur/rouleur.c +++ b/asoc/codecs/rouleur/rouleur.c @@ -783,6 +783,9 @@ static int rouleur_codec_enable_ear_pa(struct snd_soc_dapm_widget *w, ret = swr_slvdev_datapath_control(rouleur->rx_swr_dev, rouleur->rx_swr_dev->dev_num, true); + snd_soc_component_update_bits(component, + ROULEUR_ANA_COMBOPA_CTL, + 0x40, 0x00); usleep_range(5000, 5100); snd_soc_component_update_bits(component, ROULEUR_DIG_SWR_PDM_WD_CTL0, @@ -1400,6 +1403,7 @@ static int rouleur_event_notify(struct notifier_block *block, rouleur_init_reg(component); regcache_mark_dirty(rouleur->regmap); regcache_sync(rouleur->regmap); + rouleur->dev_up = true; /* Initialize MBHC module */ mbhc = &rouleur->mbhc->wcd_mbhc; ret = rouleur_mbhc_post_ssr_init(rouleur->mbhc, component); @@ -1412,7 +1416,6 @@ static int rouleur_event_notify(struct notifier_block *block, mdelay(500); } rouleur->mbhc->wcd_mbhc.deinit_in_progress = false; - rouleur->dev_up = true; break; default: dev_err(component->dev, "%s: invalid event %d\n", __func__,