summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2013-03-10 19:33:03 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-04-12 09:52:01 -0700
commit086dcdf923815cbf61911a2eec81d7a9c2606aa9 (patch)
tree7b1eb82d39e7344d420146eb038f962bd683668a /sound
parent00cfbb8ad0a6419f40660362b4d8b5baa30d3efe (diff)
ASoC: imx-ssi: Fix occasional AC97 reset failure
commit b6e51600f4e983e757b1b6942becaa1ae7d82e67 upstream. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Markus Pargmann <mpa@pengutronix.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/fsl/imx-ssi.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sound/soc/fsl/imx-ssi.c b/sound/soc/fsl/imx-ssi.c
index 3b480423747f..63e453fc6bb9 100644
--- a/sound/soc/fsl/imx-ssi.c
+++ b/sound/soc/fsl/imx-ssi.c
@@ -496,6 +496,8 @@ static void imx_ssi_ac97_reset(struct snd_ac97 *ac97)
if (imx_ssi->ac97_reset)
imx_ssi->ac97_reset(ac97);
+ /* First read sometimes fails, do a dummy read */
+ imx_ssi_ac97_read(ac97, 0);
}
static void imx_ssi_ac97_warm_reset(struct snd_ac97 *ac97)
@@ -504,6 +506,9 @@ static void imx_ssi_ac97_warm_reset(struct snd_ac97 *ac97)
if (imx_ssi->ac97_warm_reset)
imx_ssi->ac97_warm_reset(ac97);
+
+ /* First read sometimes fails, do a dummy read */
+ imx_ssi_ac97_read(ac97, 0);
}
struct snd_ac97_bus_ops soc_ac97_ops = {