[SeaBIOS] USB1 devices and CONFIG_THREADS
kevin at koconnor.net
Thu Dec 5 17:59:58 CET 2013
On Thu, Dec 05, 2013 at 10:47:21AM -0500, Kevin O'Connor wrote:
> On Thu, Dec 05, 2013 at 02:03:23PM +0000, David Woodhouse wrote:
> > Just debugged the following:
> > ehci_setup() happens. Starts a thread to probe its ports...
> > ohci_setup() happens. Starts a thread to probe its ports...
> > OHCI probes port zero, decides there's nothing there.
> > EHCI probes port zero, decides there's a USB1 device there and gives it
> > away to OHCI... which is never going to see it.
> What is supposed to happen, is that usb_setup() sees that there is an
> ehci device and only runs ehci_setup() on the whole device.
> ohci_setup is not supposed to run from usb_setup() for that device at
> all. Then, if the ehci code finds a legacy device, it runs
> ohci_setup() from ehci_note_port() after it has configured all the
> legacy devices into legacy mode.
> This certainly used to work, I'll take a look.
I reviewed the code and booted my e350m1 board with an OHCI keyboard
and I can't reproduce your issue. Can you post the logs (with debug
level 8) of the failure you are seeing?
More information about the SeaBIOS