On Wed, 30 Jun 2004, Oliver Neukum wrote:

> Am Mittwoch, 30. Juni 2004 01:57 schrieb David Brownell:
> > Alan Stern wrote:
> > 
> > > Come to think of it, there really is almost no difference between an
> > > unsolicited device reset and a power-off suspend (except that one is
> > > quicker than the other).  No difference at all as far as anything in the
> > > USB stack is concerned, it seems to me.  
> > 
> > Actually there is a difference.  One retains VBUS power, and the
> > other one doesn't -- it's pretty significant, actually.
> > 
> > For example, a bus-powered device would lose its firmware updates
> > when VBUS is lost, and need much more re-initialization (commonly
> > a couple more enumerations in addition to one or more firmware
> > updates) before it can even get to the same "device reset" stage.

Ooh, yes, I had forgotten about that.

> That is not a fundamental difference. The reset logic also has a device
> morphed code path.

But it does mean that it's effectively impossible to do a power-off 
resume on such a device.  When the power gets restored the device will 
have "morphed" and so the hub driver will call usb_disconnect().  Perhaps 
you believe this is acceptable; I have no opinion one way or the other.

USB recognizes three different power states: power-on, suspended, and
power-off.  The question is: Should it be possible to use the power-off
state as a surrogate for an extremely low-power suspend state (like
suspend-to-disk)?  Unfortunately the current API doesn't allow for such
distinctions; the suspend() method in usb_driver doesn't include an
argument to indicate which sort of suspend is about to occur.  Oddly
enough, even PCI makes it difficult to tell since the two states are both
level-3 suspends (D3hot vs. D3cold).

Alan Stern



-------------------------------------------------------
This SF.Net email sponsored by Black Hat Briefings & Training.
Attend Black Hat Briefings & Training, Las Vegas July 24-29 - 
digital self defense, top technical experts, no vendor pitches, 
unmatched networking opportunities. Visit www.blackhat.com
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to