linux/drivers/pci/controller
Marc Zyngier 946d619fa2 iommu/dart: Exclude MSI doorbell from PCIe device IOVA range
The MSI doorbell on Apple HW can be any address in the low 4GB range.
However, the MSI write is matched by the PCIe block before hitting the
iommu. It must thus be excluded from the IOVA range that is assigned to any
PCIe device.

Link: https://lore.kernel.org/r/20210929163847.2807812-9-maz@kernel.org
Tested-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Sven Peter <sven@svenpeter.dev>
2021-11-04 16:29:30 -05:00
..
cadence Merge branch 'remotes/lorenzo/pci/endpoint' 2021-09-02 14:56:51 -05:00
dwc Merge branch 'remotes/lorenzo/pci/endpoint' 2021-09-02 14:56:51 -05:00
mobiveil PCI: Bulk conversion to generic_handle_domain_irq() 2021-08-02 11:53:05 -05:00
Kconfig iommu/dart: Exclude MSI doorbell from PCIe device IOVA range 2021-11-04 16:29:30 -05:00
Makefile PCI: apple: Add initial hardware bring-up 2021-11-04 14:17:08 -05:00
pci-aardvark.c Merge branch 'remotes/lorenzo/pci/aardvark' 2021-09-02 14:56:46 -05:00
pci-ftpci100.c PCI: Bulk conversion to generic_handle_domain_irq() 2021-08-02 11:53:05 -05:00
pci-host-common.c PCI/MSI: Make pci_host_common_probe() declare its reliance on MSI domains 2021-04-20 14:11:22 +01:00
pci-host-generic.c PCI: Unify ECAM constants in native PCI Express drivers 2020-12-10 14:55:49 -06:00
pci-hyperv-intf.c PCI: hv: Add a Hyper-V PCI interface driver for software backchannel interface 2019-08-22 00:25:12 -07:00
pci-hyperv.c Merge branch 'remotes/lorenzo/pci/hyper-v' 2021-09-02 14:56:47 -05:00
pci-ixp4xx.c ARM: ixp4xx: fix building both pci drivers 2021-08-12 23:10:09 +02:00
pci-loongson.c PCI: loongson: Simplify loongson_pci_probe() return expression 2020-10-02 12:56:31 +01:00
pci-mvebu.c PCI: mvebu: Fix duplicate resource requests 2020-11-04 13:55:30 -06:00
pci-rcar-gen2.c PCI: rcar-gen2: Use fallthrough pseudo-keyword 2020-09-07 15:17:20 +01:00
pci-tegra.c Merge branch 'remotes/lorenzo/pci/tegra' 2021-09-02 14:56:50 -05:00
pci-thunder-ecam.c PCI: thunder: Fix compile testing 2021-03-11 15:07:46 -06:00
pci-thunder-pem.c PCI: thunder: Fix compile testing 2021-03-11 15:07:46 -06:00
pci-v3-semi.c PCI: v3-semi: Remove unneeded break 2020-10-20 10:59:55 -05:00
pci-versatile.c PCI: Set bridge map_irq and swizzle_irq to default functions 2020-08-04 16:36:30 +01:00
pci-xgene-msi.c Merge branch 'remotes/lorenzo/pci/xgene' 2021-09-02 14:56:51 -05:00
pci-xgene.c Merge branch 'pci/kernel-doc' 2021-07-06 10:56:29 -05:00
pcie-altera-msi.c PCI: Bulk conversion to generic_handle_domain_irq() 2021-08-02 11:53:05 -05:00
pcie-altera.c PCI: Bulk conversion to generic_handle_domain_irq() 2021-08-02 11:53:05 -05:00
pcie-apple.c iommu/dart: Exclude MSI doorbell from PCIe device IOVA range 2021-11-04 16:29:30 -05:00
pcie-brcmstb.c PCI: Bulk conversion to generic_handle_domain_irq() 2021-08-02 11:53:05 -05:00
pcie-hisi-error.c PCI: hip: Add handling of HiSilicon HIP PCIe controller errors 2020-09-16 10:30:42 +01:00
pcie-iproc-bcma.c PCI: iproc: Fix BCMA probe resource handling 2021-08-04 12:20:00 +01:00
pcie-iproc-msi.c PCI: Bulk conversion to generic_handle_domain_irq() 2021-08-02 11:53:05 -05:00
pcie-iproc-platform.c PCI: iproc: Fix using plain integer as NULL pointer in iproc_pcie_pltfm_probe 2020-10-09 13:37:57 +01:00
pcie-iproc.c PCI: Fix kernel-doc formatting 2021-07-06 10:37:46 -05:00
pcie-iproc.h PCI: Fix kernel-doc formatting 2021-07-06 10:37:46 -05:00
pcie-mediatek-gen3.c PCI: Bulk conversion to generic_handle_domain_irq() 2021-08-02 11:53:05 -05:00
pcie-mediatek.c Merge branch 'remotes/lorenzo/pci/mediatek' 2021-09-02 14:56:49 -05:00
pcie-microchip-host.c PCI: Bulk conversion to generic_handle_domain_irq() 2021-08-02 11:53:05 -05:00
pcie-rcar-ep.c Merge branch 'remotes/lorenzo/pci/endpoint' 2021-09-02 14:56:51 -05:00
pcie-rcar-host.c Merge branch 'remotes/lorenzo/pci/rcar' 2021-09-02 14:56:49 -05:00
pcie-rcar.c PCI: rcar: Fix calculating mask for PCIEPAMR register 2020-05-11 11:29:48 +01:00
pcie-rcar.h PCI: rcar: Add L1 link state fix into data abort hook 2021-08-16 14:51:30 +01:00
pcie-rockchip-ep.c PCI: endpoint: Add virtual function number in pci_epc ops 2021-08-19 14:13:28 +01:00
pcie-rockchip-host.c PCI: Bulk conversion to generic_handle_domain_irq() 2021-08-02 11:53:05 -05:00
pcie-rockchip.c PCI: rockchip: Make 'ep-gpios' DT property optional 2021-02-23 14:23:50 -06:00
pcie-rockchip.h PCI: Unify ECAM constants in native PCI Express drivers 2020-12-10 14:55:49 -06:00
pcie-xilinx-cpm.c PCI: Bulk conversion to generic_handle_domain_irq() 2021-08-02 11:53:05 -05:00
pcie-xilinx-nwl.c Merge branch 'remotes/lorenzo/pci/xilinx-nwl' 2021-09-02 14:56:51 -05:00
pcie-xilinx.c PCI: Bulk conversion to generic_handle_domain_irq() 2021-08-02 11:53:05 -05:00
vmd.c PCI: VMD: ACPI: Make ACPI companion lookup work for VMD bus 2021-09-02 17:59:58 +02:00