struct _HAL_INTEL_ENLIGHTENMENT_INFORMATION { unsigned long Enlightenments;/* 0x0 4 */ unsigned long HypervisorConnected;/* 0x4 4 */ void (*EndOfInterrupt)(void);/* 0x8 4 */ void (*ApicWriteIcr)(unsigned long, unsigned long);/* 0xc 4 */ unsigned long Reserved0;/* 0x10 4 */ unsigned long SpinCountMask;/* 0x14 4 */ void (*LongSpinWait)(unsigned long);/* 0x18 4 */ unsigned __int64 (*GetReferenceTime)(unsigned long*);/* 0x1c 4 */ long (*SetSystemSleepProperty)(unsigned, unsigned char, unsigned char);/* 0x20 4 */ long (*EnterSleepState)(unsigned);/* 0x24 4 */ long (*NotifyDebugDeviceAvailable)(void);/* 0x28 4 */ long (*MapDeviceInterrupt)(unsigned __int64, void*, struct _GROUP_AFFINITY*, void*);/* 0x2c 4 */ long (*UnmapDeviceInterrupt)(unsigned __int64, void*);/* 0x30 4 */ long (*RetargetDeviceInterrupt)(unsigned __int64, void*, void*, struct _GROUP_AFFINITY*, void*);/* 0x34 4 */ long (*SetHpetConfig)(union _LARGE_INTEGER, unsigned long, unsigned __int64, unsigned char, void*);/* 0x38 4 */ long (*NotifyHpetEnabled)(void);/* 0x3c 4 */ /* ── cacheline 1 boundary (64 bytes) ── */ long (*QueryAssociatedProcessors)(unsigned long, unsigned long*, unsigned long*);/* 0x40 4 */ long (*ReadMultipleMsr)(unsigned long, unsigned long, unsigned long*, unsigned __int64*);/* 0x44 4 */ long (*WriteMultipleMsr)(unsigned long, unsigned long, unsigned long*, unsigned __int64*);/* 0x48 4 */ long (*ReadCpuid)(unsigned long, unsigned long, unsigned long*, unsigned long*, unsigned long*, unsigned long*);/* 0x4c 4 */ long (*LpWritebackInvalidate)(unsigned long);/* 0x50 4 */ long (*GetMachineCheckContext)(unsigned long, unsigned*, unsigned __int64*, unsigned*);/* 0x54 4 */ long (*SuspendPartition)(unsigned __int64);/* 0x58 4 */ long (*ResumePartition)(unsigned __int64);/* 0x5c 4 */ long (*SetSystemMachineCheckProperty)(void*);/* 0x60 4 */ long (*WheaErrorNotification)(struct _WHEA_RECOVERY_CONTEXT*, unsigned char, unsigned char);/* 0x64 4 */ unsigned long (*GetProcessorIndexFromVpIndex)(unsigned long);/* 0x68 4 */ long (*SyntheticClusterIpi)(struct _KAFFINITY_EX*, unsigned long);/* 0x6c 4 */ unsigned char (*VpStartEnabled)(void);/* 0x70 4 */ long (*StartVirtualProcessor)(unsigned long, void*);/* 0x74 4 */ long (*GetVpIndexFromApicId)(unsigned long, unsigned long*);/* 0x78 4 */ long (*IumAccessPciDevice)(unsigned char, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, void*);/* 0x7c 4 */ /* ── cacheline 2 boundary (128 bytes) ── */ unsigned long (*IumEfiRuntimeService)(unsigned long, void*, unsigned __int64, unsigned __int64*);/* 0x80 4 */ void (*SvmGetSystemCapabilities)(struct _HAL_HV_SVM_SYSTEM_CAPABILITIES*);/* 0x84 4 */ long (*SvmGetDeviceCapabilities)(unsigned long, struct _HAL_HV_SVM_DEVICE_CAPABILITIES*);/* 0x88 4 */ long (*SvmCreatePasidSpace)(unsigned long, unsigned long);/* 0x8c 4 */ long (*SvmSetPasidAddressSpace)(unsigned long, unsigned long, unsigned __int64);/* 0x90 4 */ void (*SvmFlushPasid)(unsigned long, unsigned long, unsigned long, struct _KTB_FLUSH_VA*);/* 0x94 4 */ long (*SvmAttachPasidSpace)(unsigned long, unsigned long, unsigned long, unsigned long);/* 0x98 4 */ long (*SvmDetachPasidSpace)(unsigned long);/* 0x9c 4 */ long (*SvmEnablePasid)(unsigned long, unsigned long);/* 0xa0 4 */ long (*SvmDisablePasid)(unsigned long, unsigned long);/* 0xa4 4 */ long (*SvmAcknowledgePageRequest)(unsigned long, void*, unsigned long*);/* 0xa8 4 */ long (*SvmCreatePrQueue)(unsigned long, unsigned long, union _LARGE_INTEGER, unsigned long, unsigned long);/* 0xac 4 */ long (*SvmDeletePrQueue)(unsigned long);/* 0xb0 4 */ long (*SvmClearPrqStalled)(unsigned long);/* 0xb4 4 */ long (*SvmSetDeviceEnabled)(unsigned long, unsigned char);/* 0xb8 4 */ long (*HvDebuggerPowerHandler)(unsigned char);/* 0xbc 4 */ /* ── cacheline 3 boundary (192 bytes) ── */ long (*SetQpcBias)(unsigned __int64);/* 0xc0 4 */ unsigned __int64 (*GetQpcBias)(void);/* 0xc4 4 */ long (*RegisterDeviceId)(struct _EXT_IOMMU_DEVICE_ID*, unsigned __int64);/* 0xc8 4 */ long (*UnregisterDeviceId)(unsigned __int64);/* 0xcc 4 */ long (*AllocateDeviceDomain)(struct _HAL_HV_DMA_DOMAIN_INFO*);/* 0xd0 4 */ long (*AttachDeviceDomain)(struct _EXT_IOMMU_DEVICE_ID*, struct _HAL_HV_DMA_DOMAIN_INFO*);/* 0xd4 4 */ long (*DetachDeviceDomain)(unsigned __int64);/* 0xd8 4 */ long (*DeleteDeviceDomain)(struct _HAL_HV_DMA_DOMAIN_INFO*);/* 0xdc 4 */ long (*MapDeviceLogicalRange)(struct _HAL_HV_DMA_DOMAIN_INFO*, unsigned long, unsigned __int64, unsigned long*, unsigned __int64*, unsigned char);/* 0xe0 4 */ long (*UnmapDeviceLogicalRange)(struct _HAL_HV_DMA_DOMAIN_INFO*, unsigned __int64, unsigned __int64*);/* 0xe4 4 */ long (*MapDeviceSparsePages)(struct _HAL_HV_DMA_DOMAIN_INFO*, unsigned long, unsigned long*, unsigned __int64*);/* 0xe8 4 */ long (*UnmapDeviceSparsePages)(struct _HAL_HV_DMA_DOMAIN_INFO*, unsigned long*, unsigned __int64*);/* 0xec 4 */ long (*GetDmaGuardEnabled)(unsigned char*);/* 0xf0 4 */ long (*UpdateMicrocode)(void*, unsigned);/* 0xf4 4 */ long (*GetSintMessage)(unsigned char, void**);/* 0xf8 4 */ long (*RestoreTime)(unsigned, unsigned __int64, unsigned __int64);/* 0xfc 4 */};size 256 (0x100)64 members0 holespadding 04 cachelines
Used in (0)