summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorkevlo <kevlo@FreeBSD.org>2008-06-10 06:06:15 +0000
committerkevlo <kevlo@FreeBSD.org>2008-06-10 06:06:15 +0000
commitf0118f1998cf712a3bf3c0348f064299c5cbb80c (patch)
tree88394c43769609358df27f835c75929ebc7ad147 /sys
parentda7b8050f1f1b14af8d8ea7ccfb2dbeb953e8403 (diff)
downloadFreeBSD-src-f0118f1998cf712a3bf3c0348f064299c5cbb80c.zip
FreeBSD-src-f0118f1998cf712a3bf3c0348f064299c5cbb80c.tar.gz
Add the pxa_teardown_intr() bus method function to de-associate the
interrupt handler
Diffstat (limited to 'sys')
-rw-r--r--sys/arm/xscale/pxa/pxa_obio.c27
1 files changed, 17 insertions, 10 deletions
diff --git a/sys/arm/xscale/pxa/pxa_obio.c b/sys/arm/xscale/pxa/pxa_obio.c
index 00812f4..e2f8166 100644
--- a/sys/arm/xscale/pxa/pxa_obio.c
+++ b/sys/arm/xscale/pxa/pxa_obio.c
@@ -183,6 +183,12 @@ pxa_setup_intr(device_t dev, device_t child, struct resource *irq, int flags,
}
static int
+pxa_teardown_intr(device_t dev, device_t child, struct resource *ires,
+ void *cookie)
+{
+ return (BUS_TEARDOWN_INTR(device_get_parent(dev), child, ires, cookie));}
+
+static int
pxa_read_ivar(device_t dev, device_t child, int which, uintptr_t *result)
{
struct obio_device *od;
@@ -313,19 +319,20 @@ pxa_activate_resource(device_t dev, device_t child, int type, int rid,
}
static device_method_t pxa_methods[] = {
- DEVMETHOD(device_identify, pxa_identify),
- DEVMETHOD(device_probe, pxa_probe),
- DEVMETHOD(device_attach, pxa_attach),
+ DEVMETHOD(device_identify, pxa_identify),
+ DEVMETHOD(device_probe, pxa_probe),
+ DEVMETHOD(device_attach, pxa_attach),
- DEVMETHOD(bus_print_child, pxa_print_child),
+ DEVMETHOD(bus_print_child, pxa_print_child),
- DEVMETHOD(bus_read_ivar, pxa_read_ivar),
- DEVMETHOD(bus_setup_intr, pxa_setup_intr),
+ DEVMETHOD(bus_read_ivar, pxa_read_ivar),
+ DEVMETHOD(bus_setup_intr, pxa_setup_intr),
+ DEVMETHOD(bus_teardown_intr, pxa_teardown_intr),
- DEVMETHOD(bus_get_resource_list, pxa_get_resource_list),
- DEVMETHOD(bus_alloc_resource, pxa_alloc_resource),
- DEVMETHOD(bus_release_resource, pxa_release_resource),
- DEVMETHOD(bus_activate_resource, pxa_activate_resource),
+ DEVMETHOD(bus_get_resource_list, pxa_get_resource_list),
+ DEVMETHOD(bus_alloc_resource, pxa_alloc_resource),
+ DEVMETHOD(bus_release_resource, pxa_release_resource),
+ DEVMETHOD(bus_activate_resource, pxa_activate_resource),
{0, 0}
};
OpenPOWER on IntegriCloud