Handle all types of interrupts when operating the uhci(4) controller in
authorDavid Rhodus <drhodus@dragonflybsd.org>
Sun, 5 Dec 2004 04:24:42 +0000 (04:24 +0000)
committerDavid Rhodus <drhodus@dragonflybsd.org>
Sun, 5 Dec 2004 04:24:42 +0000 (04:24 +0000)
polled mode.

from fbsd pr: 73000

sys/bus/usb/uhci.c

index 3249546..bb885fd 100644 (file)
@@ -2,7 +2,7 @@
  * $NetBSD: uhci.c,v 1.80 2000/01/19 01:16:38 augustss Exp $
  * $NetBSD: uhci.c,v 1.170 2003/02/19 01:35:04 augustss Exp $
  * $FreeBSD: src/sys/dev/usb/uhci.c,v 1.149 2003/11/10 00:08:41 joe Exp $
- * $DragonFly: src/sys/bus/usb/uhci.c,v 1.10 2004/03/12 03:43:06 dillon Exp $
+ * $DragonFly: src/sys/bus/usb/uhci.c,v 1.11 2004/12/05 04:24:42 drhodus Exp $
  */
 
 /*     Also already incorporated from NetBSD:
@@ -1538,7 +1538,7 @@ uhci_waitintr(uhci_softc_t *sc, usbd_xfer_handle xfer)
        for (; timo >= 0; timo--) {
                usb_delay_ms(&sc->sc_bus, 1);
                DPRINTFN(20,("uhci_waitintr: 0x%04x\n", UREAD2(sc, UHCI_STS)));
-               if (UREAD2(sc, UHCI_STS) & UHCI_STS_USBINT)
+               if (UREAD2(sc, UHCI_STS) & UHCI_STS_ALLINTRS)
                        uhci_intr1(sc);
                if (xfer->status != USBD_IN_PROGRESS)
                        return;
@@ -1562,7 +1562,7 @@ uhci_poll(struct usbd_bus *bus)
 {
        uhci_softc_t *sc = (uhci_softc_t *)bus;
 
-       if (UREAD2(sc, UHCI_STS) & UHCI_STS_USBINT)
+       if (UREAD2(sc, UHCI_STS) & UHCI_STS_ALLINTRS)
                uhci_intr1(sc);
 }