RE: [PATCH] dma-mapping: move dma configuration to bus infrastructure

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Sinan Kaya [mailto:okaya@xxxxxxxxxxxxxx]
> Sent: Monday, March 12, 2018 22:14
> To: Nipun Gupta <nipun.gupta@xxxxxxx>; hch@xxxxxx;
> robin.murphy@xxxxxxx; linux@xxxxxxxxxxxxxxx; gregkh@xxxxxxxxxxxxxxxxxxx;
> m.szyprowski@xxxxxxxxxxx; bhelgaas@xxxxxxxxxx
> Cc: dmitry.torokhov@xxxxxxxxx; rafael.j.wysocki@xxxxxxxxx;
> jarkko.sakkinen@xxxxxxxxxxxxxxx; linus.walleij@xxxxxxxxxx; johan@xxxxxxxxxx;
> msuchanek@xxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; iommu@lists.linux-
> foundation.org; linux-pci@xxxxxxxxxxxxxxx
> 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.




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux