Re: Build failure with DMA_OMAP=m and a caller built-in

Tony Lindgren
2013-01-07T20:21:11Z

* Ben Hutchings <ben@decadent.org.uk> [130105 21:29]:
> Various drivers use omap_dma_filter_fn() but don't depend on DMA_OMAP.
> This is fine because there is a trivial inline definition in case
> DMA_OMAP is disabled... until the caller is built-in and DMA_OMAP=m.
>
> I tried adding the rather weird 'select DMA_OMAP if DMA_OMAP!=n' to
> these drivers' kconfig symbols to promote it to built-in if necessary.
> This sort of works but kconfig complains about the circular dependency
> and it becomes impossible to disable DMA_OMAP in the 'make nconfig'
> menu. So that's not the right thing to do.
>
> Any ideas?

Hmm let's ask Russell and Vinod what they are envisioning. I believe
there was some talk about removing the filter functions?

For the short term fix, how about ifdef out the DMA usage in the
client drivers:

#if defined(CONFIG_DMA_OMAP_MODULE) && defined(CONFIG_MMC_OMAP_MODULE)
...
#endif

Regards,

Tony