summaryrefslogtreecommitdiffstats
path: root/sys/pc98/cbus/pcrtc.c
diff options
context:
space:
mode:
authorkato <kato@FreeBSD.org>1999-04-21 12:14:37 +0000
committerkato <kato@FreeBSD.org>1999-04-21 12:14:37 +0000
commit4e8c2959e1b4956d72a6f8cb3d3909f2e660cd01 (patch)
tree1fb5f45306b939a88095fb8d9cdcac819cffe19a /sys/pc98/cbus/pcrtc.c
parent5b4e2f96f21961f517ea8f2402314d64ba24f45e (diff)
downloadFreeBSD-src-4e8c2959e1b4956d72a6f8cb3d3909f2e660cd01.zip
FreeBSD-src-4e8c2959e1b4956d72a6f8cb3d3909f2e660cd01.tar.gz
Sync with sys/i386/isa/clock.c revision 1.131.
Diffstat (limited to 'sys/pc98/cbus/pcrtc.c')
-rw-r--r--sys/pc98/cbus/pcrtc.c28
1 files changed, 12 insertions, 16 deletions
diff --git a/sys/pc98/cbus/pcrtc.c b/sys/pc98/cbus/pcrtc.c
index 067257d..51879cf 100644
--- a/sys/pc98/cbus/pcrtc.c
+++ b/sys/pc98/cbus/pcrtc.c
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* from: @(#)clock.c 7.2 (Berkeley) 5/12/91
- * $Id: clock.c,v 1.65 1998/12/17 08:54:47 kato Exp $
+ * $Id: clock.c,v 1.66 1999/01/28 11:36:22 kato Exp $
*/
/*
@@ -96,7 +96,7 @@
#endif
#include <i386/isa/timerreg.h>
-#include <sys/interrupt.h>
+#include <i386/isa/intr_machdep.h>
#ifdef SMP
#define disable_intr() CLOCK_DISABLE_INTR()
@@ -1286,6 +1286,7 @@ cpu_initclocks()
{
#ifdef APIC_IO
int apic_8254_trial;
+ struct intrec *clkdesc;
#endif /* APIC_IO */
#ifndef PC98
int diag;
@@ -1323,16 +1324,14 @@ cpu_initclocks()
panic("APIC_IO: Cannot route 8254 interrupt to CPU");
}
- register_intr(/* irq */ apic_8254_intr, /* XXX id */ 0, /* flags */ 0,
- /* XXX */ (inthand2_t *)clkintr, &clk_imask,
- /* unit */ 0);
+ clkdesc = inthand_add("clk", apic_8254_intr, (inthand2_t *)clkintr,
+ NULL, &clk_imask, INTR_EXCL);
INTREN(1 << apic_8254_intr);
#else /* APIC_IO */
- register_intr(/* irq */ 0, /* XXX id */ 0, /* flags */ 0,
- /* XXX */ (inthand2_t *)clkintr, &clk_imask,
- /* unit */ 0);
+ inthand_add("clk", 0, (inthand2_t *)clkintr, NULL, &clk_imask,
+ INTR_EXCL);
INTREN(IRQ0);
#endif /* APIC_IO */
@@ -1354,9 +1353,8 @@ cpu_initclocks()
panic("APIC RTC != 8");
#endif /* APIC_IO */
- register_intr(/* irq */ 8, /* XXX id */ 1, /* flags */ 0,
- /* XXX */ (inthand2_t *)rtcintr, &stat_imask,
- /* unit */ 0);
+ inthand_add("rtc", 8, (inthand2_t *)rtcintr, NULL, &stat_imask,
+ INTR_EXCL);
#ifdef APIC_IO
INTREN(APIC_IRQ8);
@@ -1381,17 +1379,15 @@ cpu_initclocks()
* Workaround: Limited variant of mixed mode.
*/
INTRDIS(1 << apic_8254_intr);
- unregister_intr(apic_8254_intr,
- /* XXX */ (inthand2_t *) clkintr);
+ inthand_remove(clkdesc);
printf("APIC_IO: Broken MP table detected: "
"8254 is not connected to IO APIC int pin %d\n",
apic_8254_intr);
apic_8254_intr = 0;
setup_8254_mixed_mode();
- register_intr(/* irq */ apic_8254_intr, /* XXX id */ 0, /* flags */ 0,
- /* XXX */ (inthand2_t *)clkintr, &clk_imask,
- /* unit */ 0);
+ inthand_add("clk", apic_8254_intr,(inthand2_t *)clkintr,
+ NULL, &clk_imask, INTR_EXCL);
INTREN(1 << apic_8254_intr);
}
OpenPOWER on IntegriCloud