diff options
author | Mark Brown <broonie@kernel.org> | 2015-03-04 20:42:42 +0000 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2015-03-04 20:42:42 +0000 |
commit | 159c6fc0bbe796fe60962c6ce8735a114340caed (patch) | |
tree | 1186a033165c06e3c9c02270e3031b5814d5b245 /sound/soc/codecs/rt5670.c | |
parent | e0427428db79f7d6648f27985c775b3f6f5db28b (diff) | |
parent | 850529249d7cce02e9bfae9476d09c8c51410d28 (diff) |
Merge remote-tracking branch 'asoc/fix/rt5670' into asoc-linus
Diffstat (limited to 'sound/soc/codecs/rt5670.c')
-rw-r--r-- | sound/soc/codecs/rt5670.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sound/soc/codecs/rt5670.c b/sound/soc/codecs/rt5670.c index e1a4a45c57e2..fd102613d20d 100644 --- a/sound/soc/codecs/rt5670.c +++ b/sound/soc/codecs/rt5670.c @@ -225,7 +225,6 @@ static bool rt5670_volatile_register(struct device *dev, unsigned int reg) case RT5670_ADC_EQ_CTRL1: case RT5670_EQ_CTRL1: case RT5670_ALC_CTRL_1: - case RT5670_IRQ_CTRL1: case RT5670_IRQ_CTRL2: case RT5670_INT_IRQ_ST: case RT5670_IL_CMD: @@ -2703,6 +2702,12 @@ static int rt5670_i2c_probe(struct i2c_client *i2c, regmap_write(rt5670->regmap, RT5670_RESET, 0); + regmap_read(rt5670->regmap, RT5670_VENDOR_ID, &val); + if (val >= 4) + regmap_write(rt5670->regmap, RT5670_GPIO_CTRL3, 0x0980); + else + regmap_write(rt5670->regmap, RT5670_GPIO_CTRL3, 0x0d00); + ret = regmap_register_patch(rt5670->regmap, init_list, ARRAY_SIZE(init_list)); if (ret != 0) |