On Thu, 6 Jan 2005, David Brownell wrote:

> This suggests that the problem is in UHCI.  A key difference
> between having /sys/power/disk be "platform" vs "shutdown"
> is basically that BIOS treats the shutdown path as a reboot,
> while the "platform" path is a real resume.
> 
> Reboot probably means the BIOS grabs the USB keyboard
> and/or mouse in "legacy mode", so that the HCD needs to
> completely re-initialize, including handshaking with
> the BIOS to shift ownership of the HC back to Linux.
> 
> But an honest-to-gosh resume acts different.  The BIOS
> won't touch the controllers there.
> 
> Now, the HCD resume() method has to handle at least
> three different states:
> 
>   - Honest-to-gosh resume (which worked in this case)
>   - Power cycle, when BIOS ignored the HC
>   - Power cycle ... when BIOS still owns the HC 
> 
> I'm suspecting that third one isn't handled right.
> It took a while to figure out how to even _detect_
> that case with OHCI and EHCI.  And I only see two
> branches in the UHCI resume code, with nothing that
> looks obviously like that third pseudo-resume case.

                
It's worth checking this out.  Oliver, after resuming with both uhci-hcd
and ehci-hcd loaded, try doing lspci -xxx for the UHCI controller.  The
two bytes at offset 0xc0 are of interest.

Do you have Legacy USB support enabled in your BIOS?

Alan Stern




-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to