Compartilhar via


Estados de energia NFC

O driver de extensão de classe NFC serve como o proprietário da política de energia para o dispositivo, portanto, ele chama WdfDeviceInitSetPowerPolicyOwnership(TRUE) durante sua rotina de inicialização do dispositivo.

O driver NFC CX dá suporte aos estados de energia do dispositivo D0 e D3. O diagrama de estado abaixo mostra a transição entre os dois estados de energia. O dispositivo em ocioso está no estado de energia D3 em que o NFCC não tem energia. Quando o modo de rádio está ativo e todos os módulos, como NFP (publicações ativas ou assinaturas do NFP DDI), SE (elementos seguros ativos no modo de emulação do NFCSE DDI) ou SmartCard estão ativos, o estado faz a transição para D0. Durante essa transição, o estado de sondagem do dispositivo é atualizado para atender ao requisito de todos os módulos ativos.

estados de energia.

Além disso, a lógica de detecção ociosa interna do UMDF é usada para o power manager do dispositivo. Durante a inicialização, o WdfDevice recebe suas configurações de Ociosidade S0 da seguinte maneira:

WdfDeviceAssignS0IdleSettings(
    IdleCannotWakeFromS0,
    PowerDeviceD3,
    IdleTimeout,
    IdleAllowUserControl,
    WdfUseDefault
);

O IdleTimeout usa como padrão 1 segundo. Essa configuração é configurável por meio do parâmetro PowerIdleTimeout em NFC_CX_CLIENT_CONFIG. O diagrama de estado abaixo ilustra as várias transições de energia implícitas pelo uso do método de detecção ociosa do WDF.

O driver do cliente pode optar por ser o proprietário da política de energia da pilha por meio do membro IsPowerPolicyOwner da estrutura NFC_CX_CLIENT_CONFIG . Isso pode ser útil para transportes como USB em que estados adicionais de energia do dispositivo devem ser configurados.

operações de gerenciamento de energia.