DXGKDDIPOWERRUNTIMECONTROLREQUEST-Rückruffunktion (d3dkmddi.h)

Wird vom Power Engine Plug-In (PEP) aufgerufen, um Informationen mit dem Anzeige-Miniporttreiber auszutauschen. Wird auch vom Microsoft DirectX-Grafikkernsystem aufgerufen, um den Anzeige-Miniporttreiber über bestimmte Ereignisse zu benachrichtigen.

Syntax

DXGKDDIPOWERRUNTIMECONTROLREQUEST Dxgkddipowerruntimecontrolrequest;

NTSTATUS Dxgkddipowerruntimecontrolrequest(
  IN_CONST_HANDLE DriverContext,
  IN LPCGUID PowerControlCode,
  IN PVOID InBuffer,
  IN SIZE_T InBufferSize,
  OUT PVOID OutBuffer,
  IN SIZE_T OutBufferSize,
  OUT PSIZE_T BytesReturned
)
{...}

Parameter

DriverContext

Ein Handle für einen Kontextblock, der einer Grafikkarte zugeordnet ist. Die DxgkDdiAddDevice-Funktion des Display-Miniporttreibers hat dieses Handle zuvor für das DirectX-Grafikkernsubsystem bereitgestellt.

PowerControlCode

Ein Zeiger auf eine GUID, die die Bedeutung der Pep-Steuerelementanforderung definiert. Weitere Informationen finden Sie in den Hinweisen.

InBuffer

Ein optionaler Zeiger auf einen Eingabepuffer.

InBufferSize

Die Größe des Puffers in Bytes, auf den InBuffer zeigt.

OutBuffer

Ein optionaler Zeiger auf einen Ausgabepuffer.

OutBufferSize

Die Größe des Puffers in Byte, auf den OutBuffer zeigt.

BytesReturned

Ein optionaler Zeiger auf einen Puffer, der die Anzahl der Bytes enthält, die vom Anzeigeminiporttreiber in den Ausgabepuffer geschrieben werden.

Rückgabewert

Gibt STATUS_SUCCESS zurück, wenn dies erfolgreich ist. Andernfalls wird einer der in Ntstatus.h definierten Fehlercodes zurückgegeben.

Hinweise

Das Betriebssystem ruft DxgkDdiPowerRuntimeControlRequest nur auf, wenn der Anzeige-Miniporttreiber unterstützung durch Festlegen von DXGK_DRIVERCAPS angibt. SupportRuntimePowerManagement auf TRUE.

GUIDs, die vom Power Engine-Plug-In (PEP) verwendet werden

Pep verwendet die folgenden GUIDs, die in D3dkmddi.h definiert sind, um Informationen mit dem Anzeige-Miniporttreiber auszutauschen. Der Anzeigeporttreiber verwendet diese GUIDs, um ETW-Ereignisse (Event Tracing for Windows) auszusetzen, die hilfreich sind, um Probleme mit der Treiberleistung zu ermitteln.
GUID_DXGKDDI_POWER_VOLTAGE_UP
Erhöhen Sie die Spannung.
GUID_DXGKDDI_POWER_VOLTAGE_DOWN
Verringern Sie die Spannung.
GUID_DXGKDDI_POWER_VOLTAGE
Ändern Sie die Spannung, aber der Treiber weiß nicht, ob die Änderung eine Erhöhung oder Abnahme ist.
GUID_DXGKDDI_POWER_CLOCK_UP
Erhöhen Sie die Einstellung für die Uhr.
GUID_DXGKDDI_POWER_CLOCK_DOWN
Verringern Sie die Einstellung für die Uhr.
GUID_DXGKDDI_POWER_CLOCK
Ändern Sie die Zeiteinstellung, aber der Treiber weiß nicht, ob die Änderung eine Erhöhung oder Abnahme ist.
GUID_DXGKDDI_POWER_BANDWIDTH_UP
Erhöhen Sie die Bandbreite.
GUID_DXGKDDI_POWER_BANDWIDTH_DOWN
Verringern Sie die Bandbreite.
GUID_DXGKDDI_POWER_BANDWIDTH
Ändern Sie die Bandbreite, aber der Treiber weiß nicht, ob die Änderung eine Erhöhung oder Abnahme ist.

GUIDs, die vom DirectX-Grafikkernsubsystem verwendet werden

Das DirectX-Grafikkernsystem verwendet die folgenden GUIDs, die in D3dkmddi.h definiert sind, um den Anzeige-Miniporttreiber über bestimmte Ereignisse zu benachrichtigen.
GUID_DXGKDDI_POWER_MANAGEMENT_PREPARE_TO_START
Wird verwendet, nachdem das DirectX-Grafikkernsubsystem das Gerät für die Laufzeitenergieverwaltung registriert hat, aber bevor das Gerät gestartet wird. Nachdem diese Funktion mit dieser GUID aufgerufen wurde, kann der Anzeige-Miniporttreiber diese Funktionen aufrufen:
GUID_DXGKDDI_POWER_MANAGEMENT_STARTED
Wird verwendet, nachdem das DirectX-Grafikkernsubsystem die Laufzeitenergieverwaltung gestartet hat. Nachdem diese Funktion mit dieser GUID aufgerufen wurde, kann der Anzeige-Miniporttreiber alle Power Runtime-Funktionen aufrufen.
GUID_DXGKDDI_POWER_MANAGEMENT_STOPPED
Wird unmittelbar vor dem Aufheben der Registrierung des Geräts für die Laufzeitenergieverwaltung durch das DirectX-Grafikkernelssubsystem verwendet. Nachdem diese Funktion mit dieser GUID aufgerufen wurde, sollte der Anzeige-Miniporttreiber keine Power Runtime-Funktionen aufrufen.

Synchronisierung

Diese Funktion kann gleichzeitig von mehreren Ausführungsthreads aufgerufen werden.

Das Betriebssystem garantiert, dass diese Funktion dem Synchronisierungsmodus auf Nullebene folgt, wie unter Threading und Synchronization Zero Level definiert.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8
Unterstützte Mindestversion (Server) Windows Server 2012
Zielplattform Desktop
Kopfzeile d3dkmddi.h (einschließlich D3dkmddi.h)
IRQL <=DISPATCH_LEVEL

Weitere Informationen

DXGKARG_QUERYADAPTERINFO

DXGK_DRIVERCAPS

DxgkCbSetPowerComponentActive

DxgkCbSetPowerComponentLatency

DxgkCbSetPowerComponentResidency

DxgkDdiAddDevice