Função UcmUcsiPpmStart (Ucmucsippm.h)
Instrui a extensão de classe UcmUcsiCx a começar a enviar solicitações para o driver cliente.
Sintaxe
NTSTATUS UcmUcsiPpmStart(
[in] UCMUCSIPPM PpmObject
);
Parâmetros
[in] PpmObject
Um identificador para um objeto PPM (Platform Policy Manager) que o driver cliente recebeu na chamada anterior para UcmUcsiPpmCreate.
Valor de retorno
Retorna STATUS_SUCCESS se a operação for bem-sucedida. Caso contrário, esse método poderá retornar um valor de NTSTATUS apropriado.
Observações
ucmUcsiPpmStart indica que o driver cliente agora está pronto para receber a solicitação da extensão de classe. Após essa chamada, a extensão de classe inicia os computadores de estado OPM (Gerenciador de Política do SISTEMA Operacional) e manipulador de comando.
O driver cliente deve chamar UcmUcsiPpmStart depois de ter chamado UcmUcsiPpmStop para recuperação de erro.
Essa DDI inicia as operações que a extensão de classe precisa executar para inicializar os computadores de estado do OPM e do Manipulador de Comandos. O driver cliente deve chamar UcmUcsiPpmStart para notificar o UcmUcsiCx de que o driver está pronto para receber as solicitações IOCTL. Recomendamos que você faça essa chamada na função de retorno de chamada EVT_WDF_DEVICE_PREPARE_HARDWARE ou depois que o sistema chamar esse retorno de chamada.
A tentativa de iniciar o PPM depois que ele já tiver iniciado leva a uma condição de erro.
Depois que o cliente chama ucmUcsiPpmStart, a extensão de classe envia uma série de comandos para o firmware PPM a fim de obter as funcionalidades do PPM e do conector e seus status. Devido a um alto número de interações com o firmware, é altamente recomendável que os implementadores de cliente ucmUcsiCx chamem essa DDI uma vez durante a inicialização e não no currículo de um estado de baixa potência, como o retorno de chamada D0Entry. Isso é especialmente verdadeiro quando o cliente implementa a idling S0.
Requisitos
Requisito | Valor |
---|---|
versão mínima do KMDF | 1.27 |
versão mínima do UMDF | N/A |
cabeçalho | Ucmucsippm.h (inclua UcmUcsiCx.h) |
biblioteca | UcmUcsiCxStub.lib |
IRQL | PASSIVE_LEVEL |