summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorShuming Fan <shumingf@realtek.com>2019-11-25 17:19:40 +0800
committerMark Brown <broonie@kernel.org>2019-11-25 13:30:36 +0000
commitbc094709de0192a756c6946a7c89c543243ae609 (patch)
tree129fd3c71b77edb267e216093d26f88451a80d10 /sound
parent39870b0dec68ed7dd814beb697e541670975c7d8 (diff)
downloadblackbird-op-linux-bc094709de0192a756c6946a7c89c543243ae609.tar.gz
blackbird-op-linux-bc094709de0192a756c6946a7c89c543243ae609.zip
ASoC: rt5682: fix i2c arbitration lost issue
This patch modified the HW initial setting to fix i2c arbitration lost issue. Signed-off-by: Shuming Fan <shumingf@realtek.com> Link: https://lore.kernel.org/r/20191125091940.11953-1-shumingf@realtek.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/codecs/rt5682.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sound/soc/codecs/rt5682.c b/sound/soc/codecs/rt5682.c
index 35dcec135c8a..9feba9a24501 100644
--- a/sound/soc/codecs/rt5682.c
+++ b/sound/soc/codecs/rt5682.c
@@ -73,6 +73,7 @@ struct rt5682_priv {
static const struct reg_sequence patch_list[] = {
{RT5682_HP_IMP_SENS_CTRL_19, 0x1000},
{RT5682_DAC_ADC_DIG_VOL1, 0xa020},
+ {RT5682_I2C_CTRL, 0x000f},
};
static const struct reg_default rt5682_reg[] = {
@@ -2496,6 +2497,7 @@ static void rt5682_calibrate(struct rt5682_priv *rt5682)
mutex_lock(&rt5682->calibrate_mutex);
rt5682_reset(rt5682->regmap);
+ regmap_write(rt5682->regmap, RT5682_I2C_CTRL, 0x000f);
regmap_write(rt5682->regmap, RT5682_PWR_ANLG_1, 0xa2af);
usleep_range(15000, 20000);
regmap_write(rt5682->regmap, RT5682_PWR_ANLG_1, 0xf2af);
OpenPOWER on IntegriCloud