NonPnPDrvPowerPolicyOwnerAPI rule (kmdf)
The NonPnPDrvPowerPolicyOwnerAPI rule specifies that non-PnP drivers cannot call certain DDIs related to power management.
If the driver does not register the EvtDriverDeviceAdd callback function, the following DDIs cannot be called:
WdfDeviceAssignS0IdleSettings WdfDeviceInitSetPowerPolicyEventCallbacks WdfDeviceAssignSxWakeSettings WdfDeviceGetDevicePowerState WdfDeviceGetDevicePowerPolicyState WdfDeviceInitSetPnpPowerEventCallbacks WdfDeviceInitSetPowerPolicyOwnership WdfDeviceInitRegisterPowerStateChangeCallback WdfDeviceInitRegisterPowerPolicyStateChangeCallback WdfDeviceInitSetPowerNotPageable WdfDeviceInitSetPowerPageable WdfDeviceInitSetPowerInrush WdfDeviceSetPowerCapabilities
Driver model: KMDF
How to test
At compile time |
---|
Run Static Driver Verifier and specify the NonPnPDrvPowerPolicyOwnerAPI rule. Use the following steps to run an analysis of your code:
For more information, see Using Static Driver Verifier to Find Defects in Drivers. |