struct _IOMMU_BUS_INTERFACE
{
USHORT Size;
USHORT Version;
VOID* Context;
VOID (*InterfaceReference)(
VOID* arg1);
VOID (*InterfaceDereference)(
VOID* arg1);
LONG (*GetSvmCapabilities)(
VOID* arg1,
union _IOMMU_SVM_CAPABILITIES* arg2);
LONG (*EnableSvmCapabilities)(
VOID* arg1,
union _IOMMU_SVM_CAPABILITIES* arg2,
LONG (*arg3)(
struct _DEVICE_OBJECT* arg1,
enum _DEVICE_POWER_STATE arg2,
VOID* arg3),
VOID* arg4);
LONG (*DisableSvmCapabilities)(
VOID* arg1,
union _IOMMU_SVM_CAPABILITIES* arg2);
LONG (*GetDeviceProperties)(
VOID* arg1,
union _IOMMU_DEVICE_PROPERTIES* arg2);
LONG (*GetDeviceId)(
VOID* arg1,
ULONGLONG arg2,
struct _EXT_IOMMU_DEVICE_ID* arg3,
ULONGLONG* arg4);
struct _DEVICE_OBJECT* (*GetRootDevice)(VOID* arg1);
};