// dispmprt.h
typedef struct _DXGKRNL_INTERFACE {
ULONG Size;
ULONG Version;
HANDLE DeviceHandle;
DXGKCB_EVAL_ACPI_METHOD DxgkCbEvalAcpiMethod;
DXGKCB_GET_DEVICE_INFORMATION DxgkCbGetDeviceInformation;
DXGKCB_INDICATE_CHILD_STATUS DxgkCbIndicateChildStatus;
DXGKCB_MAP_MEMORY DxgkCbMapMemory;
DXGKCB_QUEUE_DPC DxgkCbQueueDpc;
DXGKCB_QUERY_SERVICES DxgkCbQueryServices;
DXGKCB_READ_DEVICE_SPACE DxgkCbReadDeviceSpace;
DXGKCB_SYNCHRONIZE_EXECUTION DxgkCbSynchronizeExecution;
DXGKCB_UNMAP_MEMORY DxgkCbUnmapMemory;
DXGKCB_WRITE_DEVICE_SPACE DxgkCbWriteDeviceSpace;
DXGKCB_IS_DEVICE_PRESENT DxgkCbIsDevicePresent;
DXGKCB_GETHANDLEDATA DxgkCbGetHandleData;
DXGKCB_GETHANDLEPARENT DxgkCbGetHandleParent;
DXGKCB_ENUMHANDLECHILDREN DxgkCbEnumHandleChildren;
DXGKCB_NOTIFY_INTERRUPT DxgkCbNotifyInterrupt;
DXGKCB_NOTIFY_DPC DxgkCbNotifyDpc;
DXGKCB_QUERYVIDPNINTERFACE DxgkCbQueryVidPnInterface;
DXGKCB_QUERYMONITORINTERFACE DxgkCbQueryMonitorInterface;
DXGKCB_GETCAPTUREADDRESS DxgkCbGetCaptureAddress;
DXGKCB_LOG_ETW_EVENT DxgkCbLogEtwEvent;
DXGKCB_EXCLUDE_ADAPTER_ACCESS DxgkCbExcludeAdapterAccess;
DXGKCB_CREATECONTEXTALLOCATION DxgkCbCreateContextAllocation;
DXGKCB_DESTROYCONTEXTALLOCATION DxgkCbDestroyContextAllocation;
DXGKCB_SETPOWERCOMPONENTACTIVE DxgkCbSetPowerComponentActive;
DXGKCB_SETPOWERCOMPONENTIDLE DxgkCbSetPowerComponentIdle;
DXGKCB_ACQUIRE_POST_DISPLAY_OWNERSHIP DxgkCbAcquirePostDisplayOwnership;
DXGKCB_POWERRUNTIMECONTROLREQUEST DxgkCbPowerRuntimeControlRequest;
DXGKCB_SETPOWERCOMPONENTLATENCY DxgkCbSetPowerComponentLatency;
DXGKCB_SETPOWERCOMPONENTRESIDENCY DxgkCbSetPowerComponentResidency;
DXGKCB_COMPLETEFSTATETRANSITION DxgkCbCompleteFStateTransition;
DXGKCB_COMPLETEPSTATETRANSITION DxgkCbCompletePStateTransition;
DXGKCB_MAPCONTEXTALLOCATION DxgkCbMapContextAllocation;
DXGKCB_UPDATECONTEXTALLOCATION DxgkCbUpdateContextAllocation;
DXGKCB_RESERVEGPUVIRTUALADDRESSRANGE DxgkCbReserveGpuVirtualAddressRange;
DXGKCB_ACQUIREHANDLEDATA DxgkCbAcquireHandleData;
DXGKCB_RELEASEHANDLEDATA DxgkCbReleaseHandleData;
DXGKCB_HARDWARECONTENTPROTECTIONTEARDOWN DxgkCbHardwareContentProtectionTeardown;
DXGKCB_MULTIPLANEOVERLAYDISABLED DxgkCbMultiPlaneOverlayDisabled;
DXGKCB_DXGKCB_MITIGATEDRANGEUPDATE DxgkCbMitigatedRangeUpdate;
DXGKCB_INVALIDATEHWCONTEXT DxgkCbInvalidateHwContext;
DXGKCB_INDICATE_CONNECTOR_CHANGE DxgkCbIndicateConnectorChange;
DXGKCB_UNBLOCKUEFIFRAMEBUFFERRANGES DxgkCbUnblockUEFIFrameBufferRanges;
DXGKCB_ACQUIRE_POST_DISPLAY_OWNERSHIP2 DxgkCbAcquirePostDisplayOwnership2;
DXGKCB_SETPROTECTEDSESSIONSTATUS DxgkCbSetProtectedSessionStatus;
DXGKCB_ALLOCATECONTIGUOUSMEMORY DxgkCbAllocateContiguousMemory;
DXGKCB_FREECONTIGUOUSMEMORY DxgkCbFreeContiguousMemory;
DXGKCB_ALLOCATEPAGESFORMDL DxgkCbAllocatePagesForMdl;
DXGKCB_FREEPAGESFROMMDL DxgkCbFreePagesFromMdl;
DXGKCB_PINFRAMEBUFFERFORSAVE DxgkCbPinFrameBufferForSave;
DXGKCB_UNPINFRAMEBUFFERFORSAVE DxgkCbUnpinFrameBufferForSave;
DXGKCB_MAPFRAMEBUFFERPOINTER DxgkCbMapFrameBufferPointer;
DXGKCB_UNMAPFRAMEBUFFERPOINTER DxgkCbUnmapFrameBufferPointer;
DXGKCB_MAPMDLTOIOMMU DxgkCbMapMdlToIoMmu;
DXGKCB_UNMAPMDLFROMIOMMU DxgkCbUnmapMdlFromIoMmu;
DXGKCB_REPORT_DIAGNOSTIC DxgkCbReportDiagnostic;
DXGKCB_SIGNALEVENT DxgkCbSignalEvent;
DXGKCB_ISFEATUREENABLED DxgkCbIsFeatureEnabled;
DXGKCB_SAVEMEMORYFORHOTUPDATE DxgkCbSaveMemoryForHotUpdate;
DXGKCB_NOTIFYCURSORSUPPORTCHANGE DxgkCbNotifyCursorSupportChange;
DXGKCB_QUERYFEATURESUPPORT DxgkCbQueryFeatureSupport;
DXGKCB_CREATEPHYSICALMEMORYOBJECT DxgkCbCreatePhysicalMemoryObject;
DXGKCB_DESTROYPHYSICALMEMORYOBJECT DxgkCbDestroyPhysicalMemoryObject;
DXGKCB_MAPPHYSICALMEMORY DxgkCbMapPhysicalMemory;
DXGKCB_UNMAPPHYSICALMEMORY DxgkCbUnmapPhysicalMemory;
DXGKCB_ALLOCATEADL DxgkCbAllocateAdl;
DXGKCB_FREEADL DxgkCbFreeAdl;
DXGKCB_OPENPHYSICALMEMORYOBJECT DxgkCbOpenPhysicalMemoryObject;
DXGKCB_CLOSEPHYSICALMEMORYOBJECT DxgkCbClosePhysicalMemoryObject;
DXGKCB_PINFRAMEBUFFERFORSAVE2 DxgkCbPinFrameBufferForSave2;
DXGKCB_DISCONNECTDOORBELL DxgkCbDisconnectDoorbell;
} DXGKRNL_INTERFACE, *PDXGKRNL_INTERFACE;
View the official Windows Driver Kit DDI referenceNo description available.
The DXGKRNL_INTERFACE structure contains a handle to a display adapter and a set of pointers to functions implemented by the display port driver, which is a part of Dxgkrnl.
SizeAn integer that indicates the size, in bytes, of this structure.
VersionA positive integer that indicates the version of the functional interface implemented by the display port driver. Version can be one of the DXGKDDI_INTERFACE_VERSION_*XXX* values defined in D3dukmdt.h.
DeviceHandleA handle, generated by the display port driver, that represents a display adapter. The display miniport driver passes the handle as an argument each time it calls any of the functions in DXGKRNL_INTERFACE.
DxgkCbEvalAcpiMethodA pointer to the display port driver's DxgkCbEvalAcpiMethod function.
DxgkCbGetDeviceInformationA pointer to the display port driver's DxgkCbGetDeviceInformation function.
DxgkCbIndicateChildStatusA pointer to the display port driver's DxgkCbIndicateChildStatus function.
DxgkCbMapMemoryA pointer to the display port driver's DxgkCbMapMemory function.
DxgkCbQueueDpcA pointer to the display port driver's DxgkCbQueueDpc function.
DxgkCbQueryServicesA pointer to the display port driver's DxgkCbQueryServices function.
DxgkCbReadDeviceSpaceA pointer to the display port driver's DxgkCbReadDeviceSpace function.
DxgkCbSynchronizeExecutionA pointer to the display port driver's DxgkCbSynchronizeExecution function.
DxgkCbUnmapMemoryA pointer to the display port driver's DxgkCbUnmapMemory function.
DxgkCbWriteDeviceSpaceA pointer to the display port driver's DxgkCbWriteDeviceSpace function.
DxgkCbIsDevicePresentA pointer to the display port driver's DxgkCbIsDevicePresent function.
DxgkCbGetHandleDataA pointer to the display port driver's DxgkCbGetHandleData function.
DxgkCbGetHandleParentA pointer to the display port driver's DxgkCbGetHandleParent function.
DxgkCbEnumHandleChildrenA pointer to the display port driver's DxgkCbEnumHandleChildren function.
DxgkCbNotifyInterruptA pointer to the display port driver's DxgkCbNotifyInterrupt function.
DxgkCbNotifyDpcA pointer to the display port driver's DxgkCbNotifyDpc function.
DxgkCbQueryVidPnInterfaceA pointer to the display port driver's DxgkCbQueryVidPnInterface function.
DxgkCbQueryMonitorInterfaceA pointer to the display port driver's DxgkCbQueryMonitorInterface function.
DxgkCbGetCaptureAddressA pointer to the display port driver's DxgkCbGetCaptureAddress function.
DxgkCbLogEtwEventA pointer to the display port driver's DxgkCbLogEtwEvent function.
DxgkCbExcludeAdapterAccessA pointer to the display port driver's DxgkCbExcludeAdapterAccess function.
DxgkCbCreateContextAllocationA pointer to the display port driver's DxgkCbCreateContextAllocation function. Supported starting with Windows 8.
DxgkCbDestroyContextAllocationA pointer to the display port driver's DxgkCbDestroyContextAllocation function. Supported starting with Windows 8.
DxgkCbSetPowerComponentActiveA pointer to the display port driver's DxgkCbSetPowerComponentActive function. Supported starting with Windows 8.
DxgkCbSetPowerComponentIdleA pointer to the display port driver's DxgkCbSetPowerComponentIdle function. Supported starting with Windows 8.
DxgkCbAcquirePostDisplayOwnershipA pointer to the display port driver's DxgkCbAcquirePostDisplayOwnership function. Supported starting with Windows 8.
DxgkCbPowerRuntimeControlRequestA pointer to the display port driver's DxgkCbPowerRuntimeControlRequest function. Supported starting with Windows 8.
DxgkCbSetPowerComponentLatencyA pointer to the display port driver's DxgkCbSetPowerComponentLatency function. Supported starting with Windows 8.
DxgkCbSetPowerComponentResidencyA pointer to the display port driver's DxgkCbSetPowerComponentResidency function. Supported starting with Windows 8.
DxgkCbCompleteFStateTransitionA pointer to the display port driver's DxgkCbCompleteFStateTransition function. Supported starting with Windows 8.
DxgkCbCompletePStateTransitionReserved for system use. Do not use in your driver. Supported starting with Windows 8.1.
DxgkCbMapContextAllocationA pointer to the display port driver's DXGKCB_MAPCONTEXTALLOCATION function. Supported starting with WDDM 2.0.
DxgkCbUpdateContextAllocationA pointer to the display port driver's DXGKCB_UPDATECONTEXTALLOCATION function. Supported starting with WDDM 2.0.
DxgkCbReserveGpuVirtualAddressRangeA pointer to the display port driver's DXGKCB_RESERVEGPUVIRTUALADDRESSRANGE function. Supported starting with WDDM 2.0.
DxgkCbAcquireHandleDataA pointer to the display port driver's DXGKCB_ACQUIREHANDLEDATA function. Supported starting with WDDM 2.0.
DxgkCbReleaseHandleDataA pointer to the display port driver's DXGKCB_RELEASEHANDLEDATA function. Supported starting with WDDM 2.0.
DxgkCbHardwareContentProtectionTeardownA pointer to the display port driver's DXGKCB_HARDWARECONTENTPROTECTIONTEARDOWN function. Supported starting with WDDM 2.0.
DxgkCbMultiPlaneOverlayDisabledA pointer to the display port driver's DXGKCB_MULTIPLANEOVERLAYDISABLED function. Supported starting with WDDM 2.1.
DxgkCbMitigatedRangeUpdateA pointer to the display port driver's DXGKCB_MITIGATEDRANGEUPDATE function. Supported starting with WDDM 2.1.
DxgkCbInvalidateHwContextA pointer to the display port driver's DXGKCB_INVALIDATEHWCONTEXT function. Supported starting with WDDM 2.2.
DxgkCbIndicateConnectorChangeA pointer to the display port driver's DXGKCB_INDICATE_CONNECTOR_CHANGE function. Supported starting with WDDM 2.2.
DxgkCbUnblockUEFIFrameBufferRangesA pointer to the display port driver's DXGKCB_UNBLOCKUEFIFRAMEBUFFERRANGES function. Supported starting with WDDM 2.2.
DxgkCbAcquirePostDisplayOwnership2A pointer to the display port driver's DXGKCB_ACQUIRE_POST_DISPLAY_OWNERSHIP2 function. Supported starting with WDDM 2.2.
DxgkCbSetProtectedSessionStatusA pointer to the display port driver's DXGKCB_SETPROTECTEDSESSIONSTATUS function. Supported starting with WDDM 2.3.
DxgkCbAllocateContiguousMemoryA pointer to the display port driver's DXGKCB_ALLOCATECONTIGUOUSMEMORY function. Supported starting with WDDM 2.4.
DxgkCbFreeContiguousMemoryA pointer to the display port driver's DXGKCB_FREECONTIGUOUSMEMORY function. Supported starting with WDDM 2.4.
DxgkCbAllocatePagesForMdlA pointer to the display port driver's DXGKCB_ALLOCATEPAGESFORMDL function. Supported starting with WDDM 2.4.
DxgkCbFreePagesFromMdlA pointer to the display port driver's DXGKCB_FREEPAGESFROMMDL function. Supported starting with WDDM 2.4.
DxgkCbPinFrameBufferForSaveA pointer to the display port driver's DXGKCB_PINFRAMEBUFFERFORSAVE function. Supported starting with WDDM 2.4.
DxgkCbUnpinFrameBufferForSaveA pointer to the display port driver's DXGKCB_UNPINFRAMEBUFFERFORSAVE function. Supported starting with WDDM 2.4.
DxgkCbMapFrameBufferPointerA pointer to the display port driver's DXGKCB_MAPFRAMEBUFFERPOINTER function. Supported starting with WDDM 2.4.
DxgkCbUnmapFrameBufferPointerA pointer to the display port driver's DXGKCB_UNMAPFRAMEBUFFERPOINTER function. Supported starting with WDDM 2.4.
DxgkCbMapMdlToIoMmuA pointer to the display port driver's DXGKCB_MAPMDLTOIOMMU function. Supported starting with WDDM 2.4.
DxgkCbUnmapMdlFromIoMmuA pointer to the display port driver's DXGKCB_UNMAPMDLFROMIOMMU function. Supported starting with WDDM 2.4.
DxgkCbReportDiagnosticA pointer to the display port driver's DXGKCB_REPORT_DIAGNOSTIC function. Supported starting with WDDM 2.4.
DxgkCbSignalEventA pointer to the display port driver's DXGKCB_SIGNALEVENT function. Supported starting with WDDM 2.5.
DxgkCbIsFeatureEnabledA pointer to the display port driver's DXGKCB_ISFEATUREENABLED function. Supported starting with WDDM 2.6.
DxgkCbSaveMemoryForHotUpdateA pointer to the display port driver's DXGKCB_SAVEMEMORYFORHOTUPDATE function. Supported starting with WDDM 2.6.
DxgkCbNotifyCursorSupportChangeA pointer to the display port driver's DXGKCB_NOTIFYCURSORSUPPORTCHANGE function. Supported starting with WDDM 2.8.
DxgkCbQueryFeatureSupportA pointer to the display port driver's DXGKCB_QUERYFEATURESUPPORT function. Supported starting with WDDM 2.9.
DxgkCbCreatePhysicalMemoryObjectA pointer to the display port driver's DXGKCB_CREATEPHYSICALMEMORYOBJECT function. Supported starting with WDDM 2.9.
DxgkCbDestroyPhysicalMemoryObjectA pointer to the display port driver's DXGKCB_DESTROYPHYSICALMEMORYOBJECT function. Supported starting with WDDM 2.9.
DxgkCbMapPhysicalMemoryA pointer to the display port driver's DXGKCB_MAPPHYSICALMEMORY function. Supported starting with WDDM 2.9.
DxgkCbUnmapPhysicalMemoryA pointer to the display port driver's DXGKCB_UNMAPPHYSICALMEMORY function. Supported starting with WDDM 2.9.
DxgkCbAllocateAdlA pointer to the display port driver's DXGKCB_ALLOCATEADL function. Supported starting with WDDM 2.9.
DxgkCbFreeAdlA pointer to the display port driver's DXGKCB_FREEADL function. Supported starting with WDDM 2.9.
DxgkCbOpenPhysicalMemoryObjectA pointer to the display port driver's DXGKCB_OPENPHYSICALMEMORYOBJECT function. Supported starting with WDDM 2.9.
DxgkCbClosePhysicalMemoryObjectA pointer to the display port driver's DXGKCB_CLOSEPHYSICALMEMORYOBJECT function. Supported starting with WDDM 2.9.
DxgkCbPinFrameBufferForSave2A pointer to the display port driver's DXGKCB_PINFRAMEBUFFERFORSAVE2 function. Supported starting with WDDM 2.9.
DxgkCbDisconnectDoorbellA pointer to the display port driver's DXGKCB_DISCONNECTDOORBELL function. Supported starting with WDDM 3.1.
The functions are implemented by the display port driver and called by the display miniport driver. The display port driver provides the display miniport driver with the handle and function pointers by passing a DXGKRNL_INTERFACE structure to DxgkDdiStartDevice.
DriverEntry of Display Miniport Driver