On Thu, Feb 21, 2013 at 10:46:49AM -0500, Alan Stern wrote: > On Wed, 20 Feb 2013, Sarah Sharp wrote: > > > > Of course, in your case this doesn't matter. In the memory image, the > > > timer is active. Hence it is still active when the system resumes, > > > even though xhci_suspend _was_ called. > > > > Ah, I see now. So basically any memory changes in xhci_suspend will be > > wiped on resume, but any hardware state should be saved. I was initially > > concerned about the large number of memory writes in xhci_suspend (e.g. > > zeroing the command ring), but on resume from hibernate, xhci_resume > > basically ends up wiping the entire slate and re-initializing the host. > > > > It would be nice if xhci_suspend was passed a boolean to indicate it was > > being called as part of the hibernate process. That way we could skip a > > lot of unnecessary state saving. > > That's a good idea. Do you want to implement it? All it requires is > to add an extra argument to the hc_driver.pci_suspend method, modify > the PCI-based HCDs appropriately (there aren't many), and change the > suspend-related pathways in core/hcd-pci.c. Hah, in my copious spare time, sure. :) I'll put it as a feature request in our internal tracker if you don't have time to implement it. Sarah Sharp -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html