struct _HAL_IOMMU_DISPATCH { unsigned char (*HalIommuSupportEnabled)(void);/* 0x0 4 */ long (*HalIommuGetConfiguration)(unsigned long, unsigned long*, unsigned long*, void**);/* 0x4 4 */ long (*HalIommuGetLibraryContext)(unsigned long, unsigned long, void**);/* 0x8 4 */ long (*HalIommuMapDevice)(void*, struct _EXT_IOMMU_DEVICE_ID*, union _IOMMU_SVM_CAPABILITIES*, void**);/* 0xc 4 */ long (*HalIommuEnableDevicePasid)(void*, void*);/* 0x10 4 */ long (*HalIommuSetAddressSpace)(void*, unsigned long);/* 0x14 4 */ long (*HalIommuDisableDevicePasid)(void*, void*);/* 0x18 4 */ long (*HalIommuUnmapDevice)(void*, void*);/* 0x1c 4 */ long (*HalIommuFreeLibraryContext)(void*);/* 0x20 4 */ void (*HalIommuFlushTb)(void*, unsigned long, struct _KTB_FLUSH_VA*);/* 0x24 4 */ void (*HalIommuFlushAllPasid)(void*, unsigned long, struct _KTB_FLUSH_VA*);/* 0x28 4 */ unsigned char (*HalIommuProcessPageRequestQueue)(unsigned long);/* 0x2c 4 */ void (*HalIommuFaultRoutine)(unsigned long);/* 0x30 4 */ void* (*HalIommuReferenceAsid)(unsigned long);/* 0x34 4 */ void (*HalIommuDereferenceAsid)(unsigned long);/* 0x38 4 */ long (*HalIommuServicePageFault)(unsigned long, void*, unsigned long);/* 0x3c 4 */ /* ── cacheline 1 boundary (64 bytes) ── */ long (*HalIommuDevicePowerChange)(void*, void*, unsigned char);/* 0x40 4 */ long (*HalIommuBeginDeviceReset)(void*, unsigned long*);/* 0x44 4 */ long (*HalIommuFinalizeDeviceReset)(void*);/* 0x48 4 */};size 76 (0x4c)19 members0 holespadding 02 cachelines
Used in (0)