[alsa-devel] [PATCH 1/6] ASoC: ad1980: Stay in 20bit mode for architectures other than blackfin

Uwe Kleine-König u.kleine-koenig at pengutronix.de
Tue Aug 24 15:09:39 CEST 2010


From: Sascha Hauer <s.hauer at pengutronix.de>

Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
---
 sound/soc/codecs/ad1980.c |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/sound/soc/codecs/ad1980.c b/sound/soc/codecs/ad1980.c
index 70cfaec..35c0580 100644
--- a/sound/soc/codecs/ad1980.c
+++ b/sound/soc/codecs/ad1980.c
@@ -168,13 +168,21 @@ retry:
 	}
 
 	soc_ac97_ops.reset(codec->ac97);
+
+#ifdef SND_BF5XX_SOC_AD1980
 	/* Set bit 16slot in register 74h, then every slot will has only 16
 	 * bits. This command is sent out in 20bit mode, in which case the
-	 * first nibble of data is eaten by the addr. (Tag is always 16 bit)*/
+	 * first nibble of data is eaten by the addr. (Tag is always 16 bit).
+	 *
+	 * This seems to be blackfin specific. On other systems we want 20bit
+	 * mode.
+	 */
 	ac97_write(codec, AC97_AD_SERIAL_CFG, 0x9900);
+#endif
 
 	if (ac97_read(codec, AC97_RESET)  != 0x0090)
 		goto err;
+
 	return 0;
 
 err:
-- 
1.7.1



More information about the Alsa-devel mailing list