From 9a529819186f7d091ff23ae5fb7963311c6646f6 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Wed, 7 Jan 2004 20:59:03 +0000 Subject: 2004-01-07 Joel Sherrill Per John S. Gwynne , there are no longer any users of these boards so we are removing them. * efi332/.cvsignore, efi332/ChangeLog, efi332/Makefile.am, efi332/README, efi332/bsp_specs, efi332/configure.ac, efi332/times, efi332/clock/.cvsignore, efi332/clock/Makefile.am, efi332/clock/ckinit.c, efi332/console/.cvsignore, efi332/console/Makefile.am, efi332/console/console.c, efi332/include/.cvsignore, efi332/include/bsp.h, efi332/include/efi332.h, efi332/misc/dotests, efi332/misc/gdbinit68, efi332/misc/interr.c, efi332/spurious/.cvsignore, efi332/spurious/Makefile.am, efi332/spurious/spinit.c, efi332/start/.cvsignore, efi332/start/Makefile.am, efi332/start/except_vect_332_ROM.S, efi332/start/ram_init.ld, efi332/start/ram_init.sed, efi332/start/start.c, efi332/startup/.cvsignore, efi332/startup/Makefile.am, efi332/startup/bspclean.c, efi332/startup/bspstart.c, efi332/startup/linkcmds, efi332/startup/linkcmds_ROM, efi332/timer/.cvsignore, efi332/timer/Makefile.am, efi332/timer/timer.c, efi332/wrapup/.cvsignore, efi332/wrapup/Makefile.am, efi68k/.cvsignore, efi68k/ChangeLog, efi68k/Makefile.am, efi68k/README, efi68k/bsp_specs, efi68k/configure.ac, efi68k/times, efi68k/clock/.cvsignore, efi68k/clock/Makefile.am, efi68k/clock/ckinit.c, efi68k/console/.cvsignore, efi68k/console/Makefile.am, efi68k/console/console.c, efi68k/include/.cvsignore, efi68k/include/16550.h, efi68k/include/DP8570A.h, efi68k/include/bsp.h, efi68k/include/efi68k.h, efi68k/spurious/.cvsignore, efi68k/spurious/Makefile.am, efi68k/spurious/spinit.c, efi68k/start/.cvsignore, efi68k/start/start.c, efi68k/startup/.cvsignore, efi68k/startup/Makefile.am, efi68k/startup/bspclean.c, efi68k/startup/bspstart.c, efi68k/startup/efi68k_tcp.c, efi68k/startup/efi68k_wd.c, efi68k/startup/linkcmds, efi68k/startup/m68k-stub.c, efi68k/startup/setvec.c, efi68k/timer/.cvsignore, efi68k/timer/Makefile.am, efi68k/timer/timer.c, efi68k/wrapup/.cvsignore, efi68k/wrapup/Makefile.am: Removed. --- c/src/lib/libbsp/m68k/efi332/.cvsignore | 14 - c/src/lib/libbsp/m68k/efi332/ChangeLog | 316 ----------------- c/src/lib/libbsp/m68k/efi332/Makefile.am | 30 -- c/src/lib/libbsp/m68k/efi332/README | 29 -- c/src/lib/libbsp/m68k/efi332/bsp_specs | 16 - c/src/lib/libbsp/m68k/efi332/clock/.cvsignore | 2 - c/src/lib/libbsp/m68k/efi332/clock/Makefile.am | 30 -- c/src/lib/libbsp/m68k/efi332/clock/ckinit.c | 129 ------- c/src/lib/libbsp/m68k/efi332/configure.ac | 26 -- c/src/lib/libbsp/m68k/efi332/console/.cvsignore | 2 - c/src/lib/libbsp/m68k/efi332/console/Makefile.am | 30 -- c/src/lib/libbsp/m68k/efi332/console/console.c | 392 --------------------- c/src/lib/libbsp/m68k/efi332/include/.cvsignore | 6 - c/src/lib/libbsp/m68k/efi332/include/bsp.h | 165 --------- c/src/lib/libbsp/m68k/efi332/include/efi332.h | 52 --- c/src/lib/libbsp/m68k/efi332/misc/dotests | 15 - c/src/lib/libbsp/m68k/efi332/misc/gdbinit68 | 16 - c/src/lib/libbsp/m68k/efi332/misc/interr.c | 99 ------ c/src/lib/libbsp/m68k/efi332/spurious/.cvsignore | 2 - c/src/lib/libbsp/m68k/efi332/spurious/Makefile.am | 30 -- c/src/lib/libbsp/m68k/efi332/spurious/spinit.c | 88 ----- c/src/lib/libbsp/m68k/efi332/start/.cvsignore | 2 - c/src/lib/libbsp/m68k/efi332/start/Makefile.am | 65 ---- .../libbsp/m68k/efi332/start/except_vect_332_ROM.S | 290 --------------- c/src/lib/libbsp/m68k/efi332/start/ram_init.ld | 22 -- c/src/lib/libbsp/m68k/efi332/start/ram_init.sed | 47 --- c/src/lib/libbsp/m68k/efi332/start/start.c | 228 ------------ c/src/lib/libbsp/m68k/efi332/startup/.cvsignore | 2 - c/src/lib/libbsp/m68k/efi332/startup/Makefile.am | 45 --- c/src/lib/libbsp/m68k/efi332/startup/bspclean.c | 27 -- c/src/lib/libbsp/m68k/efi332/startup/bspstart.c | 84 ----- c/src/lib/libbsp/m68k/efi332/startup/linkcmds | 206 ----------- c/src/lib/libbsp/m68k/efi332/startup/linkcmds_ROM | 216 ------------ c/src/lib/libbsp/m68k/efi332/timer/.cvsignore | 2 - c/src/lib/libbsp/m68k/efi332/timer/Makefile.am | 30 -- c/src/lib/libbsp/m68k/efi332/timer/timer.c | 83 ----- c/src/lib/libbsp/m68k/efi332/times | 193 ---------- c/src/lib/libbsp/m68k/efi332/wrapup/.cvsignore | 2 - c/src/lib/libbsp/m68k/efi332/wrapup/Makefile.am | 20 -- 39 files changed, 3053 deletions(-) delete mode 100644 c/src/lib/libbsp/m68k/efi332/.cvsignore delete mode 100644 c/src/lib/libbsp/m68k/efi332/ChangeLog delete mode 100644 c/src/lib/libbsp/m68k/efi332/Makefile.am delete mode 100644 c/src/lib/libbsp/m68k/efi332/README delete mode 100644 c/src/lib/libbsp/m68k/efi332/bsp_specs delete mode 100644 c/src/lib/libbsp/m68k/efi332/clock/.cvsignore delete mode 100644 c/src/lib/libbsp/m68k/efi332/clock/Makefile.am delete mode 100644 c/src/lib/libbsp/m68k/efi332/clock/ckinit.c delete mode 100644 c/src/lib/libbsp/m68k/efi332/configure.ac delete mode 100644 c/src/lib/libbsp/m68k/efi332/console/.cvsignore delete mode 100644 c/src/lib/libbsp/m68k/efi332/console/Makefile.am delete mode 100644 c/src/lib/libbsp/m68k/efi332/console/console.c delete mode 100644 c/src/lib/libbsp/m68k/efi332/include/.cvsignore delete mode 100644 c/src/lib/libbsp/m68k/efi332/include/bsp.h delete mode 100644 c/src/lib/libbsp/m68k/efi332/include/efi332.h delete mode 100644 c/src/lib/libbsp/m68k/efi332/misc/dotests delete mode 100644 c/src/lib/libbsp/m68k/efi332/misc/gdbinit68 delete mode 100644 c/src/lib/libbsp/m68k/efi332/misc/interr.c delete mode 100644 c/src/lib/libbsp/m68k/efi332/spurious/.cvsignore delete mode 100644 c/src/lib/libbsp/m68k/efi332/spurious/Makefile.am delete mode 100644 c/src/lib/libbsp/m68k/efi332/spurious/spinit.c delete mode 100644 c/src/lib/libbsp/m68k/efi332/start/.cvsignore delete mode 100644 c/src/lib/libbsp/m68k/efi332/start/Makefile.am delete mode 100644 c/src/lib/libbsp/m68k/efi332/start/except_vect_332_ROM.S delete mode 100644 c/src/lib/libbsp/m68k/efi332/start/ram_init.ld delete mode 100644 c/src/lib/libbsp/m68k/efi332/start/ram_init.sed delete mode 100644 c/src/lib/libbsp/m68k/efi332/start/start.c delete mode 100644 c/src/lib/libbsp/m68k/efi332/startup/.cvsignore delete mode 100644 c/src/lib/libbsp/m68k/efi332/startup/Makefile.am delete mode 100644 c/src/lib/libbsp/m68k/efi332/startup/bspclean.c delete mode 100644 c/src/lib/libbsp/m68k/efi332/startup/bspstart.c delete mode 100644 c/src/lib/libbsp/m68k/efi332/startup/linkcmds delete mode 100644 c/src/lib/libbsp/m68k/efi332/startup/linkcmds_ROM delete mode 100644 c/src/lib/libbsp/m68k/efi332/timer/.cvsignore delete mode 100644 c/src/lib/libbsp/m68k/efi332/timer/Makefile.am delete mode 100644 c/src/lib/libbsp/m68k/efi332/timer/timer.c delete mode 100644 c/src/lib/libbsp/m68k/efi332/times delete mode 100644 c/src/lib/libbsp/m68k/efi332/wrapup/.cvsignore delete mode 100644 c/src/lib/libbsp/m68k/efi332/wrapup/Makefile.am (limited to 'c/src/lib/libbsp/m68k/efi332') diff --git a/c/src/lib/libbsp/m68k/efi332/.cvsignore b/c/src/lib/libbsp/m68k/efi332/.cvsignore deleted file mode 100644 index bfdfd995be..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/.cvsignore +++ /dev/null @@ -1,14 +0,0 @@ -aclocal.m4 -autom4te*.cache -config.cache -config.guess -config.log -config.status -config.sub -configure -depcomp -install-sh -Makefile -Makefile.in -missing -mkinstalldirs diff --git a/c/src/lib/libbsp/m68k/efi332/ChangeLog b/c/src/lib/libbsp/m68k/efi332/ChangeLog deleted file mode 100644 index 035190caa0..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/ChangeLog +++ /dev/null @@ -1,316 +0,0 @@ -2004-01-05 Ralf Corsepius - - * wrapup/Makefile.am: Eliminate $(LIB). - Use noinst_DATA to trigger building libbsp.a. - -2003-12-13 Ralf Corsepius - - * start/Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g. - * startup/Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g. - -2003-12-12 Ralf Corsepius - - * start/Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES. - * startup/Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES. - -2003-12-12 Ralf Corsepius - - * configure.ac: Require automake >= 1.8, autoconf >= 2.59. - -2003-12-10 Ralf Corsepius - - * start/Makefile.am: Misc cleanups and fixes. - * startup/Makefile.am: Misc cleanups and fixes. - * wrapup/Makefile.am: Misc cleanups and fixes. - -2003-12-04 Ralf Corsepius - - * startup/Makefile.am: Remove S_FILES. - -2003-12-03 Ralf Corsepius - - * Makefile.am: Add preinstallation dirstamp support. - * clock/Makefile.am: Cosmetics. - * console/Makefile.am: Cosmetics. - * spurious/Makefile.am: Cosmetics. - * start/Makefile.am: Cosmetics. - * startup/Makefile.am: Cosmetics. - * timer/Makefile.am: Cosmetics. - * wrapup/Makefile.am: Cosmetics. - -2003-12-02 Ralf Corsepius - - * clock/Makefile.am: Remove all-local: $(ARCH). - * console/Makefile.am: Remove all-local: $(ARCH). - * spurious/Makefile.am: Remove all-local: $(ARCH). - * start/Makefile.am: Remove all-local: $(ARCH). - * startup/Makefile.am: Remove all-local: $(ARCH). - * timer/Makefile.am: Remove all-local: $(ARCH). - * wrapup/Makefile.am: Remove all-local: $(ARCH). - -2003-09-29 Ralf Corsepius - - * Makefile.am: Merge-in include/Makefile.am. - Reflect changes to bsp.am. - * include/Makefile.am: Remove. - * configure.ac: Reflect changes above. - -2003-09-19 Ralf Corsepius - - * bsp_specs: Remove *lib:. - -2003-09-15 Joel Sherrill - - PR 483/bsps - * start/start.c, startup/bspstart.c: Spurious interrupt handlers cannot - be installed until RTEMS has initialized the vector table. - -2003-09-04 Joel Sherrill - - * clock/ckinit.c, console/console.c, include/bsp.h, misc/interr.c, - spurious/spinit.c, startup/bspclean.c, startup/bspstart.c, - timer/timer.c: URL for license changed. - -2003-08-18 Ralf Corsepius - - * Makefile.am: Reflect having moved aclocal/. - -2003-08-16 Ralf Corsepius - - * Makefile.am: Reflect having moved automake/. - * clock/Makefile.am: Reflect having moved automake/. - * console/Makefile.am: Reflect having moved automake/. - * include/Makefile.am: Reflect having moved automake/. - * spurious/Makefile.am: Reflect having moved automake/. - * start/Makefile.am: Reflect having moved automake/. - * startup/Makefile.am: Reflect having moved automake/. - * timer/Makefile.am: Reflect having moved automake/. - * wrapup/Makefile.am: Reflect having moved automake/. - -2003-08-11 Ralf Corsepius - - PR 452/bsps - * startup/Makefile.am: Remove USE_INIT_FINI. - -2003-08-11 Ralf Corsepius - - * configure.ac: Use rtems-bugs@rtems.com as bug report email address. - -2003-08-06 Ralf Corsepius - - PR 445/bsps - * bsp_specs: Remove -D__embedded__ -Asystem(embedded) from cpp. - Remove cpp, old_cpp (now unused). - -2003-03-06 Ralf Corsepius - - * configure.ac: Remove AC_CONFIG_AUX_DIR. - -2003-02-11 Ralf Corsepius - - * configure.ac: AM_INIT_AUTOMAKE([1.7.2]). - -2003-02-11 Ralf Corsepius - - * configure.ac: AC_PREREQ(2.57). - -2003-01-20 Joel Sherrill - - * startup/linkcmds*: Add FreeBSD sysctl() sections. - -2002-12-19 Ralf Corsepius - - * start/Makefile.am: Remove stray '\'. - -2002-12-18 Ralf Corsepius - - * clock/Makefile.am: Don't include @RTEMS_BSP@.cfg. - * console/Makefile.am: Don't include @RTEMS_BSP@.cfg. - * spurious/Makefile.am: Don't include @RTEMS_BSP@.cfg. - * start/Makefile.am: Don't include @RTEMS_BSP@.cfg. - Various fixes to get it compiling again. - * startup/Makefile.am: Don't include @RTEMS_BSP@.cfg. - * timer/Makefile.am: Don't include @RTEMS_BSP@.cfg. - -2002-12-12 Ralf Corsepius - - * start/Makefile.am: Use install-data-local to install startfile. - -2002-12-10 Ralf Corsepius - - * wrapup/Makefile.am: Don't include @RTEMS_BSP@.cfg. - -2002-11-01 Joel Sherrill - - * console/console.c, start/start.c: Removed warnings. - -2002-10-21 Ralf Corsepius - - * .cvsignore: Reformat. - Add autom4te*cache. - Remove autom4te.cache. - -2002-08-21 Joel Sherrill - - * wrapup/Makefile.am: PR217 required that the idle task be moved to - libcpu so it could be more acutely aware of the CPU model. This - file was modified to pick up the idle task from there. - -2002-08-21 Joel Sherrill - - * bsp_specs: Added support for -nostdlibs. - -2002-08-11 Ralf Corsepius - - * clock/Makefile.am: Use .$(OBJEXT) instead of .o. - * console/Makefile.am: Use .$(OBJEXT) instead of .o. - * spurious/Makefile.am: Use .$(OBJEXT) instead of .o. - * start/Makefile.am: Use .$(OBJEXT) instead of .o. - * startup/Makefile.am: Use .$(OBJEXT) instead of .o. - * timer/Makefile.am: Use .$(OBJEXT) instead of .o. - * wrapup/Makefile.am: Use .$(OBJEXT) instead of .o. - -2002-08-05 Joel Sherrill - - * Per PR260 eliminate use of make-target-options. This impacted - RTEMS allowing a distinction between the CPU32 and CPU32+ in the - SuperCore and required that the m68k optimized memcpy be moved - to libcpu. - * wrapup/Makefile.am: Pick up memcpy.o from libcpu. - -2002-07-21 Ralf Corsepius - - * start/Makefile.am: Eliminate PGM. - Add bsplib_DATA = $(PROJECT_RELEASE)/lib/start$(LIB_VARIANT).o. - bsplib_DATA += $(PROJECT_RELEASE)/lib/except_vect_332_ROM$(LIB_VARIANT).o - bsplib_DATA += $(PROJECT_RELEASE)/lib/ram_init$(LIB_VARIANT) - bsplib_DATA += $(PROJECT_RELEASE)/lib/ram_init_FW$(LIB_VARIANT) - -2002-07-19 Ralf Corsepius - - * startup/Makefile.am: Add bsplib_DATA = linkcmds linkcmds_ROM. - -2002-07-04 Ralf Corsepius - - * wrapup/Makefile.am: Eliminate TMPINSTALL_FILES. - Remove $(OBJS) from all-local. - -2002-06-29 Ralf Corsepius - - * wrapup/Makefile.am: Remove preinstallation of libbsp.a, - -2001-05-09 Joel Sherrill - - * startup/linkcmds: In support of gcc 3.1, added one of more - of the sections .jcr, .rodata*, .data.*, .gnu.linkonce.s2.*, - .gnu.linkonce.sb2.*, and .gnu.linkonce.s.*. Spacing corrections - and direction of segments to memory regions may also have been - addressed. This was a sweep across all BSPs. - -2002-03-27 Ralf Corsepius - - * configure.ac: - AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS). - AM_INIT_AUTOMAKE([no-define foreign 1.6]). - * clock/Makefile.am: Remove AUTOMAKE_OPTIONS. - * Makefile.am: Remove AUTOMAKE_OPTIONS. - * console/Makefile.am: Remove AUTOMAKE_OPTIONS. - * include/Makefile.am: Remove AUTOMAKE_OPTIONS. - * spurious/Makefile.am: Remove AUTOMAKE_OPTIONS. - * start/Makefile.am: Remove AUTOMAKE_OPTIONS. - * startup/Makefile.am: Remove AUTOMAKE_OPTIONS. - * timer/Makefile.am: Remove AUTOMAKE_OPTIONS. - * wrapup/Makefile.am: Remove AUTOMAKE_OPTIONS. - -2001-12-22 Ralf Corsepius - - * bsp_specs: Replace -lrtemsall with -lrtemsbsp -lrtemscpu, - replace -lrtemsall_g with -lrtemsbsp_g -lrtemscpu_g. - -2001-11-30 Ralf Corsepius - - * configure.ac: Introduce RTEMS_BSP_CONFIGURE. - -2001-10-11 Ralf Corsepius - - * .cvsignore: Add autom4te.cache for autoconf > 2.52. - * configure.in: Remove. - * configure.ac: New file, generated from configure.in by autoupdate. - -2001-09-27 Joel Sherrill - - * include/bsp.h: Renamed delay() to rtems_bsp_delay(). - -2001-09-27 Ralf Corsepius - - * include/Makefile.am: Use 'CLEANFILES ='. - * include/Makefile.am: Use 'TMPINSTALL_FILES ='. - -2001-05-26 Ralf Corsepius - - * configure.in: Add bspopts.h. - * include/.cvsignore: Add bspopts.h*, stamp-h*. - * include/Makefile.am: Use *_HEADERS instead of *H_FILES. - * include/bsp.h: Include bspopts.h. - -2001-05-10 Ralf Corsepius - - * configure.in: Use RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm]). - -2000-11-09 Ralf Corsepius - - * Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS. - -2000-11-02 Ralf Corsepius - - * Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal. - -2000-11-01 Joel Sherrill - - * startup/bspstart.c: assoc.h, error.h, libio_.h, libio.h, - and libcsupport.h moved from libc to lib/include/rtems and - now must be referenced as . Header file order - was cleaned up while doing this. - -2000-10-27 Ralf Corsepius - - * Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros. - Switch to GNU canonicalization. - -2000-10-12 John S Gwynne - - * start/start.c: Modified to support generation of ram_init. - * start/ram_init.ld, BSP/start/ram_init.sed: New files. - These changes enable RTEMS to automatically generate - the ram_init file used by gdb with the BDM patches. The 332 has - on-board chip select lines (for RAM and FLASH) that must be - configured before use of these peripherals. These patches parse - data from start.c where the chip select lines are configured in - the runtime executable and automatically generates the gdb - initialization file using the same settings. A great time saver. - A similar file, ram_init_FW (flash writable), is also generated - that the flash programming tool uses. - * start/Makefile.am: Modified to support above. - * CPU/sim.h: Modified to support above. - * startup/except_vect_332_ROM.S: Moved to start so it would not - be included in libbsp.a. Moving it to start ensures it is - available as a single object file. - * start/except_vect_332_ROM.S: Moved from startup. - * startup/linkcmds, startup/linkcmds_ROM: Fixes to the memory map - shown in the comments. - -2000-09-29 Charles-Antoine Gauthier - - * startup/linkcmds: Added lines so DWARF debug information - would be available. Otherwise gdb complains that the offsets - for the debug info are incorrect and doesn't load the files. - -2000-09-04 Ralf Corsepius - - * clock/Makefile.am, console/Makefile.am, spurious/Makefile.am, - start/Makefile.am, startup/Makefile.am, timer/Makefile.am, - wrapup/Makefile.am: Include compile.am - -2000-08-10 Joel Sherrill - - * ChangeLog: New file. diff --git a/c/src/lib/libbsp/m68k/efi332/Makefile.am b/c/src/lib/libbsp/m68k/efi332/Makefile.am deleted file mode 100644 index e908110b45..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/Makefile.am +++ /dev/null @@ -1,30 +0,0 @@ -## -## $Id$ -## - -ACLOCAL_AMFLAGS = -I ../../../../aclocal - -# wrapup is the one that actually builds and installs the library -# from the individual .rel files built in other directories -SUBDIRS = . start startup clock console spurious timer wrapup - -include $(top_srcdir)/../../bsp.am - -include_HEADERS += include/efi332.h - -nodist_include_HEADERS += $(top_srcdir)/../../shared/include/coverhd.h - -all-local: $(PREINSTALL_FILES) - -EXTRA_DIST = times - -$(PROJECT_INCLUDE)/efi332.h: include/efi332.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/efi332.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/efi332.h - -$(PROJECT_INCLUDE)/coverhd.h: $(top_srcdir)/../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/coverhd.h - -include $(top_srcdir)/../../../../automake/subdirs.am -include $(top_srcdir)/../../../../automake/local.am diff --git a/c/src/lib/libbsp/m68k/efi332/README b/c/src/lib/libbsp/m68k/efi332/README deleted file mode 100644 index 2ece9ff5bb..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/README +++ /dev/null @@ -1,29 +0,0 @@ -# -# $Id$ -# - -Description: efi68k -============ -CPU: MC68332 @20MHz -RAM: 256k max. (supports several configurations) -ROM: 512k (supports several configurations) - - This general purpose controller has been designed by a group of -Internet subscribes to the mailing list "efi332" (an offshoot of the -"diy_efi" mailing list). Although efi332 was initially designed for -automotive research, it is a fairly generalized embedded controller -when used without the companion EFI I/O board, and is patterned much -after the the Motorola BCC. A 4x3 inch (approx.) printed circuit board -is available (about $14US). For complete information see - - http://www.diy-efi.org - -TODO: -===== -- integrate the interrupt driven stdin/stdout into RTEMS to (a) reduce - the interrupt priority and (2) to prevent it from blocking. -- add a timer driver for the tmtest set. - - - John S Gwynne, PhD. - jgwynne@mrcday.com diff --git a/c/src/lib/libbsp/m68k/efi332/bsp_specs b/c/src/lib/libbsp/m68k/efi332/bsp_specs deleted file mode 100644 index 6480bbd1b5..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/bsp_specs +++ /dev/null @@ -1,16 +0,0 @@ -%rename endfile old_endfile -%rename startfile old_startfile -%rename link old_link - -*startfile: -%{!qrtems: %(old_startfile)} %{!nostdlib: %{qrtems: \ -%{!qrtems_debug: start.o%s} \ -%{qrtems_debug: start_g.o%s} \ -crti.o%s crtbegin.o%s}} - -*link: -%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N -e start} - -*endfile: -%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s} - diff --git a/c/src/lib/libbsp/m68k/efi332/clock/.cvsignore b/c/src/lib/libbsp/m68k/efi332/clock/.cvsignore deleted file mode 100644 index 282522db03..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/clock/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -Makefile -Makefile.in diff --git a/c/src/lib/libbsp/m68k/efi332/clock/Makefile.am b/c/src/lib/libbsp/m68k/efi332/clock/Makefile.am deleted file mode 100644 index 01bde7b3e4..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/clock/Makefile.am +++ /dev/null @@ -1,30 +0,0 @@ -## -## $Id$ -## - -PGM = $(ARCH)/clock.rel - -C_FILES = ckinit.c -C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT)) - -OBJS = $(C_O_FILES) - -include $(top_srcdir)/../../../../automake/compile.am -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: $(OBJS) $(PGM) - -.PRECIOUS: $(PGM) - -EXTRA_DIST = ckinit.c - -include $(top_srcdir)/../../../../automake/local.am diff --git a/c/src/lib/libbsp/m68k/efi332/clock/ckinit.c b/c/src/lib/libbsp/m68k/efi332/clock/ckinit.c deleted file mode 100644 index b32a660542..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/clock/ckinit.c +++ /dev/null @@ -1,129 +0,0 @@ -/* Clock_init() - * - * This routine initailizes the periodic interrupt timer on - * the Motorola 68332. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * COPYRIGHT (c) 1989-1999. - * 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.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include -#include -#include - -#define CLOCK_VECTOR EFI_PIV - -rtems_unsigned32 Clock_isrs; /* ISRs until next tick */ -volatile rtems_unsigned32 Clock_driver_ticks; - /* ticks since initialization */ -rtems_isr_entry Old_ticker; - -void Clock_exit( void ); - -/* - * These are set by clock driver during its init - */ - -rtems_device_major_number rtems_clock_major = ~0; -rtems_device_minor_number rtems_clock_minor; - -rtems_isr Clock_isr(rtems_vector_number vector) -{ - Clock_driver_ticks += 1; - - if ( Clock_isrs == 1 ) { - rtems_clock_tick(); - Clock_isrs = BSP_Configuration.microseconds_per_tick / 1000; - } - else - Clock_isrs -= 1; -} - -void Install_clock( - rtems_isr_entry clock_isr -) -{ - Clock_driver_ticks = 0; - Clock_isrs = BSP_Configuration.microseconds_per_tick / 1000; - - Old_ticker = (rtems_isr_entry) set_vector( clock_isr, CLOCK_VECTOR, 1 ); - - /* enable 1mS interrupts */ - *PITR = (unsigned short int)( SAM(0x09,0,PITM) );/* load counter */ - *PICR = (unsigned short int) /* enable interrupt */ - ( SAM(ISRL_PIT,8,PIRQL) | SAM(CLOCK_VECTOR,0,PIV) ); - - atexit( Clock_exit ); -} - -void Clock_exit( void ) -{ - /* shutdown the periodic interrupt */ - *PICR = (unsigned short int) - ( SAM(0,8,PIRQL) | SAM(CLOCK_VECTOR,0,PIV) ); - /* ^^ zero disables interrupt */ - - /* do not restore old vector */ -} - -rtems_device_driver Clock_initialize( - rtems_device_major_number major, - rtems_device_minor_number minor, - void *pargp -) -{ - Install_clock( Clock_isr ); - - /* - * make major/minor avail to others such as shared memory driver - */ - - rtems_clock_major = major; - rtems_clock_minor = minor; - - return RTEMS_SUCCESSFUL; -} - -rtems_device_driver Clock_control( - rtems_device_major_number major, - rtems_device_minor_number minor, - void *pargp -) -{ - rtems_unsigned32 isrlevel; - rtems_libio_ioctl_args_t *args = pargp; - - if (args == 0) - goto done; - - /* - * This is hokey, but until we get a defined interface - * to do this, it will just be this simple... - */ - - if (args->command == rtems_build_name('I', 'S', 'R', ' ')) - { - Clock_isr(CLOCK_VECTOR); - } - else if (args->command == rtems_build_name('N', 'E', 'W', ' ')) - { - rtems_interrupt_disable( isrlevel ); - (void) set_vector( args->buffer, CLOCK_VECTOR, 1 ); - rtems_interrupt_enable( isrlevel ); - } - -done: - return RTEMS_SUCCESSFUL; -} - diff --git a/c/src/lib/libbsp/m68k/efi332/configure.ac b/c/src/lib/libbsp/m68k/efi332/configure.ac deleted file mode 100644 index c1e2c7eac8..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/configure.ac +++ /dev/null @@ -1,26 +0,0 @@ -## Process this file with autoconf to produce a configure script. -## -## $Id$ - -AC_PREREQ(2.59) -AC_INIT([rtems-c-src-lib-libbsp-m68k-efi332],[_RTEMS_VERSION],[rtems-bugs@rtems.com]) -AC_CONFIG_SRCDIR([bsp_specs]) -RTEMS_TOP(../../../../../..) - -RTEMS_CANONICAL_TARGET_CPU -AM_INIT_AUTOMAKE([no-define foreign 1.8]) -RTEMS_BSP_CONFIGURE - -RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm]) -RTEMS_CANONICALIZE_TOOLS - -# Explicitly list all Makefiles here -AC_CONFIG_FILES([Makefile -clock/Makefile -console/Makefile -spurious/Makefile -start/Makefile -startup/Makefile -timer/Makefile -wrapup/Makefile]) -AC_OUTPUT diff --git a/c/src/lib/libbsp/m68k/efi332/console/.cvsignore b/c/src/lib/libbsp/m68k/efi332/console/.cvsignore deleted file mode 100644 index 282522db03..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/console/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -Makefile -Makefile.in diff --git a/c/src/lib/libbsp/m68k/efi332/console/Makefile.am b/c/src/lib/libbsp/m68k/efi332/console/Makefile.am deleted file mode 100644 index 9f4fde7145..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/console/Makefile.am +++ /dev/null @@ -1,30 +0,0 @@ -## -## $Id$ -## - -PGM = $(ARCH)/console.rel - -C_FILES = console.c -C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT)) - -OBJS = $(C_O_FILES) - -include $(top_srcdir)/../../../../automake/compile.am -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: $(OBJS) $(PGM) - -.PRECIOUS: $(PGM) - -EXTRA_DIST = console.c - -include $(top_srcdir)/../../../../automake/local.am diff --git a/c/src/lib/libbsp/m68k/efi332/console/console.c b/c/src/lib/libbsp/m68k/efi332/console/console.c deleted file mode 100644 index f10eec8d52..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/console/console.c +++ /dev/null @@ -1,392 +0,0 @@ -/* - * This file contains the efi332 console IO package. - * - * COPYRIGHT (c) 1989-1999. - * 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.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include -#include - -/* BUFFER_LENGTH must be 2^n for n=1, 2, 3, .... */ -#define BUFFER_LENGTH 256 -#define RTS_STOP_SIZE BUFFER_LENGTH-64 -#define RTS_START_SIZE 16 - -char xmt_buf[BUFFER_LENGTH]; -char rcv_buf[BUFFER_LENGTH]; -/* in: last entry into the buffer; always on a valid character */ -/* out: points to the next character to be pull from the buffer */ -/* in+1=out => buffer empty */ -/* in+2=out => buffer full */ -struct UART_buf { - char *offset; - char *in; - char *out; -}; -static volatile struct UART_buf xmt = { xmt_buf, (char *)0, (char *)1}; -static volatile struct UART_buf rcv = { rcv_buf, (char *)0, (char *)1}; -static volatile char _debug_flag = 0; - -#define SET_RTS(a) {*PORTF0 = (*PORTF0 & ~0x4) | ( (a)? 0 : 0x4); } -#define GET_CTS (!(*PORTF0 & 0x2)) - -/* _catchSCIint, _catchCTSint, and _catchSPURIOUSint are the - interrupt front-ends */ -extern void _catchSCIint(); -asm(" .text\n\ - .align 2\n\ - .globl _catchSCIint\n\ -_catchSCIint:\n\ - moveml %d0-%d7/%a0-%a6,%sp@- /* save registers */\n\ - jbsr uart_interrupt\n\ - moveml %sp@+,%d0-%d7/%a0-%a6 \n\ - rte\n\ - "); - -extern void _catchCTSint(); -asm(" .text\n\ - .align 2\n\ - .globl _catchCTSint\n\ -_catchCTSint:\n\ - moveml %d0-%d7/%a0-%a6,%sp@- /* save registers */\n\ - jbsr cts_interrupt\n\ - moveml %sp@+,%d0-%d7/%a0-%a6 \n\ - rte\n\ - "); - -extern void _catchSPURIOUSint(); -asm(" .text\n\ - .align 2\n\ - .globl _catchSPURIOUSint\n\ -_catchSPURIOUSint:\n\ - moveml %d0-%d7/%a0-%a6,%sp@- /* save registers */\n\ - jbsr spurious_interrupt\n\ - moveml %sp@+,%d0-%d7/%a0-%a6 \n\ - rte\n\ - "); - -int _spurious_int_counter=0; - -/* note: cts uses int1. If it "bounces", a spurious interrupt is generated */ -void spurious_interrupt(void) { - _spurious_int_counter++; /* there should never be alot of these */ -} - -/* _fake_trap_1 will continue the UART interrupt (%sr *still* - UART_ISR_LEVEL) as a trap #1 to enter the debugger */ - -/* *****fix me; this is for 68000 w/jsr ram exception table ******* */ -asm(" .text\n\ - .align 2\n\ -_fake_trap_1:\n\ - unlk %a6 /* clear interrupt frame */\n\ - lea %sp@(4),%sp /* remove jbsr instruction */\n\ - moveml %sp@+,%d0-%d7/%a0-%a6 /* pop registers */\n\ - jmp (33*6-12) /* jump exception 1 */\n\ - "); - -/* dispatch UART interrupt */ -void xmit_interrupt(void); -void rcvr_interrupt(void); -void _fake_trap_1(void); - -void uart_interrupt(void) { - /* receiver status bits are cleared by a SCSR read followed - by a SCDR read. transmitter status bits are cleared by - a SCSR read followed by a SCDR write. */ - if ((*SCSR) & (TDRE | TC)) - xmit_interrupt(); - - if ((*SCSR) & (RDRF)) - rcvr_interrupt(); - - if (_debug_flag) { - _debug_flag = 0; /* reset the flag */ - _fake_trap_1(); /* fake a trap #1 */ - } -} - -/* transfer received character to the buffer */ -void rcvr_interrupt(void) { - register char *a, c; - register int length; - - while((*SCSR) & (RDRF)) { - if ((c=*SCDR) == 0x1a) /* use ctl-z to reboot */ - reboot(); -/* else if (c == 0x03) { */ /* use ctl-c to enter debugger */ -/* _debug_flag = 1; */ -/* continue; */ -/* } */ - - *(char *)((int)rcv.offset +(int) - (a=(char *)(((int)rcv.in+1) & ((int)BUFFER_LENGTH-1)))) = c; - if ((char *)(((int)rcv.in+2) & ((int)BUFFER_LENGTH-1)) != rcv.out) - rcv.in=a; - }; - - length = (BUFFER_LENGTH -1) & ( - ( ((int)rcv.out <= (int)rcv.in) ? 0 : BUFFER_LENGTH) - (int)rcv.out - + (int)rcv.in + 1); - if (length >= RTS_STOP_SIZE) - SET_RTS(0); -} - -/* tranfer buffered characters to the UART */ -void xmit_interrupt(void) { - register short int oldsr; - - _CPU_ISR_Disable( oldsr ); /* for when outbyte or flush calls */ - while ((*SCSR) & (TDRE)) { - if ((char *)(((int)xmt.in+1) & ((int)BUFFER_LENGTH-1)) != xmt.out) - /* xmit buffer not empty */ - if (GET_CTS) { - /* send next char */ - *SCDR=*(char *)((int)xmt.offset+(int)xmt.out); - xmt.out= (char *)(((int)xmt.out+1) & ((int)BUFFER_LENGTH-1)); - *SCCR1 = (*SCCR1 & ~(TIE | TCIE)) | (TIE); - } - else { - /* configue CTS interrupt and shutdown xmit interrupts */ - *SCCR1 &= ~(TIE | TCIE); - *PFPAR |= 0x2; - break; - } - else { - /* xmit buffer empty; shutdown interrupts */ - *SCCR1 &= ~(TIE | TCIE); - break; - } - } - _CPU_ISR_Enable( oldsr ); -} - -void cts_interrupt(void) { - register short int oldsr; - - _CPU_ISR_Disable( oldsr ); /* for when outbyte calls */ - - *PFPAR &= ~0x2; - *SCCR1 = (*SCCR1 & ~(TIE | TCIE)) | (TIE); - - _CPU_ISR_Enable( oldsr ); -} - - - -/* transfer character from the buffer */ -char inbyte(void) { - register char a; - register int length; - - while ((char *)(((int)rcv.in+1) & ((int)BUFFER_LENGTH-1))== rcv.out); - a=*(char *)((int)rcv.offset+(int)rcv.out); - rcv.out= (char *)(((int)rcv.out+1) & ((int)BUFFER_LENGTH-1)); - length = (BUFFER_LENGTH -1) & ( - ( ((int)rcv.out <= (int)rcv.in) ? 0 : BUFFER_LENGTH) - (int)rcv.out - + (int)rcv.in + 1); - if (length < RTS_START_SIZE) - SET_RTS(1); - return (a); -} - -/* once room is avaliable in the buffer, transfer - the character into the buffer and enable - the xmtr interrupt */ -void outbyte(char c) { - register char *a; - - while ((char *)(((int)xmt.in+2) & ((int)BUFFER_LENGTH-1)) == xmt.out); - *(char *)((int)xmt.offset+(int) - (a=(char *)(((int)xmt.in+1) & ((int)BUFFER_LENGTH-1))))=c; - xmt.in=a; - - if (!(*SCCR1 & (TIE | TCIE)) && (!(*PFPAR & 0x2)) ) - /* if neither interrupts are running, */ - xmit_interrupt(); /* we need to restart the xmiter */ -} - -void _UART_flush(void) { - /* loop till xmt buffer empty. Works with interrupts disabled */ - while ((char *)(((int)xmt.in+1) & ((int)BUFFER_LENGTH-1)) != xmt.out) - xmit_interrupt(); - /* loop till UART buffer empty */ - while ( (*SCSR & TC) == 0 ); -} - -/* console_initialize - * - * This routine initializes the console IO driver. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * Return values: - */ - -void console_init() -{ - *QSMCR = ( SAM(QSM_IARB,0,IARB) ); - *QILR = ( SAM(ISRL_QSPI,4,ILQSPI) | SAM(ISRL_SCI,0,ILSCI) ); - *QIVR = ( SAM(EFI_QIVR,0,INTV) ); - - *SCCR0 = ( (int)( SYS_CLOCK/SCI_BAUD/32.0+0.5 ) & 0x1fff ); - *SCCR1 = ( RIE | TE | RE ); - - set_vector(_catchSPURIOUSint, EFI_SPINT, 0); - set_vector(_catchSCIint, EFI_QIVR, 0); - set_vector(_catchCTSint, EFI_INT1, 0); -} - -rtems_device_driver console_initialize( - rtems_device_major_number major, - rtems_device_minor_number minor, - void *arg -) -{ - rtems_status_code status; - - status = rtems_io_register_name( - "/dev/console", - major, - (rtems_device_minor_number) 0 - ); - - if (status != RTEMS_SUCCESSFUL) - rtems_fatal_error_occurred(status); - - return RTEMS_SUCCESSFUL; -} - -/* is_character_ready - * - * This routine returns TRUE if a character is available. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * Return values: - */ - -rtems_boolean is_character_ready( - char *ch -) -{ - if ((char *)(((int)rcv.in+1) & ((int)BUFFER_LENGTH-1))== rcv.out) - return(FALSE); - else - return(TRUE); -} - -/* - * Open entry point - */ - -rtems_device_driver console_open( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - return RTEMS_SUCCESSFUL; -} - -/* - * Close entry point - */ - -rtems_device_driver console_close( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - return RTEMS_SUCCESSFUL; -} - -/* - * read bytes from the serial port. We only have stdin. - */ - -rtems_device_driver console_read( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - rtems_libio_rw_args_t *rw_args; - char *buffer; - int maximum; - int count; - - rw_args = (rtems_libio_rw_args_t *) arg; - - buffer = rw_args->buffer; - maximum = rw_args->count; - - for (count = 0; count < maximum; count++) { - buffer[ count ] = inbyte(); - if (buffer[ count ] == '\n' || buffer[ count ] == '\r') { - buffer[ count++ ] = '\n'; - break; - } - } - - rw_args->bytes_moved = count; - return (count >= 0) ? RTEMS_SUCCESSFUL : RTEMS_UNSATISFIED; -} - -/* - * write bytes to the serial port. Stdout and stderr are the same. - */ - -rtems_device_driver console_write( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - int count; - int maximum; - rtems_libio_rw_args_t *rw_args; - char *buffer; - - rw_args = (rtems_libio_rw_args_t *) arg; - - buffer = rw_args->buffer; - maximum = rw_args->count; - - for (count = 0; count < maximum; count++) { - if ( buffer[ count ] == '\n') { - outbyte('\r'); - } - outbyte( buffer[ count ] ); - } - - rw_args->bytes_moved = maximum; - return 0; -} - -/* - * IO Control entry point - */ - -rtems_device_driver console_control( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - return RTEMS_SUCCESSFUL; -} - diff --git a/c/src/lib/libbsp/m68k/efi332/include/.cvsignore b/c/src/lib/libbsp/m68k/efi332/include/.cvsignore deleted file mode 100644 index b0be3c54e6..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/include/.cvsignore +++ /dev/null @@ -1,6 +0,0 @@ -Makefile -Makefile.in -bspopts.h -bspopts.h.in -stamp-h -stamp-h.in diff --git a/c/src/lib/libbsp/m68k/efi332/include/bsp.h b/c/src/lib/libbsp/m68k/efi332/include/bsp.h deleted file mode 100644 index ebbb6c17fb..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/include/bsp.h +++ /dev/null @@ -1,165 +0,0 @@ -/* bsp.h - * - * This include file contains all efi332 board IO definitions. - * - * COPYRIGHT (c) 1989-1999. - * 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.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#ifndef __EFI332_BSP_h -#define __EFI332_BSP_h - -#ifdef __cplusplus -extern "C" { -#endif - -#include - -#include -#include -#include -#include -#include -#include -#include - -/* - * confdefs.h overrides for this BSP: - * - number of termios serial ports (defaults to 1) - * - Interrupt stack space is not minimum if defined. - */ - -/* #define CONFIGURE_NUMBER_OF_TERMIOS_PORTS 2 */ -/* #define CONFIGURE_INTERRUPT_STACK_MEMORY (TBD * 1024) */ - -/* - * Define the time limits for RTEMS Test Suite test durations. - * Long test and short test duration limits are provided. These - * values are in seconds and need to be converted to ticks for the - * application. - * - */ - -#define MAX_LONG_TEST_DURATION 300 /* 5 minutes = 300 seconds */ -#define MAX_SHORT_TEST_DURATION 3 /* 3 seconds */ - -/* - * Define the interrupt mechanism for Time Test 27 - */ - -/* XXX - JRS - I want to compile the tmtests */ - -#define MUST_WAIT_FOR_INTERRUPT 1 - -#define Install_tm27_vector( handler ) - -#define Cause_tm27_intr() - -#define Clear_tm27_intr() - -#define Lower_tm27_intr() - -/* - * Simple spin delay in microsecond units for device drivers. - * This is very dependent on the clock speed of the target. - */ - -#define rtems_bsp_delay( microseconds ) \ - { register rtems_unsigned32 _delay=(microseconds); \ - register rtems_unsigned32 _tmp=123; \ - asm volatile( "0: \ - nbcd %0 ; \ - nbcd %0 ; \ - dbf %1,0b" \ - : "=d" (_tmp), "=d" (_delay) \ - : "0" (_tmp), "1" (_delay) ); \ - } - -/* externals */ - -extern char _etext[]; -extern char _copy_start[]; -extern char _edata[]; -extern char _clear_start[]; -extern char end[]; -extern char _copy_data_from_rom[]; - -/* constants */ - -#ifdef __START_C__ -#define STACK_SIZE "#0x800" -#else -#define STACK_SIZE 0x800 -#endif - -/* macros */ - -#define RAW_PUTS(str) \ - { register char *ptr = str; \ - while (*ptr) outbyte(*ptr++); \ - } - -#define RAW_PUTI(n) { \ - register int i, j; \ - \ - RAW_PUTS("0x"); \ - for (i=28;i>=0;i -= 4) { \ - j = (n>>i) & 0xf; \ - outbyte( (j>9 ? j-10+'a' : j+'0') ); \ - } \ - } - -/* miscellaneous stuff assumed to exist */ - -extern rtems_configuration_table BSP_Configuration; - -extern m68k_isr_entry M68Kvec[]; /* vector table address */ - -extern int stack_size; - -extern int stack_start; - -/* - * Device Driver Table Entries - */ - -/* - * NOTE: Use the standard Console driver entry - */ - -/* - * NOTE: Use the standard Clock driver entry - */ - -/* functions */ - -void bsp_cleanup( void ); - -m68k_isr_entry set_vector( - rtems_isr_entry handler, - rtems_vector_number vector, - int type -); - -void console_init(void); - -void Spurious_Initialize(void); - -void _UART_flush(void); - -void Clock_exit(void); - -void outbyte(char); - -#ifdef __cplusplus -} -#endif - -#endif -/* end of include file */ diff --git a/c/src/lib/libbsp/m68k/efi332/include/efi332.h b/c/src/lib/libbsp/m68k/efi332/include/efi332.h deleted file mode 100644 index b19b225109..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/include/efi332.h +++ /dev/null @@ -1,52 +0,0 @@ -/* efi332.h - * - * $Id$ - */ - -#ifndef _EFI332_H_ -#define _EFI332_H_ - - -/* SIM_MM (SIM Module Mapping) determines the location of the control - register block. When MM=0, register addresses range fom 0x7ff000 to - 0x7FFFFF. When MM=1, register addresses range from 0xfff000 to - 0xffffff. */ -#define SIM_MM 1 - - -/* Interrupt related definitions */ -#define SIM_IARB 15 -#define QSM_IARB 10 - -#define EFI_PIV 64 -#define ISRL_PIT 4 /* zero disables PIT */ - -#define EFI_QIVR 66 /* 66=>SCI and 67=>QSPI interrupt */ -#define ISRL_QSPI 0 - -#define EFI_SPINT 24 /* spurious interrupt */ -#define EFI_INT1 25 /* CTS interrupt */ -#define ISRL_SCI 6 - - - -/* System Clock definitions */ -#define XTAL 32768.0 /* crystal frequency in Hz */ -#define EFI_W 0 /* system clock parameters */ -#define EFI_X 1 -#define EFI_Y 0x38 -#define SYS_CLOCK (XTAL*4.0*(EFI_Y+1)*(1 << (2*EFI_W+EFI_X))) -#define SCI_BAUD 115200 /* RS232 Baud Rate */ - - -/* macros/functions */ - -/* - * This prototype really should have the noreturn attribute but - * that causes a warning. Not sure how to fix that. - */ -/* static void reboot(void) __attribute__ ((noreturn)); */ -static void reboot(void); -__inline__ static void reboot() {asm("trap #15");} - -#endif /* _EFI332_H_ */ diff --git a/c/src/lib/libbsp/m68k/efi332/misc/dotests b/c/src/lib/libbsp/m68k/efi332/misc/dotests deleted file mode 100644 index f701e01114..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/misc/dotests +++ /dev/null @@ -1,15 +0,0 @@ -#! /bin/bash -# -# $Id$ -# - -mkdir MyTests -find -name MyTests -prune -or -name "*.nxe" -exec cp {} MyTests \; - -stty 1:0:80001cb2:0:3:1c:7f:15:4:5:1:0:11:13:1a:0:12:f:17:16:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 -#include -#include -#include - -/*PAGE - * - * _Internal_error_Occurred - * - * This routine will invoke the fatal error handler supplied by the user - * followed by the the default one provided by the executive. The default - * error handler assumes no hardware is present to help inform the user - * of the problem. Halt stores the error code in a known register, - * disables interrupts, and halts the CPU. If the CPU does not have a - * halt instruction, it will loop to itself. - * - * Input parameters: - * the_source - what subsystem the error originated in - * is_internal - if the error was internally generated - * the_error - fatal error status code - * - * Output parameters: - * As much information as possible is stored in a CPU dependent fashion. - * See the CPU dependent code for more information. - * - * NOTE: The the_error is not necessarily a directive status code. - */ - -/* - * Ugly hack.... _CPU_Fatal_halt() disonnects the bdm. Without this - * change, the_error is only known only to the cpu :). - * - * From "bsp.h" which is not yet available in the arch tree during - * this phase of install. jsg - */ -void outbyte(char); -void bsp_cleanup( void ); - -#define RAW_PUTS(str) \ - { register char *ptr = str; \ - while (*ptr) outbyte(*ptr++); \ - } - -#define RAW_PUTI(n) { \ - register int i, j; \ - \ - RAW_PUTS("0x"); \ - for (i=28;i>=0;i -= 4) { \ - j = (n>>i) & 0xf; \ - outbyte( (j>9 ? j-10+'a' : j+'0') ); \ - } \ - } - -void volatile _Internal_error_Occurred( - Internal_errors_Source the_source, - boolean is_internal, - unsigned32 the_error -) -{ - - Internal_errors_What_happened.the_source = the_source; - Internal_errors_What_happened.is_internal = is_internal; - Internal_errors_What_happened.the_error = the_error; - - _User_extensions_Fatal( the_source, is_internal, the_error ); - - _System_state_Set( SYSTEM_STATE_FAILED ); - - /* try to print error message to outbyte */ - RAW_PUTS("\r\nRTEMS: A fatal error has occured.\r\n"); - RAW_PUTS("RTEMS: fatal error "); - RAW_PUTI( the_error ); - RAW_PUTS(" ("); - outbyte( (char)((the_error>>24) & 0xff) ); - outbyte( (char)((the_error>>16) & 0xff) ); - outbyte( (char)((the_error>>8) & 0xff) ); - outbyte( (char)(the_error & 0xff) ); - RAW_PUTS(").\r\n"); - - /* configure peripherals for a safe exit */ - bsp_cleanup(); - - _CPU_Fatal_halt( the_error ); - - /* will not return from this routine */ -} diff --git a/c/src/lib/libbsp/m68k/efi332/spurious/.cvsignore b/c/src/lib/libbsp/m68k/efi332/spurious/.cvsignore deleted file mode 100644 index 282522db03..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/spurious/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -Makefile -Makefile.in diff --git a/c/src/lib/libbsp/m68k/efi332/spurious/Makefile.am b/c/src/lib/libbsp/m68k/efi332/spurious/Makefile.am deleted file mode 100644 index 265ed15700..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/spurious/Makefile.am +++ /dev/null @@ -1,30 +0,0 @@ -## -## $Id$ -## - -PGM = $(ARCH)/spurious.rel - -C_FILES = spinit.c -C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT)) - -OBJS = $(C_O_FILES) - -include $(top_srcdir)/../../../../automake/compile.am -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: $(OBJS) $(PGM) - -.PRECIOUS: $(PGM) - -EXTRA_DIST = spinit.c - -include $(top_srcdir)/../../../../automake/local.am diff --git a/c/src/lib/libbsp/m68k/efi332/spurious/spinit.c b/c/src/lib/libbsp/m68k/efi332/spurious/spinit.c deleted file mode 100644 index f165366236..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/spurious/spinit.c +++ /dev/null @@ -1,88 +0,0 @@ -/* Spurious_driver - * - * This routine installs spurious interrupt handlers for the efi332. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993. - * 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.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include - -const char * const _Spurious_Error_[] = {"Reset","Bus Error","Address Error", - "Illegal Instruction","Zero Division","CHK, CHK2 Instruction", - "TRAPcc, TRAPV Instruction","Privilege Violation","Trace", - "Line 1010 Emulation","Line 1111 Emulation","Hardware Breakpoint", - "Coprocessor Protocal Violation", - "Format Error ans Uninitialized Interrupt","Unassigned", - "Spurious Interrupt","AVec1","AVec2","AVec3","AVec4","AVec5","AVec6", - "AVec7","Trap Instruction","Debug","Reboot","Reserved Coprocessor", - "Reserved Unassigned","User Defined"}; - -rtems_isr Spurious_Isr( - rtems_vector_number vector -) -{ - int sp = 0; - const char * const VectDescrip[] = { - _Spurious_Error_[0], _Spurious_Error_[0], _Spurious_Error_[1], - _Spurious_Error_[2], _Spurious_Error_[3], _Spurious_Error_[4], - _Spurious_Error_[5], _Spurious_Error_[6], _Spurious_Error_[7], - _Spurious_Error_[8], _Spurious_Error_[9], _Spurious_Error_[10], - _Spurious_Error_[11], _Spurious_Error_[12], _Spurious_Error_[13], - _Spurious_Error_[13], _Spurious_Error_[14], _Spurious_Error_[14], - _Spurious_Error_[14], _Spurious_Error_[14], _Spurious_Error_[14], - _Spurious_Error_[14], _Spurious_Error_[14], _Spurious_Error_[14], - _Spurious_Error_[15], _Spurious_Error_[16], _Spurious_Error_[17], - _Spurious_Error_[18], _Spurious_Error_[19], _Spurious_Error_[20], - _Spurious_Error_[21], _Spurious_Error_[22], _Spurious_Error_[23], - _Spurious_Error_[24], _Spurious_Error_[23], _Spurious_Error_[23], - _Spurious_Error_[23], _Spurious_Error_[23], _Spurious_Error_[23], - _Spurious_Error_[23], _Spurious_Error_[23], _Spurious_Error_[23], - _Spurious_Error_[23], _Spurious_Error_[23], _Spurious_Error_[23], - _Spurious_Error_[23], _Spurious_Error_[23], _Spurious_Error_[25], - _Spurious_Error_[26], _Spurious_Error_[26], _Spurious_Error_[26], - _Spurious_Error_[26], _Spurious_Error_[26], _Spurious_Error_[26], - _Spurious_Error_[26], _Spurious_Error_[26], _Spurious_Error_[26], - _Spurious_Error_[26], _Spurious_Error_[26], _Spurious_Error_[27], - _Spurious_Error_[27], _Spurious_Error_[27], _Spurious_Error_[27], - _Spurious_Error_[27], _Spurious_Error_[28]}; - - asm volatile ( "movea.l %%sp,%0 " : "=a" (sp) : "0" (sp) ); - - _CPU_ISR_Set_level( 7 ); - _UART_flush(); - - RAW_PUTS("\n\rRTEMS: Spurious interrupt: "); - RAW_PUTS((char *)VectDescrip[( (vector>64) ? 64 : vector )]); - RAW_PUTS("\n\rRTEMS: Vector: "); - RAW_PUTI(vector); - RAW_PUTS(" sp: "); - RAW_PUTI(sp); - RAW_PUTS("\n\r"); - - bsp_cleanup(); - - /* BDM SIGEMT */ - asm(" .word 0x4afa"); - - for(;;); -} - -void Spurious_Initialize(void) -{ - rtems_vector_number vector; - - for ( vector = 0x0 ; vector <= 0xFF ; vector++ ) - (void) set_vector( Spurious_Isr, vector, 1 ); -} diff --git a/c/src/lib/libbsp/m68k/efi332/start/.cvsignore b/c/src/lib/libbsp/m68k/efi332/start/.cvsignore deleted file mode 100644 index 282522db03..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/start/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -Makefile -Makefile.in diff --git a/c/src/lib/libbsp/m68k/efi332/start/Makefile.am b/c/src/lib/libbsp/m68k/efi332/start/Makefile.am deleted file mode 100644 index 917008e050..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/start/Makefile.am +++ /dev/null @@ -1,65 +0,0 @@ -## -## $Id$ -## - -C_FILES = start.c -OBJS = $(C_FILES:%.c=$(ARCH)/%$(LIB_VARIANT).$(OBJEXT)) -S_FILES = except_vect_332_ROM.S -OBJS += $(S_FILES:%.c=$(ARCH)/%$(LIB_VARIANT).$(OBJEXT)) - -include $(top_srcdir)/../../../../automake/compile.am -include $(top_srcdir)/../../../../automake/lib.am -include $(top_srcdir)/../../bspstart.am - -# -# (OPTIONAL) Add local stuff here using += -# - -project_lib_DATA = $(ARCH)/start$(LIB_VARIANT).$(OBJEXT) -project_lib_DATA += $(ARCH)/except_vect_332_ROM$(LIB_VARIANT).$(OBJEXT) -project_lib_DATA += $(ARCH)/ram_init$(LIB_VARIANT) -project_lib_DATA += $(ARCH)/ram_init_FW$(LIB_VARIANT) - -$(ARCH)/ram_init$(LIB_VARIANT): $(srcdir)/start.c $(srcdir)/ram_init.ld $(srcdir)/ram_init.sed $(ARCH)/$(dirstamp) - sed -f $(srcdir)/ram_init.sed $(srcdir)/start.c >$(ARCH)/ram_init.S - $(CC) -D SIM_CRB=0x0000 -E $(ARCH)/ram_init.S >$(ARCH)/ram_init1.S - sed "/.$(OBJEXT)rg/ {N; s/\n/%/; P;}; /\.text/P; D;" $(ARCH)/ram_init1.S | \ - sort | sed "h;1{s/.*/.data/;P;g;};s/%.*//;P;g;s/.*%//;" \ - >$(ARCH)/ram_init2.S - $(CC) -nostdlib -Wl,-T$(srcdir)/ram_init.ld $(ARCH)/ram_init2.S \ - -o $(ARCH)/ram_init$(LIB_VARIANT) - -$(ARCH)/ram_init_FW$(LIB_VARIANT): $(srcdir)/ram_init.ld $(ARCH)/ram_init.S $(ARCH)/$(dirstamp) - $(CC) -D FLASHWRITE -D SIM_CRB=0x0000 -E $(ARCH)/ram_init.S \ - >$(ARCH)/ram_init_FW1.S - sed "/.$(OBJEXT)rg/ {N; s/\n/%/; P;}; /\.text/P; D;" $(ARCH)/ram_init_FW1.S | \ - sort | sed "h;1{s/.*/.data/;P;g;};s/%.*//;P;g;s/.*%//;" \ - >$(ARCH)/ram_init_FW2.S - $(CC) -nostdlib -Wl,-T$(srcdir)/ram_init.ld $(ARCH)/ram_init_FW2.S \ - -o $(ARCH)/ram_init_FW$(LIB_VARIANT) - -all-local: $(TMPINSTALL_FILES) - -EXTRA_DIST = start.c except_vect_332_ROM.S ram_init.ld ram_init.sed - -$(PROJECT_LIB)/$(dirstamp): - @$(mkdir_p) $(PROJECT_LIB) - @: > $(PROJECT_LIB)/$(dirstamp) - -$(PROJECT_LIB)/start$(LIB_VARIANT).$(OBJEXT): $(ARCH)/start$(LIB_VARIANT).$(OBJEXT) $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/start$(LIB_VARIANT).$(OBJEXT) -TMPINSTALL_FILES += $(PROJECT_LIB)/start$(LIB_VARIANT).$(OBJEXT) - -$(PROJECT_LIB)/except_vect_332_ROM$(LIB_VARIANT).$(OBJEXT): $(ARCH)/except_vect_332_ROM$(LIB_VARIANT).$(OBJEXT) $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/except_vect_332_ROM$(LIB_VARIANT).$(OBJEXT) -TMPINSTALL_FILES += $(PROJECT_LIB)/except_vect_332_ROM$(LIB_VARIANT).$(OBJEXT) - -$(PROJECT_LIB)/ram_init$(LIB_VARIANT): $(ARCH)/ram_init$(LIB_VARIANT) $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/ram_init$(LIB_VARIANT) -TMPINSTALL_FILES += $(PROJECT_LIB)/ram_init$(LIB_VARIANT) - -$(PROJECT_LIB)/ram_init_FW$(LIB_VARIANT): $(ARCH)/ram_init_FW$(LIB_VARIANT) $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/ram_init_FW$(LIB_VARIANT) -TMPINSTALL_FILES += $(PROJECT_LIB)/ram_init_FW$(LIB_VARIANT) - -include $(top_srcdir)/../../../../automake/local.am diff --git a/c/src/lib/libbsp/m68k/efi332/start/except_vect_332_ROM.S b/c/src/lib/libbsp/m68k/efi332/start/except_vect_332_ROM.S deleted file mode 100644 index 9eb2f20556..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/start/except_vect_332_ROM.S +++ /dev/null @@ -1,290 +0,0 @@ -/* - * $Id$ - */ - -/* Exception Vector definitions follow */ - - /* !!! Warning !!! This table is not tested, and - the user must make sure it is complete. */ - - /* If we use TRAP #15 for reboot, note that group 0 and 1 exceptions - will have priority. */ - - /* Vector 0: RESET: Initial SSP */ - .long _RamEnd - /* Vector 1: RESET: Initial PC */ - .long start - - /* default action for undefined vectors is to re-boot */ - - /* Note group 0 and 1 exception (like trace) have priority - over other exceptions (like trap #15) that may call this. */ - - /* Vectors 2-255 */ - .long reboot /* exception vector: 2 */ - .long reboot /* exception vector: 3 */ - .long reboot /* exception vector: 4 */ - .long reboot /* exception vector: 5 */ - .long reboot /* exception vector: 6 */ - .long reboot /* exception vector: 7 */ - .long reboot /* exception vector: 8 */ - .long reboot /* exception vector: 9 */ - .long reboot /* exception vector: 10 */ - .long reboot /* exception vector: 11 */ - .long reboot /* exception vector: 12 */ - .long reboot /* exception vector: 13 */ - .long reboot /* exception vector: 14 */ - .long reboot /* exception vector: 15 */ - .long reboot /* exception vector: 16 */ - .long reboot /* exception vector: 17 */ - .long reboot /* exception vector: 18 */ - .long reboot /* exception vector: 19 */ - .long reboot /* exception vector: 20 */ - .long reboot /* exception vector: 21 */ - .long reboot /* exception vector: 22 */ - .long reboot /* exception vector: 23 */ - .long reboot /* exception vector: 24 */ - .long reboot /* exception vector: 25 */ - .long reboot /* exception vector: 26 */ - .long reboot /* exception vector: 27 */ - .long reboot /* exception vector: 28 */ - .long reboot /* exception vector: 29 */ - .long reboot /* exception vector: 30 */ - .long reboot /* exception vector: 31 */ - .long reboot /* exception vector: 32 */ - .long reboot /* exception vector: 33 */ - .long reboot /* exception vector: 34 */ - .long reboot /* exception vector: 35 */ - .long reboot /* exception vector: 36 */ - .long reboot /* exception vector: 37 */ - .long reboot /* exception vector: 38 */ - .long reboot /* exception vector: 39 */ - .long reboot /* exception vector: 40 */ - .long reboot /* exception vector: 41 */ - .long reboot /* exception vector: 42 */ - .long reboot /* exception vector: 43 */ - .long reboot /* exception vector: 44 */ - .long reboot /* exception vector: 45 */ - .long reboot /* exception vector: 46 */ - .long _reboot /* the reboot trap: 47 */ - .long reboot /* exception vector: 48 */ - .long reboot /* exception vector: 49 */ - .long reboot /* exception vector: 50 */ - .long reboot /* exception vector: 51 */ - .long reboot /* exception vector: 52 */ - .long reboot /* exception vector: 53 */ - .long reboot /* exception vector: 54 */ - .long reboot /* exception vector: 55 */ - .long reboot /* exception vector: 56 */ - .long reboot /* exception vector: 57 */ - .long reboot /* exception vector: 58 */ - .long reboot /* exception vector: 59 */ - .long reboot /* exception vector: 60 */ - .long reboot /* exception vector: 61 */ - .long reboot /* exception vector: 62 */ - .long reboot /* exception vector: 63 */ - .long reboot /* exception vector: 64 */ - .long reboot /* exception vector: 65 */ - .long reboot /* exception vector: 66 */ - .long reboot /* exception vector: 67 */ - .long reboot /* exception vector: 68 */ - .long reboot /* exception vector: 69 */ - .long reboot /* exception vector: 70 */ - .long reboot /* exception vector: 71 */ - .long reboot /* exception vector: 72 */ - .long reboot /* exception vector: 73 */ - .long reboot /* exception vector: 74 */ - .long reboot /* exception vector: 75 */ - .long reboot /* exception vector: 76 */ - .long reboot /* exception vector: 77 */ - .long reboot /* exception vector: 78 */ - .long reboot /* exception vector: 79 */ - .long reboot /* exception vector: 80 */ - .long reboot /* exception vector: 81 */ - .long reboot /* exception vector: 82 */ - .long reboot /* exception vector: 83 */ - .long reboot /* exception vector: 84 */ - .long reboot /* exception vector: 85 */ - .long reboot /* exception vector: 86 */ - .long reboot /* exception vector: 87 */ - .long reboot /* exception vector: 88 */ - .long reboot /* exception vector: 89 */ - .long reboot /* exception vector: 90 */ - .long reboot /* exception vector: 91 */ - .long reboot /* exception vector: 92 */ - .long reboot /* exception vector: 93 */ - .long reboot /* exception vector: 94 */ - .long reboot /* exception vector: 95 */ - .long reboot /* exception vector: 96 */ - .long reboot /* exception vector: 97 */ - .long reboot /* exception vector: 98 */ - .long reboot /* exception vector: 99 */ - .long reboot /* exception vector: 100 */ - .long reboot /* exception vector: 101 */ - .long reboot /* exception vector: 102 */ - .long reboot /* exception vector: 103 */ - .long reboot /* exception vector: 104 */ - .long reboot /* exception vector: 105 */ - .long reboot /* exception vector: 106 */ - .long reboot /* exception vector: 107 */ - .long reboot /* exception vector: 108 */ - .long reboot /* exception vector: 109 */ - .long reboot /* exception vector: 110 */ - .long reboot /* exception vector: 111 */ - .long reboot /* exception vector: 112 */ - .long reboot /* exception vector: 113 */ - .long reboot /* exception vector: 114 */ - .long reboot /* exception vector: 115 */ - .long reboot /* exception vector: 116 */ - .long reboot /* exception vector: 117 */ - .long reboot /* exception vector: 118 */ - .long reboot /* exception vector: 119 */ - .long reboot /* exception vector: 120 */ - .long reboot /* exception vector: 121 */ - .long reboot /* exception vector: 122 */ - .long reboot /* exception vector: 123 */ - .long reboot /* exception vector: 124 */ - .long reboot /* exception vector: 125 */ - .long reboot /* exception vector: 126 */ - .long reboot /* exception vector: 127 */ - .long reboot /* exception vector: 128 */ - .long reboot /* exception vector: 129 */ - .long reboot /* exception vector: 130 */ - .long reboot /* exception vector: 131 */ - .long reboot /* exception vector: 132 */ - .long reboot /* exception vector: 133 */ - .long reboot /* exception vector: 134 */ - .long reboot /* exception vector: 135 */ - .long reboot /* exception vector: 136 */ - .long reboot /* exception vector: 137 */ - .long reboot /* exception vector: 138 */ - .long reboot /* exception vector: 139 */ - .long reboot /* exception vector: 140 */ - .long reboot /* exception vector: 141 */ - .long reboot /* exception vector: 142 */ - .long reboot /* exception vector: 143 */ - .long reboot /* exception vector: 144 */ - .long reboot /* exception vector: 145 */ - .long reboot /* exception vector: 146 */ - .long reboot /* exception vector: 147 */ - .long reboot /* exception vector: 148 */ - .long reboot /* exception vector: 149 */ - .long reboot /* exception vector: 150 */ - .long reboot /* exception vector: 151 */ - .long reboot /* exception vector: 152 */ - .long reboot /* exception vector: 153 */ - .long reboot /* exception vector: 154 */ - .long reboot /* exception vector: 155 */ - .long reboot /* exception vector: 156 */ - .long reboot /* exception vector: 157 */ - .long reboot /* exception vector: 158 */ - .long reboot /* exception vector: 159 */ - .long reboot /* exception vector: 160 */ - .long reboot /* exception vector: 161 */ - .long reboot /* exception vector: 162 */ - .long reboot /* exception vector: 163 */ - .long reboot /* exception vector: 164 */ - .long reboot /* exception vector: 165 */ - .long reboot /* exception vector: 166 */ - .long reboot /* exception vector: 167 */ - .long reboot /* exception vector: 168 */ - .long reboot /* exception vector: 169 */ - .long reboot /* exception vector: 170 */ - .long reboot /* exception vector: 171 */ - .long reboot /* exception vector: 172 */ - .long reboot /* exception vector: 173 */ - .long reboot /* exception vector: 174 */ - .long reboot /* exception vector: 175 */ - .long reboot /* exception vector: 176 */ - .long reboot /* exception vector: 177 */ - .long reboot /* exception vector: 178 */ - .long reboot /* exception vector: 179 */ - .long reboot /* exception vector: 180 */ - .long reboot /* exception vector: 181 */ - .long reboot /* exception vector: 182 */ - .long reboot /* exception vector: 183 */ - .long reboot /* exception vector: 184 */ - .long reboot /* exception vector: 185 */ - .long reboot /* exception vector: 186 */ - .long reboot /* exception vector: 187 */ - .long reboot /* exception vector: 188 */ - .long reboot /* exception vector: 189 */ - .long reboot /* exception vector: 190 */ - .long reboot /* exception vector: 191 */ - .long reboot /* exception vector: 192 */ - .long reboot /* exception vector: 193 */ - .long reboot /* exception vector: 194 */ - .long reboot /* exception vector: 195 */ - .long reboot /* exception vector: 196 */ - .long reboot /* exception vector: 197 */ - .long reboot /* exception vector: 198 */ - .long reboot /* exception vector: 199 */ - .long reboot /* exception vector: 200 */ - .long reboot /* exception vector: 201 */ - .long reboot /* exception vector: 202 */ - .long reboot /* exception vector: 203 */ - .long reboot /* exception vector: 204 */ - .long reboot /* exception vector: 205 */ - .long reboot /* exception vector: 206 */ - .long reboot /* exception vector: 207 */ - .long reboot /* exception vector: 208 */ - .long reboot /* exception vector: 209 */ - .long reboot /* exception vector: 210 */ - .long reboot /* exception vector: 211 */ - .long reboot /* exception vector: 212 */ - .long reboot /* exception vector: 213 */ - .long reboot /* exception vector: 214 */ - .long reboot /* exception vector: 215 */ - .long reboot /* exception vector: 216 */ - .long reboot /* exception vector: 217 */ - .long reboot /* exception vector: 218 */ - .long reboot /* exception vector: 219 */ - .long reboot /* exception vector: 220 */ - .long reboot /* exception vector: 221 */ - .long reboot /* exception vector: 222 */ - .long reboot /* exception vector: 223 */ - .long reboot /* exception vector: 224 */ - .long reboot /* exception vector: 225 */ - .long reboot /* exception vector: 226 */ - .long reboot /* exception vector: 227 */ - .long reboot /* exception vector: 228 */ - .long reboot /* exception vector: 229 */ - .long reboot /* exception vector: 230 */ - .long reboot /* exception vector: 231 */ - .long reboot /* exception vector: 232 */ - .long reboot /* exception vector: 233 */ - .long reboot /* exception vector: 234 */ - .long reboot /* exception vector: 235 */ - .long reboot /* exception vector: 236 */ - .long reboot /* exception vector: 237 */ - .long reboot /* exception vector: 238 */ - .long reboot /* exception vector: 239 */ - .long reboot /* exception vector: 240 */ - .long reboot /* exception vector: 241 */ - .long reboot /* exception vector: 242 */ - .long reboot /* exception vector: 243 */ - .long reboot /* exception vector: 244 */ - .long reboot /* exception vector: 245 */ - .long reboot /* exception vector: 246 */ - .long reboot /* exception vector: 247 */ - .long reboot /* exception vector: 248 */ - .long reboot /* exception vector: 249 */ - .long reboot /* exception vector: 250 */ - .long reboot /* exception vector: 251 */ - .long reboot /* exception vector: 252 */ - .long reboot /* exception vector: 253 */ - .long reboot /* exception vector: 254 */ - .long reboot /* exception vector: 255 */ - - -_reboot: - move #0x2700,%sr /* mask interrupts */ - movea.l (0x0).w,%a7 /* load stack */ - movea.l (0x4).w,%a0 /* jmp to location of reset vector */ - jmp (%a0) - -reboot: - trap #15 /* use trap exception to enter supervisor - state. Trace mode ( and other group 0 - and 1 exceptions) *could* screw this up if - not vectored to reboot or did not return. */ diff --git a/c/src/lib/libbsp/m68k/efi332/start/ram_init.ld b/c/src/lib/libbsp/m68k/efi332/start/ram_init.ld deleted file mode 100644 index d469431027..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/start/ram_init.ld +++ /dev/null @@ -1,22 +0,0 @@ -OUTPUT_ARCH(m68k) -__DYNAMIC = 0; - -start = 0; - -MEMORY -{ - ram : ORIGIN = 0xfffa00, LENGTH = 256K -} - -SECTIONS -{ - .text : { - *(.text) - } >ram - .data : { - *(.data) - } >ram - .bss : { - *(.bss) - } >ram -} diff --git a/c/src/lib/libbsp/m68k/efi332/start/ram_init.sed b/c/src/lib/libbsp/m68k/efi332/start/ram_init.sed deleted file mode 100644 index ae664ca32d..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/start/ram_init.sed +++ /dev/null @@ -1,47 +0,0 @@ -1 { -i\ -#include \ -#define ASM\ -#include "sim.h"\ -\ -/* This file is automatically generated from EFI332_crt0.c -- DO NOT EDIT */\ -\ -/* note: For one reason or another, I could not get '|' (bit-or) to\ - work in the version of gas I'm using. I've replaced them with \ - '+' (addition) for this file. */\ -\ - .text\ -\ - -D; -}; -/include in ram_init.S/,/end include in ram_init.S/ { -/\*.*= *\(.*\)/ { -s/*/ .org / -h; -s/=.*// -P; -g; -/(.*short int)/ s/.*short int)/ .short / -/(.*char)/ s/.*char)/ .byte / -s/\/\*.*\*\/// -t dumby -:dumby -s/;//; -t next -N; -s/ *\/\*.*\*\/ *// -t dumby -b dumby -:next -s/ / /g -s/ / / -s/ *\n *//g -s/|/+/g -P; -D; -} -P; -D; -} -D; diff --git a/c/src/lib/libbsp/m68k/efi332/start/start.c b/c/src/lib/libbsp/m68k/efi332/start/start.c deleted file mode 100644 index 20ad83bea2..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/start/start.c +++ /dev/null @@ -1,228 +0,0 @@ -/* - * $Id - */ - -#include -#include -#define __START_C__ -#include "bsp.h" - -m68k_isr_entry M68Kvec[256]; -m68k_isr_entry vectors[256]; -char * const __argv[]= {"main", ""}; - -void boot_card(int argc, char * const argv[]); - -/* - * This prototype really should have the noreturn attribute but - * that causes a warning. Not sure how to fix that. - */ -/* void dumby_start () __attribute__ ((noreturn)); */ -void dumby_start (); - -void dumby_start() { - - /* We need to by-pass the link instruction since the RAM chip- - select pins are not yet configured. */ - asm volatile ( ".global start ;\n\ - start:"); - - /* disable interrupts, load stack pointer */ - asm volatile ( "oriw #0x0700, %sr;\n\ - moveal #M68Kvec, %a0;\n\ - movec %a0, %vbr;\n\ - movel #end, %d0;\n\ - addl " STACK_SIZE ",%d0;\n\ - movel %d0,%sp;\n\ - movel %d0,%a6" - ); - - /* include in ram_init.S */ - /* - * Initalize the SIM module. - * The stack pointer is not usable until the RAM chip select lines - * are configured. The following code must remain inline. - */ - - /* Module Configuration Register */ - /* see section(s) 3.1.3-3.1.6 of the SIM Reference Manual */ - *SIMCR = (unsigned short int) - (FRZSW | FRZBM | SAM(0,8,SHEN) | (MM*SIM_MM) | SAM(SIM_IARB,0,IARB)); - - /* Synthesizer Control Register */ - /* see section(s) 4.8 */ - /* end include in ram_init.S */ - *SYNCR = (unsigned short int) - ( SAM(EFI_W,15,VCO) | SAM(0x0,14,PRESCALE) | SAM(EFI_Y,8,COUNTER) | STSIM ); - while (! (*SYNCR & SLOCK)); /* protect from clock overshoot */ - /* include in ram_init.S */ - *SYNCR = (unsigned short int) - ( SAM(EFI_W,15,VCO) | SAM(EFI_X,14,PRESCALE) | SAM(EFI_Y,8,COUNTER) | STSIM ); - - /* System Protection Control Register */ - /* !!! can only write to once after reset !!! */ - /* see section 3.8.4 of the SIM Reference Manual */ - *SYPCR = (unsigned char)( SAM(0x3,4,SWT) | HME | BME ); - - /* Periodic Interrupr Control Register */ - /* see section 3.8.2 of the SIM Reference Manual */ - *PICR = (unsigned short int) - ( SAM(0,8,PIRQL) | SAM(EFI_PIV,0,PIV) ); - /* ^^^ zero disables interrupt, don't enable here or ram_init will - be wrong. It's enabled below. */ - - /* Periodic Interrupt Timer Register */ - /* see section 3.8.3 of the SIM Reference Manual */ - *PITR = (unsigned short int)( SAM(0x09,0,PITM) ); - /* 1.098mS interrupt */ - - /* Port C Data */ - /* load values before enabled */ - *PORTC = (unsigned char) 0x0; - - /* Chip-Select Base Address Register */ - /* see section 7 of the SIM Reference Manual */ - *CSBARBT = (unsigned short int) - (((0x000000 >> 8)&0xfff8) | BS_512K ); /* 512k bytes located at 0x0000 */ - *CSBAR0 = (unsigned short int) - (((0x000000 >> 8)&0xfff8) | BS_1M ); /* 1M bytes located at 0x0000 */ - *CSBAR1 = (unsigned short int) - (((0x080000 >> 8)&0xfff8) | BS_256K ); /* 256k bytes located at 0x80000 */ - *CSBAR2 = (unsigned short int) - (((0x080000 >> 8)&0xfff8) | BS_256K ); /* 256k bytes located at 0x80000 */ - *CSBAR3 = (unsigned short int) - (((0x0C0000 >> 8)&0xfff8) | BS_256K ); /* 256k bytes located at 0xC0000 */ - *CSBAR4 = (unsigned short int) - (((0x0C0000 >> 8)&0xfff8) | BS_256K ); /* 256k bytes located at 0xC0000 */ - *CSBAR5 = (unsigned short int) - (0xfff8 | BS_64K); /* AVEC interrupts */ -#ifdef EFI332_v040b - *CSBAR6 = (unsigned short int) - (((0x000000 >> 8)&0xfff8) | BS_512K ); /* 512k bytes located at 0x0000 */ - *CSBAR8 = (unsigned short int) /* PCMCIA IOCS */ - (((0x0c0000 >> 8)&0xfff8) | BS_64K ); /* 64k bytes located at 0xc0000 */ - *CSBAR9 = (unsigned short int) /* PCMCIA MEMCS */ - (((0x0D0000 >> 8)&0xfff8) | BS_64K ); /* 64k bytes located at 0xd0000 */ -#else /* EFI332_v040b */ - *CSBAR10 = (unsigned short int) - (((0x000000 >> 8)&0xfff8) | BS_512K ); /* 512k bytes located at 0x0000 */ -#endif /* EFI332_v040b */ - - /* Chip-Select Options Registers */ - /* see section 7 of the SIM Reference Manual */ -#ifdef FLASHWRITE - *CSORBT = (unsigned short int) - ( BothBytes | ReadWrite | SyncAS | WaitStates_2 | UserSupSpace ); -#else /* FLASHWRITE */ - *CSORBT = (unsigned short int) - ( BothBytes | ReadOnly | SyncAS | WaitStates_0 | UserSupSpace ); -#endif /* FLASHWRITE */ - *CSOR0 = (unsigned short int) - ( BothBytes | ReadOnly | SyncAS | External | UserSupSpace ); - *CSOR1 = (unsigned short int) - ( LowerByte | ReadWrite | SyncAS | FastTerm | UserSupSpace ); - *CSOR2 = (unsigned short int) - ( UpperByte | ReadWrite | SyncAS | FastTerm | UserSupSpace ); - *CSOR3 = (unsigned short int) - ( LowerByte | ReadWrite | SyncAS | FastTerm | UserSupSpace ); - *CSOR4 = (unsigned short int) - ( UpperByte | ReadWrite | SyncAS | FastTerm | UserSupSpace ); - *CSOR5 = (unsigned short int) - ( BothBytes | ReadWrite | SyncAS | CPUSpace | IPLevel_any | AVEC ); -#ifdef EFI332_v040b - *CSOR6 = (unsigned short int) - ( BothBytes | ReadOnly | SyncAS | External | UserSupSpace ); - *CSOR8 = (unsigned short int) - ( BothBytes | ReadWrite | SyncAS | External | UserSupSpace ); - *CSOR9 = (unsigned short int) - ( BothBytes | ReadWrite | SyncAS | External | UserSupSpace ); -#else /* EFI332_v040b */ - *CSOR10 = (unsigned short int) - ( BothBytes | ReadOnly | SyncAS | External | UserSupSpace ); -#endif /* EFI332_v040b */ - - /* Chip Select Pin Assignment Register 0 */ - /* see section 7 of the SIM Reference Manual */ - *CSPAR0 = (unsigned short int)( - SAM(DisOut,CS_5,0x3000) | /* AVEC (internally) */ - SAM(CS16bit,CS_4,0x0c00) | /* RAM UDS, bank2 */ - SAM(CS16bit,CS_3,0x0300) | /* RAM LDS, bank2 */ - SAM(CS16bit,CS_2,0x00c0)| /* RAM UDS, bank1 */ - SAM(CS16bit,CS_1,0x0030)| /* RAM LDS, bank1 */ - SAM(CS16bit,CS_0,0x000c)| /* W/!R */ - SAM(CS16bit,CSBOOT,0x0003) /* ROM CS */ - ); - - /* Chip Select Pin Assignment Register 1 */ - /* see section 7 of the SIM Reference Manual */ -#ifdef EFI332_v040b - *CSPAR1 = (unsigned short int)( - SAM(DisOut,CS_10,0x300)| /* ECLK */ - SAM(CS16bit,CS_9,0x0c0) | /* PCMCIA MEMCS */ - SAM(CS16bit,CS_8,0x030) | /* PCMCIA IOCS */ - SAM(DisOut,CS_7,0x00c) | /* PC4 */ - SAM(CS16bit,CS_6,0x003) /* ROM !OE */ - ); -#else /* EFI332_v040b */ - *CSPAR1 = (unsigned short int)( - SAM(CS16bit,CS_10,0x300)| /* ROM !OE */ - SAM(DisOut,CS_9,0x0c0) | /* PC6 */ - SAM(DisOut,CS_8,0x030) | /* PC5 */ - SAM(DisOut,CS_7,0x00c) | /* PC4 */ - SAM(DisOut,CS_6,0x003) /* PC3 */ - ); -#endif /* EFI332_v040b */ - - /* Port E and F Data Register */ - /* see section 9 of the SIM Reference Manual */ - *PORTE0 = (unsigned char) 0; - *PORTF0 = (unsigned char) 0; - - /* Port E and F Data Direction Register */ - /* see section 9 of the SIM Reference Manual */ - *DDRE = (unsigned char) 0xff; - *DDRF = (unsigned char) 0xfd; - - /* Port E and F Pin Assignment Register */ - /* see section 9 of the SIM Reference Manual */ - *PEPAR = (unsigned char) 0xc3; /* siz1|siz0|dsack1|dsack0 */ - *PFPAR = (unsigned char) 0; - - /* end of SIM initalization code */ - /* end include in ram_init.S */ - - - - /* - * Initialize RAM by copying the .data section out of ROM (if - * needed) and "zero-ing" the .bss section. - */ - { - register char *src = _etext; - register char *dst = _copy_start; - - if (_copy_data_from_rom) - /* ROM has data at end of text; copy it. */ - while (dst < _edata) - *dst++ = *src++; - - /* Zero bss */ - for (dst = _clear_start; dst< end; dst++) - *dst = 0; - } - - /* - * Initalize the board. - */ - /* Spurious should be called in the predriver hook */ - /* Spurious_Initialize(); */ - console_init(); - - /* - * Execute main with arguments argc and agrv. - */ - boot_card(1,__argv); - reboot(); - -} - diff --git a/c/src/lib/libbsp/m68k/efi332/startup/.cvsignore b/c/src/lib/libbsp/m68k/efi332/startup/.cvsignore deleted file mode 100644 index 282522db03..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/startup/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -Makefile -Makefile.in diff --git a/c/src/lib/libbsp/m68k/efi332/startup/Makefile.am b/c/src/lib/libbsp/m68k/efi332/startup/Makefile.am deleted file mode 100644 index 9452c9ade9..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/startup/Makefile.am +++ /dev/null @@ -1,45 +0,0 @@ -## -## $Id$ -## - -VPATH = @srcdir@:@srcdir@/../../shared:@srcdir@/../../../shared - -PGM = $(ARCH)/startup.rel - -C_FILES = bsplibc.c bsppost.c bspstart.c bspclean.c bootcard.c \ - m68kpretaskinghook.c main.c sbrk.c setvec.c gnatinstallhandler.c -C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT)) - -OBJS = $(C_O_FILES) - -include $(top_srcdir)/../../../../automake/compile.am -include $(top_srcdir)/../../../../automake/lib.am - -# -# (OPTIONAL) Add local stuff here using += -# - -$(PGM): $(OBJS) - $(make-rel) - -project_lib_DATA = linkcmds linkcmds_ROM - -# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile - -all-local: $(PGM) $(TMPINSTALL_FILES) - -EXTRA_DIST = bspclean.c bspstart.c linkcmds linkcmds_ROM - -$(PROJECT_LIB)/$(dirstamp): - @$(mkdir_p) $(PROJECT_LIB) - @: > $(PROJECT_LIB)/$(dirstamp) - -$(PROJECT_LIB)/linkcmds: linkcmds $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds -TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds - -$(PROJECT_LIB)/linkcmds_ROM: linkcmds_ROM $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds_ROM -TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds_ROM - -include $(top_srcdir)/../../../../automake/local.am diff --git a/c/src/lib/libbsp/m68k/efi332/startup/bspclean.c b/c/src/lib/libbsp/m68k/efi332/startup/bspclean.c deleted file mode 100644 index 80caa3afe8..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/startup/bspclean.c +++ /dev/null @@ -1,27 +0,0 @@ -/* bsp_cleanup() - * - * This routine cleans up in the sense that it places the board - * in a safe state and flushes the I/O buffers before exiting. - * - * INPUT: NONE - * - * OUTPUT: NONE - * - * COPYRIGHT (c) 1989-1999. - * 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.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include - -void bsp_cleanup(void) -{ - /* interrupt driven stdio must be flushed */ - _CPU_ISR_Set_level( 7 ); - _UART_flush(); -} diff --git a/c/src/lib/libbsp/m68k/efi332/startup/bspstart.c b/c/src/lib/libbsp/m68k/efi332/startup/bspstart.c deleted file mode 100644 index 40f3998924..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/startup/bspstart.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * This routine starts the application. It includes application, - * board, and monitor specific initialization and configuration. - * The generic CPU dependent initialization has been performed - * before this routine is invoked. - * - * COPYRIGHT (c) 1989-1999. - * 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.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include - -#include -#include -#include - -/* - * The original table from the application and our copy of it with - * some changes. - */ - -extern rtems_configuration_table Configuration; -rtems_configuration_table BSP_Configuration; - -rtems_cpu_table Cpu_table; - -char *rtems_progname; - -/* - * Use the shared implementations of the following routines - */ - -void bsp_postdriver_hook(void); -void bsp_libc_init( void *, unsigned32, int ); -void bsp_pretasking_hook(void); /* m68k version */ - -/* - * Call Spurious_Initialize in bsp_predriver_hook because - * bsp_predriver_hook is call after the _ISR_Vector_Table allocation - */ - -void bsp_predriver_hook(void) -{ - void Spurious_Initialize(); - Spurious_Initialize(); -} - -/* - * bsp_start - * - * This routine does the bulk of the system initialization. - */ - -void bsp_start( void ) -{ - void *vbr; - extern void *_WorkspaceBase; - extern void *_RamSize; - extern unsigned long _M68k_Ramsize; - - _M68k_Ramsize = (unsigned long)&_RamSize; /* RAM size set in linker script */ - - /* - * we only use a hook to get the C library initialized. - */ - - Cpu_table.pretasking_hook = bsp_pretasking_hook; - Cpu_table.predriver_hook = bsp_predriver_hook; - Cpu_table.postdriver_hook = bsp_postdriver_hook; - - m68k_get_vbr( vbr ); - Cpu_table.interrupt_vector_table = vbr; - - BSP_Configuration.work_space_start = (void *) &_WorkspaceBase; - - /* Clock_exit is done as an atexit() function */ -} - diff --git a/c/src/lib/libbsp/m68k/efi332/startup/linkcmds b/c/src/lib/libbsp/m68k/efi332/startup/linkcmds deleted file mode 100644 index 803c261d5e..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/startup/linkcmds +++ /dev/null @@ -1,206 +0,0 @@ -/* linkcmds - * - * $Id$ - */ - -OUTPUT_ARCH(m68k) -__DYNAMIC = 0; - -/* - * The memory map looks like this: - * +--------------------+ <- low memory - * | _RamBase | - * | .text | - * | etext | - * | ctor list | the ctor and dtor lists are for - * | dtor list | C++ support - * | _endtext | - * +--------------------+ - * | .data | initialized data goes here - * | _sdata | - * | _edata | - * +--------------------+ - * | .bss | - * | _clear_start| start of bss, cleared by crt0 - * | _end | start of heap, used by sbrk() - * +--------------------+ - * | _WorkspaceBase - * | work space | - * | heapStart | - * | heap space | - * | _RamEnd | top of stack - * +--------------------+ <- high memory - */ - -/* - * Declare some sizes. - */ -_RamBase = DEFINED(_RamBase) ? _RamBase : 0x80000; -_RamSize = DEFINED(_RamSize) ? _RamSize : 0x80000; -_RamEnd = _RamBase + _RamSize; -_HeapSize = DEFINED(_HeapSize) ? _HeapSize : 0x10000; -_StackSize = DEFINED(_StackSize) ? _StackSize : 0x1000; - -MEMORY -{ - ram : ORIGIN = 0x80000, LENGTH = 512K -} - -_copy_data_from_rom = 0; - -/* - * stick everything in ram (of course) - */ -SECTIONS -{ - ram : { - . = .; - } >ram - - /* - * Text, data and bss segments - */ - .text : { - *(.text) - - /* - * C++ constructors/destructors - */ - *(.gnu.linkonce.t.*) - - /* - * Initialization and finalization code. - * - * Various files can provide initialization and finalization - * functions. crtbegin.o and crtend.o are two instances. The - * body of these functions are in .init and .fini sections. We - * accumulate the bodies here, and prepend function prologues - * from crti.o and function epilogues from crtn.o. crti.o must - * be linked first; crtn.o must be linked last. Because these - * are wildcards, it doesn't matter if the user does not - * actually link against crti.o and crtn.o; the linker won't - * look for a file to match a wildcard. The wildcard also - * means that it doesn't matter which directory crti.o and - * crtn.o are in. - */ - PROVIDE (_init = .); - *crti.o(.init) - *(.init) - *crtn.o(.init) - PROVIDE (_fini = .); - *crti.o(.fini) - *(.fini) - *crtn.o(.fini) - - /* - * Special FreeBSD sysctl sections. - */ - . = ALIGN (16); - __start_set_sysctl_set = .; - *(set_sysctl_*); - __stop_set_sysctl_set = ABSOLUTE(.); - *(set_domain_*); - *(set_pseudo_*); - - /* - * C++ constructors/destructors - * - * gcc uses crtbegin.o to find the start of the constructors - * and destructors so we make sure it is first. Because this - * is a wildcard, it doesn't matter if the user does not - * actually link against crtbegin.o; the linker won't look for - * a file to match a wildcard. The wildcard also means that - * it doesn't matter which directory crtbegin.o is in. The - * constructor and destructor list are terminated in - * crtend.o. The same comments apply to it. - */ - . = ALIGN (16); - *crtbegin.o(.ctors) - *(.ctors) - *crtend.o(.ctors) - *crtbegin.o(.dtors) - *(.dtors) - *crtend.o(.dtors) - - /* - * Exception frame info - */ - . = ALIGN (16); - *(.eh_frame) - - /* - * Read-only data - */ - . = ALIGN (16); - _rodata_start = . ; - *(.rodata*) - *(.gnu.linkonce.r*) - - . = ALIGN (16); - PROVIDE (_etext = .); - } >ram - .data : { - PROVIDE (_copy_start = .); - *(.data) - *(.gnu.linkonce.d*) - *(.gcc_except_table) - *(.jcr) - . = ALIGN (16); - PROVIDE (_edata = .); - PROVIDE (_copy_end = .); - } >ram - .bss : { - _clear_start = .; - *(.bss) - *(COMMON) - . = ALIGN (16); - PROVIDE (end = .); - - . += _StackSize; - . = ALIGN (16); - _stack_init = .; - _clear_end = .; - - _WorkspaceBase = .; - } >ram - - /* Stabs debugging sections. */ - .stab 0 : { *(.stab) } - .stabstr 0 : { *(.stabstr) } - .stab.excl 0 : { *(.stab.excl) } - .stab.exclstr 0 : { *(.stab.exclstr) } - .stab.index 0 : { *(.stab.index) } - .stab.indexstr 0 : { *(.stab.indexstr) } - .comment 0 : { *(.comment) } - - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to the beginning - of the section so we begin them at 0. */ - /* DWARF 1 */ - .debug 0 : { *(.debug) } - .line 0 : { *(.line) } - - /* GNU DWARF 1 extensions */ - .debug_srcinfo 0 : { *(.debug_srcinfo) } - .debug_sfnames 0 : { *(.debug_sfnames) } - - /* DWARF 1.1 and DWARF 2 */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - - /* DWARF 2 */ - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* SGI/MIPS DWARF 2 extensions */ - .debug_weaknames 0 : { *(.debug_weaknames) } - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } - /* These must appear regardless of . */ -} diff --git a/c/src/lib/libbsp/m68k/efi332/startup/linkcmds_ROM b/c/src/lib/libbsp/m68k/efi332/startup/linkcmds_ROM deleted file mode 100644 index fe8b9d9537..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/startup/linkcmds_ROM +++ /dev/null @@ -1,216 +0,0 @@ -/* linkcmds - * - * $Id$ - */ - -OUTPUT_ARCH(m68k) -STARTUP(except_vect_332_ROM.o) -__DYNAMIC = 0; - -/* - * The memory map looks like this: - * ROM: - * +--------------------+ <- low memory - * | .text | - * | etext | - * | ctor list | the ctor and dtor lists are for - * | dtor list | C++ support - * | _endtext | - * | temporary .data | .data is moved to RAM by crt0 - * | | - * +--------------------+ <- high memory - * - * - * RAM: - * +--------------------+ <- low memory - * | _RamBase | - * | .data | initialized data goes here - * | _sdata | - * | _edata | - * +--------------------+ - * | .bss | - * | _clear_start| start of bss, cleared by crt0 - * | _end | start of heap, used by sbrk() - * +--------------------+ - * | _WorkspaceBase - * | work space | - * | heapStart | - * | heap space | - * | _RamEnd | top of stack - * +--------------------+ <- high memory - */ - -/* - * Declare some sizes. - */ -_RamBase = DEFINED(_RamBase) ? _RamBase : 0x80000; -_RamSize = DEFINED(_RamSize) ? _RamSize : 0x40000; -_RamEnd = _RamBase + _RamSize; -_HeapSize = DEFINED(_HeapSize) ? _HeapSize : 0x10000; -_StackSize = DEFINED(_StackSize) ? _StackSize : 0x1000; - -MEMORY -{ - rom : ORIGIN = 0x00000, LENGTH = 256K - ram : ORIGIN = 0x80000, LENGTH = 256K -} - -_copy_data_from_rom = 1; - -/* - * - */ -SECTIONS -{ - ram : { - . = .; - } >ram - - /* - * Text, data and bss segments - */ - .text : { - *(.text) - - /* - * C++ constructors/destructors - */ - *(.gnu.linkonce.t.*) - - /* - * Initialization and finalization code. - * - * Various files can provide initialization and finalization - * functions. crtbegin.o and crtend.o are two instances. The - * body of these functions are in .init and .fini sections. We - * accumulate the bodies here, and prepend function prologues - * from crti.o and function epilogues from crtn.o. crti.o must - * be linked first; crtn.o must be linked last. Because these - * are wildcards, it doesn't matter if the user does not - * actually link against crti.o and crtn.o; the linker won't - * look for a file to match a wildcard. The wildcard also - * means that it doesn't matter which directory crti.o and - * crtn.o are in. - */ - PROVIDE (_init = .); - *crti.o(.init) - *(.init) - *crtn.o(.init) - PROVIDE (_fini = .); - *crti.o(.fini) - *(.fini) - *crtn.o(.fini) - - /* - * Special FreeBSD sysctl sections. - */ - . = ALIGN (16); - __start_set_sysctl_set = .; - *(set_sysctl_*); - __stop_set_sysctl_set = ABSOLUTE(.); - *(set_domain_*); - *(set_pseudo_*); - - /* - * C++ constructors/destructors - * - * gcc uses crtbegin.o to find the start of the constructors - * and destructors so we make sure it is first. Because this - * is a wildcard, it doesn't matter if the user does not - * actually link against crtbegin.o; the linker won't look for - * a file to match a wildcard. The wildcard also means that - * it doesn't matter which directory crtbegin.o is in. The - * constructor and destructor list are terminated in - * crtend.o. The same comments apply to it. - */ - . = ALIGN (16); - *crtbegin.o(.ctors) - *(.ctors) - *crtend.o(.ctors) - *crtbegin.o(.dtors) - *(.dtors) - *crtend.o(.dtors) - - /* - * Exception frame info - */ - . = ALIGN (16); - *(.eh_frame) - - /* - * Read-only data - */ - . = ALIGN (16); - _rodata_start = . ; - *(.rodata) - *(.gnu.linkonce.r*) - - . = ALIGN (16); - PROVIDE (_etext = .); - } >rom - .data : - AT ( ADDR(.text) + SIZEOF( .text ) ) - { - PROVIDE (_copy_start = .); - *(.data) - *(.gnu.linkonce.d*) - *(.gcc_except_table) - . = ALIGN (16); - PROVIDE (_edata = .); - PROVIDE (_copy_end = .); - } >ram - .bss : { - _clear_start = .; - *(.bss) - *(COMMON) - . = ALIGN (16); - PROVIDE (end = .); - - . += _StackSize; - . = ALIGN (16); - _stack_init = .; - _clear_end = .; - - _WorkspaceBase = .; - } >ram - - /* Stabs debugging sections. */ - .stab 0 : { *(.stab) } - .stabstr 0 : { *(.stabstr) } - .stab.excl 0 : { *(.stab.excl) } - .stab.exclstr 0 : { *(.stab.exclstr) } - .stab.index 0 : { *(.stab.index) } - .stab.indexstr 0 : { *(.stab.indexstr) } - .comment 0 : { *(.comment) } - - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to the beginning - of the section so we begin them at 0. */ - /* DWARF 1 */ - .debug 0 : { *(.debug) } - .line 0 : { *(.line) } - - /* GNU DWARF 1 extensions */ - .debug_srcinfo 0 : { *(.debug_srcinfo) } - .debug_sfnames 0 : { *(.debug_sfnames) } - - /* DWARF 1.1 and DWARF 2 */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - - /* DWARF 2 */ - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* SGI/MIPS DWARF 2 extensions */ - .debug_weaknames 0 : { *(.debug_weaknames) } - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } - /* These must appear regardless of . */ -} diff --git a/c/src/lib/libbsp/m68k/efi332/timer/.cvsignore b/c/src/lib/libbsp/m68k/efi332/timer/.cvsignore deleted file mode 100644 index 282522db03..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/timer/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -Makefile -Makefile.in diff --git a/c/src/lib/libbsp/m68k/efi332/timer/Makefile.am b/c/src/lib/libbsp/m68k/efi332/timer/Makefile.am deleted file mode 100644 index 89cd2f36f3..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/timer/Makefile.am +++ /dev/null @@ -1,30 +0,0 @@ -## -## $Id$ -## - -PGM = $(ARCH)/timer.rel - -C_FILES = timer.c -C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT)) - -OBJS = $(C_O_FILES) - -include $(top_srcdir)/../../../../automake/compile.am -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: $(OBJS) $(PGM) - -.PRECIOUS: $(PGM) - -EXTRA_DIST = timer.c - -include $(top_srcdir)/../../../../automake/local.am diff --git a/c/src/lib/libbsp/m68k/efi332/timer/timer.c b/c/src/lib/libbsp/m68k/efi332/timer/timer.c deleted file mode 100644 index c6173c837e..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/timer/timer.c +++ /dev/null @@ -1,83 +0,0 @@ -/* Timer_init() - * - * This routine initializes a timer in efi68k's DP8570A TCP - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * NOTE: It is important that the timer start/stop overhead be - * determined when porting or modifying this code. - * - * COPYRIGHT (c) 1989-1999. - * 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.rtems.com/license/LICENSE. - * - * $Id$ - */ - - -#include - -rtems_boolean Timer_driver_Find_average_overhead; - -extern rtems_isr Clock_isr(); - -void Timer_initialize( void ) -{ -} - -/* - * The following controls the behavior of Read_timer(). - * - * FIND_AVG_OVERHEAD * instructs the routine to return the "raw" count. - * - * AVG_OVEREHAD is the overhead for starting and stopping the timer. It - * is usually deducted from the number returned. - * - * LEAST_VALID is the lowest number this routine should trust. Numbers - * below this are "noise" and zero is returned. - */ - -#define AVG_OVERHEAD 0 /* It typically takes X.X microseconds */ - /* (Y countdowns) to start/stop the timer. */ - /* This value is in microseconds. */ -#define LEAST_VALID 1 /* Don't trust a clicks value lower than this */ - -/* - * Return timer value in 1/2-microsecond units - */ -int Read_timer( void ) -{ - rtems_unsigned32 total; - total = 0; - - if ( Timer_driver_Find_average_overhead == 1 ) - return total; /* in XXX microsecond units */ - - if ( total < LEAST_VALID ) - return 0; /* below timer resolution */ - - return (total - AVG_OVERHEAD); -} - - -/* - * Empty function call used in loops to measure basic cost of looping - * in Timing Test Suite. - */ - -rtems_status_code Empty_function(void) -{ - return RTEMS_SUCCESSFUL; -} - -void Set_find_average_overhead( - rtems_boolean find_flag -) -{ - Timer_driver_Find_average_overhead = find_flag; -} diff --git a/c/src/lib/libbsp/m68k/efi332/times b/c/src/lib/libbsp/m68k/efi332/times deleted file mode 100644 index 17ac20f2cf..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/times +++ /dev/null @@ -1,193 +0,0 @@ -# -# Timing Test Suite Results for the EFI332 BSP -# -# $Id$ -# - -NOTE: This BSP is used submitted and no information is currently available. - -Board: EFI332 -CPU: 68332 -Clock Speed: 20 Mhz -Memory Configuration: SRAM, DRAM, cache, etc -Wait States: - -Times Reported in: cycles, microseconds, etc -Timer Source: Count Down Timer, on-CPU cycle counter, etc - -Column A: unused -Column B: unused - -# DESCRIPTION A B -== ================================================================= ==== ==== - 1 rtems_semaphore_create 20 - rtems_semaphore_delete 21 - rtems_semaphore_obtain: available 15 - rtems_semaphore_obtain: not available -- NO_WAIT 15 - rtems_semaphore_release: no waiting tasks 16 - - 2 rtems_semaphore_obtain: not available -- caller blocks 62 - - 3 rtems_semaphore_release: task readied -- preempts caller 55 - - 4 rtems_task_restart: blocked task -- preempts caller 77 - rtems_task_restart: ready task -- preempts caller 70 - rtems_semaphore_release: task readied -- returns to caller 25 - rtems_task_create 57 - rtems_task_start 31 - rtems_task_restart: suspended task -- returns to caller 36 - rtems_task_delete: suspended task 47 - rtems_task_restart: ready task -- returns to caller 37 - rtems_task_restart: blocked task -- returns to caller 46 - rtems_task_delete: blocked task 50 - - 5 rtems_task_suspend: calling task 51 - rtems_task_resume: task readied -- preempts caller 49 - - 6 rtems_task_restart: calling task 59 - rtems_task_suspend: returns to caller 18 - rtems_task_resume: task readied -- returns to caller 19 - rtems_task_delete: ready task 50 - - 7 rtems_task_restart: suspended task -- preempts caller 70 - - 8 rtems_task_set_priority: obtain current priority 12 - rtems_task_set_priority: returns to caller 27 - rtems_task_mode: obtain current mode 5 - rtems_task_mode: no reschedule 5 - rtems_task_mode: reschedule -- returns to caller 8 - rtems_task_mode: reschedule -- preempts caller 39 - rtems_task_set_note 13 - rtems_task_get_note 13 - rtems_clock_set 33 - rtems_clock_get 3 - - 9 rtems_message_queue_create 110 - rtems_message_queue_send: no waiting tasks 37 - rtems_message_queue_urgent: no waiting tasks 37 - rtems_message_queue_receive: available 31 - rtems_message_queue_flush: no messages flushed 12 - rtems_message_queue_flush: messages flushed 16 - rtems_message_queue_delete 26 - -10 rtems_message_queue_receive: not available -- NO_WAIT 15 - rtems_message_queue_receive: not available -- caller blocks 62 - -11 rtems_message_queue_send: task readied -- preempts caller 72 - -12 rtems_message_queue_send: task readied -- returns to caller 39 - -13 rtems_message_queue_urgent: task readied -- preempts caller 72 - -14 rtems_message_queue_urgent: task readied -- returns to caller 39 - -15 rtems_event_receive: obtain current events 1 - rtems_event_receive: not available -- NO_WAIT 12 - rtems_event_receive: not available -- caller blocks 56 - rtems_event_send: no task readied 12 - rtems_event_receive: available 12 - rtems_event_send: task readied -- returns to caller 24 - -16 rtems_event_send: task readied -- preempts caller 55 - -17 rtems_task_set_priority: preempts caller 62 - -18 rtems_task_delete: calling task 83 - -19 rtems_signal_catch 9 - rtems_signal_send: returns to caller 15 - rtems_signal_send: signal to self 18 - exit ASR overhead: returns to calling task 22 - exit ASR overhead: returns to preempting task 49 - -20 rtems_partition_create 35 - rtems_region_create 23 - rtems_partition_get_buffer: available 15 - rtems_partition_get_buffer: not available 13 - rtems_partition_return_buffer 18 - rtems_partition_delete 16 - rtems_region_get_segment: available 22 - rtems_region_get_segment: not available -- NO_WAIT 21 - rtems_region_return_segment: no waiting tasks 19 - rtems_region_get_segment: not available -- caller blocks 64 - rtems_region_return_segment: task readied -- preempts caller 74 - rtems_region_return_segment: task readied -- returns to caller 44 - rtems_region_delete 16 - rtems_io_initialize 2 - rtems_io_open 1 - rtems_io_close 1 - rtems_io_read 1 - rtems_io_write 1 - rtems_io_control 1 - -21 rtems_task_ident 149 - rtems_message_queue_ident 145 - rtems_semaphore_ident 156 - rtems_partition_ident 145 - rtems_region_ident 148 - rtems_port_ident 145 - rtems_timer_ident 145 - rtems_rate_monotonic_ident 145 - -22 rtems_message_queue_broadcast: task readied -- returns to caller 42 - rtems_message_queue_broadcast: no waiting tasks 17 - rtems_message_queue_broadcast: task readied -- preempts caller 78 - -23 rtems_timer_create 14 - rtems_timer_fire_after: inactive 22 - rtems_timer_fire_after: active 24 - rtems_timer_cancel: active 15 - rtems_timer_cancel: inactive 13 - rtems_timer_reset: inactive 21 - rtems_timer_reset: active 23 - rtems_timer_fire_when: inactive 34 - rtems_timer_fire_when: active 34 - rtems_timer_delete: active 19 - rtems_timer_delete: inactive 17 - rtems_task_wake_when 69 - -24 rtems_task_wake_after: yield -- returns to caller 9 - rtems_task_wake_after: yields -- preempts caller 45 - -25 rtems_clock_tick 4 - -26 _ISR_Disable 0 - _ISR_Flash 1 - _ISR_Enable 1 - _Thread_Disable_dispatch 0 - _Thread_Enable_dispatch 7 - _Thread_Set_state 11 - _Thread_Disptach (NO FP) 31 - context switch: no floating point contexts 21 - context switch: self 10 - context switch: to another task 10 - context switch: restore 1st FP task 25 - fp context switch: save idle, restore idle 31 - fp context switch: save idle, restore initialized 19 - fp context switch: save initialized, restore initialized 20 - _Thread_Resume 7 - _Thread_Unblock 7 - _Thread_Ready 9 - _Thread_Get 4 - _Semaphore_Get 2 - _Thread_Get: invalid id 0 - -27 interrupt entry overhead: returns to interrupted task 6 - interrupt exit overhead: returns to interrupted task 6 - interrupt entry overhead: returns to nested interrupt 6 - interrupt exit overhead: returns to nested interrupt 5 - interrupt entry overhead: returns to preempting task 7 - interrupt exit overhead: returns to preempting task 36 - -28 rtems_port_create 16 - rtems_port_external_to_internal 11 - rtems_port_internal_to_external 11 - rtems_port_delete 16 - -29 rtems_rate_monotonic_create 15 - rtems_rate_monotonic_period: initiate period -- returns to caller 21 - rtems_rate_monotonic_period: obtain status 13 - rtems_rate_monotonic_cancel 16 - rtems_rate_monotonic_delete: inactive 18 - rtems_rate_monotonic_delete: active 20 - rtems_rate_monotonic_period: conclude periods -- caller blocks 53 diff --git a/c/src/lib/libbsp/m68k/efi332/wrapup/.cvsignore b/c/src/lib/libbsp/m68k/efi332/wrapup/.cvsignore deleted file mode 100644 index 282522db03..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/wrapup/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -Makefile -Makefile.in diff --git a/c/src/lib/libbsp/m68k/efi332/wrapup/Makefile.am b/c/src/lib/libbsp/m68k/efi332/wrapup/Makefile.am deleted file mode 100644 index 7e923c67cb..0000000000 --- a/c/src/lib/libbsp/m68k/efi332/wrapup/Makefile.am +++ /dev/null @@ -1,20 +0,0 @@ -## -## $Id$ -## - -BSP_PIECES = startup clock console spurious timer - -# bummer; have to use $foreach since % pattern subst rules only replace 1x -OBJS = $(foreach piece, $(BSP_PIECES), ../$(piece)/$(ARCH)/*.$(OBJEXT)) \ - $(wildcard \ - ../../../../libcpu/$(RTEMS_CPU)/shared/misc/$(ARCH)/*.$(OBJEXT)) - -include $(top_srcdir)/../../../../automake/compile.am -include $(top_srcdir)/../../../../automake/lib.am - -$(ARCH)/libbsp.a: $(OBJS) - $(make-library) - -noinst_DATA = $(ARCH)/libbsp.a - -include $(top_srcdir)/../../../../automake/local.am -- cgit v1.2.3