[V4 PATCH 3/6] pci: Generic function for setting up PCI device DMA coherency

Catalin Marinas catalin.marinas at arm.com
Wed May 20 02:34:01 PDT 2015


On Wed, May 20, 2015 at 11:27:54AM +0200, Arnd Bergmann wrote:
> On Wednesday 20 May 2015 10:24:15 Catalin Marinas wrote:
> > On Sat, May 16, 2015 at 01:59:00AM +0200, Rafael J. Wysocki wrote:
> > > On Friday, May 15, 2015 04:23:11 PM Suravee Suthikulpanit wrote:
> > > > +/**
> > > > + * pci_dma_configure - Setup DMA configuration
> > > > + * @pci_dev: ptr to pci_dev struct of the PCI device
> > > > + *
> > > > + * Function to update PCI devices's DMA configuration using the same
> > > > + * info from the OF node or ACPI node of host bridge's parent (if any).
> > > > + */
> > > > +static void pci_dma_configure(struct pci_dev *pci_dev)
> > > > +{
> > > > +   struct device *dev = &pci_dev->dev;
> > > > +   struct device *bridge = pci_get_host_bridge_device(pci_dev);
> > > > +   struct device *host = bridge->parent;
> > > > +   struct acpi_device *adev;
> > > > +
> > > > +   if (!host)
> > > > +           return;
> > > > +
> > > > +   if (acpi_disabled) {
> > > > +           of_dma_configure(dev, host->of_node);
> > > 
> > > I'd rather do
> > > 
> > >       if (IS_ENABLED(CONFIG_OF) && host->of_node) {
> > >               of_dma_configure(dev, host->of_node);
> > 
> > Nitpick: do we need the CONFIG_OF check? If disabled, I don't think
> > anyone would set host->of_node.
> 
> If of_dma_configure() is defined in a file that is built conditionally
> based on CONFIG_OF, you need it.

We have a dummy of_dma_configure() already when !CONFIG_OF, otherwise
we would need #ifndef here. I already replied, I think for other
architectures we need this check to avoid a useless host->of_node test.

-- 
Catalin



More information about the linux-arm-kernel mailing list