This series introduces SMMU handling for PCIe passthrough on ARM. These patches are independent from (and don't depend on) the vPCI reference counting/locking work in progress, and should be able to be upstreamed independently.
v1-v2: * phantom device handling * shuffle around iommu_add_dt_pci_device() Oleksandr Andrushchenko (1): xen/arm: smmuv2: Add PCI devices support for SMMUv2 Oleksandr Tyshchenko (4): xen/arm: Move is_protected flag to struct device iommu/arm: Add iommu_dt_xlate() iommu/arm: Introduce iommu_add_dt_pci_device API pci/arm: Use iommu_add_dt_pci_device() Rahul Singh (1): xen/arm: smmuv3: Add PCI devices support for SMMUv3 Stewart Hildebrand (2): iommu/arm: iommu_add_dt_pci_device phantom handling RFC: pci/arm: don't do iommu call for phantom functions xen/arch/arm/domain_build.c | 4 +- xen/arch/arm/include/asm/device.h | 13 ++ xen/common/device_tree.c | 2 +- xen/drivers/passthrough/arm/ipmmu-vmsa.c | 8 +- xen/drivers/passthrough/arm/smmu-v3.c | 74 +++++++- xen/drivers/passthrough/arm/smmu.c | 110 +++++++++--- xen/drivers/passthrough/device_tree.c | 218 ++++++++++++++++++++--- xen/drivers/passthrough/pci.c | 21 ++- xen/include/xen/device_tree.h | 38 ++-- xen/include/xen/iommu.h | 6 +- 10 files changed, 417 insertions(+), 77 deletions(-) -- 2.40.1