Propriedade da Política de Energia

Para cada dispositivo, um (e apenas um) dos drivers do dispositivo devem ser o proprietário da política de energia do dispositivo. O proprietário da política de energia determina o estado de energia do dispositivo apropriado para um dispositivo e envia solicitações para a pilha de driver do dispositivo sempre que o estado de energia do dispositivo deve ser alterado.

Os drivers baseados em estrutura não contêm código que solicita alterações no estado de energia de um dispositivo, pois a estrutura fornece esse código. Por padrão, sempre que o sistema entra em um estado de suspensão do sistema, a estrutura solicita ao driver que o barramento do dispositivo reduza o estado de energia do dispositivo para D3. (O driver pode alterar o comportamento padrão para que a estrutura defina o estado de suspensão do dispositivo como D1 ou D2, se o dispositivo fornecer recursos de ativação.) Quando a energia do sistema retorna ao estado de trabalho (S0), a estrutura solicita que o driver de barramento restaure seu dispositivo para o estado de trabalho (D0).

O proprietário da política de energia também é responsável por habilitar e desabilitar os seguintes recursos de dispositivo:

  • A capacidade do dispositivo de inserir um estado de baixa potência (em suspensão) quando ele está ocioso e o sistema permanece em seu estado de trabalho (S0)

  • A capacidade do dispositivo de se ativar de um estado de suspensão ao detectar um evento externo

  • A capacidade do dispositivo de ativar todo o sistema de um estado de suspensão do sistema ao detectar um evento externo

Se o dispositivo der suporte a esses recursos ociosos de ativação e de ativação do sistema, o proprietário da política de energia também poderá chamar WdfDeviceInitSetPowerPolicyEventCallbacks para registrar um conjunto de funções de retorno de chamada de evento de política de energia.

Por padrão, para drivers baseados em estrutura, o driver de função do dispositivo é o proprietário da política de energia. (Se não houver nenhum driver de função e o motorista do ônibus tiver chamado WdfPdoInitAssignRawDevice, o motorista do ônibus será o proprietário da política de energia). Se você quiser alterar o proprietário da política de energia para uma pilha de driver, o proprietário da política de energia padrão deverá chamar WdfDeviceInitSetPowerPolicyOwnership para desabilitar a propriedade e o driver que será o proprietário da política de energia deverá chamar WdfDeviceInitSetPowerPolicyOwnership para habilitar a propriedade.

A estrutura faz o seguinte trabalho para o proprietário da política de energia:

  • Ele lida com toda a comunicação de política de energia entre o driver e o restante da pilha de driver. Por exemplo, o driver não precisa solicitar que o motorista do ônibus altere o estado de energia do dispositivo, pois a estrutura faz a solicitação.

  • Se o driver registrar funções de retorno de chamada de evento de política de energia, a estrutura as chamará quando for hora de habilitar ou desabilitar a capacidade do dispositivo de se ativar de um estado de baixa potência.

  • Se o driver permitir que os usuários modifiquem as configurações ociosas e de ativação, a estrutura fornece uma interface do usuário na forma de uma página de folha de propriedades que Gerenciador de Dispositivos é exibida.

Para obter mais informações sobre as responsabilidades do proprietário da política de energia, consulte os seguintes tópicos: