mbox series

[v8,0/8] SMMU handling for PCIe Passthrough on ARM

Message ID cover.1739182214.git.mykyta_poturai@epam.com (mailing list archive)
Headers show
Series SMMU handling for PCIe Passthrough on ARM | expand

Message

Mykyta Poturai Feb. 10, 2025, 10:30 a.m. UTC
This series introduces SMMU handling for PCIe passthrough on ARM. These patches
should be able to be upstreamed independently from the vPCI series [1]. See [2]
for notes about test cases.

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-10/msg00660.html
[2] https://lists.xenproject.org/archives/html/xen-devel/2023-06/msg01135.html

v7-v8:
* no changes

v6->v7:
* drop ("xen/arm: don't pass iommu properties to hwdom for iommu-map")

v5->v6:
* don't revert ("xen/arm: Add cmdline boot option "pci-passthrough = <boolean>"")
* add ("xen/arm: enable dom0 to use PCI devices with pci-passthrough=no")

v4->v5:
* drop ("xen/arm: Improve readability of check for registered devices")
* drop ("xen/arm: Move is_protected flag to struct device")
* add ("xen/arm: don't pass iommu properties to hwdom for iommu-map")
* add ("xen/arm: Fix mapping for PCI bridge mmio region")
* revert ("xen/arm: Add cmdline boot option "pci-passthrough = <boolean>"")
* add ("xen/arm: Map ITS doorbell register to IOMMU page tables.")
* fix test case #1 with PCI device in dom0

v3->v4:
* split a change from ("xen/arm: Move is_protected flag to struct device") into
  a new separate patch
* see individual patches for further details

v2->v3:
* drop "pci/arm: Use iommu_add_dt_pci_device()"
* drop "RFC: pci/arm: don't do iommu call for phantom functions"
* move invocation of sideband ID mapping function to add_device()
  platform_ops/iommu_ops hook


Oleksandr Andrushchenko (1):
  xen/arm: smmuv2: Add PCI devices support for SMMUv2

Oleksandr Tyshchenko (2):
  iommu/arm: Add iommu_dt_xlate()
  iommu/arm: Introduce iommu_add_dt_pci_sideband_ids API

Rahul Singh (3):
  xen/arm: smmuv3: Add PCI devices support for SMMUv3
  xen/arm: Fix mapping for PCI bridge mmio region
  xen/arm: Map ITS doorbell register to IOMMU page tables

Stewart Hildebrand (2):
  iommu/arm: iommu_add_dt_pci_sideband_ids phantom handling
  xen/arm: enable dom0 to use PCI devices with pci-passthrough=no

 xen/arch/arm/device.c                 |   2 +-
 xen/arch/arm/pci/pci.c                |   5 +-
 xen/arch/arm/vgic-v3-its.c            |  20 +++
 xen/common/device-tree/device-tree.c  |  91 ++++++++++++
 xen/drivers/passthrough/arm/smmu-v3.c | 117 ++++++++++++++--
 xen/drivers/passthrough/arm/smmu.c    | 190 ++++++++++++++++++++------
 xen/drivers/passthrough/device_tree.c |  97 ++++++++++---
 xen/drivers/passthrough/iommu.c       |  13 ++
 xen/drivers/pci/physdev.c             |   4 +-
 xen/include/xen/device_tree.h         |  23 ++++
 xen/include/xen/iommu.h               |  40 +++++-
 11 files changed, 524 insertions(+), 78 deletions(-)

Comments

Jan Beulich Feb. 10, 2025, 10:42 a.m. UTC | #1
On 10.02.2025 11:30, Mykyta Poturai wrote:
> This series introduces SMMU handling for PCIe passthrough on ARM. These patches
> should be able to be upstreamed independently from the vPCI series [1]. See [2]
> for notes about test cases.
> 
> [1] https://lists.xenproject.org/archives/html/xen-devel/2023-10/msg00660.html
> [2] https://lists.xenproject.org/archives/html/xen-devel/2023-06/msg01135.html
> 
> v7-v8:
> * no changes

And why exactly was this posted then as a new version?

Jan
Mykyta Poturai Feb. 10, 2025, 10:51 a.m. UTC | #2
On 10.02.25 12:42, Jan Beulich wrote:
> On 10.02.2025 11:30, Mykyta Poturai wrote:
>> This series introduces SMMU handling for PCIe passthrough on ARM. These patches
>> should be able to be upstreamed independently from the vPCI series [1]. See [2]
>> for notes about test cases.
>>
>> v7-v8:
>> * no changes
> 
> And why exactly was this posted then as a new version?
> 
> Jan

That is supposed to mean there are no changes in the series's structure, 
only in the individual patches. Sorry for possible confusion, I will try 
to write something clearer next time.