[PATCH 25/133] [Jaunty SRU] ARM.imx51 Freescale:ENGR00107688 ASOC: Resolve 24/32-bit mono wav playing problem on sgtl5000

Brad Figg brad.figg at canonical.com
Thu Jul 9 16:48:15 UTC 2009


From: Lily Zhang <r58066 at freescale.com>

Wav sound plays twice faster than normal when it's format is 24 or 32
bit mono. In ssi normal operating mode, DC=0 provides continuous
periodic data word transfer and a bit-length frame sync must be used
in this case. Sgtl5000 codec master provides word length frame sync,
so DC should be set as frame/WL-1.

Signed-off-by: Lionel Xu <r63889 at freescale.com>
Signed-off-by: Brad Figg <brad.figg at canonical.com>
---
 sound/soc/imx/imx-3stack-sgtl5000.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/sound/soc/imx/imx-3stack-sgtl5000.c b/sound/soc/imx/imx-3stack-sgtl5000.c
index 58fae69..74f5e11 100644
--- a/sound/soc/imx/imx-3stack-sgtl5000.c
+++ b/sound/soc/imx/imx-3stack-sgtl5000.c
@@ -110,7 +110,7 @@ static int imx_3stack_audio_hw_params(struct snd_pcm_substream *substream,
 	/* set i.MX active slot mask */
 	snd_soc_dai_set_tdm_slot(cpu_dai,
 				 channels == 1 ? 0xfffffffe : 0xfffffffc,
-				 channels);
+				 2);
 
 	/* set the SSI system clock as input (unused) */
 	snd_soc_dai_set_sysclk(cpu_dai, IMX_SSP_SYS_CLK, 0, SND_SOC_CLOCK_IN);
-- 
1.6.0.4





More information about the kernel-team mailing list