From a422ab1cb297686fc9211e5c2d1ede6ef93592ac Mon Sep 17 00:00:00 2001 From: Xing Zheng Date: Fri, 9 Nov 2018 18:07:28 +0800 Subject: [PATCH] ASoC: rk3308_codec: reset HPMIX and recover their gains Change-Id: I25b50b8bfe8255e2bf99124334323845a1a24705 Signed-off-by: Xing Zheng --- sound/soc/codecs/rk3308_codec.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/sound/soc/codecs/rk3308_codec.c b/sound/soc/codecs/rk3308_codec.c index 6e0ede0ca570..aac334c64ad5 100644 --- a/sound/soc/codecs/rk3308_codec.c +++ b/sound/soc/codecs/rk3308_codec.c @@ -1851,7 +1851,13 @@ static int rk3308_codec_dac_enable(struct rk3308_codec_priv *rk3308) /* Waiting the stable HPMIX */ udelay(50); - /* Step 06 */ + /* Step 06. Reset HPMIX and recover HPMIX gains */ + regmap_update_bits(rk3308->regmap, RK3308_DAC_ANA_CON13, + RK3308_DAC_L_HPMIX_WORK | + RK3308_DAC_R_HPMIX_WORK, + RK3308_DAC_L_HPMIX_INIT | + RK3308_DAC_R_HPMIX_INIT); + udelay(50); regmap_update_bits(rk3308->regmap, RK3308_DAC_ANA_CON13, RK3308_DAC_L_HPMIX_WORK | RK3308_DAC_R_HPMIX_WORK,