summaryrefslogtreecommitdiff
path: root/i386/i386at
diff options
context:
space:
mode:
Diffstat (limited to 'i386/i386at')
-rw-r--r--i386/i386at/autoconf.h42
-rw-r--r--i386/i386at/com.c2
-rw-r--r--i386/i386at/com.h45
-rw-r--r--i386/i386at/idt.h4
-rw-r--r--i386/i386at/int_init.h34
-rw-r--r--i386/i386at/kd.c1
-rw-r--r--i386/i386at/kd_event.c1
-rw-r--r--i386/i386at/kd_mouse.c4
-rw-r--r--i386/i386at/lpr.c1
-rw-r--r--i386/i386at/model_dep.c13
-rw-r--r--i386/i386at/rtc.h3
11 files changed, 148 insertions, 2 deletions
diff --git a/i386/i386at/autoconf.h b/i386/i386at/autoconf.h
new file mode 100644
index 0000000..4916d3e
--- /dev/null
+++ b/i386/i386at/autoconf.h
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2008 Free Software Foundation, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+ *
+ * Author: Barry deFreese.
+ */
+/*
+ * Device auto configuration.
+ *
+ */
+
+#ifndef _AUTOCONF_H_
+#define _AUTOCONF_H_
+
+#include <mach/std_types.h>
+
+/*
+ * probeio:
+ *
+ * Probe and subsequently attach devices out on the AT bus.
+ *
+ *
+ */
+void probeio(void);
+
+extern void take_dev_irq (
+ struct bus_device *dev);
+
+#endif /* _AUTOCONF_H_ */
diff --git a/i386/i386at/com.c b/i386/i386at/com.c
index 300a60b..6e7dcbf 100644
--- a/i386/i386at/com.c
+++ b/i386/i386at/com.c
@@ -39,6 +39,8 @@
#include <i386/pio.h>
#include <i386/machspl.h>
#include <chips/busses.h>
+#include <i386at/autoconf.h>
+#include <i386at/com.h>
#include <i386at/comreg.h>
#include <device/cons.h>
diff --git a/i386/i386at/com.h b/i386/i386at/com.h
new file mode 100644
index 0000000..dca26a5
--- /dev/null
+++ b/i386/i386at/com.h
@@ -0,0 +1,45 @@
+/*
+ * Communication functions
+ * Copyright (C) 2008 Free Software Foundation, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+ *
+ * Author: Barry deFreese.
+ */
+/*
+ * Communication functions.
+ *
+ */
+
+#ifndef _COM_H_
+#define _COM_H_
+
+#include <mach/std_types.h>
+
+/*
+ * Set receive modem state from modem status register.
+ */
+extern void fix_modem_state(int unit, int modem_stat);
+
+extern void comtimer(void);
+
+/*
+ * Modem change (input signals)
+ */
+extern void commodem_intr(int unit, int stat);
+
+extern int comgetc(int unit);
+
+#endif /* _COM_H_ */
diff --git a/i386/i386at/idt.h b/i386/i386at/idt.h
index 840bad1..1b3284f 100644
--- a/i386/i386at/idt.h
+++ b/i386/i386at/idt.h
@@ -34,4 +34,8 @@
#include <i386/idt-gen.h>
+#ifndef __ASSEMBLER__
+extern void idt_init (void);
+#endif
+
#endif /* _I386AT_IDT_ */
diff --git a/i386/i386at/int_init.h b/i386/i386at/int_init.h
new file mode 100644
index 0000000..f4abef0
--- /dev/null
+++ b/i386/i386at/int_init.h
@@ -0,0 +1,34 @@
+/*
+ * Copyright (C) 2008 Free Software Foundation, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+ *
+ * Author: Barry deFreese.
+ */
+/*
+ * Initialization functions.
+ *
+ */
+
+#ifndef _INT_INIT_H_
+#define _INT_INIT_H_
+
+#include <mach/std_types.h>
+
+#ifndef __ASSEMBLER__
+extern void int_init (void);
+#endif
+
+#endif /* _INT_INIT_H_ */
diff --git a/i386/i386at/kd.c b/i386/i386at/kd.c
index 75b56eb..6723752 100644
--- a/i386/i386at/kd.c
+++ b/i386/i386at/kd.c
@@ -85,6 +85,7 @@ WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
#include <device/io_req.h>
#include <device/buf.h> /* for struct uio (!) */
#include <vm/vm_kern.h>
+#include <i386/loose_ends.h>
#include <i386/vm_param.h>
#include <i386/machspl.h>
#include <i386/pio.h>
diff --git a/i386/i386at/kd_event.c b/i386/i386at/kd_event.c
index 7688412..5d8d563 100644
--- a/i386/i386at/kd_event.c
+++ b/i386/i386at/kd_event.c
@@ -60,6 +60,7 @@ WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
#include <string.h>
#ifdef MACH_KERNEL
+#include <device/ds_routines.h>
#include <device/errno.h>
#include <device/io_req.h>
#else /* MACH_KERNEL */
diff --git a/i386/i386at/kd_mouse.c b/i386/i386at/kd_mouse.c
index 2ad3be2..9487c54 100644
--- a/i386/i386at/kd_mouse.c
+++ b/i386/i386at/kd_mouse.c
@@ -68,8 +68,10 @@ WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
#include <sys/types.h>
#include <kern/printf.h>
#ifdef MACH_KERNEL
+#include <device/ds_routines.h>
#include <device/errno.h>
#include <device/io_req.h>
+#include <device/subrs.h>
#else /* MACH_KERNEL */
#include <sys/file.h>
#include <sys/errno.h>
@@ -81,8 +83,10 @@ WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
#include <sys/tty.h>
#endif /* MACH_KERNEL */
#include <i386/ipl.h>
+#include <i386/pic.h>
#include <i386/pio.h>
#include <chips/busses.h>
+#include <i386at/com.h>
#include <i386at/kd.h>
#include <i386at/kd_queue.h>
#include <i386at/i8250.h>
diff --git a/i386/i386at/lpr.c b/i386/i386at/lpr.c
index 348159e..05edc7b 100644
--- a/i386/i386at/lpr.c
+++ b/i386/i386at/lpr.c
@@ -55,6 +55,7 @@
#include <i386/ipl.h>
#include <i386/pio.h>
#include <chips/busses.h>
+#include <i386at/autoconf.h>
#include <i386at/lprreg.h>
extern void timeout();
diff --git a/i386/i386at/model_dep.c b/i386/i386at/model_dep.c
index d67f709..d020c92 100644
--- a/i386/i386at/model_dep.c
+++ b/i386/i386at/model_dep.c
@@ -49,11 +49,22 @@
#include <kern/printf.h>
#include <sys/time.h>
#include <vm/vm_page.h>
+#include <i386/fpu.h>
+#include <i386/gdt.h>
+#include <i386/ktss.h>
+#include <i386/ldt.h>
#include <i386/machspl.h>
+#include <i386/pic.h>
+#include <i386/pit.h>
#include <i386/pmap.h>
#include <i386/proc_reg.h>
#include <i386/locore.h>
#include <i386/model_dep.h>
+#include <i386at/autoconf.h>
+#include <i386at/idt.h>
+#include <i386at/int_init.h>
+#include <i386at/kd.h>
+#include <i386at/rtc.h>
/* Location of the kernel's symbol table.
Both of these are 0 if none is available. */
@@ -369,7 +380,7 @@ void c_boot_entry(vm_offset_t bi)
*/
if (strstr(kernel_cmdline, "-d ")) {
cninit(); /* need console for debugger */
- Debugger();
+ Debugger("init");
}
#endif /* MACH_KDB */
diff --git a/i386/i386at/rtc.h b/i386/i386at/rtc.h
index e8d1967..ced39b9 100644
--- a/i386/i386at/rtc.h
+++ b/i386/i386at/rtc.h
@@ -134,4 +134,5 @@ struct rtc_st {
} \
}
-
+extern int readtodc(u_int *tp);
+extern int writetodc(void);