Remove a hardcoded interrupt handler. Now uses intr_establish() for the

SCSI-drq handler on the Hades.
This commit is contained in:
leo 1997-03-30 21:08:19 +00:00
parent 103e8967c4
commit 67c47d4b56
2 changed files with 13 additions and 19 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: locore.s,v 1.33 1997/03/16 11:04:59 thorpej Exp $ */
/* $NetBSD: locore.s,v 1.34 1997/03/30 21:08:19 leo Exp $ */
/*
* Copyright (c) 1988 University of Utah.
@ -370,23 +370,7 @@ _intr_glue:
jra rei
_lev2intr:
#ifndef TT_SCSI
rte | HBL, can't be turned off on Falcon!
#else
/*
* The Hades uses this vector for SCSI pseudo-DMA
*/
addql #1,_intrcnt+24 | add another 5380-DMA interrupt
moveml d0-d1/a0-a1,sp@- | Save scratch registers
movw sp@(16),sp@- | push previous SR value
clrw sp@- | padded to longword
jbsr _ncr5380_drq_intr | handle interrupt
addql #4,sp | pop SR
moveml sp@+,d0-d1/a0-a1
addql #1,_cnt+V_INTR | chalk up another interrupt
jra rei
#endif
_lev4intr: | VBL interrupts can not be turned
rte | off on a Falcon, so just ignore them.

View File

@ -1,4 +1,4 @@
/* $NetBSD: atari5380.c,v 1.23 1997/01/12 15:46:37 leo Exp $ */
/* $NetBSD: atari5380.c,v 1.24 1997/03/30 21:08:30 leo Exp $ */
/*
* Copyright (c) 1995 Leo Weppelman.
@ -52,6 +52,8 @@
#include <machine/iomap.h>
#include <machine/mfp.h>
#include <atari/atari/intr.h>
#if defined(FALCON_SCSI)
#include <machine/dma.h>
#endif
@ -252,7 +254,15 @@ scsi_tt_init(struct ncr_softc *sc)
MFP2->mf_iprb &= ~IB_SCDM;
MFP2->mf_imrb |= IB_SCDM;
}
else SCSI_DMA->s_hdma_ctrl = 0;
else if (machineid & ATARI_HADES) {
SCSI_DMA->s_hdma_ctrl = 0;
if (intr_establish(2, AUTO_VEC, 0,
(hw_ifun_t)ncr5380_drq_intr,
NULL) == NULL)
panic("scsi_tt_init: Can't establish drq-interrupt");
}
else panic("scsi_tt_init: should not come here");
MFP2->mf_iera |= IA_SCSI; /* SCSI-5380 interrupts */
MFP2->mf_ipra &= ~IA_SCSI;