Make splbio really splbio. All holes now seem to be plugged. At least

on the Hades & TT030.
This commit is contained in:
leo 1996-11-17 13:38:03 +00:00
parent a5d68d8e59
commit 643abfa146
2 changed files with 9 additions and 13 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: atari5380.c,v 1.20 1996/10/13 04:10:50 christos Exp $ */
/* $NetBSD: atari5380.c,v 1.21 1996/11/17 13:38:03 leo Exp $ */
/*
* Copyright (c) 1995 Leo Weppelman.
@ -85,16 +85,6 @@
*/
#include <atari/dev/ncr5380var.h>
/*
* This is crap, but because the interrupts now run at MFP spl-level (6),
* splbio() is not enough at some places. The code should be checked to
* find out where splhigh() is needed and where splbio() should be used.
* Now that I use this interrupt sceme, the spl values are fake!
*/
#undef splbio()
#define splbio() splhigh()
/*
* The atari specific driver options
*/
@ -317,6 +307,12 @@ scsi_tt_clr_ipend(void)
if (machineid & ATARI_TT)
single_inst_bclr_b(MFP2->mf_iprb, IB_SCDM);
single_inst_bclr_b(MFP2->mf_ipra, IA_SCSI);
/*
* Remove interrupts already scheduled.
*/
rem_sicallback((si_farg)ncr_ctrl_intr);
rem_sicallback((si_farg)ncr_dma_intr);
}
static void

View File

@ -1,4 +1,4 @@
/* $NetBSD: ncr5380.c,v 1.26 1996/10/13 04:11:08 christos Exp $ */
/* $NetBSD: ncr5380.c,v 1.27 1996/11/17 13:38:04 leo Exp $ */
/*
* Copyright (c) 1995 Leo Weppelman.
@ -611,6 +611,7 @@ main_exit:
if (scsi_ipending()) {
if ((itype = check_intr(sc)) != INTR_SPURIOUS) {
scsi_idisable();
scsi_clr_ipend();
splx(sps);
if (itype == INTR_RESEL)
@ -624,7 +625,6 @@ main_exit:
panic("Got DMA interrupt without DMA");
}
#endif
scsi_clr_ipend();
goto connected;
}
}