Re: [PATCH] ata: dwc: add DMADEVICES dependency

From: Arnd Bergmann
Date: Wed May 11 2016 - 09:14:00 EST


On Wednesday 11 May 2016 13:57:08 Måns Rullgård wrote:
> > diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
> > index 41b0725e58ad..8f7a4a4d2566 100644
> > --- a/drivers/ata/Kconfig
> > +++ b/drivers/ata/Kconfig
> > @@ -322,7 +322,7 @@ config SATA_DWC
> >
> > config SATA_DWC_OLD_DMA
> > bool "Support old device trees"
> > - depends on SATA_DWC
> > + depends on SATA_DWC && DMADEVICES
> > select DW_DMAC_CORE
> > default y if 460EX
> > help
> > --
>
> Isn't the proper fix here to have DW_DMAC_CORE select DMADEVICES?

No, all dmaengine drivers depend on DMADEVICES, so that would
cause a circular dependency.

The normal behavior for DMA slave drivers is to use the generic
DMA API and have a dependency on DMADEVICES but not on a particular
DMA engine implementation. In this case, the driver uses an exported
interface of the dw_dma driver directly, so we also need to select
that one, but it doesn't mean we can skip the normal dependency.

Arnd