As discussed in [1], adding a helper function to configure the STU of an ATS capability. Function pci_ats_stu_configure() can be called to program the STU while enumerating the PF, to support scenarios like PF is not enabled with ATS, whereas VFs can enable it. In SMMU-V3 driver, calling pci_ats_stu_configure() to confgiure the STU while enumerating a PF in passthrough mode. [1] https://lore.kernel.org/linux-arm-kernel/20230221154624.GA3701506@bhelgaas/T/ v2: - Added dummy definition for pci_ats_stu_configure. - Changed STU configure to read modify write. Ganapatrao Kulkarni (2): PCI/ATS: Add a helper function to configure ATS STU of a PF. iommu/arm-smmu-v3: Configure STU of a PF if ATS is not enabled. drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 25 +++++++++++++++- drivers/pci/ats.c | 33 +++++++++++++++++++-- include/linux/pci-ats.h | 3 ++ 3 files changed, 58 insertions(+), 3 deletions(-) -- 2.38.1