Compartir a través de


Función de devolución de llamada DXGKDDIPOWERRUNTIMECONTROLREQUEST (d3dkmddi.h)

Llamado por el complemento power Engine (PEP) para intercambiar información con el controlador de minipuerto de pantalla. También llamado por el subsistema del kernel de gráficos de Microsoft DirectX para notificar al controlador de minipuerto de pantalla sobre determinados eventos.

Sintaxis

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
)
{...}

Parámetros

DriverContext

Identificador de un bloque de contexto asociado a un adaptador de pantalla. La función DxgkDdiAddDevice del controlador de miniporte de pantalla proporcionó anteriormente este identificador al subsistema del kernel de gráficos de DirectX.

PowerControlCode

Puntero a un GUID que define el significado de la solicitud de control del PEP. Para obtener más información, vea la sección Comentarios.

InBuffer

Puntero opcional a un búfer de entrada.

InBufferSize

Tamaño, en bytes, del búfer al que apunta InBuffer .

OutBuffer

Puntero opcional a un búfer de salida.

OutBufferSize

Tamaño, en bytes, del búfer al que apunta OutBuffer .

BytesReturned

Puntero opcional a un búfer que contiene el número de bytes escritos por el controlador de miniporte para mostrar en el búfer de salida.

Valor devuelto

Devuelve STATUS_SUCCESS si se realiza correctamente. De lo contrario, devuelve uno de los códigos de error definidos en Ntstatus.h.

Comentarios

El sistema operativo llama a DxgkDdiPowerRuntimeControlRequest solo si el controlador de miniporte de pantalla indica compatibilidad estableciendo DXGK_DRIVERCAPS. SupportRuntimePowerManagement en TRUE.

GUID usados por el complemento power Engine (PEP)

El PEP usa los siguientes GUID definidos en D3dkmddi.h para intercambiar información con el controlador de minipuerto de pantalla. El controlador de puerto de visualización usa estos GUID para emitir eventos de seguimiento de eventos para Windows (ETW), que son útiles para generar perfiles de problemas de rendimiento del controlador.
GUID_DXGKDDI_POWER_VOLTAGE_UP
Aumente el voltaje.
GUID_DXGKDDI_POWER_VOLTAGE_DOWN
Disminuir el voltaje.
GUID_DXGKDDI_POWER_VOLTAGE
Cambie el voltaje, pero el controlador no sabe si el cambio es un aumento o disminución.
GUID_DXGKDDI_POWER_CLOCK_UP
Aumente la configuración del reloj.
GUID_DXGKDDI_POWER_CLOCK_DOWN
Reduzca la configuración del reloj.
GUID_DXGKDDI_POWER_CLOCK
Cambie la configuración del reloj, pero el controlador no sabe si el cambio es un aumento o disminución.
GUID_DXGKDDI_POWER_BANDWIDTH_UP
Aumentar el ancho de banda.
GUID_DXGKDDI_POWER_BANDWIDTH_DOWN
Reduzca el ancho de banda.
GUID_DXGKDDI_POWER_BANDWIDTH
Cambie el ancho de banda, pero el controlador no sabe si el cambio es un aumento o una disminución.

GUID usados por el subsistema del kernel de gráficos de DirectX

El subsistema del kernel de gráficos de DirectX usa los siguientes GUID definidos en D3dkmddi.h para notificar al controlador de minipuerto de pantalla sobre determinados eventos.
GUID_DXGKDDI_POWER_MANAGEMENT_PREPARE_TO_START
Se usa después de que el subsistema del kernel de gráficos de DirectX registre el dispositivo para la administración de energía en tiempo de ejecución, pero antes de que se inicie el dispositivo. Después de llamar a esta función con este GUID, el controlador de minipuerto de pantalla puede llamar a estas funciones:
GUID_DXGKDDI_POWER_MANAGEMENT_STARTED
Se usa después de que el subsistema del kernel de gráficos de DirectX inicie la administración de energía en tiempo de ejecución. Después de llamar a esta función con este GUID, el controlador de minipuerto de pantalla puede llamar a cualquier función de Power Runtime.
GUID_DXGKDDI_POWER_MANAGEMENT_STOPPED
Se usa inmediatamente antes de que el subsistema del kernel de gráficos de DirectX anule el registro del dispositivo para la administración de energía en tiempo de ejecución. Después de llamar a esta función con este GUID, el controlador de minipuerto de pantalla no debe llamar a ninguna función de Power Runtime.

Sincronización

Esta función se puede llamar simultáneamente desde varios subprocesos de ejecución.

El sistema operativo garantiza que esta función sigue el modo de sincronización de nivel cero tal y como se define en Subprocesos y Nivel cero de sincronización.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 8
Servidor mínimo compatible Windows Server 2012
Plataforma de destino Escritorio
Encabezado d3dkmddi.h (incluye D3dkmddi.h)
IRQL <=DISPATCH_LEVEL

Consulte también

DXGKARG_QUERYADAPTERINFO

DXGK_DRIVERCAPS

DxgkCbSetPowerComponentActive

DxgkCbSetPowerComponentLatency

DxgkCbSetPowerComponentResidency

DxgkDdiAddDevice