Unverified Commit bc094709 authored by Shuming Fan's avatar Shuming Fan Committed by Mark Brown
Browse files

ASoC: rt5682: fix i2c arbitration lost issue



This patch modified the HW initial setting to fix i2c arbitration lost issue.

Signed-off-by: default avatarShuming Fan <shumingf@realtek.com>
Link: https://lore.kernel.org/r/20191125091940.11953-1-shumingf@realtek.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 39870b0d
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -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);