USB - Formalize polling mode and fix ohci interrupt storm
authorMatthew Dillon <dillon@apollo.backplane.com>
Mon, 7 Sep 2009 06:05:09 +0000 (23:05 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Mon, 7 Sep 2009 06:05:09 +0000 (23:05 -0700)
commit727afe75ef752829158e906c5b86991478fece53
tree11796a7f4f96f1180f0f02a444d046273f9fb0de
parentb7feb10e74d528c0e7e81c343e9dd66677e6980d
USB - Formalize polling mode and fix ohci interrupt storm

* Formalize entering and leaving polling mode via usb_set_polling().

* Call bus->methods->do_poll() once when leaving polling mode to
  catch-up any lost interrupts.

* OHCI now acknowledges interrupts from the interrupt handler when
  it finds itself in polling mode to prevent the interrupt from
  storming.  The interrupts are recorded for later use.
sys/bus/usb/ehci.c
sys/bus/usb/ohci.c
sys/bus/usb/ohcivar.h
sys/bus/usb/uhci.c
sys/bus/usb/usb.c
sys/bus/usb/usbdi.c
sys/bus/usb/usbdi.h
sys/bus/usb/usbdivar.h
sys/dev/usbmisc/ukbd/ukbd.c
sys/dev/usbmisc/umass/umass.c