Handle all types of interrupts when operating the uhci(4) controller in

polled mode.

PR:		kern/73000
Submitted by:	Daan Vreeken <Danovitsch at Vitsch dot net>
MFC after:	1 month
This commit is contained in:
John Baldwin 2004-10-28 20:24:50 +00:00
parent f2b9562c53
commit b7001e08ba

View File

@ -1552,7 +1552,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;
@ -1576,7 +1576,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);
}