diff options
author | Seungwhan Youn <sw.youn@samsung.com> | 2010-09-10 04:20:00 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-09-11 07:12:20 -0400 |
commit | 0cca9012527b77df1491f1b8422c7aae16e17ae0 (patch) | |
tree | 24bfa617495e3bee4da3a81fe696532b4566f285 /sound/soc/s3c24xx/s3c-pcm.c | |
parent | 6946e037ee9e94a560a931fdb2e3e66964216cfe (diff) |
ASoC: S3C: Fix PCM RX FIFO settings
When PCM capture, sound recorded abnormally because of RX FIFO
threshold settings are missing. So, This patch modify PCM RX FIFO
setting codes same as TX.
And for DMA, if PCM RXFIFO_DIPSTICK is not '0', it doesn't effect
to DMA request, because DMA refer RX_FIFO_EMPTY flag as the DMA
request.
Signed-off-by: Seungwhan Youn <sw.youn@samsung.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/s3c24xx/s3c-pcm.c')
-rw-r--r-- | sound/soc/s3c24xx/s3c-pcm.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/soc/s3c24xx/s3c-pcm.c b/sound/soc/s3c24xx/s3c-pcm.c index 825645fbe4de..eadd1bebfe83 100644 --- a/sound/soc/s3c24xx/s3c-pcm.c +++ b/sound/soc/s3c24xx/s3c-pcm.c | |||
@@ -102,11 +102,14 @@ static void s3c_pcm_snd_rxctrl(struct s3c_pcm_info *pcm, int on) | |||
102 | 102 | ||
103 | ctl = readl(regs + S3C_PCM_CTL); | 103 | ctl = readl(regs + S3C_PCM_CTL); |
104 | clkctl = readl(regs + S3C_PCM_CLKCTL); | 104 | clkctl = readl(regs + S3C_PCM_CLKCTL); |
105 | ctl &= ~(S3C_PCM_CTL_RXDIPSTICK_MASK | ||
106 | << S3C_PCM_CTL_RXDIPSTICK_SHIFT); | ||
105 | 107 | ||
106 | if (on) { | 108 | if (on) { |
107 | ctl |= S3C_PCM_CTL_RXDMA_EN; | 109 | ctl |= S3C_PCM_CTL_RXDMA_EN; |
108 | ctl |= S3C_PCM_CTL_RXFIFO_EN; | 110 | ctl |= S3C_PCM_CTL_RXFIFO_EN; |
109 | ctl |= S3C_PCM_CTL_ENABLE; | 111 | ctl |= S3C_PCM_CTL_ENABLE; |
112 | ctl |= (0x20<<S3C_PCM_CTL_RXDIPSTICK_SHIFT); | ||
110 | clkctl |= S3C_PCM_CLKCTL_SERCLK_EN; | 113 | clkctl |= S3C_PCM_CLKCTL_SERCLK_EN; |
111 | } else { | 114 | } else { |
112 | ctl &= ~S3C_PCM_CTL_RXDMA_EN; | 115 | ctl &= ~S3C_PCM_CTL_RXDMA_EN; |