aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/pccard
diff options
context:
space:
mode:
authorWarner Losh <imp@FreeBSD.org>2007-06-16 23:33:57 +0000
committerWarner Losh <imp@FreeBSD.org>2007-06-16 23:33:57 +0000
commitfab38de2d3d5c6f63f92797c00987ea93dee0579 (patch)
tree0ecb1c00437cbc8dc5702791640e735f8354804c /sys/dev/pccard
parent79be8b5082d97af4be38510d3b00ee9f8617599d (diff)
downloadsrc-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.c5
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;