search for: pci_request_acs

Displaying 20 results from an estimated 55 matches for "pci_request_acs".

2020 Feb 14
2
[PATCH] iommu/virtio: Build virtio-iommu as module
From: Jean-Philippe Brucker <jean-philippe.brucker at arm.com> Now that the infrastructure changes are in place, enable virtio-iommu to be built as a module. Remove the redundant pci_request_acs() call, since it's not exported but is already invoked during DMA setup. Signed-off-by: Jean-Philippe Brucker <jean-philippe.brucker at arm.com> --- This conflicts with the multiplatform work [1] since they both change Kconfig. Locally I have this patch applied on top of that series but...
2020 Feb 14
2
[PATCH] iommu/virtio: Build virtio-iommu as module
From: Jean-Philippe Brucker <jean-philippe.brucker at arm.com> Now that the infrastructure changes are in place, enable virtio-iommu to be built as a module. Remove the redundant pci_request_acs() call, since it's not exported but is already invoked during DMA setup. Signed-off-by: Jean-Philippe Brucker <jean-philippe.brucker at arm.com> --- This conflicts with the multiplatform work [1] since they both change Kconfig. Locally I have this patch applied on top of that series but...
2023 May 18
4
unexport swiotlb_active
Hi all, this little series removes the last swiotlb API exposed to modules. Diffstat: arch/x86/include/asm/xen/swiotlb-xen.h | 6 ------ arch/x86/kernel/pci-dma.c | 28 ++++------------------------ drivers/gpu/drm/nouveau/nouveau_ttm.c | 10 +++------- drivers/pci/xen-pcifront.c | 6 ------ kernel/dma/swiotlb.c | 1 - 5 files changed, 7
2020 Feb 19
0
[PATCH] iommu/virtio: Build virtio-iommu as module
On Fri, Feb 14, 2020 at 05:38:27PM +0100, Jean-Philippe Brucker wrote: > From: Jean-Philippe Brucker <jean-philippe.brucker at arm.com> > > Now that the infrastructure changes are in place, enable virtio-iommu to > be built as a module. Remove the redundant pci_request_acs() call, since > it's not exported but is already invoked during DMA setup. Which infrastructure changes do you mean? Does this depend on the x86 enablement patch-set in any way? Regards, Joerg
2020 Feb 19
1
[PATCH] iommu/virtio: Build virtio-iommu as module
...t; On Fri, Feb 14, 2020 at 05:38:27PM +0100, Jean-Philippe Brucker wrote: > > From: Jean-Philippe Brucker <jean-philippe.brucker at arm.com> > > > > Now that the infrastructure changes are in place, enable virtio-iommu to > > be built as a module. Remove the redundant pci_request_acs() call, since > > it's not exported but is already invoked during DMA setup. > > Which infrastructure changes do you mean? Does this depend on the x86 > enablement patch-set in any way? No, I meant Will's changes in 5.6 to make the SMMU drivers modular. This patch doesn'...
2013 Nov 11
0
[GIT PULL] (xen) stable/for-linus-3.13-rc0-tag
...call set_phys_to_machine after mapping grant refs swiotlb-xen: static inline xen_phys_to_bus, xen_bus_to_phys, xen_virt_to_bus and range_straddles_page_boundary swiotlb-xen: fix error code returned by xen_swiotlb_map_sg_attrs arm: make SWIOTLB available pci-swiotlb-xen: call pci_request_acs only ifdef CONFIG_PCI swiotlb-xen: missing include dma-direction.h arm,arm64/include/asm/io.h: define struct bio_vec xen/arm: pfn_to_mfn and mfn_to_pfn return the argument if nothing is in the p2m Thierry Reding (1): tracing/events: Fix swiotlb tracepoint creation Zoltan K...
2020 Aug 21
0
[PATCH v3 2/6] iommu/virtio: Add topology helpers
...+ return NULL; + + /* We're not translating ourselves. */ + if (virt_topo_device_match(dev, &viommu->dev_id) || + dev == viommu->dev) + return NULL; + + /* + * If we found a PCI range managed by the viommu, we're the one that has + * to request ACS. + */ + if (pci_dev) + pci_request_acs(); + + if (!viommu->ops) + return ERR_PTR(-EPROBE_DEFER); + + ret = iommu_fwspec_init(dev, viommu->fwnode, viommu->ops); + if (ret) + return ERR_PTR(ret); + + iommu_fwspec_add_ids(dev, &epid, 1); + + return viommu->ops; +} + +/** + * virt_topo_add_endpoint - Register endpoint spec...
2020 Sep 04
1
[PATCH v3 2/6] iommu/virtio: Add topology helpers
...urselves. */ > + if (virt_topo_device_match(dev, &viommu->dev_id) || > + dev == viommu->dev) > + return NULL; > + > + /* > + * If we found a PCI range managed by the viommu, we're the one that has > + * to request ACS. > + */ > + if (pci_dev) > + pci_request_acs(); > + > + if (!viommu->ops) > + return ERR_PTR(-EPROBE_DEFER); > + > + ret = iommu_fwspec_init(dev, viommu->fwnode, viommu->ops); > + if (ret) > + return ERR_PTR(ret); > + > + iommu_fwspec_add_ids(dev, &epid, 1); > + > + return viommu->ops; > +...
2020 Mar 01
0
[PATCH v2 1/3] iommu/virtio: Add topology description to virtio-iommu config space
...d) > + return NULL; > + > + /* We're not translating ourselves. */ > + if (viommu_dev == dev) > + return NULL; > + > + /* > + * If we found a PCI range managed by the viommu, we're the ones that > + * have to request ACS. > + */ > + if (pci_dev) > + pci_request_acs(); > + > + if (!viommu_ops) > + return ERR_PTR(-EPROBE_DEFER); > + > + ret = iommu_fwspec_init(dev, viommu_fwnode, viommu_ops); > + if (ret) > + return ERR_PTR(ret); > + > + iommu_fwspec_add_ids(dev, &epid, 1); > + > + return viommu_ops; > +} > + > +/...
2020 Mar 05
2
[PATCH v2 1/3] iommu/virtio: Add topology description to virtio-iommu config space
...t; + return NULL; > + > + /* We're not translating ourselves. */ > + if (viommu_dev == dev) > + return NULL; > + > + /* > + * If we found a PCI range managed by the viommu, we're the ones > that > + * have to request ACS. > + */ > + if (pci_dev) > + pci_request_acs(); > + > + if (!viommu_ops) > + return ERR_PTR(-EPROBE_DEFER); > + > + ret = iommu_fwspec_init(dev, viommu_fwnode, viommu_ops); > + if (ret) > + return ERR_PTR(ret); > + > + iommu_fwspec_add_ids(dev, &epid, 1); > + > + return viommu_ops; > +} > + > +/...
2020 Mar 05
2
[PATCH v2 1/3] iommu/virtio: Add topology description to virtio-iommu config space
...t; + return NULL; > + > + /* We're not translating ourselves. */ > + if (viommu_dev == dev) > + return NULL; > + > + /* > + * If we found a PCI range managed by the viommu, we're the ones > that > + * have to request ACS. > + */ > + if (pci_dev) > + pci_request_acs(); > + > + if (!viommu_ops) > + return ERR_PTR(-EPROBE_DEFER); > + > + ret = iommu_fwspec_init(dev, viommu_fwnode, viommu_ops); > + if (ret) > + return ERR_PTR(ret); > + > + iommu_fwspec_add_ids(dev, &epid, 1); > + > + return viommu_ops; > +} > + > +/...
2020 Apr 21
1
[PATCH v2 1/3] iommu/virtio: Add topology description to virtio-iommu config space
...t; + return NULL; > + > + /* We're not translating ourselves. */ > + if (viommu_dev == dev) > + return NULL; > + > + /* > + * If we found a PCI range managed by the viommu, we're the ones > that > + * have to request ACS. > + */ > + if (pci_dev) > + pci_request_acs(); > + > + if (!viommu_ops) > + return ERR_PTR(-EPROBE_DEFER); > + > + ret = iommu_fwspec_init(dev, viommu_fwnode, viommu_ops); > + if (ret) > + return ERR_PTR(ret); > + > + iommu_fwspec_add_ids(dev, &epid, 1); > + > + return viommu_ops; > +} > + > +/...
2020 Feb 14
5
[PATCH 0/3] virtio-iommu on non-devicetree platforms
Add topology description to the virtio-iommu driver and enable x86 platforms. Since the RFC [1] I've mostly given up on ACPI tables, since the internal discussions seem to have reached a dead end. The built-in topology description presented here isn't ideal, but it is simple to implement and doesn't impose a dependency on ACPI or device-tree, which can be beneficial to lightweight
2018 Oct 12
3
[PATCH v3 5/7] iommu: Add virtio-iommu driver
...t; + iommu_device_set_ops(&viommu->iommu, &viommu_ops); > + iommu_device_set_fwnode(&viommu->iommu, parent_dev->fwnode); > + > + iommu_device_register(&viommu->iommu); > + > +#ifdef CONFIG_PCI > + if (pci_bus_type.iommu_ops != &viommu_ops) { > + pci_request_acs(); > + ret = bus_set_iommu(&pci_bus_type, &viommu_ops); > + if (ret) > + goto err_unregister; > + } > +#endif > +#ifdef CONFIG_ARM_AMBA > + if (amba_bustype.iommu_ops != &viommu_ops) { > + ret = bus_set_iommu(&amba_bustype, &viommu_ops); > + if (...
2018 Oct 12
3
[PATCH v3 5/7] iommu: Add virtio-iommu driver
...t; + iommu_device_set_ops(&viommu->iommu, &viommu_ops); > + iommu_device_set_fwnode(&viommu->iommu, parent_dev->fwnode); > + > + iommu_device_register(&viommu->iommu); > + > +#ifdef CONFIG_PCI > + if (pci_bus_type.iommu_ops != &viommu_ops) { > + pci_request_acs(); > + ret = bus_set_iommu(&pci_bus_type, &viommu_ops); > + if (ret) > + goto err_unregister; > + } > +#endif > +#ifdef CONFIG_ARM_AMBA > + if (amba_bustype.iommu_ops != &viommu_ops) { > + ret = bus_set_iommu(&amba_bustype, &viommu_ops); > + if (...
2018 Nov 22
0
[PATCH v5 5/7] iommu: Add virtio-iommu driver
...); + if (ret) + goto err_free_vqs; + + iommu_device_set_ops(&viommu->iommu, &viommu_ops); + iommu_device_set_fwnode(&viommu->iommu, parent_dev->fwnode); + + iommu_device_register(&viommu->iommu); + +#ifdef CONFIG_PCI + if (pci_bus_type.iommu_ops != &viommu_ops) { + pci_request_acs(); + ret = bus_set_iommu(&pci_bus_type, &viommu_ops); + if (ret) + goto err_unregister; + } +#endif +#ifdef CONFIG_ARM_AMBA + if (amba_bustype.iommu_ops != &viommu_ops) { + ret = bus_set_iommu(&amba_bustype, &viommu_ops); + if (ret) + goto err_unregister; + } +#endif + i...
2018 Nov 15
0
[PATCH v4 5/7] iommu: Add virtio-iommu driver
...); + if (ret) + goto err_free_vqs; + + iommu_device_set_ops(&viommu->iommu, &viommu_ops); + iommu_device_set_fwnode(&viommu->iommu, parent_dev->fwnode); + + iommu_device_register(&viommu->iommu); + +#ifdef CONFIG_PCI + if (pci_bus_type.iommu_ops != &viommu_ops) { + pci_request_acs(); + ret = bus_set_iommu(&pci_bus_type, &viommu_ops); + if (ret) + goto err_unregister; + } +#endif +#ifdef CONFIG_ARM_AMBA + if (amba_bustype.iommu_ops != &viommu_ops) { + ret = bus_set_iommu(&amba_bustype, &viommu_ops); + if (ret) + goto err_unregister; + } +#endif + i...
2018 Jun 21
0
[PATCH v2 2/5] iommu: Add virtio-iommu driver
...); + if (ret) + goto err_free_vqs; + + iommu_device_set_ops(&viommu->iommu, &viommu_ops); + iommu_device_set_fwnode(&viommu->iommu, parent_dev->fwnode); + + iommu_device_register(&viommu->iommu); + +#ifdef CONFIG_PCI + if (pci_bus_type.iommu_ops != &viommu_ops) { + pci_request_acs(); + ret = bus_set_iommu(&pci_bus_type, &viommu_ops); + if (ret) + goto err_unregister; + } +#endif +#ifdef CONFIG_ARM_AMBA + if (amba_bustype.iommu_ops != &viommu_ops) { + ret = bus_set_iommu(&amba_bustype, &viommu_ops); + if (ret) + goto err_unregister; + } +#endif + i...
2018 Oct 12
0
[PATCH v3 5/7] iommu: Add virtio-iommu driver
...); + if (ret) + goto err_free_vqs; + + iommu_device_set_ops(&viommu->iommu, &viommu_ops); + iommu_device_set_fwnode(&viommu->iommu, parent_dev->fwnode); + + iommu_device_register(&viommu->iommu); + +#ifdef CONFIG_PCI + if (pci_bus_type.iommu_ops != &viommu_ops) { + pci_request_acs(); + ret = bus_set_iommu(&pci_bus_type, &viommu_ops); + if (ret) + goto err_unregister; + } +#endif +#ifdef CONFIG_ARM_AMBA + if (amba_bustype.iommu_ops != &viommu_ops) { + ret = bus_set_iommu(&amba_bustype, &viommu_ops); + if (ret) + goto err_unregister; + } +#endif + i...
2018 Feb 14
0
[PATCH 1/4] iommu: Add virtio-iommu driver
...); + if (ret) + goto err_free_vqs; + + iommu_device_set_ops(&viommu->iommu, &viommu_ops); + iommu_device_set_fwnode(&viommu->iommu, parent_dev->fwnode); + + iommu_device_register(&viommu->iommu); + +#ifdef CONFIG_PCI + if (pci_bus_type.iommu_ops != &viommu_ops) { + pci_request_acs(); + ret = bus_set_iommu(&pci_bus_type, &viommu_ops); + if (ret) + goto err_unregister; + } +#endif +#ifdef CONFIG_ARM_AMBA + if (amba_bustype.iommu_ops != &viommu_ops) { + ret = bus_set_iommu(&amba_bustype, &viommu_ops); + if (ret) + goto err_unregister; + } +#endif + i...