Export (0) Print
Expand All
Expand Minimize

DXGK_DRIVERCAPS structure

The DXGK_DRIVERCAPS structure describes capabilities of a display miniport driver that the driver provides through a call to its DxgkDdiQueryAdapterInfo function.

Syntax


typedef struct _DXGK_DRIVERCAPS {
  PHYSICAL_ADDRESS        HighestAcceptableAddress;
  UINT                    MaxAllocationListSlotId;
  SIZE_T                  ApertureSegmentCommitLimit;
  UINT                    MaxPointerWidth;
  UINT                    MaxPointerHeight;
  DXGK_POINTERFLAGS       PointerCaps;
  UINT                    InterruptMessageNumber;
  UINT                    NumberOfSwizzlingRanges;
  UINT                    MaxOverlays;
  DXGK_GAMMARAMPCAPS      GammaRampCaps;
  DXGK_PRESENTATIONCAPS   PresentationCaps;
  UINT                    MaxQueuedFlipOnVSync;
  DXGK_FLIPCAPS           FlipCaps;
  DXGK_VIDSCHCAPS         SchedulingCaps;
  DXGK_VIDMMCAPS          MemoryManagementCaps;
  DXGK_GPUENGINETOPOLOGY  GpuEngineTopology;
#if (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WIN7)
  DXGK_WDDMVERSION        WDDMVersion;
  DXGK_VIRTUALADDRESSCAPS VirtualAddressCaps;
  DXGK_DMABUFFERCAPS      DmaBufferCaps;
#endif 
#if DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WIN8
  D3DKMDT_PREEMPTION_CAPS PreemptionCaps;
  BOOLEAN                 SupportNonVGA;
  BOOLEAN                 SupportSmoothRotation;
  BOOLEAN                 SupportPerEngineTDR;
  BOOLEAN                 SupportDirectFlip;
  BOOLEAN                 SupportMultiPlaneOverlay;
  BOOLEAN                 SupportRuntimePowerManagement;
  BOOLEAN                 SupportSurpriseRemovalInHibernation;
#endif 
#if (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WDDM1_3)
  BOOLEAN                 HybridDiscrete;
  UINT                    MaxOverlayPlanes;
#endif 
} DXGK_DRIVERCAPS;

Members

HighestAcceptableAddress

[out] A PHYSICAL_ADDRESS data type (which is defined as LARGE_INTEGER) that indicates the highest acceptable physical address of system memory (RAM) to use.

MaxAllocationListSlotId

[out] The maximum number of allocation-list slot identifiers. An allocation-list slot represents where an allocation is directed in direct memory access (DMA) buffering.

ApertureSegmentCommitLimit

[out] The maximum number of bytes of physical memory that the display miniport driver supports for mapping into an aperture segment. The video memory manager will not map more physical memory into an aperture segment than the limit that ApertureSegmentCommitLimit specifies.

MaxPointerWidth

[out] The maximum width of the mouse pointer, in pixels.

MaxPointerHeight

[out] The maximum height of the mouse pointer, in scan lines.

PointerCaps

[out] A DXGK_POINTERFLAGS structure that identifies the mouse pointer capabilities, in bit-field flags, that the driver can support.

InterruptMessageNumber

[out] The message number that is used if message-signaled interrupts are used and the driver calls the DxgkCbNotifyInterrupt function from the interrupt handler corresponding to a fixed message number.

NumberOfSwizzlingRanges

[out] The number of swizzling ranges that the driver can support.

MaxOverlays

[out] The maximum number of overlays that the driver can support.

GammaRampCaps

[out] A DXGK_GAMMARAMPCAPS structure that identifies the gamma-ramp capabilities, in bit-field flags, that the driver can support.

PresentationCaps

[out] A DXGK_PRESENTATIONCAPS structure that identifies the presentation capabilities, in bit-field flags, that the driver can support.

MaxQueuedFlipOnVSync

[out] The number of flips that can be queued and pending at the graphics hardware. Each flip is latched to a digital-to-analog converter (DAC) at every VSync interrupt, in order, as the graphics hardware queues the flip.

FlipCaps

[out] A DXGK_FLIPCAPS structure that identifies the flipping capabilities, in bit-field flags, that the driver can support.

SchedulingCaps

[out] A DXGK_VIDSCHCAPS structure that identifies the graphics processing unit (GPU) scheduling capabilities, in bit-field flags, that the driver can support.

MemoryManagementCaps

[out] A DXGK_VIDMMCAPS structure that identifies the video memory management capabilities that the driver can support.

GpuEngineTopology

[out] A DXGK_GPUENGINETOPOLOGY structure that describes the GPU-engine topology that the driver can support.

WDDMVersion

[out] If a driver supports Windows 7 or later features (DXGKDDI_INTERFACE_VERSION ≥ DXGKDDI_INTERFACE_VERSION_WIN7), this member is reserved and should be set to zero.

Note  

If a driver does not support Windows 7 or later features (DXGKDDI_INTERFACE_VERSION < DXGKDDI_INTERFACE_VERSION_WIN7), and you want to compile the driver with the Windows 7 WDK (Version 7600), set this member to DXGKDDI_WDDMv1.

If a driver does not support Windows 7 or later features (DXGKDDI_INTERFACE_VERSION < DXGKDDI_INTERFACE_VERSION_WIN7), and you want to compile the driver with the Windows 8 WDK, set this member to DXGKDDI_WDDMv1_2.

Supported starting with Windows 7.

VirtualAddressCaps

[out] This member is reserved and should be set to zero.

Supported starting with Windows 7.

DmaBufferCaps

[out] This member is reserved and should be set to zero.

Supported starting with Windows 7.

PreemptionCaps

[out] A D3DKMDT_PREEMPTION_CAPS structure that describes the capabilities for the preemption of GPU graphics requests that the driver supports.

Supported starting with Windows 8.

SupportNonVGA

[out] If TRUE, the driver supports resetting the display device and releasing ownership of the current power-on self-test (POST) device by using the DxgkDdiStopDeviceAndReleasePostDisplayOwnership function.

Supported starting with Windows 8.

SupportSmoothRotation

[out] If TRUE, the driver supports updating path rotation on the adapter by using the DxgkDdiUpdateActiveVidPnPresentPath function, while not requiring a new VidPN to be created and set.

Supported starting with Windows 8.

SupportPerEngineTDR

[out] If TRUE, the driver supports resetting individual GPU engines.

If this member is set, the display miniport driver must implement the DxgkDdiQueryDependentEngineGroup, DxgkDdiQueryEngineStatus, and DxgkDdiResetEngine functions.

Supported starting with Windows 8.

SupportDirectFlip

[out] If TRUE, the driver supports the creation and opening of shared managed primary allocations. A value of TRUE also indicates the following:

  • The display miniport driver guarantees that when the DxgkDdiSetVidPnSourceAddress function is called, the driver does not allow video memory to be flipped to an incompatible allocation.
  • The user mode driver validates Direct Flip resources before the Desktop Windows Manager (DWM) uses them.

Only the DWM can flip video memory to Direct Flip resources. The DWM validates these resources using the user-mode CheckDirectFlipSupport function.

Supported starting with Windows 8.

SupportMultiPlaneOverlay

[out] If TRUE, the display miniport driver supports multiplane overlays, and the driver should also set a value for the MaxOverlayPlanes member. If FALSE, the DirectX graphics kernel subsystem will not call multiplane overlay functions.

Supported starting with Windows 8.1.

SupportRuntimePowerManagement

[out] If TRUE, the display miniport driver supports run-time power management.

If this member is set, the display miniport driver must implement the DxgkDdiSetPowerComponentFState and DxgkDdiPowerRuntimeControlRequest functions.

Supported starting with Windows 8.

SupportSurpriseRemovalInHibernation

[out] If TRUE, the display miniport driver supports cleaning up software resources after an external display device in hibernation mode is disconnected from the system.

If this member is set, the display miniport driver must implement the DxgkDdiNotifySurpriseRemoval function with the RemovalType parameter set to DxgkRemovalHibernation.

For more information, see Using cross-adapter resources in a hybrid system.

Supported starting with Windows 8.

HybridDiscrete

[out] If TRUE, the display miniport driver is a discrete GPU in a hybrid system.

If this member is set, the display miniport driver should:

  • support WDDM 1.3
  • support cross-adapter resources
  • have no display outputs

For more information, see Using cross-adapter resources in a hybrid system.

Supported starting with Windows 8.1.

MaxOverlayPlanes

[out] If SupportRuntimePowerManagement is TRUE, the display miniport driver should set MaxOverlayPlanes to the maximum number of overlay planes, including the primary surface, that it can support. If the number of available planes will change when the operating mode changes, the driver should use a number that reflects the best-case scenario.

Supported starting with Windows 8.1.

Requirements

Version

Available starting with Windows Vista.

Header

D3dkmddi.h (include D3dkmddi.h)

See also

CheckDirectFlipSupport
D3DKMDT_PREEMPTION_CAPS
DXGK_FLIPCAPS
DXGK_GAMMARAMPCAPS
DXGK_GPUENGINETOPOLOGY
DXGK_POINTERFLAGS
DXGK_PRESENTATIONCAPS
DXGK_VIDMMCAPS
DXGK_VIDSCHCAPS
DXGKARG_QUERYADAPTERINFO
DxgkCbNotifyInterrupt
DxgkDdiNotifySurpriseRemoval
DxgkDdiPowerRuntimeControlRequest
DxgkDdiQueryAdapterInfo
DxgkDdiQueryDependentEngineGroup
DxgkDdiQueryEngineStatus
DxgkDdiResetEngine
DxgkDdiSetPowerComponentFState
DxgkDdiSetVidPnSourceAddress
DxgkDdiStopDeviceAndReleasePostDisplayOwnership
DxgkDdiUpdateActiveVidPnPresentPath

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft