Freigeben über


DXGKDDIPOWERRUNTIMECONTROLREQUEST-Rückruffunktion (d3dkmddi.h)

Vom Power Engine Plug-In (PEP) aufgerufen, um Informationen mit dem Display Miniporttreiber auszutauschen. Wird auch vom Microsoft DirectX-Grafik-Kernelsubsystem aufgerufen, um den Anzeigeminiporttreiber ü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 zu einem Kontextblock, der einem Anzeigeadapter zugeordnet ist. Die DxgkDdiAddDevice-Funktion des Display-Miniporttreibers stellt dieses Handle zuvor für das DirectX-Grafik-Kernel-Subsystem bereit.

PowerControlCode

Ein Zeiger auf eine GUID, die die Bedeutung der Kontrollanforderung von PEP definiert. Weitere Informationen finden Sie in den Hinweisen.

InBuffer

Ein optionaler Zeiger auf einen Eingabepuffer.

InBufferSize

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

OutBuffer

Ein optionaler Zeiger auf einen Ausgabepuffer.

OutBufferSize

Die Größe des Puffers in Bytes, auf den outBuffer verweist.

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 eine der fehlercodes zurückgegeben, die in Ntstatus.h definiert sind.

Bemerkungen

Das Betriebssystem ruft DxgkDdiPowerRuntimeControlRequest nur dann auf, wenn der Anzeige-Miniporttreiber die Unterstützung durch Festlegen von DXGK_DRIVERCAPSangibt.SupportRuntimePowerManagementTRUE.

GUIDs, die vom Power Engine Plugin (PEP) verwendet werden

Der PEP verwendet die folgenden GUIDs, die in D3dkmddi.h definiert sind, um Informationen mit dem Anzeigeminiporttreiber auszutauschen. Der Anzeigeporttreiber verwendet diese GUIDs, um Ereignisablaufverfolgung für Windows -Ereignisse (ETW) ausstellen, die hilfreich sind, um Treiberleistungsprobleme zu profilieren.
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 Einstellung für die Uhr, 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-Grafik-Kernelsubsystem verwendet werden

Das DirectX-Grafik-Kernel-Subsystem verwendet die folgenden GUIDs, die in D3dkmddi.h definiert sind, um den Anzeigeminiporttreiber über bestimmte Ereignisse zu benachrichtigen.
GUID_DXGKDDI_POWER_MANAGEMENT_PREPARE_TO_START
Wird verwendet, nachdem das DirectX-Kernel-Subsystem das Gerät für die Laufzeit-Energieverwaltung 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-Grafik-Kernelsubsystem die Laufzeit-Energieverwaltung gestartet hat. Nachdem diese Funktion mit dieser GUID aufgerufen wurde, kann der Display-Miniporttreiber alle Power-Runtime-Funktionen aufrufen.
GUID_DXGKDDI_POWER_MANAGEMENT_STOPPED
Wird unmittelbar verwendet, bevor das DirectX-Grafik-Kernel-Subsystem die Registrierung des Geräts für die Laufzeit-Energieverwaltung aufgehoben. Nachdem diese Funktion mit dieser GUID aufgerufen wurde, sollte der Miniporttreiber keine Power-Runtime-Funktionen aufrufen.

Synchronisierung

Diese Funktion kann über mehrere Ausführungsthreads gleichzeitig aufgerufen werden.

Das Betriebssystem garantiert, dass diese Funktion dem Synchronisierungsmodus auf Nullebene folgt, wie in Threading- und Synchronisierung zero Leveldefiniert.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 8
mindestens unterstützte Server- Windows Server 2012
Zielplattform- Desktop
Header- d3dkmddi.h (einschließlich D3dkmddi.h)
IRQL- <=DISPATCH_LEVEL

Siehe auch

DXGKARG_QUERYADAPTERINFO

DXGK_DRIVERCAPS

DxgkCbSetPowerComponentActive

DxgkCbSetPowerComponentLatency-

DxgkCbSetPowerComponentResidency

DxgkDdiAddDevice