diff options
author | Warner Losh <imp@FreeBSD.org> | 2007-06-16 23:33:57 +0000 |
---|---|---|
committer | Warner Losh <imp@FreeBSD.org> | 2007-06-16 23:33:57 +0000 |
commit | fab38de2d3d5c6f63f92797c00987ea93dee0579 (patch) | |
tree | 0ecb1c00437cbc8dc5702791640e735f8354804c /sys/dev/pccard | |
parent | 79be8b5082d97af4be38510d3b00ee9f8617599d (diff) | |
download | src-fab38de2d3d5c6f63f92797c00987ea93dee0579.tar.gz src-fab38de2d3d5c6f63f92797c00987ea93dee0579.zip |
only register a ithread handler if the card requests an ithread
handler.
Notes
Notes:
svn path=/head/; revision=170849
Diffstat (limited to 'sys/dev/pccard')
-rw-r--r-- | sys/dev/pccard/pccard.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/sys/dev/pccard/pccard.c b/sys/dev/pccard/pccard.c index 989203a32b4e..583b6e5ecaa5 100644 --- a/sys/dev/pccard/pccard.c +++ b/sys/dev/pccard/pccard.c @@ -1211,8 +1211,7 @@ pccard_filter(void *arg) if (doisr) { if (pf->intr_filter != NULL) return (pf->intr_filter(pf->intr_handler_arg)); - else - return (FILTER_SCHEDULE_THREAD); + return (FILTER_SCHEDULE_THREAD); } return (FILTER_STRAY); } @@ -1238,7 +1237,7 @@ pccard_setup_intr(device_t dev, device_t child, struct resource *irq, if (pf->intr_filter != NULL || pf->intr_handler != NULL) panic("Only one interrupt handler per function allowed"); err = bus_generic_setup_intr(dev, child, irq, flags, pccard_filter, - pccard_intr, pf, cookiep); + intr ? pccard_intr : NULL, pf, cookiep); if (err != 0) return (err); pf->intr_filter = filt; |