Função de retorno de chamada DXGKDDIPOWERRUNTIMECONTROLREQUEST (d3dkmddi.h)
Chamado pelo PEP (Power Engine Plug-in) para trocar informações com o driver de miniporto de exibição. Também chamado pelo subsistema de kernel de elementos gráficos do Microsoft DirectX para notificar o driver de miniporto de exibição sobre determinados eventos.
Sintaxe
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
Um identificador para um bloco de contexto associado a um adaptador de exibição. A função DxgkDdiAddDevice do driver de miniporto de exibição anteriormente forneceu esse identificador para o subsistema de kernel de elementos gráficos DirectX.
PowerControlCode
Um ponteiro para um GUID que define o significado da solicitação de controle do PEP. Para obter mais informações, consulte Comentários.
InBuffer
Um ponteiro opcional para um buffer de entrada.
InBufferSize
O tamanho, em bytes, do buffer que InBuffer aponta.
OutBuffer
Um ponteiro opcional para um buffer de saída.
OutBufferSize
O tamanho, em bytes, do buffer para o qual o OutBuffer aponta.
BytesReturned
Um ponteiro opcional para um buffer que contém o número de bytes que são gravados pelo driver de miniporto de exibição no buffer de saída.
Valor de retorno
Retorna STATUS_SUCCESS se tiver êxito. Caso contrário, ele retornará um dos códigos de erro definidos em Ntstatus.h.
Observações
O sistema operacional chama DxgkDdiPowerRuntimeControlRequest somente se o driver de miniporto de exibição indicar suporte definindo DXGK_DRIVERCAPS.supportRuntimePowerManagement para true.
GUIDs usados pelo PEP (Power Engine Plug-in)
O PEP usa os seguintes GUIDs definidos em D3dkmddi.h para trocar informações com o driver de miniporto de exibição. O driver de porta de exibição usa esses GUIDs para emitir eventos de ETW (Rastreamento de Eventos para Windows), que são úteis para criar o perfil de problemas de desempenho do driver.- GUID_DXGKDDI_POWER_VOLTAGE_UP
- Aumente a tensão.
- GUID_DXGKDDI_POWER_VOLTAGE_DOWN
- Diminua a tensão.
- GUID_DXGKDDI_POWER_VOLTAGE
- Altere a tensão, mas o driver não sabe se a alteração é um aumento ou diminuição.
- GUID_DXGKDDI_POWER_CLOCK_UP
- Aumente a configuração do relógio.
- GUID_DXGKDDI_POWER_CLOCK_DOWN
- Diminua a configuração do relógio.
- GUID_DXGKDDI_POWER_CLOCK
- Altere a configuração do relógio, mas o driver não sabe se a alteração é um aumento ou diminuição.
- GUID_DXGKDDI_POWER_BANDWIDTH_UP
- Aumente a largura de banda.
- GUID_DXGKDDI_POWER_BANDWIDTH_DOWN
- Diminua a largura de banda.
- GUID_DXGKDDI_POWER_BANDWIDTH
- Altere a largura de banda, mas o driver não sabe se a alteração é um aumento ou diminuição.
GUIDs usados pelo subsistema de kernel de elementos gráficos DirectX
O subsistema de kernel de elementos gráficos DirectX usa os GUIDs a seguir definidos em D3dkmddi.h para notificar o driver de miniporto de exibição sobre determinados eventos.- GUID_DXGKDDI_POWER_MANAGEMENT_PREPARE_TO_START
- Usado após o subsistema de kernel de elementos gráficos DirectX registrar o dispositivo para gerenciamento de energia de runtime, mas antes do dispositivo ser iniciado. Depois que essa função tiver sido chamada com esse GUID, o driver de miniporto de exibição poderá chamar estas funções:
- GUID_DXGKDDI_POWER_MANAGEMENT_STARTED
- Usado depois que o subsistema de kernel de elementos gráficos DirectX inicia o gerenciamento de energia do runtime. Depois que essa função tiver sido chamada com esse GUID, o driver de miniporto de exibição poderá chamar qualquer função de power runtime.
- GUID_DXGKDDI_POWER_MANAGEMENT_STOPPED
- Usado imediatamente antes que o subsistema de kernel de elementos gráficos DirectX cancele o registro do dispositivo para gerenciamento de energia de runtime. Depois que essa função tiver sido chamada com esse GUID, o driver de miniporto de exibição não deverá chamar nenhuma função de power runtime.
Sincronização de
Essa função pode ser chamada simultaneamente de vários threads de execução.O sistema operacional garante que essa função siga o modo de sincronização de nível zero, conforme definido em de Nível Zero de Threading e Sincronização.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 8 |
servidor com suporte mínimo | Windows Server 2012 |
da Plataforma de Destino | Área de trabalho |
cabeçalho | d3dkmddi.h (inclua D3dkmddi.h) |
IRQL | <=DISPATCH_LEVEL |
Consulte também
DxgkCbSetPowerComponentLatency