summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/m68k/sim68000/console
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2000-08-01 20:01:14 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2000-08-01 20:01:14 +0000
commitb812f841553be30baab45f08b3f6fda692b5166b (patch)
treeb3dc6aeca3a4ced907f1c0262f9a714b44d3baab /c/src/lib/libbsp/m68k/sim68000/console
parentLook at both hardware and software FP settings. (diff)
downloadrtems-b812f841553be30baab45f08b3f6fda692b5166b.tar.bz2
Added sim68000 BSP for the BSVC simulator. This BSP includes the
alias simcpu32 that supports the CPU32 simulator in BSVC. At this point, it is still under development.
Diffstat (limited to 'c/src/lib/libbsp/m68k/sim68000/console')
-rw-r--r--c/src/lib/libbsp/m68k/sim68000/console/.cvsignore2
-rw-r--r--c/src/lib/libbsp/m68k/sim68000/console/Makefile.am37
-rw-r--r--c/src/lib/libbsp/m68k/sim68000/console/conscfg.c74
3 files changed, 113 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/m68k/sim68000/console/.cvsignore b/c/src/lib/libbsp/m68k/sim68000/console/.cvsignore
new file mode 100644
index 0000000000..282522db03
--- /dev/null
+++ b/c/src/lib/libbsp/m68k/sim68000/console/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
diff --git a/c/src/lib/libbsp/m68k/sim68000/console/Makefile.am b/c/src/lib/libbsp/m68k/sim68000/console/Makefile.am
new file mode 100644
index 0000000000..2ee7fd276e
--- /dev/null
+++ b/c/src/lib/libbsp/m68k/sim68000/console/Makefile.am
@@ -0,0 +1,37 @@
+##
+## $Id$
+##
+
+AUTOMAKE_OPTIONS = foreign 1.4
+
+VPATH = @srcdir@:@srcdir@/../../../shared
+
+PGM = $(ARCH)/console.rel
+
+C_FILES = conscfg.c console.c
+C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.o)
+
+S_FILES =
+S_O_FILES = $(S_FILES:%.S=$(ARCH)/%.o)
+
+OBJS = $(C_O_FILES) $(S_O_FILES)
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../../../../../../automake/lib.am
+
+#
+# (OPTIONAL) Add local stuff here using +=
+#
+
+$(PGM): $(OBJS)
+ $(make-rel)
+
+# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
+
+all-local: $(ARCH) $(OBJS) $(PGM)
+
+.PRECIOUS: $(PGM)
+
+EXTRA_DIST = conscfg.c
+
+include $(top_srcdir)/../../../../../../automake/local.am
diff --git a/c/src/lib/libbsp/m68k/sim68000/console/conscfg.c b/c/src/lib/libbsp/m68k/sim68000/console/conscfg.c
new file mode 100644
index 0000000000..0817233834
--- /dev/null
+++ b/c/src/lib/libbsp/m68k/sim68000/console/conscfg.c
@@ -0,0 +1,74 @@
+/*
+ * This file contains the TTY driver table.
+ *
+ * COPYRIGHT (c) 1989-2000.
+ * On-Line Applications Research Corporation (OAR).
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.OARcorp.com/rtems/license.html.
+ *
+ * $Id$
+ */
+
+#include <bsp.h>
+
+#include <libchip/serial.h>
+#include <libchip/mc68681.h>
+
+/*
+ * Fix these for the simulator
+ */
+
+#define MC68681_PORT_CONFIG MC68681_XBRG_IGNORED
+#define MC68681_PROBE libchip_serial_default_probe
+#define MC68681_VECTOR 0
+#define MC68681_BASE_ADDRESS 0x71001
+#define MC68681_BASE_ADDRESS 0x71007
+
+/*
+ * Based on BSP configuration information decide whether to do polling IO
+ * or interrupt driven IO.
+ */
+
+#if (CONSOLE_USE_INTERRUPTS)
+#define MC68681_FUNCTIONS &mc68681_fns
+#else
+#define MC68681_FUNCTIONS &mc68681_fns_polled
+#endif
+
+
+
+console_tbl Console_Port_Tbl[] = {
+ {
+ "/dev/com0", /* sDeviceName */
+ SERIAL_MC68681, /* deviceType */
+ MC68681_FUNCTIONS, /* pDeviceFns */
+ NULL, /* deviceProbe */
+ NULL, /* pDeviceFlow */
+ 16, /* ulMargin */
+ 8, /* ulHysteresis */
+ (void *)9600, /* baud rate */ /* pDeviceParams */
+ MC68681_BASE_ADDRESS, /* ulCtrlPort1 */
+ MC68681_BASE_ADDRESS, /* ulCtrlPort2 */
+ MC68681_DATA_ADDRESS, /* ulDataPort */
+ mc68681_get_register_2, /* getRegister */
+ mc68681_set_register_2, /* setRegister */
+ NULL, /* unused */ /* getData */
+ NULL, /* unused */ /* setData */
+ mc68681_baud_rate_table, /* ulClock */
+ MC68681_VECTOR /* ulIntVector */
+ }
+};
+
+/*
+ * Declare some information used by the console driver
+ */
+
+#define NUM_CONSOLE_PORTS (sizeof(Console_Port_Tbl)/sizeof(console_tbl))
+
+unsigned long Console_Port_Count = NUM_CONSOLE_PORTS;
+
+console_data Console_Port_Data[NUM_CONSOLE_PORTS];
+
+rtems_device_minor_number Console_Port_Minor;