summaryrefslogtreecommitdiff
path: root/i386
diff options
context:
space:
mode:
Diffstat (limited to 'i386')
-rw-r--r--i386/i386/fpu.c4
-rw-r--r--i386/i386/fpu.h1
-rw-r--r--i386/i386/hardclock.c7
-rw-r--r--i386/i386/ipl.h1
-rw-r--r--i386/i386/pic.h4
-rw-r--r--i386/i386at/kd.h2
-rw-r--r--i386/i386at/pic_isa.c6
-rw-r--r--i386/xen/xen.c2
8 files changed, 17 insertions, 10 deletions
diff --git a/i386/i386/fpu.c b/i386/i386/fpu.c
index 2a4b9c0..2626a38 100644
--- a/i386/i386/fpu.c
+++ b/i386/i386/fpu.c
@@ -52,12 +52,12 @@
#include <i386/thread.h>
#include <i386/fpu.h>
#include <i386/pio.h>
+#include <i386/pic.h>
#include <i386/locore.h>
#include "cpu_number.h"
#if 0
#include <i386/ipl.h>
-extern int curr_ipl;
#define ASSERT_IPL(L) \
{ \
if (curr_ipl != L) { \
@@ -865,7 +865,7 @@ fp_state_alloc()
* This comes in on line 5 of the slave PIC at SPL1.
*/
void
-fpintr()
+fpintr(int unit)
{
spl_t s;
thread_t thread = current_thread();
diff --git a/i386/i386/fpu.h b/i386/i386/fpu.h
index 1a1b61f..2156187 100644
--- a/i386/i386/fpu.h
+++ b/i386/i386/fpu.h
@@ -124,5 +124,6 @@ extern void fpextovrflt(void);
extern void fpexterrflt(void);
extern void fpastintr(void);
extern void init_fpu(void);
+extern void fpintr(int unit);
#endif /* _I386_FPU_H_ */
diff --git a/i386/i386/hardclock.c b/i386/i386/hardclock.c
index c97feac..aecd3a3 100644
--- a/i386/i386/hardclock.c
+++ b/i386/i386/hardclock.c
@@ -39,13 +39,12 @@
#include <i386/ipl.h>
#endif
-extern void clock_interrupt();
-extern char return_to_iret[];
-
#ifdef LINUX_DEV
-extern void linux_timer_intr(void);
+#include <linux/dev/glue/glue.h>
#endif
+extern char return_to_iret[];
+
void
hardclock(iunit, old_ipl, ret_addr, regs)
int iunit; /* 'unit' number */
diff --git a/i386/i386/ipl.h b/i386/i386/ipl.h
index 557cd8d..8f729e1 100644
--- a/i386/i386/ipl.h
+++ b/i386/i386/ipl.h
@@ -73,5 +73,6 @@ WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
extern void (*ivect[])();
extern int iunit[];
extern int intpri[];
+extern spl_t curr_ipl;
#endif /* __ASSEMBLER__ */
#endif /* KERNEL */
diff --git a/i386/i386/pic.h b/i386/i386/pic.h
index 7a177d8..52f6ec1 100644
--- a/i386/i386/pic.h
+++ b/i386/i386/pic.h
@@ -179,6 +179,10 @@ WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
#ifndef __ASSEMBLER__
extern void form_pic_mask (void);
extern void picinit (void);
+extern int curr_pic_mask;
+extern int pic_mask[];
+extern void prtnull(int unit);
+extern void intnull(int unit);
#endif
#endif /* _I386_PIC_H_ */
diff --git a/i386/i386at/kd.h b/i386/i386at/kd.h
index bc265b0..3f0dfe1 100644
--- a/i386/i386at/kd.h
+++ b/i386/i386at/kd.h
@@ -740,4 +740,6 @@ extern void kd_slmwd (void *start, int count, int value);
extern void kd_slmscu (void *from, void *to, int count);
extern void kd_slmscd (void *from, void *to, int count);
+extern void kdintr(int vec, int regs);
+
#endif /* _KD_H_ */
diff --git a/i386/i386at/pic_isa.c b/i386/i386at/pic_isa.c
index ef7d84c..e48fb50 100644
--- a/i386/i386at/pic_isa.c
+++ b/i386/i386at/pic_isa.c
@@ -27,11 +27,11 @@
#include <sys/types.h>
#include <i386/ipl.h>
#include <i386/pic.h>
-
+#include <i386/fpu.h>
+#include <i386at/kd.h>
/* These interrupts are always present */
-extern void intnull(), fpintr(), hardclock(), kdintr();
-extern void prtnull();
+extern void hardclock();
void (*ivect[NINTR])() = {
/* 00 */ hardclock, /* always */
diff --git a/i386/xen/xen.c b/i386/xen/xen.c
index 87a1ed9..a46ee2c 100644
--- a/i386/xen/xen.c
+++ b/i386/xen/xen.c
@@ -18,6 +18,7 @@
#include <kern/printf.h>
#include <kern/debug.h>
+#include <kern/mach_clock.h>
#include <mach/machine/eflags.h>
#include <machine/thread.h>
@@ -43,7 +44,6 @@ void hyp_failsafe_c_callback(struct failsafe_callback_regs *regs) {
panic("failsafe");
}
-extern void clock_interrupt();
extern void return_to_iret;
void hypclock_machine_intr(int old_ipl, void *ret_addr, struct i386_interrupt_state *regs, unsigned64_t delta) {