diff options
author | Christian Pellegrin <chripell@gmail.com> | 2008-11-08 08:44:16 +0100 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2008-11-10 11:40:57 +0000 |
commit | 53599bbc30343f0cbfe750d2af19c9c45b841b82 (patch) | |
tree | 3e491efa9c6a974adc9e9800f2c0094396ee9958 /sound/soc/s3c24xx | |
parent | 26df91c36fb976af9d08c20028b5cb1317eedcb3 (diff) | |
download | op-kernel-dev-53599bbc30343f0cbfe750d2af19c9c45b841b82.zip op-kernel-dev-53599bbc30343f0cbfe750d2af19c9c45b841b82.tar.gz |
ASoC: s3c24xx 8 bit sound fix
fixes playing/recording of 8 bit audio files.
Generated on 20081108 against v2.6.27
Signed-off-by: Christian Pellegrin <chripell@fsfe.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/s3c24xx')
-rw-r--r-- | sound/soc/s3c24xx/s3c24xx-i2s.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sound/soc/s3c24xx/s3c24xx-i2s.c b/sound/soc/s3c24xx/s3c24xx-i2s.c index ba4476b..c18977b 100644 --- a/sound/soc/s3c24xx/s3c24xx-i2s.c +++ b/sound/soc/s3c24xx/s3c24xx-i2s.c @@ -261,10 +261,17 @@ static int s3c24xx_i2s_hw_params(struct snd_pcm_substream *substream, switch (params_format(params)) { case SNDRV_PCM_FORMAT_S8: + iismod &= ~S3C2410_IISMOD_16BIT; + ((struct s3c24xx_pcm_dma_params *) + rtd->dai->cpu_dai->dma_data)->dma_size = 1; break; case SNDRV_PCM_FORMAT_S16_LE: iismod |= S3C2410_IISMOD_16BIT; + ((struct s3c24xx_pcm_dma_params *) + rtd->dai->cpu_dai->dma_data)->dma_size = 2; break; + default: + return -EINVAL; } writel(iismod, s3c24xx_i2s.regs + S3C2410_IISMOD); |