Funzionalità di alimentazione dei dispositivi per la creazione di report

Durante l'enumerazione, i driver segnalano informazioni specifiche del dispositivo in risposta a una richiesta di IRP_MN_QUERY_CAPABILITIES PnP. Oltre ad altre informazioni di questo tipo, i driver segnalano le funzionalità di risparmio energia di un dispositivo nella struttura DEVICE_CAPABILITIES . In genere, il conducente dell'autobus riempie questa struttura.

I driver di livello superiore devono impostare una routine IoCompletion per l'IRP delle funzionalità di query in modo che possano creare una copia locale della struttura e assicurarsi che contenga valori appropriati. Come regola generale, i driver di livello superiore non devono modificare questi valori. Tuttavia, se è necessaria una modifica, un driver può limitare ulteriormente le funzionalità del dispositivo, ma non può aggiungerle. In altre parole, un driver può rendere le regole più restrittive, ma non può allentarle.

Dopo aver completato l'IRP e aver eseguito tutte le routine di completamento dei driver, la struttura viene memorizzata nella cache e un driver non può modificarne il contenuto.

I membri seguenti della struttura DEVICE_CAPABILITIES riguardano il risparmio energia:

DeviceD1 e DeviceD2

WakeFromD0, WakeFromD1, WakeFromD2 e WakeFromD3

DeviceState

SystemWake

DeviceWake

D1Latency, D2Latency e D3Latency