Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
During enumeration, drivers report device-specific information in response to a PnP IRP_MN_QUERY_CAPABILITIES request. Along with other such information, drivers report a device's power management capabilities in the DEVICE_CAPABILITIES structure. Typically, the bus driver fills in this structure.
Higher-level drivers should set an IoCompletion routine for the query-capabilities IRP so that they can make a local copy of the structure and ensure that it contains appropriate values. As a general rule, higher-level drivers should not change these values. However, if a change is necessary, a driver can further restrict device capabilities but cannot add to them. In other words, a driver can make the rules more restrictive but cannot loosen them.
After the IRP is complete and all drivers' completion routines have been run, the structure is cached and a driver cannot change its contents.
The following members of the DEVICE_CAPABILITIES structure pertain to power management: