fix missing SCI IRQ mask/unmask code.

This commit is contained in:
msaitoh 1999-12-27 10:50:41 +00:00
parent 1f9eba958f
commit b682f09cbb
2 changed files with 22 additions and 5 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: shb.c,v 1.4 1999/12/06 14:10:49 msaitoh Exp $ */ /* $NetBSD: shb.c,v 1.5 1999/12/27 10:50:41 msaitoh Exp $ */
/*- /*-
* Copyright (c) 1993, 1994 Charles Hannum. All rights reserved. * Copyright (c) 1993, 1994 Charles Hannum. All rights reserved.
@ -403,9 +403,11 @@ intrhandler(p1, p2, p3, p4, frame)
if (irl >= INTEVT_SOFT) { if (irl >= INTEVT_SOFT) {
/* This is software interrupt */ /* This is software interrupt */
irq_num = (irl - INTEVT_SOFT); irq_num = (irl - INTEVT_SOFT);
} else if (irl == INTEVT_TMU1) } else if (irl == INTEVT_TMU1) {
irq_num = TMU1_IRQ; irq_num = TMU1_IRQ;
else } else if (IS_INTEVT_SCI0(irl)) { /* XXX TOO DIRTY */
irq_num = SCI_IRQ;
} else
irq_num = (irl - 0x200) >> 5; irq_num = (irl - 0x200) >> 5;
mask_irq(irq_num); mask_irq(irq_num);
@ -524,7 +526,8 @@ mask_irq(irq)
} }
void void
unmask_irq(int irq) unmask_irq(irq)
int irq;
{ {
switch (irq) { switch (irq) {

View File

@ -1,4 +1,4 @@
/* $NetBSD: intr.h,v 1.2 1999/09/14 10:22:35 tsubai Exp $ */ /* $NetBSD: intr.h,v 1.3 1999/12/27 10:50:41 msaitoh Exp $ */
/* /*
* Copyright (c) 1996, 1997 Charles M. Hannum. All rights reserved. * Copyright (c) 1996, 1997 Charles M. Hannum. All rights reserved.
@ -170,4 +170,18 @@ softintr(mask)
#define INTEVT_TMU1 0x420 #define INTEVT_TMU1 0x420
#define INTEVT_TMU2 0x440 #define INTEVT_TMU2 0x440
#define INTEVT_SCI0_ERI 0x4e0
#define INTEVT_SCI0_RXI 0x500
#define INTEVT_SCI0_TXI 0x520
#define INTEVT_SCI0_TEI 0x540
#define IS_INTEVT_SCI0(x) ((x == INTEVT_SCI0_ERI) || (x == INTEVT_SCI0_RXI) \
|| (x == INTEVT_SCI0_TXI) || (x == INTEVT_SCI0_TEI))
#define INTEVT_PRI 0x4a0 /* Periodic interrupt generated by RTC */
#if defined(SH4)
#define INTEVT_SCIF 0x700
#endif
#endif /* !_SH3_INTR_H_ */ #endif /* !_SH3_INTR_H_ */