Most platform drivers I've seen just handle the power on/offNo, I can't agree with you. This state machine provides useful framework for drivers that work with DMA and/or drivers that set their own wakeup bits etc. etc. It allows the driver essence to enter the state where it doesn't accept any new requests but is able to successfully finish the current ones.
requests. I think there's some historical reason that the
"reason" stuff exists ... but I suspect not many folk would
get unhappy if that were removed, and those calls got simplified.