WdfPdoInitRemovePowerDependencyOnParent - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// wdfpdo.h

VOID WdfPdoInitRemovePowerDependencyOnParent(
  PWDFDEVICE_INIT DeviceInit
);
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (nf-wdfpdo-wdfpdoinitremovepowerdependencyonparent)

Description

The WdfPdoInitRemovePowerDependencyOnParent method removes the power dependency described in the Remarks section.

Parameters

DeviceInit

A pointer to a WDFDEVICE_INIT structure.

Remarks

In general, the framework requires that a parent bus driver enter the D0 device power state before a child device enters D0, and similarly that a child device exit D0 before the parent leaves D0.

However, this behavior may not be desired, in particular if the child device is a virtual device that doesn't represent any real hardware. At S0 idle power-down, the power state of the child device may not be relevant to the parent. In fact, the child device may have no reason to perform S0 idle detection. In this case, it would be better for the parent device to transition between D0 and Dx based on I/O activity, rather than being dependent on the power state of the child device.

Removing the power dependency has the following effects on the bus driver:

To remove the power dependency, the bus driver can call WdfPdoInitRemovePowerDependencyOnParent when it creates the PDO for the child device.

This function takes no action if the parent bus driver is not the power policy owner of the parent device stack.

See also