Compartir a través de


DXGKDDI_CONTROLINTERRUPT3 función de devolución de llamada (d3dkmddi.h)

La función DxgkDdi_ControlInterrupt3 habilita o deshabilita el tipo de interrupción especificado para el VidPnSourceId especificado en el hardware gráfico.

Sintaxis

DXGKDDI_CONTROLINTERRUPT3 DxgkddiControlinterrupt3;

NTSTATUS DxgkddiControlinterrupt3(
  [in] IN_CONST_HANDLE hAdapter,
  [in] IN_CONST_PDXGKARG_CONTROLINTERRUPT3 InterruptControl
)
{...}

Parámetros

[in] hAdapter

Identificador del objeto de adaptador para la unidad de procesamiento de gráficos (GPU). El controlador devolvió este identificador en el parámetro MiniportDeviceContext de una llamada a su función DxgkDdiAddDevice.

[in] InterruptControl

Estructura DXGKARG_CONTROLINTERRUPT3 que proporciona el tipo de interrupción, el estado VSYNC y VidPnSourceId.

Valor devuelto

DxgkDdi_ControlInterrupt3 devuelve uno de los siguientes valores:

código de retorno descripción
STATUS_SUCCESS El tipo de interrupción se ha habilitado o deshabilitado correctamente en el hardware gráfico.
STATUS_NOT_IMPLEMENTED DxgkDdi_ControlInterrupt3 no admite habilitar ni deshabilitar el tipo de interrupción especificado.

Observaciones

El control VSync se usa en WDDM para alternar VSync ON y OFF para equilibrar el uso activo de un origen VidPn por un escenario y el ahorro de energía logrado al desactivar VSync. En general, el sistema operativo controla la lógica de cuándo VSync debe permanecer activado y desactivado y notifica al controlador del modo kernel (KMD) de IHV a través de una llamada DDI. El KMD ejecuta la solicitud. Antes de Windows 10, versión 2004 (WDDM 2.7), la granularidad del control VSync es por adaptador; es decir, para un adaptador determinado, el control VSync se aplica a cada origen vidPn del adaptador. Por ejemplo, considere un adaptador que tenga dos orígenes VidPn conectados a dos salidas diferentes. Si una salida no tiene actividad y ningún consumidor para VSync/VBlank en ella, solo hay una opción: el sistema operativo tiene que mantener VSync ON para la salida inactiva.

Para dispositivos portátiles de doble pantalla, mantener VSync ON para una pantalla cuando no es necesario tiene costos de energía significativos. Requiere que el controlador de pantalla o el vínculo de pantalla permanezcan activos e impide que los paneles que admiten la actualización automática entren en un modo de actualización automática de baja frecuencia y bajo consumo de energía. En Windows 10, versión 2004 y versiones posteriores, DxgkDdiControlInterrupt3 permite un control VSync de granularidad más preciso de cada origen vidPn de un adaptador.

El sistema operativo usará solo uno de DxgkDdiControlInterrupt3 o DxgkDdi_ControlInterrupt2 durante la vigencia de un adaptador.

Los controladores WDDM 2.7 que no implementan DxgkDdi_ControlInterrupt3 están optando por no participar en el control VSync de VidPn independiente y el sistema operativo solo llamará a DxgkDdi_ControlInterrupt2. La funcionalidad DXGK_DRIVERCAPS->IndependentVidPnVSync debe ser 0 en controladores que no admiten DxgkDdi_ControlInterrupt3; De lo contrario, el sistema operativo producirá un error en la inicialización del adaptador. Si un controlador implementa DxgkDdi_ControlInterrupt3, la funcionalidad se puede establecer en 0 o 1 para indicar Per-VidPn compatibilidad.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 10, versión 2004
encabezado de d3dkmddi.h

Consulte también

DXGKARG_CONTROLINTERRUPT2

DXGK_DRIVERCAPS

DXGKARG_CONTROLINTERRUPT3

DxgkDdi_ControlInterrupt2