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

Lars-Peter Clausen lars at metafoo.de
Thu Jun 19 11:24:57 CEST 2014


On 06/19/2014 11:12 AM, Kuninori Morimoto wrote:
>
> 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.

- Lars


More information about the Alsa-devel mailing list