This short series introduces hyperv root VM iommu kernel only driver. This driver acts as liason between the hypervisor and iommu layer. Details are both in the actual commit and in the comments in the file implementing it.
Thanks, -Mukesh V0: based on upstream hyperv-next commit be0cfab740e5 V1: - change order of lookup tree deletions to appease all AI agents, carving out hv_iommu_hyp_unmap_pages() from hv_iommu_unmap_pages(). - change unique_id to ida subsystem management so we never ever run out of domain ids. - change hv_max_iova_width to hv_iommu_max_iova and generate proper mask. - some other minor changes. Mukesh R (3): PCI: hv: Export hv_build_devid_type_pci() and change return type mshv: Import data structs around device domains from hyperv headers x86/hyperv: Implement root VM IOMMU kernel only driver arch/x86/hyperv/irqdomain.c | 9 +- arch/x86/include/asm/mshyperv.h | 6 + arch/x86/kernel/pci-dma.c | 2 + drivers/iommu/Kconfig | 1 + drivers/iommu/hyperv/Kconfig | 15 + drivers/iommu/hyperv/Makefile | 1 + drivers/iommu/hyperv/hv-iommu-root.c | 656 +++++++++++++++++++++++++++ include/asm-generic/mshyperv.h | 3 + include/hyperv/hvgdk_mini.h | 9 + include/hyperv/hvhdk_mini.h | 87 ++++ include/linux/hyperv.h | 6 + 11 files changed, 791 insertions(+), 4 deletions(-) create mode 100644 drivers/iommu/hyperv/Kconfig create mode 100644 drivers/iommu/hyperv/hv-iommu-root.c -- 2.51.2.vfs.0.1

