diff options
author | Brad Smith <brad@cvs.openbsd.org> | 2006-06-15 20:08:30 +0000 |
---|---|---|
committer | Brad Smith <brad@cvs.openbsd.org> | 2006-06-15 20:08:30 +0000 |
commit | 3c18738eebc3ab152ffb51145446e53abd3236d3 (patch) | |
tree | 65edf799ed5992b4b991b8ce6eeff4ef74f2e0b7 /sys/arch/alpha/tc/tcasic.c | |
parent | fd293392db098cbdef234cf36ac226873023a403 (diff) |
Rework the interrupt code, shaving some cycles off in the process.
Rather than an "iointr" routine that decomposes a vector into an
IRQ, we maintain a vector table directly, hooking up each "iointr"
routine at the correct vector. This also allows us to hook device
interrupts up to specific vectors.
From thorpej NetBSD
Tested by myself and a number of end-users.
Diffstat (limited to 'sys/arch/alpha/tc/tcasic.c')
-rw-r--r-- | sys/arch/alpha/tc/tcasic.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/arch/alpha/tc/tcasic.c b/sys/arch/alpha/tc/tcasic.c index 4662dabcd59..76aab2da124 100644 --- a/sys/arch/alpha/tc/tcasic.c +++ b/sys/arch/alpha/tc/tcasic.c @@ -1,4 +1,4 @@ -/* $OpenBSD: tcasic.c,v 1.14 2006/03/16 22:32:01 miod Exp $ */ +/* $OpenBSD: tcasic.c,v 1.15 2006/06/15 20:08:29 brad Exp $ */ /* $NetBSD: tcasic.c,v 1.36 2001/08/23 01:16:52 nisimura Exp $ */ /* @@ -140,7 +140,9 @@ tcasicattach(parent, self, aux) tc_dma_init(); (*intr_setup)(); - set_iointr(iointr); + + /* They all come in at 0x800. */ + scb_set(0x800, iointr, NULL); config_found(self, &tba, tcasicprint); } |