ASoC: rt5640: enable MCLK detection

There is a power saving mechanism in rt5640. It will turn off some
unused power when MCLK is not present. We call that "MCLK detection"
and it should be enabled by default.

Signed-off-by: Bard Liao <bardliao@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Bard Liao 2016-10-17 19:14:04 +08:00 committed by Mark Brown
parent 1001354ca3
commit 25fb706248
2 changed files with 5 additions and 0 deletions

View File

@ -2407,6 +2407,9 @@ static int rt5640_i2c_probe(struct i2c_client *i2c,
if (ret != 0) if (ret != 0)
dev_warn(&i2c->dev, "Failed to apply regmap patch: %d\n", ret); dev_warn(&i2c->dev, "Failed to apply regmap patch: %d\n", ret);
regmap_update_bits(rt5640->regmap, RT5640_DUMMY1,
RT5640_MCLK_DET, RT5640_MCLK_DET);
if (rt5640->pdata.in1_diff) if (rt5640->pdata.in1_diff)
regmap_update_bits(rt5640->regmap, RT5640_IN1_IN2, regmap_update_bits(rt5640->regmap, RT5640_IN1_IN2,
RT5640_IN_DF1, RT5640_IN_DF1); RT5640_IN_DF1, RT5640_IN_DF1);

View File

@ -1970,6 +1970,8 @@
#define RT5640_ZCD_HP_DIS (0x0 << 15) #define RT5640_ZCD_HP_DIS (0x0 << 15)
#define RT5640_ZCD_HP_EN (0x1 << 15) #define RT5640_ZCD_HP_EN (0x1 << 15)
/* General Control 1 (0xfa) */
#define RT5640_MCLK_DET (0x1 << 11)
/* Codec Private Register definition */ /* Codec Private Register definition */
/* 3D Speaker Control (0x63) */ /* 3D Speaker Control (0x63) */