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
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel