[alsa-devel] [PATCH] ASoC: sgtl5000: Mark CHIP_ANA_POWER as volatile

Fabio Estevam fabio.estevam at freescale.com
Tue May 7 22:20:12 CEST 2013


Register CHIP_ANA_POWER (address: 0x0030) contains all of the power down 
controls for the analog blocks.

Mark it as a volatile register, so that sgtl5000 can be functional after a
reset.

Without this patch the following error happens after a audio playback followed
by a reset:

sgtl5000 0-000a: Device with ID register ffff is not a sgtl5000
sgtl5000 0-000a: ASoC: failed to probe CODEC -19
imx-sgtl5000 sound.12: ASoC: failed to instantiate card -19
imx-sgtl5000 sound.12: snd_soc_register_card failed (-19)

Signed-off-by: Fabio Estevam <fabio.estevam at freescale.com>
---
 sound/soc/codecs/sgtl5000.c |    1 +
 1 file changed, 1 insertion(+)

diff --git a/sound/soc/codecs/sgtl5000.c b/sound/soc/codecs/sgtl5000.c
index 327b443..8b704ff 100644
--- a/sound/soc/codecs/sgtl5000.c
+++ b/sound/soc/codecs/sgtl5000.c
@@ -965,6 +965,7 @@ static bool sgtl5000_volatile(struct device *dev, unsigned int reg)
 	switch (reg) {
 	case SGTL5000_CHIP_ID:
 	case SGTL5000_CHIP_ADCDAC_CTRL:
+	case SGTL5000_CHIP_ANA_POWER:
 	case SGTL5000_CHIP_ANA_STATUS:
 		return true;
 	}
-- 
1.7.9.5




More information about the Alsa-devel mailing list