[alsa-devel] [PATCH 2/4] ASoC: s3c24xx 8 bit sound fix

Takashi Iwai tiwai at suse.de
Wed Nov 12 15:21:08 CET 2008


At Wed, 12 Nov 2008 14:19:02 +0000,
Ben Dooks wrote:
> 
> On Wed, Nov 12, 2008 at 11:55:47AM +0000, Mark Brown wrote:
> > From: Christian Pellegrin <chripell at gmail.com>
> > 
> > fixes playing/recording of 8 bit audio files.
> > 
> > Generated on  20081108  against v2.6.27
> > 
> > Signed-off-by: Christian Pellegrin <chripell at fsfe.org>
> > Signed-off-by: Mark Brown <broonie at opensource.wolfsonmicro.com>
> > ---
> >  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;
> >  	}
> 
> Is playing with the dma parameters like that the correct way?

It will work, I guess.  But I don't say it's entirely correct :)


Takashi


More information about the Alsa-devel mailing list