Funzione UcmUcsiPpmStart (Ucmucsippm.h)
Indica all'estensione della classe UcmUcsiCx di avviare l'invio di richieste al driver client.
Sintassi
NTSTATUS UcmUcsiPpmStart(
[in] UCMUCSIPPM PpmObject
);
Parametri
[in] PpmObject
Handle per un oggetto Platform Policy Manager (PPM) ricevuto dal driver client nella chiamata precedente a UcmUcsiPpmCreate.
Valore restituito
Restituisce STATUS_SUCCESS se l'operazione ha esito positivo. In caso contrario, questo metodo può restituire un valore NTSTATUS appropriato.
Osservazioni
UcmUcsiPpmStart indica che il driver client è ora pronto per ricevere la richiesta dall'estensione della classe. Dopo questa chiamata, l'estensione della classe avvia os Policy Manager (OPM) e i computer di stato del gestore comandi.
Il driver client deve chiamare UcmUcsiPpmStart dopo aver chiamato UcmUcsiPpmStop per il ripristino degli errori.
Questa DDI avvia le operazioni che l'estensione della classe deve eseguire per inizializzare le macchine a stati OPM e Command Handler. Il driver client deve chiamare UcmUcsiPpmStart per notificare a UcmUcsiCx che il driver è pronto per ricevere le richieste IOCTL. È consigliabile effettuare questa chiamata dalla funzione di callback EVT_WDF_DEVICE_PREPARE_HARDWARE oppure dopo che il sistema chiama questo callback.
Il tentativo di avviare PPM dopo che è già stato avviato porta a una condizione di errore.
Dopo che il client chiama UcmUcsiPpmStart, l'estensione della classe invia un numero di comandi al firmware PPM per ottenere le funzionalità di PPM e connettore e i relativi stati. A causa di un numero elevato di interazioni con il firmware, si consiglia vivamente agli implementatori del client UcmUcsiCx di chiamare questa DDI una volta durante l'avvio e non in caso di ripresa da uno stato di basso consumo, ad esempio il callback D0Entry. Ciò vale soprattutto quando il client implementa S0 inattiva.
Fabbisogno
Requisito | Valore |
---|---|
versione minima di KMDF | 1.27 |
versione minima di UMDF | N/D |
intestazione | Ucmucsippm.h (include UcmUcsiCx.h) |
libreria | UcmUcsiCxStub.lib |
IRQL | PASSIVE_LEVEL |