Messages in this thread | | | From | Nipun Gupta <> | Subject | RE: [PATCH] dma-mapping: move dma configuration to bus infrastructure | Date | Tue, 13 Mar 2018 04:22:53 +0000 |
| |
> -----Original Message----- > From: Sinan Kaya [mailto:okaya@codeaurora.org] > Sent: Monday, March 12, 2018 22:14 > To: Nipun Gupta <nipun.gupta@nxp.com>; hch@lst.de; > robin.murphy@arm.com; linux@armlinux.org.uk; gregkh@linuxfoundation.org; > m.szyprowski@samsung.com; bhelgaas@google.com > Cc: dmitry.torokhov@gmail.com; rafael.j.wysocki@intel.com; > jarkko.sakkinen@linux.intel.com; linus.walleij@linaro.org; johan@kernel.org; > msuchanek@suse.de; linux-kernel@vger.kernel.org; iommu@lists.linux- > foundation.org; linux-pci@vger.kernel.org > Subject: Re: [PATCH] dma-mapping: move dma configuration to bus > infrastructure > > On 3/12/2018 11:24 AM, Nipun Gupta wrote: > > + if (dma_dev->of_node) { > > + ret = of_dma_configure(dev, dma_dev->of_node); > > + } else if (has_acpi_companion(dma_dev)) { > > + attr = acpi_get_dma_attr(to_acpi_device_node(dma_dev- > >fwnode)); > > + if (attr != DEV_DMA_NOT_SUPPORTED) > > + ret = acpi_dma_configure(dev, attr); > > + } > > + > > + pci_put_host_bridge_device(bridge); > > + > > + return ret; > > +} > > + > > +void pci_dma_deconfigure(struct device *dev) > > +{ > > + of_dma_deconfigure(dev); > > + acpi_dma_deconfigure(dev); > > +} > > Isn't this one or the other one but not both? > > Something like: > > if (dev->of_node) > of_dma_deconfigure(dev); > else > acpi_dma_deconfigure(dev); > > should work.
I understand your point. Seems reasonable as we should not expect the 'of/acpi DMA deconfigure' API to not fail when they are not configured.
But, here we would also need to get dma_device (just as we get in 'pci_dma_configure') and need a check on it as for PCI there 'of_node' is present in the dma_dev.
Ill update this in v2, and also make similar changes for platform and AMBA bus.
Thanks, Nipun
> > -- > Sinan Kaya > Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm > Technologies, Inc. > Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux > Foundation Collaborative Project.
| |