Re: blackfin + dmaengine: conflicting define/enum "DMA_COMPLETE"

From: Randy Dunlap
Date: Sat Jan 11 2014 - 13:31:46 EST


On 01/11/2014 10:09 AM, Marc Kleine-Budde wrote:
> Hello,
>
> in current linux-next (and net-next) the compilation of the CAN
> drivers[1] with ARCH=blackfin fails with:
>
>> CC [M] drivers/net/can/c_can/c_can.o
>> In file included from linux/include/linux/netdevice.h:38:0,
>> from linux/drivers/net/can/c_can/c_can.c:32:
>> linux/include/linux/dmaengine.h:55:2: error: expected identifier before numeric constant
>> linux/include/linux/dmaengine.h: In function 'dma_async_is_complete':
>> linux/include/linux/dmaengine.h:1023:9: error: 'DMA_IN_PROGRESS' undeclared (first use in this function)
>> linux/include/linux/dmaengine.h:1023:9: note: each undeclared identifier is reported only once for each function it appears in
>
> There are two locations where DMA_COMPLETE is defined:
>
>> arch/blackfin/mach-bf548/include/mach/defBF547.h:602:#define DMA_COMPLETE 0x8 /* DMA Complete */
>> arch/blackfin/mach-bf548/include/mach/defBF544.h:622:#define DMA_COMPLETE 0x8 /* DMA Complete */
>
> and
>
>> include/linux/dmaengine.h-enum dma_status {
>> include/linux/dmaengine.h: DMA_COMPLETE,
>> include/linux/dmaengine.h- DMA_IN_PROGRESS,
>> include/linux/dmaengine.h- DMA_PAUSED,
>> include/linux/dmaengine.h- DMA_ERROR,
>> include/linux/dmaengine.h-};
>
> What's the appropriate fix for the problem?

arch/blackfin/mach-bf548/ needs a less generic name for its macro.

> Marc
>
> [1] Yes, c_can isn't a blackfin driver, but it's the first one in my
> compile tests and it fails.
>


--
~Randy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/