Método IPowerNotify::P owerChangeNotify (portcls.h)
O PowerChangeNotify
método notifica o driver de miniporto de alterações no estado de energia.
Sintaxe
void PowerChangeNotify(
[in] POWER_STATE PowerState
);
Parâmetros
[in] PowerState
Especifica o estado de energia atual. Esse parâmetro é uma união do tipo POWER_STATE. O novo estado de energia (PowerState.DeviceState) pode ser um dos valores de enumeração DEVICE_POWER_STATE listados em IAdapterPowerManagement::P owerChangeState.
Retornar valor
Nenhum
Comentários
O driver do sistema PortCls chama o método do driver de PowerChangeNotify
miniport para notificá-lo sobre as alterações no estado de energia. A finalidade dessa chamada é dar ao driver de miniporto a oportunidade de salvar qualquer contexto específico de hardware pouco antes de desligar ou restaurar um contexto salvo anteriormente logo após a habilitação.
O driver de miniporte pode gravar nos registros de hardware ou na memória a bordo durante a PowerChangeNotify
chamada. Se o sistema estiver desligando (fazendo uma transição de estado para longe do PowerDeviceD0), o driver do sistema PortCls chamará PowerChangeNotify
antes de chamar IAdapterPowerManagement::P owerChangeState e depois de pausar os fluxos de dados de áudio ativos. Isso dá ao driver de miniporto a oportunidade de salvar qualquer contexto de dispositivo específico de hardware antes que o dispositivo desligue. Por exemplo, um driver de miniporto WavePci pode precisar salvar seus registros de DMA se a desligar ocorrer durante uma sequência de transferências de dados de dispersão/coleta. Se o sistema estiver habilitando (fazendo uma transição de estado para PowerDeviceD0), PortCls chamará PowerChangeNotify
depois de chamar PowerChangeState e antes de reiniciar os fluxos de dados de áudio pausados. Isso dá ao driver de miniporto a oportunidade de restaurar um contexto salvo anteriormente depois que o dispositivo for habilitado.
O código para esse método deve residir na memória paginada.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Cabeçalho | portcls.h (inclua Portcls.h) |