We are making USB image capture device with a driver like UsbIntel.
I added IdleNotification routine to the driver.
A PC pluged in our device wasn't able to suspend sometimes.
My attention is in PoRequestPowerIrp call of
IdleNotificationRequestComplete.
Now our driver code is as below.
powerState.DeviceState = PowerDeviceD0;
PoRequestPowerIrp(
...
IRP_MN_SET_POWER,
powerState,
...
);
When I delete this function call PoRequestPowerIrp,
A PC pluged in our device was able to suspend always.
But My device power is still off.
In IdleNotificationRequestComplete I must know
whether our driver should go to D3 or D0.
Please help me.
Thanks in Advance,
shinji