summaryrefslogtreecommitdiff
path: root/sys/dev/usb/ehci.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/usb/ehci.c')
-rw-r--r--sys/dev/usb/ehci.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/dev/usb/ehci.c b/sys/dev/usb/ehci.c
index 15c6da5a6cd..c9684125ce6 100644
--- a/sys/dev/usb/ehci.c
+++ b/sys/dev/usb/ehci.c
@@ -486,9 +486,10 @@ ehci_intr(void *v)
/* If we get an interrupt while polling, then just ignore it. */
if (sc->sc_bus.use_polling) {
-#ifdef DIAGNOSTIC
- printf("ehci_intr: ignored interrupt while polling\n");
-#endif
+ u_int32_t intrs = EHCI_STS_INTRS(EOREAD4(sc, EHCI_USBSTS));
+
+ if (intrs)
+ EOWRITE4(sc, EHCI_USBSTS, intrs); /* Acknowledge */
return (0);
}