[alsa-devel] [PATCH 4/5] ASoC: rcar: Fix dma direction type

Kuninori Morimoto kuninori.morimoto.gx at renesas.com
Thu Jun 19 11:38:44 CEST 2014


Hi Lars

> >> dmaengine_prep_slave_single() expects a enum dma_transfer_direction and not a
> >> enum dma_data_direction. Since the integer representations of both DMA_TO_DEVICE
> >> and DMA_MEM_TO_DEV aswell as DMA_FROM_DEVICE and DMA_DEV_TO_MEM have the same
> >> value the code worked fine even though it was using the wrong type.
> >>
> >> Fixes the following warning from sparse:
> >> 	sound/soc/sh/rcar/core.c:227:49: warning: mixing different enum types
> >> 	sound/soc/sh/rcar/core.c:227:49:     int enum dma_data_direction  versus
> >> 	sound/soc/sh/rcar/core.c:227:49:     int enum dma_transfer_direction
> >>
> >> Signed-off-by: Lars-Peter Clausen <lars at metafoo.de>
> >> ---
> >
> > Acked-by: Kuninori Morimoto <kuninori.morimoto.gx at renesas.com>
> >
> > Actually, ${LINUX}/sound/soc/sh/fsi.c :: fsi_dma_transfer()
> > is using enum dma_data_direction to dmaengine_prep_dma_cyclic()
> > Does it have same issue ?
> 
> Yes, but the fix for that should go in after your "ASoC: fsi: use 
> SNDRV_DMA_TYPE_DEV for sound buffer" patch, because otherwise the fix just 
> introduces a new warning because before that patch dir is also passed to 
> dma_sync_single_xxx() which wants a enum dma_data_direction.

Ahh, yes, indeed
Thank you for your explain



More information about the Alsa-devel mailing list