diff options
author | Ashish Chavan <ashish.chavan@kpitcummins.com> | 2012-04-27 07:14:04 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-04-27 13:38:47 -0400 |
commit | 604bb229b5269747e5763efe05726b080276d77f (patch) | |
tree | bd171af46968d4ca4dad953c009acdafe7e32b7e | |
parent | 9747cec21e2d55ee996249b01ec30dd32389c0ba (diff) |
ASoC: da7210: Minor bugfix for non pll slave mode
This patch fixes a bug discovered during testing of non pll slave mode.
Due to the bug chip was not getting correctly configured and as a result
there was no sound output while playback. After applying this patch,
both pll and non pll modes work fine.
Signed-off-by: Ashish Chavan <ashish.chavan@kpitcummins.com>
Signed-off-by: David Dajun Chen <dchen@diasemi.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
-rw-r--r-- | sound/soc/codecs/da7210.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/sound/soc/codecs/da7210.c b/sound/soc/codecs/da7210.c index f92d1f777757..10f52ff14daa 100644 --- a/sound/soc/codecs/da7210.c +++ b/sound/soc/codecs/da7210.c | |||
@@ -1159,8 +1159,9 @@ static int da7210_probe(struct snd_soc_codec *codec) | |||
1159 | /* Enable Aux2 */ | 1159 | /* Enable Aux2 */ |
1160 | snd_soc_write(codec, DA7210_AUX2, DA7210_AUX2_EN); | 1160 | snd_soc_write(codec, DA7210_AUX2, DA7210_AUX2_EN); |
1161 | 1161 | ||
1162 | /* Set PLL Master clock range 10-20 MHz */ | 1162 | /* Set PLL Master clock range 10-20 MHz, enable PLL bypass */ |
1163 | snd_soc_write(codec, DA7210_PLL_DIV3, DA7210_MCLK_RANGE_10_20_MHZ); | 1163 | snd_soc_write(codec, DA7210_PLL_DIV3, DA7210_MCLK_RANGE_10_20_MHZ | |
1164 | DA7210_PLL_BYP); | ||
1164 | 1165 | ||
1165 | /* Diable PLL and bypass it */ | 1166 | /* Diable PLL and bypass it */ |
1166 | snd_soc_write(codec, DA7210_PLL, DA7210_PLL_FS_48000); | 1167 | snd_soc_write(codec, DA7210_PLL, DA7210_PLL_FS_48000); |
@@ -1191,8 +1192,8 @@ static struct reg_default da7210_regmap_i2c_patch[] = { | |||
1191 | 1192 | ||
1192 | /* System controller master disable */ | 1193 | /* System controller master disable */ |
1193 | { DA7210_STARTUP1, 0x00 }, | 1194 | { DA7210_STARTUP1, 0x00 }, |
1194 | /* make sure that DA7210 use bypass mode before start up */ | 1195 | /* Set PLL Master clock range 10-20 MHz */ |
1195 | { DA7210_PLL_DIV3, DA7210_MCLK_RANGE_10_20_MHZ | DA7210_PLL_BYP }, | 1196 | { DA7210_PLL_DIV3, DA7210_MCLK_RANGE_10_20_MHZ }, |
1196 | 1197 | ||
1197 | /* to unlock */ | 1198 | /* to unlock */ |
1198 | { DA7210_A_HID_UNLOCK, 0x8B}, | 1199 | { DA7210_A_HID_UNLOCK, 0x8B}, |
@@ -1290,8 +1291,8 @@ static struct reg_default da7210_regmap_spi_patch[] = { | |||
1290 | 1291 | ||
1291 | /* System controller master disable */ | 1292 | /* System controller master disable */ |
1292 | { DA7210_STARTUP1, 0x00 }, | 1293 | { DA7210_STARTUP1, 0x00 }, |
1293 | /* make sure that DA7210 use bypass mode before start up */ | 1294 | /* Set PLL Master clock range 10-20 MHz */ |
1294 | { DA7210_PLL_DIV3, DA7210_MCLK_RANGE_10_20_MHZ | DA7210_PLL_BYP }, | 1295 | { DA7210_PLL_DIV3, DA7210_MCLK_RANGE_10_20_MHZ }, |
1295 | 1296 | ||
1296 | /* to set PAGE1 of SPI register space */ | 1297 | /* to set PAGE1 of SPI register space */ |
1297 | { DA7210_PAGE_CONTROL, 0x80 }, | 1298 | { DA7210_PAGE_CONTROL, 0x80 }, |