Handling a System Set-Power IRP in a Bus Driver

When a bus driver receives a system set-power IRP, it must take the following steps:

  1. Call PoStartNextPowerIrp to start the next power IRP. (Windows Server 2003, Windows XP, and Windows 2000 only.)

  2. Set Irp->IoStatus.Status to STATUS_SUCCESS. The driver cannot fail a system set-power IRP.

  3. Call IoCompleteRequest, specifying IO_NO_INCREMENT, to complete the IRP.

The bus driver does not change device power settings until it receives a power IRP that requests a device power state.