summaryrefslogtreecommitdiffstats
path: root/sys/arm/sa11x0
diff options
context:
space:
mode:
authorpiso <piso@FreeBSD.org>2007-02-23 12:19:07 +0000
committerpiso <piso@FreeBSD.org>2007-02-23 12:19:07 +0000
commit6a2ffa86e5b748ba71e36d37462a936eb9101be7 (patch)
tree10833d4edb6c0d0a5efcf7762d842a4c378404b0 /sys/arm/sa11x0
parent7b48c9d78377cdb9fc6e8bcc5406e28819aef6e3 (diff)
downloadFreeBSD-src-6a2ffa86e5b748ba71e36d37462a936eb9101be7.zip
FreeBSD-src-6a2ffa86e5b748ba71e36d37462a936eb9101be7.tar.gz
o break newbus api: add a new argument of type driver_filter_t to
bus_setup_intr() o add an int return code to all fast handlers o retire INTR_FAST/IH_FAST For more info: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=465712+0+current/freebsd-current Reviewed by: many Approved by: re@
Diffstat (limited to 'sys/arm/sa11x0')
-rw-r--r--sys/arm/sa11x0/sa11x0.c8
-rw-r--r--sys/arm/sa11x0/sa11x0_ost.c15
2 files changed, 12 insertions, 11 deletions
diff --git a/sys/arm/sa11x0/sa11x0.c b/sys/arm/sa11x0/sa11x0.c
index b099600..4c12162 100644
--- a/sys/arm/sa11x0/sa11x0.c
+++ b/sys/arm/sa11x0/sa11x0.c
@@ -91,14 +91,14 @@ static struct resource *sa1110_alloc_resource(device_t, device_t, int, int *,
static int sa1110_activate_resource(device_t, device_t, int, int,
struct resource *);
static int sa1110_setup_intr(device_t, device_t, struct resource *, int,
- driver_intr_t *, void *, void **);
+ driver_filter_t *, driver_intr_t *, void *, void **);
struct sa11x0_softc *sa11x0_softc; /* There can be only one. */
static int
sa1110_setup_intr(device_t dev, device_t child,
- struct resource *ires, int flags, driver_intr_t *intr, void *arg,
- void **cookiep)
+ struct resource *ires, int flags, driver_filter_t *filt,
+ driver_intr_t *intr, void *arg, void **cookiep)
{
int saved_cpsr;
@@ -113,7 +113,7 @@ sa1110_setup_intr(device_t dev, device_t child,
saved_cpsr = SetCPSR(I32_bit, I32_bit);
SetCPSR(I32_bit, saved_cpsr & I32_bit);
- BUS_SETUP_INTR(device_get_parent(dev), child, ires, flags, intr, arg,
+ BUS_SETUP_INTR(device_get_parent(dev), child, ires, flags, filt, intr, arg,
cookiep);
return (0);
}
diff --git a/sys/arm/sa11x0/sa11x0_ost.c b/sys/arm/sa11x0/sa11x0_ost.c
index fbe73eb..6edced9 100644
--- a/sys/arm/sa11x0/sa11x0_ost.c
+++ b/sys/arm/sa11x0/sa11x0_ost.c
@@ -67,9 +67,9 @@ static int saost_probe(device_t);
static int saost_attach(device_t);
int gettick(void);
-static void clockintr(void *);
+static int clockintr(void *);
#if 0
-static void statintr(void *);
+static int statintr(void *);
#endif
void rtcinit(void);
@@ -141,7 +141,7 @@ saost_attach(device_t dev)
}
-static void
+static int
clockintr(arg)
void *arg;
{
@@ -184,10 +184,11 @@ clockintr(arg)
#if 0
mtx_unlock_spin(&clock_lock);
#endif
+ return (FILTER_HANDLED);
}
#if 0
-static void
+static int
statintr(arg)
void *arg;
{
@@ -227,7 +228,7 @@ statintr(arg)
saost_sc->sc_statclock_count = nextmatch;
statclock(TRAPF_USERMODE(frame));
-
+ return (FILTER_HANDLED);
}
#endif
@@ -271,10 +272,10 @@ cpu_initclocks()
rid = 1;
irq2 = bus_alloc_resource(dev, SYS_RES_IRQ, &rid, 0, ~0, 1,
RF_ACTIVE);
- bus_setup_intr(dev, irq1, INTR_TYPE_CLK | INTR_FAST, clockintr, NULL,
+ bus_setup_intr(dev, irq1, INTR_TYPE_CLK, clockintr, NULL, NULL,
&ih1);
#if 0
- bus_setup_intr(dev, irq2, INTR_TYPE_CLK | INTR_FAST, statintr, NULL
+ bus_setup_intr(dev, irq2, INTR_TYPE_CLK, statintr, NULL, NULL,
,&ih2);
#endif
bus_space_write_4(saost_sc->sc_iot, saost_sc->sc_ioh, SAOST_SR, 0xf);
OpenPOWER on IntegriCloud