Re: [PATCH] xhci - correct comp_mode_recovery_timer on return from hibernate

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 02/21/2013 10:46 AM, 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.

Alan Stern


I have a new version of the patch incorporating Alan's explanation, but
I'll wait to see how Sarah responds to Alan's suggestion. While Alan's
is a more turbulent solution, it is a more correct one.

--
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


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux