diff options
author | hselasky <hselasky@FreeBSD.org> | 2014-08-05 18:48:12 +0000 |
---|---|---|
committer | hselasky <hselasky@FreeBSD.org> | 2014-08-05 18:48:12 +0000 |
commit | 1d56927a73b079d1d4ba65a37751cf879ca269e4 (patch) | |
tree | 174b5e89ea24a54d21d71e365679290db62f633b /sys/dev/usb/controller/at91dci_atmelarm.c | |
parent | 9513739a47728a2ab6f7b2f5938d7ca223a60413 (diff) | |
download | FreeBSD-src-1d56927a73b079d1d4ba65a37751cf879ca269e4.zip FreeBSD-src-1d56927a73b079d1d4ba65a37751cf879ca269e4.tar.gz |
- Implement fast interrupt handler to save CPU usage.
- Cleanup some register reads and writes to use existing register
access macros.
- Ensure code which only applies to the control endpoint is not run
for other endpoints in the data transfer path.
MFC after: 3 days
Diffstat (limited to 'sys/dev/usb/controller/at91dci_atmelarm.c')
-rw-r--r-- | sys/dev/usb/controller/at91dci_atmelarm.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/usb/controller/at91dci_atmelarm.c b/sys/dev/usb/controller/at91dci_atmelarm.c index cbadbb2..8ea4ef9 100644 --- a/sys/dev/usb/controller/at91dci_atmelarm.c +++ b/sys/dev/usb/controller/at91dci_atmelarm.c @@ -212,8 +212,8 @@ at91_udp_attach(device_t dev) } device_set_ivars(sc->sc_dci.sc_bus.bdev, &sc->sc_dci.sc_bus); - err = bus_setup_intr(dev, sc->sc_dci.sc_irq_res, INTR_TYPE_BIO | INTR_MPSAFE, - NULL, (driver_intr_t *)at91dci_interrupt, sc, &sc->sc_dci.sc_intr_hdl); + err = bus_setup_intr(dev, sc->sc_dci.sc_irq_res, INTR_TYPE_TTY | INTR_MPSAFE, + at91dci_filter_interrupt, at91dci_interrupt, sc, &sc->sc_dci.sc_intr_hdl); if (err) { sc->sc_dci.sc_intr_hdl = NULL; goto error; |