diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2004-12-08 06:59:46 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2004-12-08 06:59:46 +0000 |
commit | 306580664beba87a40d32773f4549231cbf70be7 (patch) | |
tree | d4db9cba908a902c27ccb75ad06fd623e41db538 /sys/arch/mac68k/dev/esp.c | |
parent | a3a34c3c6b12a2a3e9461379fbe1d73dc712b8ae (diff) |
Tweak interrupt handling code to allow shared interrupts for VIA2 sources.
This will be necessary shortly.
Diffstat (limited to 'sys/arch/mac68k/dev/esp.c')
-rw-r--r-- | sys/arch/mac68k/dev/esp.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/sys/arch/mac68k/dev/esp.c b/sys/arch/mac68k/dev/esp.c index 927f0a20d38..4b9bd537693 100644 --- a/sys/arch/mac68k/dev/esp.c +++ b/sys/arch/mac68k/dev/esp.c @@ -1,4 +1,4 @@ -/* $OpenBSD: esp.c,v 1.18 2004/11/26 21:21:24 miod Exp $ */ +/* $OpenBSD: esp.c,v 1.19 2004/12/08 06:59:43 miod Exp $ */ /* $NetBSD: esp.c,v 1.59 1996/10/13 02:59:48 christos Exp $ */ /* @@ -179,6 +179,9 @@ espattach(parent, self, aux) */ sc->sc_glue = &esp_glue; + esc->sc_ih.vh_fn = ncr53c9x_intr; + esc->sc_ih.vh_arg = esc; + /* * Save the regs */ @@ -186,8 +189,8 @@ espattach(parent, self, aux) unsigned long reg_offset; esc->sc_reg = (volatile u_char *) SCSIBase; - via2_register_irq(VIA2_SCSIIRQ, ncr53c9x_intr, esc, - self->dv_xname); + esc->sc_ih.vh_ipl = VIA2_SCSIIRQ; + via2_register_irq(&esc->sc_ih, self->dv_xname); esc->irq_mask = V2IF_SCSIIRQ; reg_offset = SCSIBase - IOBase; if (reg_offset == 0x10000) { @@ -197,8 +200,8 @@ espattach(parent, self, aux) } } else { esc->sc_reg = (volatile u_char *) SCSIBase + 0x402; - via2_register_irq(VIA2_SCSIDRQ, ncr53c9x_intr, esc, - self->dv_xname); + esc->sc_ih.vh_ipl = VIA2_SCSIDRQ; + via2_register_irq(&esc->sc_ih, self->dv_xname); esc->irq_mask = V2IF_SCSIDRQ; /* V2IF_T1? */ sc->sc_freq = 25000000; } |