Detecting FastStartup/Hibernate in WDF

I have an FPGA that gets externally powered and so any time we have to restart the run, we have to reboot the PC as well as the FPGA. One thing I noticed is that with FastStartup enabled in the Win10 PC I always have my driver “restored” from the previous run while the FPGA device was manually restarted by us externally. Is there a way for the driver to be notified that it is actually coming out of fast startup and not a resume? Or is it expected that the driver has logic to detect the state of the device to ascertain this condition, in its D0 Entry?

Seems like it would be nice if we got such an indication in our D0-Entry.

Reboot should not be “fast startup”. Fast startup should only happen after fake shutdown (which is equivalent to hibernation.
When you get S5 power, there is a flag which indicates whether it’s doing to restart or shutdown. But since your device power is separate from the system power, it should not matter to you.

For all purposes, fast startup is the same as resume. It’s assumed your D0 handler is supposed to completely reintialize the device.