12 Nov
2008
12 Nov
'08
3:59 p.m.
On Wed, Nov 12, 2008 at 02:19:02PM +0000, Ben Dooks wrote:
On Wed, Nov 12, 2008 at 11:55:47AM +0000, Mark Brown wrote:
case SNDRV_PCM_FORMAT_S8:
iismod &= ~S3C2410_IISMOD_16BIT;
((struct s3c24xx_pcm_dma_params *)
break; case SNDRV_PCM_FORMAT_S16_LE: iismod |= S3C2410_IISMOD_16BIT;rtd->dai->cpu_dai->dma_data)->dma_size = 1;
((struct s3c24xx_pcm_dma_params *)
break;rtd->dai->cpu_dai->dma_data)->dma_size = 2;
Is playing with the dma parameters like that the correct way?
It makes the DMA size match the input data size which doesn't seem totally unreasonable.
This is all internal to the s3c24xx I2S driver - what this does is change the parameter passed by the DMA driver to s3c2410_dma_config() for the I2S DMA channels which is just read blindly. This parameter is not exposed to user space.