]> git.baikalelectronics.ru Git - kernel.git/commit
iommu/dart: Exclude MSI doorbell from PCIe device IOVA range
authorMarc Zyngier <maz@kernel.org>
Wed, 29 Sep 2021 16:38:41 +0000 (17:38 +0100)
committerBjorn Helgaas <bhelgaas@google.com>
Thu, 4 Nov 2021 21:29:30 +0000 (16:29 -0500)
commit2275635e61eb046b7b65e4769a0727e61b78acd5
tree808c519bd2557ea4061f34426800d59d94d8875d
parent93fefcbb07fc7f1b165fc67acae8519cc35effdc
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>
drivers/iommu/apple-dart.c
drivers/pci/controller/Kconfig
drivers/pci/controller/pcie-apple.c