[SeaBIOS] USB keyboard and mouse not detected
Kevin O'Connor
kevin at koconnor.net
Sun Dec 25 19:37:37 CET 2011
On Sun, Dec 25, 2011 at 01:19:38AM +0100, Nils wrote:
> Op zaterdag 24-12-2011 om 18:59 uur [tijdzone -0500], schreef Kevin
> O'Connor:
> > That's odd - does this happen every time? It looks like a timeout on
> > a device other than the keyboard is causing a timeout. What devices
> > do you have? (If I read the logs, SeaBIOS seems to be finding three
> > devices.) You could try unplugging everything but the keyboard just
> > to see if it will boot.
>
> It hapens every time.
> I only had an USB keyboard and an USB mouse attached.
> The following log is with only the USB keyboard attached:
Looks like it is crashing in ohci_free_pipe. Looking closely, I don't
think ohci_free_pipe() is following the spec exactly - it's modifying
the control list even when the control list may be active.
You could see what the following outputs:
--- a/src/usb-ohci.c
+++ b/src/usb-ohci.c
@@ -283,8 +283,10 @@ static void
signal_freelist(struct usb_ohci_s *cntl)
{
u32 v = readl(&cntl->regs->control);
+ dprintf(1, "signal_freelist control=%x\n", v);
if (v & OHCI_CTRL_CLE) {
writel(&cntl->regs->control, v & ~(OHCI_CTRL_CLE|OHCI_CTRL_BLE));
+ dprintf(1, "signal_freelist2 control=%x\n", readl(&cntl->regs->control));
ohci_waittick(cntl);
writel(&cntl->regs->ed_controlcurrent, 0);
writel(&cntl->regs->ed_bulkcurrent, 0);
-Kevin
More information about the SeaBIOS
mailing list