Compartilhar via


DXGKDDI_CONTROLINTERRUPT3 função de retorno de chamada (d3dkmddi.h)

A função DxgkDdi_ControlInterrupt3 habilita ou desabilita o tipo de interrupção fornecido para o VidPnSourceId especificado no hardware gráfico.

Sintaxe

DXGKDDI_CONTROLINTERRUPT3 DxgkddiControlinterrupt3;

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

Parâmetros

[in] hAdapter

Um identificador para o objeto do adaptador para a GPU (unidade de processamento de elementos gráficos). O driver retornou esse identificador no parâmetro MiniportDeviceContext de uma chamada para sua função DxgkDdiAddDevice.

[in] InterruptControl

Uma estrutura DXGKARG_CONTROLINTERRUPT3 que fornece o tipo de interrupção, o estado VSYNC e o VidPnSourceId.

Valor de retorno

DxgkDdi_ControlInterrupt3 retorna um dos seguintes valores:

Código de retorno descrição
STATUS_SUCCESS O tipo de interrupção foi habilitado ou desabilitado com êxito no hardware gráfico.
STATUS_NOT_IMPLEMENTED DxgkDdi_ControlInterrupt3 não dá suporte à habilitação ou desabilitação do tipo de interrupção especificado.

Observações

O controle VSync é usado no WDDM para alternar VSync ON e OFF para equilibrar entre o uso ativo de uma origem VidPn por um cenário e economia de energia obtida desativando o VSync. Em geral, o sistema operacional controla a lógica de quando o VSync deve permanecer ATIVADO e DESATIVADO e notifica o KMD (Driver de Modo kernel IHV) por meio de uma chamada DDI. O KMD executa a solicitação. Antes do Windows 10, versão 2004 (WDDM 2.7), a granularidade do controle VSync é por adaptador; ou seja, para um determinado adaptador, o controle VSync aplica-se a cada fonte VidPn do adaptador. Por exemplo, considere um adaptador que tenha duas fontes VidPn conectadas a duas saídas diferentes. Se uma saída não tiver nenhuma atividade e nenhum consumidor para VSync/VBlank nela, haverá apenas uma opção: o sistema operacional precisará manter o VSync ON para a saída inativa.

Para dispositivos portáteis de tela dupla, manter o VSync ATIVADO para uma tela quando não for necessário tem custos de energia significativos. Ele requer que o link de exibição/controlador de exibição permaneça ativo e impede que os painéis que dão suporte à auto-atualização entrem em um modo de auto-atualização de baixa frequência e baixa potência. No Windows 10, versão 2004 e versões posteriores, DxgkDdiControlInterrupt3 permite um controle VSync de granularidade mais fino de cada fonte VidPn de um adaptador.

Apenas um dos DxgkDdiControlInterrupt3 ou DxgkDdi_ControlInterrupt2 será usado pelo sistema operacional durante o tempo de vida de um adaptador.

Os drivers WDDM 2.7 que não implementam DxgkDdi_ControlInterrupt3 estão optando por não ter controle VidPn VSync independente e o sistema operacional chamará apenas DxgkDdi_ControlInterrupt2. O recurso DXGK_DRIVERCAPS–>IndependentVidPnVSync deve ser 0 em drivers que não dão suporte a DxgkDdi_ControlInterrupt3; caso contrário, o sistema operacional falhará na inicialização do adaptador. Se um driver implementar DxgkDdi_ControlInterrupt3, a funcionalidade poderá ser definida como 0 ou 1 para indicar Per-VidPn suporte.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 10, versão 2004
cabeçalho d3dkmddi.h

Consulte também

DXGKARG_CONTROLINTERRUPT2

DXGK_DRIVERCAPS

DXGKARG_CONTROLINTERRUPT3

DxgkDdi_ControlInterrupt2