From: Yu Zhang <[email protected]> Sent: Friday, August 21, 2026 6:27 AM > > Hyper-V guest IOMMU is a para-virtualized IOMMU based on hypercalls. > Introduce the hypercalls used by the child partition to interact with > this facility. > > These hypercalls fall into below categories: > - Detection and capability: HVCALL_GET_IOMMU_CAPABILITIES is used to > detect the existence and capabilities of the guest IOMMU. > > - Device management: HVCALL_GET_LOGICAL_DEVICE_PROPERTY is used to > check whether an endpoint device is managed by the guest IOMMU. > > - Domain management: A set of hypercalls is provided to handle the > creation, configuration, and deletion of guest domains, as well as > the attachment/detachment of endpoint devices to/from those domains. > > - IOTLB flushing: HVCALL_FLUSH_DEVICE_DOMAIN is used to ask Hyper-V > for a domain-selective IOTLB flush (which in its handler may flush > the device TLB as well). > > Signed-off-by: Wei Liu <[email protected]> > Co-developed-by: Easwar Hariharan <[email protected]> > Signed-off-by: Easwar Hariharan <[email protected]> > Co-developed-by: Yu Zhang <[email protected]> > Signed-off-by: Yu Zhang <[email protected]> > Reviewed-by: Jacob Pan <[email protected]>
Reviewed-by: Michael Kelley <[email protected]> > --- > drivers/hv/hv_common.c | 1 + > include/hyperv/hvgdk_mini.h | 9 +++ > include/hyperv/hvhdk_mini.h | 137 ++++++++++++++++++++++++++++++++++++ > 3 files changed, 147 insertions(+)

