x64x86 / ntdllntoskrnl

_HAL_INTEL_ENLIGHTENMENT_INFORMATION

← 10.0.28000.3231 11 builds latest →
struct _HAL_INTEL_ENLIGHTENMENT_INFORMATION {
unsigned long Enlightenments;/* 0x0 4 */
unsigned long HypervisorConnected;/* 0x4 4 */
void (*EndOfInterrupt)(void);/* 0x8 8 */
void (*ApicWriteIcr)(unsigned long, unsigned long);/* 0x10 8 */
unsigned long Reserved0;/* 0x18 4 */
unsigned long SpinCountMask;/* 0x1c 4 */
void (*LongSpinWait)(unsigned long);/* 0x20 8 */
unsigned __int64 (*GetReferenceTime)(unsigned long*);/* 0x28 8 */
long (*SetSystemSleepProperty)(unsigned, unsigned char, unsigned char);/* 0x30 8 */
long (*EnterSleepState)(unsigned);/* 0x38 8 */
/* ── cacheline 1 boundary (64 bytes) ── */
long (*NotifyDebugDeviceAvailable)(void);/* 0x40 8 */
long (*MapDeviceInterrupt)(unsigned __int64, void*, struct _GROUP_AFFINITY*, void*);/* 0x48 8 */
long (*UnmapDeviceInterrupt)(unsigned __int64, void*);/* 0x50 8 */
long (*RetargetDeviceInterrupt)(unsigned __int64, void*, void*, struct _GROUP_AFFINITY*, void*);/* 0x58 8 */
long (*SetHpetConfig)(unsigned long, unsigned __int64, unsigned char, void*);/* 0x60 8 */
long (*NotifyHpetEnabled)(void);/* 0x68 8 */
long (*QueryAssociatedProcessors)(unsigned long, unsigned long*, unsigned long*);/* 0x70 8 */
long (*ReadMultipleMsr)(unsigned long, unsigned long, unsigned long*, unsigned __int64*);/* 0x78 8 */
/* ── cacheline 2 boundary (128 bytes) ── */
long (*WriteMultipleMsr)(unsigned long, unsigned long, unsigned long*, unsigned __int64*);/* 0x80 8 */
long (*ReadCpuid)(unsigned long, unsigned long, unsigned long*, unsigned long*, unsigned long*, unsigned long*);/* 0x88 8 */
long (*LpWritebackInvalidate)(unsigned long);/* 0x90 8 */
long (*GetMachineCheckContext)(unsigned long, unsigned*, unsigned __int64*, unsigned __int64*, unsigned*);/* 0x98 8 */
long (*SuspendPartition)(unsigned __int64);/* 0xa0 8 */
long (*ResumePartition)(unsigned __int64);/* 0xa8 8 */
long (*SetSystemMachineCheckProperty)(void*);/* 0xb0 8 */
long (*WheaErrorNotification)(struct _WHEA_RECOVERY_CONTEXT*, unsigned char);/* 0xb8 8 */
/* ── cacheline 3 boundary (192 bytes) ── */
unsigned long (*GetProcessorIndexFromVpIndex)(unsigned long);/* 0xc0 8 */
long (*SyntheticClusterIpi)(struct _KAFFINITY_EX*, unsigned long);/* 0xc8 8 */
unsigned char (*VpStartEnabled)(void);/* 0xd0 8 */
long (*StartVirtualProcessor)(unsigned long, void*);/* 0xd8 8 */
long (*GetVpIndexFromApicId)(unsigned long, unsigned long*);/* 0xe0 8 */
long (*IumAccessPciDevice)(unsigned char, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, void*);/* 0xe8 8 */
unsigned __int64 (*IumEfiRuntimeService)(unsigned long, void*, unsigned __int64, unsigned __int64*);/* 0xf0 8 */
void (*GetSystemPasidCapabilities)(struct _HAL_HV_SYSTEM_PASID_CAPABILITIES*);/* 0xf8 8 */
/* ── cacheline 4 boundary (256 bytes) ── */
long (*GetDeviceCapabilities)(struct _EXT_IOMMU_DEVICE_ID*, void*);/* 0x100 8 */
long (*CreatePasidSpace)(unsigned long, unsigned long);/* 0x108 8 */
long (*DeletePasidSpace)(unsigned long);/* 0x110 8 */
long (*SetPasidAddressSpace)(unsigned long, unsigned long, void*);/* 0x118 8 */
void (*FlushPasid)(unsigned long, unsigned long, unsigned long, struct _KTB_FLUSH_VA*, unsigned char);/* 0x120 8 */
long (*AttachPasidSpace)(unsigned __int64, unsigned long);/* 0x128 8 */
long (*DetachPasidSpace)(unsigned __int64);/* 0x130 8 */
long (*EnablePasid)(unsigned __int64, unsigned long);/* 0x138 8 */
/* ── cacheline 5 boundary (320 bytes) ── */
long (*DisablePasid)(unsigned __int64, unsigned long);/* 0x140 8 */
long (*AcknowledgePageRequest)(unsigned long, void*, unsigned long*);/* 0x148 8 */
long (*CreatePrQueue)(unsigned long, unsigned long, union _LARGE_INTEGER, unsigned long, unsigned long);/* 0x150 8 */
long (*DeletePrQueue)(unsigned long);/* 0x158 8 */
long (*ClearPrqStalled)(unsigned long);/* 0x160 8 */
long (*SetDeviceDmaEnabled)(struct _EXT_IOMMU_DEVICE_ID*, unsigned char);/* 0x168 8 */
long (*SetDeviceCapabilities)(unsigned __int64, unsigned long, unsigned long);/* 0x170 8 */
long (*AttachPrQueue)(unsigned __int64, unsigned long);/* 0x178 8 */
/* ── cacheline 6 boundary (384 bytes) ── */
long (*DetachPrQueue)(unsigned __int64);/* 0x180 8 */
long (*HvDebuggerPowerHandler)(unsigned char);/* 0x188 8 */
long (*SetQpcBias)(unsigned __int64);/* 0x190 8 */
unsigned __int64 (*GetQpcBias)(void);/* 0x198 8 */
long (*RegisterDeviceId)(struct _EXT_IOMMU_DEVICE_ID*, unsigned __int64);/* 0x1a0 8 */
long (*UnregisterDeviceId)(unsigned __int64);/* 0x1a8 8 */
long (*AllocateDeviceDomain)(struct _HAL_HV_DMA_CREATE_DOMAIN_INFO*);/* 0x1b0 8 */
long (*AttachDeviceDomain)(unsigned __int64, struct _HAL_HV_DMA_DOMAIN_INFO*);/* 0x1b8 8 */
/* ── cacheline 7 boundary (448 bytes) ── */
long (*DetachDeviceDomain)(unsigned __int64);/* 0x1c0 8 */
long (*DeleteDeviceDomain)(struct _HAL_HV_DMA_DOMAIN_INFO*);/* 0x1c8 8 */
long (*MapDeviceLogicalRange)(struct _HAL_HV_DMA_DOMAIN_INFO*, unsigned long, unsigned __int64, unsigned __int64*, unsigned __int64*, unsigned char);/* 0x1d0 8 */
long (*UnmapDeviceLogicalRange)(struct _HAL_HV_DMA_DOMAIN_INFO*, unsigned __int64, unsigned __int64*);/* 0x1d8 8 */
long (*MapDeviceSparsePages)(struct _HAL_HV_DMA_DOMAIN_INFO*, unsigned long, unsigned __int64*, unsigned __int64*);/* 0x1e0 8 */
long (*UnmapDeviceSparsePages)(struct _HAL_HV_DMA_DOMAIN_INFO*, unsigned __int64*, unsigned __int64*);/* 0x1e8 8 */
long (*GetDmaGuardEnabled)(unsigned char*);/* 0x1f0 8 */
long (*UpdateMicrocode)(void*, unsigned, unsigned char);/* 0x1f8 8 */
/* ── cacheline 8 boundary (512 bytes) ── */
long (*GetMicrocodeLatency)(unsigned __int64*);/* 0x200 8 */
long (*GetSintMessage)(unsigned char, void**);/* 0x208 8 */
void* (*GetSintMessagePage)(unsigned long);/* 0x210 8 */
long (*RestoreTime)(unsigned, unsigned __int64, unsigned __int64);/* 0x218 8 */
long (*GetLogicalProcessorHwId)(unsigned long, unsigned __int64*);/* 0x220 8 */
long (*WakeVirtualProcessors)(struct _KAFFINITY_EX*);/* 0x228 8 */
long (*SetRootFaultReportingReady)(void);/* 0x230 8 */
long (*ConfigureDeviceDomain)(struct _HAL_HV_DMA_DOMAIN_INFO*, struct _HAL_HV_DMA_DOMAIN_CONFIG*);/* 0x238 8 */
/* ── cacheline 9 boundary (576 bytes) ── */
long (*UnblockDefaultDma)(void);/* 0x240 8 */
long (*FlushDeviceDomain)(struct _HAL_HV_DMA_DOMAIN_INFO*);/* 0x248 8 */
long (*FlushDeviceDomainVaList)(struct _HAL_HV_DMA_DOMAIN_INFO*, unsigned long, struct _KTB_FLUSH_VA*, unsigned char);/* 0x250 8 */
long (*GetHybridPassthroughReservedRegions)(struct _HAL_HV_DMA_HYBRID_PASSTHROUGH_RESERVED_REGIONS*);/* 0x258 8 */
long (*ReserveDeviceDomainAttachment)(unsigned __int64, struct _HAL_HV_DMA_DOMAIN_INFO*);/* 0x260 8 */
long (*UnreserveDeviceDomainAttachment)(unsigned __int64);/* 0x268 8 */
long (*ChangeIsolatedMemoryVisibility)(unsigned __int64, unsigned __int64, unsigned, unsigned __int64*);/* 0x270 8 */
long (*ChangeIsolatedMemoryVisibilitySparse)(unsigned __int64*, unsigned __int64, unsigned, unsigned __int64*);/* 0x278 8 */
/* ── cacheline 10 boundary (640 bytes) ── */
unsigned char (*ShouldUseSyntheticClusterIpi)(void);/* 0x280 8 */
long (*GetTrustedIoStatus)(unsigned char*, unsigned char*);/* 0x288 8 */
long (*GetDeviceSecurityOutput)(struct _HAL_HV_DEVICE_SECURITY_OUTPUT*);/* 0x290 8 */
long (*SetDeviceSecurityInput)(struct _HAL_HV_DEVICE_SECURITY_INPUT*);/* 0x298 8 */
long (*GetGlobalIommuCapabilities)(void*);/* 0x2a0 8 */
};
size 680 (0x2a8)87 members0 holespadding 011 cachelines