On 07/05/2016 02:51 PM, Mason wrote: >>> Therefore, loss of context cannot possibly explain the >>> warning I am seeing. >> >> No, but if you go all the way down to trying to suspend and the last >> step is the firmware failing, anything you have suspended needs to be >> unwinded, for your ethernet driver that means that you went through a >> successful suspend then resume cycle even if it failed down later when >> the platform attempted to suspend. > > So it is the driver's responsibility to "shut down" on resume?
It is the driver responsibility to know how to suspend and resume a device it manages, and it does that by implementing appropriate suspend/resume callbacks. > (I had the vague impression that the suspend framework would > "disable" the device through the appropriate callback.) The suspend framework knows which drivers implement suspend/resume and calls them appropriately (based on parenting/bus hierarchy), but it won't automatigally do anything because there is no such thing as magic when it comes to suspending hardware, this needs to be a controlled sequence. -- Florian