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

Arnd Bergmann
2016-05-11T13:32:32Z

On Wednesday 11 May 2016 14:19:05 Måns Rullgård wrote:
> Arnd Bergmann <arnd@arndb.de> writes:
>
> > 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.
>
> OK, but then shouldn't the main SATA_DWC have this dependency since it
> uses the DMA API?
>

Right, I missed that and thought only the SATA_DWC_OLD_DMA variant
used dmaengine at all. I'll send a new version of my patch then.

Thanks,

Arnd