Bewerken

Delen via


DXGKDDISETPOWERCOMPONENTFSTATE callback function (d3dkmddi.h)

Called by the Microsoft DirectX graphics kernel subsystem to transition a power component to an idle state (an F-state).

Syntax

DXGKDDISETPOWERCOMPONENTFSTATE Dxgkddisetpowercomponentfstate;

NTSTATUS Dxgkddisetpowercomponentfstate(
  IN_CONST_HANDLE DriverContext,
  UINT ComponentIndex,
  UINT FState
)
{...}

Parameters

DriverContext

A handle to a context block associated with a display adapter. The display miniport driver's DxgkDdiAddDevice function previously provided this handle to the DirectX graphics kernel subsystem.

ComponentIndex

The power component index specified by DXGKARG_QUERYADAPTERINFO.pInputData in a call to the DxgkDdiQueryAdapterInfo function.

FState

An F-state value that the display miniport driver has reported to the DirectX graphics kernel subsystem.

Return value

Returns STATUS_SUCCESS if it succeeds; otherwise, it returns STATUS_INVALID_PARAMETER.

Remarks

The operating system calls DxgkDdiSetPowerComponentFState only if the display miniport driver indicates support by setting DXGK_DRIVERCAPS.SupportRuntimePowerManagement to TRUE.

Note  To avoid a possible deadlock, do not call the DxgkCbSetPowerComponentActive function until this function has returned.
 
When the display miniport driver transitions a power component from the F0 (fully on) state to another F-state, it should save the context needed to later restore the component back to the F0 state.

The Power Management Framework only transitions a component to or from the F0 state.

This function can be called simultaneously from multiple execution threads. However, only one thread at a time can call this function to control a particular component.

The operating system guarantees that this function follows the zero level synchronization mode as defined in Threading and Synchronization Zero Level.

Requirements

Requirement Value
Minimum supported client Windows 8
Minimum supported server Windows Server 2012
Target Platform Desktop
Header d3dkmddi.h
IRQL <=DISPATCH_LEVEL

See also

DXGKARG_QUERYADAPTERINFO

DXGKRNL_INTERFACE

DXGK_DRIVERCAPS

DxgkCbSetPowerComponentActive

DxgkDdiAddDevice

DxgkDdiQueryAdapterInfo