summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/i960/cvme961
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2004-09-29 17:25:02 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2004-09-29 17:25:02 +0000
commitc774850d227c53c35d7c99ecb390e2f02113b0fb (patch)
tree5a40759b80ec1b595aa8f76c1855baaf1347921b /c/src/lib/libbsp/i960/cvme961
parent2004-09-27 Greg Menke <gregory.menke@gsfc.nasa.gov> (diff)
downloadrtems-c774850d227c53c35d7c99ecb390e2f02113b0fb.tar.bz2
2004-09-29 Joel Sherrill <joel@OARcorp.com>
* .cvsignore, ChangeLog, Makefile.am, acinclude.m4, configure.ac, cvme961/.cvsignore, cvme961/ChangeLog, cvme961/Makefile.am, cvme961/bsp_specs, cvme961/configure.ac, cvme961/times, cvme961/clock/ckinit.c, cvme961/console/console.c, cvme961/include/.cvsignore, cvme961/include/bsp.h, cvme961/include/tm27.h, cvme961/shmsupp/addrconv.c, cvme961/shmsupp/getcfg.c, cvme961/shmsupp/lock.c, cvme961/shmsupp/mpisr.c, cvme961/start/start.S, cvme961/startup/bspclean.c, cvme961/startup/bspstart.c, cvme961/startup/exit.c, cvme961/startup/linkcmds, cvme961/startup/setvec.c, cvme961/timer/timer.c, cvme961/timer/timerisr.S, i960sim/.cvsignore, i960sim/ChangeLog, i960sim/Makefile.am, i960sim/bsp_specs, i960sim/configure.ac, i960sim/clock/clockdrv.c, i960sim/console/console-io.c, i960sim/console/mon-syscalls.S, i960sim/include/.cvsignore, i960sim/include/bsp.h, i960sim/include/tm27.h, i960sim/start/start.c, i960sim/startup/bspstart.c, i960sim/startup/linkcmds, rxgen960/.cvsignore, rxgen960/ChangeLog, rxgen960/Makefile.am, rxgen960/README, rxgen960/bsp_specs, rxgen960/configure.ac, rxgen960/clock/ckinit.c, rxgen960/console/concntl.h, rxgen960/console/console.c, rxgen960/console/serial.c, rxgen960/console/serial.h, rxgen960/include/.cvsignore, rxgen960/include/bsp.h, rxgen960/include/rxgen960_config.h, rxgen960/include/tm27.h, rxgen960/start/rxgen_romld.S, rxgen960/startup/asmfault.S, rxgen960/startup/asmfault.h, rxgen960/startup/asmstub.S, rxgen960/startup/asmstub.h, rxgen960/startup/bspstart.c, rxgen960/startup/cntrltbl.c, rxgen960/startup/cntrltbl.h, rxgen960/startup/dram.ld, rxgen960/startup/exit.c, rxgen960/startup/fault.c, rxgen960/startup/fault.h, rxgen960/startup/faultret.h, rxgen960/startup/flttbl.c, rxgen960/startup/flttbl.h, rxgen960/startup/frmstr.c, rxgen960/startup/frmstr.h, rxgen960/startup/i960.h, rxgen960/startup/ihandler.S, rxgen960/startup/ihandler.h, rxgen960/startup/intrtbl.c, rxgen960/startup/intrtbl.h, rxgen960/startup/kkprintf.c, rxgen960/startup/linkcmds, rxgen960/startup/linkcmds.real, rxgen960/startup/main.h, rxgen960/startup/memchnl.h, rxgen960/startup/nmi.c, rxgen960/startup/nulsystbl.c, rxgen960/startup/pmc901_memmap.h, rxgen960/startup/prcb.c, rxgen960/startup/prcb.h, rxgen960/startup/rom.ld, rxgen960/startup/rom_cntrltbl.c, rxgen960/startup/rom_ibr.c, rxgen960/startup/rom_ibr.h, rxgen960/startup/rom_prcb.c, rxgen960/startup/rommon.h, rxgen960/startup/sctns.c, rxgen960/startup/sctns.h, rxgen960/startup/setvec.c, rxgen960/startup/systbl.c, rxgen960/startup/systbl.h, rxgen960/startup/time.h, rxgen960/timer/timer.c, rxgen960/timer/timerisr.S: Removed.
Diffstat (limited to '')
-rw-r--r--c/src/lib/libbsp/i960/cvme961/.cvsignore14
-rw-r--r--c/src/lib/libbsp/i960/cvme961/ChangeLog347
-rw-r--r--c/src/lib/libbsp/i960/cvme961/Makefile.am173
-rw-r--r--c/src/lib/libbsp/i960/cvme961/bsp_specs12
-rw-r--r--c/src/lib/libbsp/i960/cvme961/clock/ckinit.c134
-rw-r--r--c/src/lib/libbsp/i960/cvme961/configure.ac20
-rw-r--r--c/src/lib/libbsp/i960/cvme961/console/console.c206
-rw-r--r--c/src/lib/libbsp/i960/cvme961/include/.cvsignore4
-rw-r--r--c/src/lib/libbsp/i960/cvme961/include/bsp.h126
-rw-r--r--c/src/lib/libbsp/i960/cvme961/include/tm27.h32
-rw-r--r--c/src/lib/libbsp/i960/cvme961/shmsupp/addrconv.c36
-rw-r--r--c/src/lib/libbsp/i960/cvme961/shmsupp/getcfg.c96
-rw-r--r--c/src/lib/libbsp/i960/cvme961/shmsupp/lock.c74
-rw-r--r--c/src/lib/libbsp/i960/cvme961/shmsupp/mpisr.c69
-rw-r--r--c/src/lib/libbsp/i960/cvme961/start/start.S109
-rw-r--r--c/src/lib/libbsp/i960/cvme961/startup/bspclean.c35
-rw-r--r--c/src/lib/libbsp/i960/cvme961/startup/bspstart.c115
-rw-r--r--c/src/lib/libbsp/i960/cvme961/startup/exit.c37
-rw-r--r--c/src/lib/libbsp/i960/cvme961/startup/linkcmds82
-rw-r--r--c/src/lib/libbsp/i960/cvme961/startup/setvec.c144
-rw-r--r--c/src/lib/libbsp/i960/cvme961/timer/timer.c105
-rw-r--r--c/src/lib/libbsp/i960/cvme961/timer/timerisr.S64
-rw-r--r--c/src/lib/libbsp/i960/cvme961/times191
23 files changed, 0 insertions, 2225 deletions
diff --git a/c/src/lib/libbsp/i960/cvme961/.cvsignore b/c/src/lib/libbsp/i960/cvme961/.cvsignore
deleted file mode 100644
index bfdfd995be..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/.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/i960/cvme961/ChangeLog b/c/src/lib/libbsp/i960/cvme961/ChangeLog
deleted file mode 100644
index 079ae805ff..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/ChangeLog
+++ /dev/null
@@ -1,347 +0,0 @@
-2004-09-24 Ralf Corsepius <ralf_corsepius@rtems.org>
-
- * configure.ac: Require automake > 1.9.
-
-2004-04-23 Ralf Corsepius <ralf_corsepius@rtems.org>
-
- PR 610/bsps
- * Makefile.am: Add include/tm27.h, Cosmetics.
- * include/tm27.h: Final cosmetics.
-
-2004-04-22 Ralf Corsepius <ralf_corsepius@rtems.org>
-
- * include/bsp.h: Split out tmtest27 support.
- * include/tm27.h: New.
-
-2004-04-21 Ralf Corsepius <ralf_corsepius@rtems.org>
-
- PR 613/bsps
- * include/bsp.h: Remove MAX_LONG_TEST_DURATION.
-
-2004-04-21 Ralf Corsepius <ralf_corsepius@rtems.org>
-
- PR 614/bsps
- * include/bsp.h: Remove MAX_SHORT_TEST_DURATION (Unused).
-
-
- * cvme961/timer/timer.c: Include <rtems/zilog/z8536.h> instead of
- <zilog/z8536.h>.
-
-2004-04-02 Ralf Corsepius <ralf_corsepius@rtems.org>
-
- * start/start.S: Include <rtems/asm.h> instead of <asm.h>.
- * timer/timerisr.S: Include <rtems/asm.h> instead of <asm.h>.
-
-2004-04-01 Ralf Corsepius <ralf_corsepius@rtems.org>
-
- * include/bsp.h: Include <rtems/clockdrv.h> instead of <clockdrv.h>.
- * include/bsp.h: Include <rtems/console.h> instead of <console.h>.
- * include/bsp.h: Include <rtems/iosupp.h> instead of <iosupp.h>.
-
-2004-03-31 Ralf Corsepius <ralf_corsepius@rtems.org>
-
- * clock/ckinit.c, include/bsp.h, shmsupp/addrconv.c,
- shmsupp/getcfg.c, shmsupp/lock.c, shmsupp/mpisr.c,
- startup/bspstart.c, timer/timer.c: Convert to using c99 fixed size
- types.
-
-2004-02-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Reflect changes to bsp.am.
- Preinstall dist_project_lib*.
-
-2004-02-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Reflect changes to bsp.am.
-
-2004-02-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Use CPPASCOMPILE instead of CCASCOMPILE.
-
-2004-02-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Correct path to libcpu.
-
-2004-02-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Merge-in clock/Makefile.am, console/Makefile.am,
- shmsupp/Makefile.am, start/Makefile.am, startup/Makefile.am,
- timer/Makefile.am, wrapup/Makefile.am. Use automake compilation rules.
- * clock/Makefile.am, console/Makefile.am, shmsupp/Makefile.am,
- start/Makefile.am, startup/Makefile.am, timer/Makefile.am,
- wrapup/Makefile.am: Remove.
- * configure.ac: Reflect changes above.
-
-2004-01-28 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * configure.ac: Add nostdinc to AUTOMAKE_OPTIONS.
- Add RTEMS_PROG_CCAS.
-
-2004-01-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Add PREINSTALL_DIRS.
- * wrapup/Makefile.am: Reflect changes to libcpu.
-
-2004-01-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * start/Makefile.am: Re-add dirstamps to PRE/TMPINSTALL_FILES.
- Add PRE/TMPINSTALL_FILES to CLEANFILES.
- * startup/Makefile.am: Ditto.
-
-2004-01-05 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * wrapup/Makefile.am: Eliminate $(LIB).
- Use noinst_DATA to trigger building libbsp.a.
-
-2003-12-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * wrapup/Makefile.am: Remove GENERIC_FILES.
-
-2003-12-13 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * 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 <corsepiu@faw.uni-ulm.de>
-
- * 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 <corsepiu@faw.uni-ulm.de>
-
- * configure.ac: Require automake >= 1.8, autoconf >= 2.59.
-
-2003-12-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * start/Makefile.am: Misc cleanups and fixes.
- * startup/Makefile.am: Misc cleanups and fixes.
- * wrapup/Makefile.am: Misc cleanups and fixes.
-
-2003-12-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Add preinstallation dirstamp support.
- * clock/Makefile.am: Cosmetics.
- * console/Makefile.am: Cosmetics.
- * shmsupp/Makefile.am: Cosmetics.
- * startup/Makefile.am: Cosmetics.
- * timer/Makefile.am: Cosmetics.
- * wrapup/Makefile.am: Cosmetics.
-
-2003-12-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * clock/Makefile.am: Remove all-local: $(ARCH).
- * console/Makefile.am: Remove all-local: $(ARCH).
- * shmsupp/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 <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Merge-in include/Makefile.am.
- Reflect changes to bsp.am.
- * include/Makefile.am: Remove.
- * configure.ac: Reflect changes above.
-
-2003-09-24 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * bsp_specs: Remove *lib:.
-
-2003-09-04 Joel Sherrill <joel@OARcorp.com>
-
- * clock/ckinit.c, console/console.c, include/bsp.h, shmsupp/addrconv.c,
- shmsupp/getcfg.c, shmsupp/lock.c, shmsupp/mpisr.c, start/start.S,
- startup/bspclean.c, startup/bspstart.c, startup/exit.c,
- startup/linkcmds, startup/setvec.c, timer/timer.c, timer/timerisr.S:
- URL for license changed.
-
-2003-08-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Reflect having moved aclocal/.
-
-2003-08-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * 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/.
- * shmsupp/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 <corsepiu@faw.uni-ulm.de>
-
- * configure.ac: Use rtems-bugs@rtems.com as bug report email address.
-
-2003-08-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- PR 445/bsps
- * bsp_specs: Remove -D__embedded__ -Asystem(embedded) from cpp.
- Remove cpp, old_cpp (now unused).
-
-2003-03-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * configure.ac: Remove AC_CONFIG_AUX_DIR.
-
-2003-02-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * configure.ac: AM_INIT_AUTOMAKE([1.7.2]).
-
-2003-02-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * configure.ac: AC_PREREQ(2.57).
-
-2003-01-15 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * clock/Makefile.am: Don't include @RTEMS_BSP@.cfg.
- * console/Makefile.am: Don't include @RTEMS_BSP@.cfg.
- * shmsupp/Makefile.am: Don't include @RTEMS_BSP@.cfg.
- * start/Makefile.am: Don't include @RTEMS_BSP@.cfg.
- * startup/Makefile.am: Don't include @RTEMS_BSP@.cfg.
- * timer/Makefile.am: Don't include @RTEMS_BSP@.cfg.
-
-2002-12-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * start/Makefile.am: Use install-data-local to install startfile.
-
-2002-12-10 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * wrapup/Makefile.am: Don't include @RTEMS_BSP@.cfg.
-
-2002-10-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * .cvsignore: Reformat.
- Add autom4te*cache.
- Remove autom4te.cache.
-
-2002-08-21 Joel Sherrill <joel@OARcorp.com>
-
- * bsp_specs: Added support for -nostdlibs.
-
-2002-08-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * clock/Makefile.am: Use .$(OBJEXT) instead of .o.
- * console/Makefile.am: Use .$(OBJEXT) instead of .o.
- * shmsupp/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-07-20 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * start/Makefile.am: Eliminate PGM.
- Add bsplib_DATA = $(PROJECT_RELEASE)/lib/start$(LIB_VARIANT).o.
-
-2002-07-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * startup/Makefile.am: Add bsplib_DATA = linkcmds.
-
-2002-07-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * wrapup/Makefile.am: Eliminate TMPINSTALL_FILES.
- Remove $(OBJS) from all-local.
-
-2002-07-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * wrapup/Makefile.am: Add $(LIB) to all-local.
-
-2002-06-29 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * wrapup/Makefile.am: Remove preinstallation of libbsp.a,
-
-2001-05-09 Joel Sherrill <joel@OARcorp.com>
-
- * 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 <corsepiu@faw.uni-ulm.de>
-
- * 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.
- * shmsupp/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 <corsepiu@faw.uni-ulm.de>
-
- * bsp_specs: Replace -lrtemsall with -lrtemsbsp -lrtemscpu,
- replace -lrtemsall_g with -lrtemsbsp_g -lrtemscpu_g.
-
-2001-11-30 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * configure.ac: Introduce RTEMS_BSP_CONFIGURE.
-
-2001-10-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * .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 <joel@OARcorp.com>
-
- * include/bsp.h: Renamed delay() to rtems_bsp_delay().
- * shmsupp/lock.c: Renamed delay() to rtems_bsp_delay().
-
-2001-09-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * include/Makefile.am: Use 'CLEANFILES ='.
- * include/Makefile.am: Use 'TMPINSTALL_FILES ='.
-
-2001-09-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * wrapup/Makefile: Use GENERIC_FILES = to make automake-1.5 happy.
-
-2001-05-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * 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 <corsepiu@faw.uni-ulm.de>
-
- * configure.in: Use RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm]).
-
-2000-11-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
-
-2000-11-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal.
-
-2000-11-01 Joel Sherrill <joel@OARcorp.com>
-
- * 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 <rtems/XXX.h>. Header file order
- was cleaned up while doing this.
-
-2000-10-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros.
- Switch to GNU canonicalization.
-
-2000-09-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * clock/Makefile.am, console/Makefile.am, shmsupp/Makefile.am,
- start/Makefile.am, startup/Makefile.am, timer/Makefile.am,
- wrapup/Makefile.am: Include compile.am
-
-2000-08-10 Joel Sherrill <joel@OARcorp.com>
-
- * ChangeLog: New file.
diff --git a/c/src/lib/libbsp/i960/cvme961/Makefile.am b/c/src/lib/libbsp/i960/cvme961/Makefile.am
deleted file mode 100644
index 61af24e20a..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/Makefile.am
+++ /dev/null
@@ -1,173 +0,0 @@
-##
-## $Id$
-##
-
-ACLOCAL_AMFLAGS = -I ../../../../aclocal
-
-include $(top_srcdir)/../../../../automake/compile.am
-include $(top_srcdir)/../../bsp.am
-
-dist_project_lib_DATA = bsp_specs
-
-include_HEADERS = include/bsp.h
-include_HEADERS += include/tm27.h
-nodist_include_HEADERS = include/bspopts.h
-
-EXTRA_PROGRAMS =
-CLEANFILES =
-noinst_DATA =
-
-nodist_include_HEADERS += ../../shared/include/coverhd.h
-
-EXTRA_DIST = start/start.S
-start$(LIB_VARIANT).$(OBJEXT): start/start.S
- $(CPPASCOMPILE) -DASM -o $@ -c $<
-project_lib_DATA = start$(LIB_VARIANT).$(OBJEXT)
-
-dist_project_lib_DATA += startup/linkcmds
-
-EXTRA_PROGRAMS += startup.rel
-CLEANFILES += startup.rel
-startup_rel_SOURCES = startup/bspclean.c ../../shared/bsplibc.c \
- ../../shared/bsppost.c startup/bspstart.c ../../shared/bootcard.c \
- ../../shared/main.c ../../shared/sbrk.c startup/setvec.c \
- ../../shared/gnatinstallhandler.c
-startup_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V)
-startup_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-EXTRA_PROGRAMS += startup_g.rel
-CLEANFILES += startup_g.rel
-startup_g_rel_SOURCES = $(startup_rel_SOURCES)
-startup_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V)
-startup_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-noinst_DATA += startup$(LIB_VARIANT).rel
-
-EXTRA_PROGRAMS += clock.rel
-CLEANFILES += clock.rel
-clock_rel_SOURCES = clock/ckinit.c
-clock_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V)
-clock_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-EXTRA_PROGRAMS += clock_g.rel
-CLEANFILES += clock_g.rel
-clock_g_rel_SOURCES = $(clock_rel_SOURCES)
-clock_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V)
-clock_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-noinst_DATA += clock$(LIB_VARIANT).rel
-
-EXTRA_PROGRAMS += console.rel
-CLEANFILES += console.rel
-console_rel_SOURCES = console/console.c
-console_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V)
-console_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-EXTRA_PROGRAMS += console_g.rel
-CLEANFILES += console_g.rel
-console_g_rel_SOURCES = $(console_rel_SOURCES)
-console_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V)
-console_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-noinst_DATA += console$(LIB_VARIANT).rel
-
-EXTRA_PROGRAMS += timer.rel
-CLEANFILES += timer.rel
-timer_rel_SOURCES = timer/timer.c timer/timerisr.S
-timer_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V)
-timer_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-EXTRA_PROGRAMS += timer_g.rel
-CLEANFILES += timer_g.rel
-timer_g_rel_SOURCES = $(timer_rel_SOURCES)
-timer_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V)
-timer_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-noinst_DATA += timer$(LIB_VARIANT).rel
-
-if HAS_MP
-EXTRA_PROGRAMS += shmsupp.rel
-CLEANFILES += shmsupp.rel
-shmsupp_rel_SOURCES = shmsupp/addrconv.c shmsupp/getcfg.c shmsupp/lock.c \
- shmsupp/mpisr.c
-shmsupp_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V)
-shmsupp_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-EXTRA_PROGRAMS += shmsupp_g.rel
-CLEANFILES += shmsupp_g.rel
-shmsupp_g_rel_SOURCES = $(shmsupp_rel_SOURCES)
-shmsupp_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V)
-shmsupp_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-noinst_DATA += shmsupp$(LIB_VARIANT).rel
-endif
-
-EXTRA_LIBRARIES = libbsp.a
-CLEANFILES += libbsp.a
-libbsp_a_SOURCES =
-libbsp_a_LIBADD = startup$(LIB_VARIANT).rel clock$(LIB_VARIANT).rel \
- console$(LIB_VARIANT).rel timer$(LIB_VARIANT).rel
-if HAS_MP
-libbsp_a_LIBADD += shmsupp$(LIB_VARIANT).rel
-endif
-libbsp_a_LIBADD += \
- ../../../libcpu/@RTEMS_CPU@/i960ca/score$(LIB_VARIANT).rel
-
-EXTRA_LIBRARIES += libbsp_g.a
-CLEANFILES += libbsp_g.a
-libbsp_g_a_SOURCES = $(libbsp_a_SOURCES)
-libbsp_g_a_LIBADD = $(libbsp_a_LIBADD)
-
-noinst_DATA += libbsp$(LIB_VARIANT).a
-
-all-local: $(PREINSTALL_FILES) $(TMPINSTALL_FILES)
-
-EXTRA_DIST += times
-
-PREINSTALL_DIRS =
-PREINSTALL_FILES =
-TMPINSTALL_FILES =
-
-$(PROJECT_INCLUDE)/$(dirstamp):
- @$(mkdir_p) $(PROJECT_INCLUDE)
- @: > $(PROJECT_INCLUDE)/$(dirstamp)
-PREINSTALL_DIRS += $(PROJECT_INCLUDE)/$(dirstamp)
-
-$(PROJECT_LIB)/$(dirstamp):
- @$(mkdir_p) $(PROJECT_LIB)
- @: > $(PROJECT_LIB)/$(dirstamp)
-PREINSTALL_DIRS += $(PROJECT_LIB)/$(dirstamp)
-
-$(PROJECT_LIB)/bsp_specs: bsp_specs $(PROJECT_LIB)/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_LIB)/bsp_specs
-PREINSTALL_FILES += $(PROJECT_LIB)/bsp_specs
-
-$(PROJECT_INCLUDE)/bsp.h: include/bsp.h $(PROJECT_INCLUDE)/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp.h
-
-$(PROJECT_INCLUDE)/tm27.h: include/tm27.h $(PROJECT_INCLUDE)/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/tm27.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/tm27.h
-
-$(PROJECT_INCLUDE)/bspopts.h: include/bspopts.h $(PROJECT_INCLUDE)/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bspopts.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/bspopts.h
-
-$(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/coverhd.h
-
-$(PROJECT_LIB)/start$(LIB_VARIANT).$(OBJEXT): 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)/linkcmds: startup/linkcmds $(PROJECT_LIB)/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds
-PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds
-
-CLEANFILES += $(PREINSTALL_FILES)
-DISTCLEANFILES = $(PREINSTALL_DIRS)
-CLEANFILES += $(TMPINSTALL_FILES)
-
-include $(top_srcdir)/../../../../automake/local.am
diff --git a/c/src/lib/libbsp/i960/cvme961/bsp_specs b/c/src/lib/libbsp/i960/cvme961/bsp_specs
deleted file mode 100644
index 446dafab45..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/bsp_specs
+++ /dev/null
@@ -1,12 +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}}}
-
-*link:
-%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N -e _start}
-
diff --git a/c/src/lib/libbsp/i960/cvme961/clock/ckinit.c b/c/src/lib/libbsp/i960/cvme961/clock/ckinit.c
deleted file mode 100644
index d47c3450a2..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/clock/ckinit.c
+++ /dev/null
@@ -1,134 +0,0 @@
-/* Clock_init()
- *
- * This routine initializes the timer on the VIC chip on the CVME961.
- * The tick frequency is 1 millisecond.
- *
- * 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 <stdlib.h>
-
-#include <bsp.h>
-#include <rtems/libio.h>
-
-#define CLOCK_VECTOR 5
-
-uint32_t Clock_isrs; /* ISRs until next tick */
-i960_isr_entry Old_ticker;
-volatile uint32_t Clock_driver_ticks;
- /* ticks since initialization */
-
-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;
-
-/* this is later in the file to avoid it being inlined */
-rtems_isr Clock_isr( rtems_vector_number vector );
-
-void Install_clock(
- rtems_isr_entry clock_isr
-)
-{
- volatile unsigned char *victimer;
-
- Clock_driver_ticks = 0;
- Clock_isrs = BSP_Configuration.microseconds_per_tick / 1000;
-
- Old_ticker = set_vector( clock_isr, CLOCK_VECTOR, 1 );
- victimer = (volatile unsigned char *) 0xa00000c3;
- *victimer = 0x12;
- *victimer = 0x92; /* 1000 HZ */
-}
-
-void Clock_exit()
-{
- unsigned char *victimer;
-
- victimer = (unsigned char *) 0xa00000c3;
- *victimer = 0x12;
- i960_mask_intr( 5 );
- /* 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 );
-
- atexit( Clock_exit );
-
- /*
- * 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
-)
-{
- uint32_t 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;
-}
-
-rtems_isr Clock_isr(
- rtems_vector_number vector
-)
-{
- /* enable_tracing(); */
- Clock_driver_ticks += 1;
- if ( Clock_isrs == 1 ) {
- rtems_clock_tick();
- Clock_isrs = BSP_Configuration.microseconds_per_tick / 1000;
- }
- else
- Clock_isrs -= 1;
- i960_clear_intr( 5 );
-}
diff --git a/c/src/lib/libbsp/i960/cvme961/configure.ac b/c/src/lib/libbsp/i960/cvme961/configure.ac
deleted file mode 100644
index cae33f5a77..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/configure.ac
+++ /dev/null
@@ -1,20 +0,0 @@
-## Process this file with autoconf to produce a configure script.
-##
-## $Id$
-
-AC_PREREQ(2.59)
-AC_INIT([rtems-c-src-lib-libbsp-i960-cvme961],[_RTEMS_VERSION],[rtems-bugs@rtems.com])
-AC_CONFIG_SRCDIR([bsp_specs])
-RTEMS_TOP(../../../../../..)
-
-RTEMS_CANONICAL_TARGET_CPU
-AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.9])
-RTEMS_BSP_CONFIGURE
-
-RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm])
-RTEMS_CANONICALIZE_TOOLS
-RTEMS_PROG_CCAS
-
-# Explicitly list all Makefiles here
-AC_CONFIG_FILES([Makefile])
-AC_OUTPUT
diff --git a/c/src/lib/libbsp/i960/cvme961/console/console.c b/c/src/lib/libbsp/i960/cvme961/console/console.c
deleted file mode 100644
index 958d4e1638..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/console/console.c
+++ /dev/null
@@ -1,206 +0,0 @@
-/*
- * This file contains the CVME961 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 <bsp.h>
-#include <rtems/libio.h>
-
-/* console_initialize
- *
- * This routine initializes the console IO driver.
- *
- * Input parameters: NONE
- *
- * Output parameters: NONE
- *
- * Return values:
- */
-
-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;
-}
-
-/*
- * NINDY_IO( ... )
- *
- * Interface to NINDY.
- */
-
-#define NINDY_INPUT 0
-#define NINDY_OUTPUT 1
-
-void NINDY_IO();
-
-void ___NINDY_IO_WRAPPER( void ) /* never called */
-{
- asm volatile ( " .text" );
- asm volatile ( " .align 4" );
- asm volatile ( " .globl _NINDY_IO" );
- asm volatile ( "_NINDY_IO:" );
- asm volatile ( " calls 0 /* call console routines */" );
- asm volatile ( " ret" );
-}
-
-/* inbyte
- *
- * This routine reads a character from the console using NINDY.
- *
- * Input parameters: NONE
- *
- * Output parameters: NONE
- *
- * Return values:
- * character read from UART
- */
-
-char inbyte( void )
-{
- char ch;
-
- NINDY_IO( NINDY_INPUT, &ch );
- return ch;
-}
-
-/* outbyte
- *
- * This routine transmits a character out the console using NINDY.
- *
- * Input parameters:
- * ch - character to be transmitted
- *
- * Output parameters: NONE
- */
-
-void outbyte(
- char ch
-)
-{
- NINDY_IO( NINDY_OUTPUT, ch );
-}
-
-/*
- * 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 = 0;
-
- 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/i960/cvme961/include/.cvsignore b/c/src/lib/libbsp/i960/cvme961/include/.cvsignore
deleted file mode 100644
index 5f1077556d..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/include/.cvsignore
+++ /dev/null
@@ -1,4 +0,0 @@
-bspopts.h
-bspopts.h.in
-stamp-h
-stamp-h.in
diff --git a/c/src/lib/libbsp/i960/cvme961/include/bsp.h b/c/src/lib/libbsp/i960/cvme961/include/bsp.h
deleted file mode 100644
index 869eefdfe7..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/include/bsp.h
+++ /dev/null
@@ -1,126 +0,0 @@
-/* bsp.h
- *
- * This include file contains some definitions specific to the
- * Cyclone CVME960 and CVME961 boards. These boards are the
- * same except the 960 uses SRAM and the 961 DRAM.
- *
- * 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 __CVME961_h
-#define __CVME961_h
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <bspopts.h>
-
-#include <rtems.h>
-#include <libcpu/i960CA.h>
-#include <rtems/iosupp.h>
-#include <rtems/console.h>
-#include <rtems/clockdrv.h>
-
-/*
- * 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 (4 * 1024)
-
-/*
- * 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 uint32_t _delay=(microseconds); \
- register uint32_t _tmp = 0; /* initialized to avoid warning */ \
- asm volatile( "0: \
- remo 3,31,%0 ; \
- cmpo 0,%0 ; \
- subo 1,%1,%1 ; \
- cmpobne.t 0,%1,0b " \
- : "=d" (_tmp), "=d" (_delay) \
- : "0" (_tmp), "1" (_delay) ); \
- }
-
-/* Constants */
-
-#define RAM_START 0
-#define RAM_END 0x100000
-
-/* NINDY console I/O requests:
- * CO sends a single character to stdout,
- * CI reads one.
- */
-
-#define NINDY_INPUT 0
-#define NINDY_OUTPUT 1
-
-/*
- * get_prcb
- *
- * Returns the PRCB pointer.
- */
-
-static inline i960ca_PRCB *get_prcb( void )
-{
- register i960ca_PRCB *_prcb = 0;
-
- asm volatile( "calls 5; \
- mov g0,%0" \
- : "=d" (_prcb) \
- : "0" (_prcb) );
- return ( _prcb );
-}
-
-#ifdef C961_INIT
-#undef BSP_EXTERN
-#define BSP_EXTERN
-#else
-#undef BSP_EXTERN
-#define BSP_EXTERN extern
-#endif
-
-/* miscellaneous stuff assumed to exist */
-
-extern rtems_configuration_table BSP_Configuration;
-
-BSP_EXTERN i960ca_PRCB *Prcb;
-BSP_EXTERN i960ca_control_table *Ctl_tbl;
-
-/*
- * Device Driver Table Entries
- */
-
-/*
- * NOTE: Use the standard Console driver entry
- */
-
-/*
- * NOTE: Use the standard Clock driver entry
- */
-
-/* functions */
-
-void bsp_cleanup( void );
-
-i960_isr_entry set_vector( rtems_isr_entry, unsigned int, unsigned int );
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-/* end of include file */
diff --git a/c/src/lib/libbsp/i960/cvme961/include/tm27.h b/c/src/lib/libbsp/i960/cvme961/include/tm27.h
deleted file mode 100644
index f83175a6e7..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/include/tm27.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * tm27.h
- *
- * 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 _RTEMS_TMTEST27
-#error "This is an RTEMS internal file you must not include directly."
-#endif
-
-#ifndef __tm27_h
-#define __tm27_h
-
-/*
- * Define the interrupt mechanism for Time Test 27
- */
-
-#define MUST_WAIT_FOR_INTERRUPT 0
-
-#define Install_tm27_vector( handler ) set_vector( (handler), 6, 1 )
-
-#define Cause_tm27_intr() i960_cause_intr( 0x62 )
-
-#define Clear_tm27_intr() i960_clear_intr( 6 )
-
-#define Lower_tm27_intr() /* empty */
-
-#endif
diff --git a/c/src/lib/libbsp/i960/cvme961/shmsupp/addrconv.c b/c/src/lib/libbsp/i960/cvme961/shmsupp/addrconv.c
deleted file mode 100644
index cc54dd6b54..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/shmsupp/addrconv.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Shm_Convert_address
- *
- * This routine takes into account the peculiar short VME address
- * of the CVME961 board. The CVME961 maps short address space
- * 0xffffxxxx to 0xb400xxxx.
- *
- * Input parameters:
- * address - address to convert
- *
- * Output parameters:
- * returns - converted address
- *
- * 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.h>
-#include <bsp.h>
-#include "shm_driver.h"
-
-void *Shm_Convert_address(
- void *address
-)
-{
- uint32_t workaddr = (uint32_t) address;
-
- if ( workaddr >= 0xffff0000 )
- workaddr = (workaddr & 0xffff) | 0xb4000000;
- return ( (uint32_t*)workaddr );
-}
diff --git a/c/src/lib/libbsp/i960/cvme961/shmsupp/getcfg.c b/c/src/lib/libbsp/i960/cvme961/shmsupp/getcfg.c
deleted file mode 100644
index ae29aa31dc..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/shmsupp/getcfg.c
+++ /dev/null
@@ -1,96 +0,0 @@
-/* void Shm_Get_configuration( localnode, &shmcfg )
- *
- * This routine initializes, if necessary, and returns a pointer
- * to the Shared Memory Configuration Table for the Cyclone CVME961.
- *
- * INPUT PARAMETERS:
- * localnode - local node number
- * shmcfg - address of pointer to SHM Config Table
- *
- * OUTPUT PARAMETERS:
- * *shmcfg - pointer to SHM Config Table
- *
- * NOTES: CVME961 target system has onboard dual-ported memory. This
- * file uses the USE_ONBOARD_RAM macro to determine if this
- * RAM is to be used as the SHM. If so (i.e. USE_ONBOARD_RAM
- * is set to 1), it is assumed that the master node's dual
- * ported memory will be used and that it is configured
- * correctly. The node owning the memory CANNOT access it
- * using a local address. The "if" insures that the MASTER
- * node uses a local address to access the dual-ported memory.
- *
- * The interprocessor interrupt used on the CVME961 is generated
- * by the VIC068. The ICMS capablities of the VIC068 are used
- * to generate interprocessor interrupts for up to eight nodes.
- *
- * The following table illustrates the configuration limitations:
- *
- * BUS MAX
- * MODE ENDIAN NODES
- * ========= ====== =======
- * POLLED LITTLE 2+
- * INTERRUPT LITTLE 2-8
- *
- * 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.h>
-#include "shm_driver.h"
-
-#define USE_ONBOARD_RAM 0 /* use onboard (1) or VME RAM */
- /* for SHM communications */
-
-#define INTERRUPT 1 /* CVME961 target supports both */
-#define POLLING 0 /* polling and interrupt modes */
-
-shm_config_table BSP_shm_cfgtbl;
-
-void Shm_Get_configuration(
- uint32_t localnode,
- shm_config_table **shmcfg
-)
-{
-#if ( USE_ONBOARD_RAM == 1 )
- if ( Shm_RTEMS_MP_Configuration->node == MASTER )
- BSP_shm_cfgtbl.base = (uint32_t*)0x00300000;
- else
- BSP_shm_cfgtbl.base = (uint32_t*)0x10300000;
-#else
- BSP_shm_cfgtbl.base = (uint32_t*)0x20000000;
-#endif
-
- BSP_shm_cfgtbl.length = 1 * MEGABYTE;
- BSP_shm_cfgtbl.format = SHM_LITTLE;
-
- BSP_shm_cfgtbl.cause_intr = Shm_Cause_interrupt;
-
-#ifdef NEUTRAL_BIG
- BSP_shm_cfgtbl.convert = (void *)CPU_swap_u32;
-#else
- BSP_shm_cfgtbl.convert = NULL_CONVERT;
-#endif
-
-#if (POLLING==1)
- BSP_shm_cfgtbl.poll_intr = POLLED_MODE;
- BSP_shm_cfgtbl.Intr.address = NO_INTERRUPT;
- BSP_shm_cfgtbl.Intr.value = NO_INTERRUPT;
- BSP_shm_cfgtbl.Intr.length = NO_INTERRUPT;
-#else
- BSP_shm_cfgtbl.poll_intr = INTR_MODE;
- BSP_shm_cfgtbl.Intr.address =
- (uint32_t*) (0xffff0021|((localnode-1) << 12));
- /* use ICMS0 */
- BSP_shm_cfgtbl.Intr.value = 1;
- BSP_shm_cfgtbl.Intr.length = BYTE;
-#endif
-
- *shmcfg = &BSP_shm_cfgtbl;
-
-}
diff --git a/c/src/lib/libbsp/i960/cvme961/shmsupp/lock.c b/c/src/lib/libbsp/i960/cvme961/shmsupp/lock.c
deleted file mode 100644
index dfddd58fcf..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/shmsupp/lock.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/* Shared Memory Lock Routines
- *
- * This shared memory locked queue support routine need to be
- * able to lock the specified locked queue. Interrupts are
- * disabled while the queue is locked to prevent preemption
- * and deadlock when two tasks poll for the same lock.
- * previous level.
- *
- * 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.h>
-#include <bsp.h>
-#include <shm_driver.h>
-
-/*
- * Shm_Initialize_lock
- *
- * Initialize the lock for the specified locked queue.
- */
-
-void Shm_Initialize_lock(
- Shm_Locked_queue_Control *lq_cb
-)
-{
- lq_cb->lock = LQ_UNLOCKED;
-}
-
-/* void _Shm_Lock( &lq_cb )
- *
- * This shared memory locked queue support routine locks the
- * specified locked queue. It disables interrupts to prevent
- * a deadlock condition.
- */
-
-void Shm_Lock(
- Shm_Locked_queue_Control *lq_cb
-)
-{
- uint32_t isr_level, oldlock;
-
- rtems_interrupt_disable( isr_level );
- Shm_isrstat = isr_level;
- while ( 1 ) {
- atomic_modify( SHM_LOCK_VALUE, &lq_cb->lock, oldlock );
- if ( !(oldlock & SHM_LOCK_VALUE) )
- return;
- rtems_bsp_delay( 28 ); /* delay 28 microseconds */
- }
-}
-
-/*
- * Shm_Unlock
- *
- * Unlock the lock for the specified locked queue.
- */
-
-void Shm_Unlock(
- Shm_Locked_queue_Control *lq_cb
-)
-{
- uint32_t isr_level;
-
- lq_cb->lock = SHM_UNLOCK_VALUE;
- isr_level = Shm_isrstat;
- rtems_interrupt_enable( isr_level );
-}
diff --git a/c/src/lib/libbsp/i960/cvme961/shmsupp/mpisr.c b/c/src/lib/libbsp/i960/cvme961/shmsupp/mpisr.c
deleted file mode 100644
index 235a375d38..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/shmsupp/mpisr.c
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Shm_isr_cvme961()
- *
- * NOTE: This routine is not used when in polling mode. Either
- * this routine OR Shm_clockisr is used in a particular system.
- *
- * There must be sufficient time after the IACK (read at
- * 0xb600000x) for the VIC068 to clear the interrupt request
- * before the interrupt request is cleared from IPND (sf0).
- *
- * 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.h>
-#include <bsp.h>
-#include "shm_driver.h"
-
-rtems_isr Shm_isr_cvme961(
- rtems_vector_number vector
-)
-{
- uint32_t vic_vector;
-
- /* enable_tracing(); */
- vic_vector = (*(volatile uint8_t*)0xb6000007);
- /* reset intr by reading */
- /* vector at IPL=3 */
- Shm_Interrupt_count += 1;
- rtems_multiprocessing_announce();
- (*(volatile uint8_t*)0xa000005f) = 0; /* clear ICMS0 */
- i960_clear_intr( 6 );
-
-}
-
-/* void _Shm_setvec( )
- *
- * This driver routine sets the SHM interrupt vector to point to the
- * driver's SHM interrupt service routine.
- *
- * NOTE: See pp. 21-22, 36-39 of the CVME961 Manual for more info.
- *
- * Input parameters: NONE
- *
- * Output parameters: NONE
- */
-
-void Shm_setvec()
-{
- uint32_t isrlevel;
-
- rtems_interrupt_disable( isrlevel );
- /* set SQSIO4 CTL REG for */
- /* VME slave address */
- (*(uint8_t*)0xc00000b0) =
- (Shm_RTEMS_MP_Configuration->node - 1) | 0x10;
- set_vector( Shm_isr_cvme961, 6, 1 );
- /* set ICMS Bector Base Register */
- (*(uint8_t*)0xa0000053) = 0x60; /* XINT6 vector is 0x62 */
- /* set ICMS Intr Control Reg */
- (*(uint8_t*)0xa0000047) = 0xeb; /* ICMS0 enabled, IPL=0 */
- (*(uint8_t*)0xa000005f) = 0; /* clear ICMS0 */
- rtems_interrupt_enable( isrlevel );
-}
diff --git a/c/src/lib/libbsp/i960/cvme961/start/start.S b/c/src/lib/libbsp/i960/cvme961/start/start.S
deleted file mode 100644
index 8a6d3d9161..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/start/start.S
+++ /dev/null
@@ -1,109 +0,0 @@
-/* entry.s
- *
- * This file contains the entry point for the application.
- * The name of this entry point is compiler dependent.
- * It jumps to the BSP which is responsible for performing
- * all initialization.
- *
- * 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/asm.h>
-
- BEGIN_CODE
- PUBLIC(start) # GNU960 default entry point
-
-SYM(start):
- mov 3, r12
- modpc r12, r12, r12 # enable tracing/trace faults
- mov g5, g5 # NOP
- mov 0, g14 # initialize constant for C
-
- /*
- * zero out uninitialized data area
- */
-zerobss:
- lda _end, r4 /* find end of .bss */
- lda _bss_start, r5 /* find beginning of .bss */
- ldconst 0, r6
-
-loop: st r6, (r5) /* to zero out uninitialized */
- addo 4, r5, r5 /* data area */
- cmpobl r5, r4, loop /* loop until _end reached */
-
-/* set up stack pointer:
- * The heap will begin at '_end'; its length is 'heap_size'
- * bytes. The stack will begin at the first 64-byte-aligned
- * block after the heap.
- *
- * A default value of 'heap_size' is set by linking with libnindy.a
- * The default can be overridden by redefining this symbol at link
- * time (with a line of the form 'heap_size=XXXX;' in the lnk960
- * linker specification file; or one of the form
- * "-defsym heap_size=XXXX" on the gld960 invocation line).
- */
-
- ldconst _end, sp /* set sp = address of end of heap */
- lda heap_size(sp),sp
- lda 64(sp), sp /* Now round up to 64-byte boundary */
- ldconst 0xffffffc0, r12
- and r12, sp, sp
- st sp, _stack_start /* Save for brk() routine */
-
- call init_frames
- ret /* return to monitor */
-
-init_frames:
- mov 0, g14 /* initialize constant for C */
- ldconst 0x3b001000, g0
- ldconst 0x00009107, g1
- modac g1, g0, g0 /* set AC controls */
-
- /*
- * remember the frame, so that we can set it up if necessary
- */
-
- st fp, _start_frame
-
- /*
- * Call application boot_card.
- * Someday, real values of argc and argv will be set up.
- * For now, they are set to 0.
- */
- ldconst 0,g0
- ldconst 0,g1
- ldconst 0,g2
- call _boot_card
- ret
-
-END_CODE
-
- BEGIN_DATA
-
- PUBLIC(_start_frame)
- PUBLIC(start_frame)
-SYM (_start_frame):
-SYM (start_frame):
- .word 0 # addr of first user frame: for gdb960
-
- PUBLIC(_stack_start)
- PUBLIC(stack_start)
-SYM (_stack_start):
-SYM (stack_start):
- .word 0 # addr of first user frame: for gdb960
-
-END_DATA
-
-BEGIN_BSS
- PUBLIC(heap_size)
- .set heap_size,0x2000
-END_BSS
-
-END
diff --git a/c/src/lib/libbsp/i960/cvme961/startup/bspclean.c b/c/src/lib/libbsp/i960/cvme961/startup/bspclean.c
deleted file mode 100644
index e9b4e72e7f..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/startup/bspclean.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * This routine is used to return control to the NINDY monitor
- * and is automatically invoked at shutdown.
- *
- * NOTES: DOES NOT RETURN!!!
- *
- * 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.h>
-#include "bsp.h"
-
-void bsp_cleanup( void )
-{
- extern void start( void );
-
- register volatile void *start_addr = 0;
-
- asm volatile( "mov 0,g0;"
- "fmark ;"
- "syncf ;"
- ".word 0xfeedface ; "
- "bx (%0)" : "=r" (start_addr) : "0" (start_addr) );
- /* The constant 0xfeedface is a magic word for break which
- * is defined by NINDY. The branch extended restarts the
- * application if the user types "go".
- */
-}
diff --git a/c/src/lib/libbsp/i960/cvme961/startup/bspstart.c b/c/src/lib/libbsp/i960/cvme961/startup/bspstart.c
deleted file mode 100644
index 5a5bd86d32..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/startup/bspstart.c
+++ /dev/null
@@ -1,115 +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 <string.h>
-
-#define C961_INIT
-
-#include <bsp.h>
-#include <rtems/libio.h>
-#include <rtems/libcsupport.h>
-
-/*
- * 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 *, uint32_t, int );
-
-/*
- * Function: bsp_pretasking_hook
- * Created: 95/03/10
- *
- * Description:
- * BSP pretasking hook. Called just before drivers are initialized.
- * Used to setup libc and install any BSP extensions.
- *
- * NOTES:
- * Must not use libc (to do io) from here, since drivers are
- * not yet initialized.
- *
- */
-
-void bsp_pretasking_hook(void)
-{
- extern int end;
- uint32_t heap_start;
-
- heap_start = (uint32_t) &end;
- if (heap_start & (CPU_ALIGNMENT-1))
- heap_start = (heap_start + CPU_ALIGNMENT) & ~(CPU_ALIGNMENT-1);
-
- bsp_libc_init((void *) heap_start, 64 * 1024, 0);
-
-#ifdef RTEMS_DEBUG
- rtems_debug_enable( RTEMS_DEBUG_ALL_MASK );
-#endif
-}
-
-/*
- * bsp_start
- *
- * This routine does the bulk of the system initialization.
- */
-
-void bsp_start( void )
-{
- /* set node number in SQSIO4 CTL REG */
-
- *((uint32_t*)0xc00000b0) =
- (Configuration.User_multiprocessing_table) ?
- Configuration.User_multiprocessing_table->node : 0;
-
- Prcb = get_prcb();
- Ctl_tbl = Prcb->control_tbl;
-
- /* following configures the data breakpoint (which must be set
- * before this is executed) to break on writes only.
- */
-
- Ctl_tbl->bpcon &= ~0x00cc0000;
- i960_reload_ctl_group( 6 );
-
- /* bit 31 of the Register Cache Control can be set to
- * enable an alternative caching algorithm. It does
- * not appear to help RTEMS.
- */
-
- /* Configure Number of Register Caches */
-
- Prcb->reg_cache_cfg = 8;
- i960_soft_reset( Prcb );
-
- Cpu_table.pretasking_hook = bsp_pretasking_hook; /* init libc, etc. */
- Cpu_table.postdriver_hook = bsp_postdriver_hook;
- Cpu_table.interrupt_stack_size = CONFIGURE_INTERRUPT_STACK_MEMORY;
-
- BSP_Configuration.work_space_start = (void *)
- (RAM_END - BSP_Configuration.work_space_size);
-}
diff --git a/c/src/lib/libbsp/i960/cvme961/startup/exit.c b/c/src/lib/libbsp/i960/cvme961/startup/exit.c
deleted file mode 100644
index 7774967c42..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/startup/exit.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* exit
- *
- * This routine is used to return control to the NINDY monitor
- * and is automatically invoked by the STDIO exit() routine.
- *
- * INPUT:
- * status - exit status
- *
- * OUTPUT: NONE
- *
- * NOTES: DOES NOT RETURN!!!
- *
- * 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.h>
-#include "bsp.h"
-
-void _exit( )
-{
- asm volatile( "mov 0,g0; \
- fmark ; \
- syncf ; \
- .word 0xfeedface ; \
- bx start" : : );
- /* The constant 0xfeedface is a magic word for break which
- * is defined by NINDY. The branch extended restarts the
- * application if the user types "go".
- */
-}
diff --git a/c/src/lib/libbsp/i960/cvme961/startup/linkcmds b/c/src/lib/libbsp/i960/cvme961/startup/linkcmds
deleted file mode 100644
index e1c5041996..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/startup/linkcmds
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * This file contains directives for the GNU linker which are specific
- * to the Cyclone CVME960/CVME961 boards.
- *
- * 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$
- */
-
-MEMORY
- {
- ram : org = 0x0, l = 1M
- }
-
-SECTIONS
-{
- .text 0x10000 :
- {
- text_start = . ;
- _text_start = . ;
- *(.text)
- . = ALIGN (16);
-
- /*
- * Special FreeBSD sysctl sections.
- */
- . = ALIGN (16);
- __start_set_sysctl_set = .;
- *(set_sysctl_*);
- __stop_set_sysctl_set = ABSOLUTE(.);
- *(set_domain_*);
- *(set_pseudo_*);
-
- *(.eh_fram)
- *(.gnu.linkonce.t*)
-
- . = ALIGN (16);
-
- /*
- * C++ constructors
- */
- __CTOR_LIST__ = .;
- LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)
- *(.ctors)
- LONG(0)
- __CTOR_END__ = .;
- __DTOR_LIST__ = .;
- LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)
- *(.dtors)
- LONG(0)
- __DTOR_END__ = .;
-
- _rodata_start = . ;
- *(.rodata*)
- *(.gnu.linkonce.r*)
- _erodata = ALIGN( 0x10 ) ;
- etext = ALIGN( 0x10 ) ;
-/* _etext = .; -- conflicts */
- }
- .data ADDR( .text ) + SIZEOF( .text ):
- {
- data_start = . ;
- _data_start = .;
- *(.data)
- edata = ALIGN( 0x10 ) ;
-/* _edata = .; -- conflicts */
- }
- .bss ADDR( .data ) + SIZEOF( .data ):
- {
- bss_start = . ;
- _bss_start = . ;
- *(.bss)
- *(COMMON)
- end = . ;
- _end = . ;
- }
-}
diff --git a/c/src/lib/libbsp/i960/cvme961/startup/setvec.c b/c/src/lib/libbsp/i960/cvme961/startup/setvec.c
deleted file mode 100644
index 0e88c4c2a5..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/startup/setvec.c
+++ /dev/null
@@ -1,144 +0,0 @@
-/* set_vector
- *
- * This routine attempts to perform all "generic" interrupt initialization
- * for the specified XINT line. It is specific to the Cyclone CVME961 in
- * that it knows which interrupts are initialized by the monitor, the
- * characteristics of XINT5 (VIC068 clock tick), and that it assumes the
- * i960 is processing interrupts in dedicated mode. It attempts to map
- * XINTs to interrupt vectors in a fairly straght forward way.
- *
- * XINT USE VECTOR INTR TBL INDEX TRIGGERED
- * ==== ============= ====== ============== =========
- * 0 VMEbus ERROR 0x02 0x03 EDGE
- * 1 DRAM PARITY 0x12 0x13 EDGE
- * 2 Z8530 0x22 0x23 LEVEL
- * 3 SQUALL 0 0x52 0x53 ----
- * 4 Z8536 (SQSIO4) 0x72 0x73 LEVEL
- * 5 TICK 0x32 0x33 EDGE
- * 6 VIC068 0x62 0x63 LEVEL
- * 7 UNUSED 0x42 0x43 LEVEL
- *
- * The interrupt handler is installed in both the cached and memory
- * resident interrupt tables. The appropriate IMAP register is updated to
- * reflect the vector selected by this routine. Global interrupts are
- * enabled. If XINT5 is being installed, places it in trigger mode.
- * Finally, set_vector_support() is invoked to install the new IMAP and
- * ICON, unmask the XINT in IMASK, and lower the i960's interrupt
- * level to 0.
- *
- * INPUT:
- * func - interrupt handler entry point
- * xint - external interrupt line
- * type - 0 indicates raw hardware connect
- * 1 indicates RTEMS interrupt connect
- *
- * RETURNS:
- * address of previous interrupt handler
- *
- * 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.h>
-#include <bsp.h>
-
-#include <stdio.h>
-
-void print_prcb();
-void print_intr_info();
-void print_ipnd_imsk();
-
-unsigned int Xint_2_Group_Map[8] = { 0, 1, 2, 5, 7, 3, 6, 4 };
-
-i960_isr_entry set_vector( /* returns old vector */
- rtems_isr_entry func, /* isr routine */
- unsigned int xint, /* XINT number */
- unsigned int type /* RTEMS or RAW */
-)
-{
- i960_isr_entry *intr_tbl, *cached_intr_tbl;
- i960_isr_entry saved_intr;
- unsigned int vector, group, nibble;
- unsigned int *imap;
-
- if ( xint > 7 )
- exit( 0x80 );
-
- cached_intr_tbl = (i960_isr_entry *) 0;
- intr_tbl = (i960_isr_entry *) Prcb->intr_tbl;
- group = Xint_2_Group_Map[xint]; /* remap XINT to group */
- vector = (group << 4) + 2; /* direct vector num */
-
- if ( type )
- rtems_interrupt_catch( func, vector, (rtems_isr_entry *) &saved_intr );
- else {
- saved_intr = (i960_isr_entry) intr_tbl[ vector ];
- /* return old vector */
- intr_tbl[ vector + 1 ] = /* normal vector table */
- cached_intr_tbl[ group ] = (i960_isr_entry) func; /* cached vector */
- }
-
- if ( xint <= 3 ) imap = &Ctl_tbl->imap0; /* updating IMAP0 */
- else imap = &Ctl_tbl->imap1; /* updating IMAP1 */
- nibble = (xint % 4) * 4;
- *imap &= ~(0xf << nibble);
- *imap |= group << nibble;
-
- Ctl_tbl->icon &= ~0x00000400; /* enable global interrupts */
- Ctl_tbl->icon |= 0x00004000; /* fast sampling mode */
- switch ( xint ) {
- case 0: Ctl_tbl->icon |= 0x00000004; break;
- case 1: Ctl_tbl->icon |= 0x00000008; break;
- case 2: Ctl_tbl->icon &= ~0x00000010; break;
- case 4: Ctl_tbl->icon &= ~0x00000040; break;
- case 5: Ctl_tbl->icon |= 0x00000080; break;
- case 6: Ctl_tbl->icon &= ~0x00000100; break;
- default: exit( 0x81 ); break; /* unsupported */
- }
-
- if ( xint == 4 ) { /* reprogram MCON for SQSIO4 */
- Ctl_tbl->mcon12 = 0x00002012; /* MCON12 - 0xCxxxxxxx */
- Ctl_tbl->mcon13 = 0x00000000; /* MCON13 - 0xDxxxxxxx */
- i960_reload_ctl_group( 5 ); /* update MCON12-MCON15 */
- }
-
- i960_unmask_intr( xint ); /* update IMSK */
- i960_reload_ctl_group( 1 ); /* update IMAP?/ICON */
- return( saved_intr ); /* return old vector */
-}
-
-void print_prcb()
-{
- printf( "fault_table =0x%p\n", Prcb->fault_tbl );
- printf( "control_tbl =0x%p\n", Prcb->control_tbl );
- printf( "AC mask ov =0x%x\n", Prcb->initial_ac );
- printf( "fltconfig =0x%x\n", Prcb->fault_config );
- printf( "intr tbl =0x%p\n", Prcb->intr_tbl );
- printf( "systable =0x%p\n", Prcb->sys_proc_tbl );
- printf( "reserved =0x%x\n", Prcb->reserved );
- printf( "isr stk =0x%p\n", Prcb->intr_stack );
- printf( "ins cache =0x%x\n", Prcb->ins_cache_cfg );
- printf( "reg cache =0x%x\n", Prcb->reg_cache_cfg );
-}
-
-void print_intr_info()
-{
- printf( "prcb =0x%p\n", Prcb );
- printf( "ctl_tbl =0x%p\n", Ctl_tbl );
- printf( "intr_tbl=0x%p\n", Prcb->intr_tbl );
- printf( "IMAP0 = 0x%x\n", Ctl_tbl->imap0 );
- printf( "IMAP1 = 0x%x\n", Ctl_tbl->imap1 );
- print_ipnd_imsk();
-}
-
-void print_ipnd_imsk()
-{
- printf(" IPEND = 0x%x\n", i960_pend_intrs() );
- printf(" IMASK = 0x%x\n", i960_mask_intrs() );
-}
diff --git a/c/src/lib/libbsp/i960/cvme961/timer/timer.c b/c/src/lib/libbsp/i960/cvme961/timer/timer.c
deleted file mode 100644
index a3da5e810f..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/timer/timer.c
+++ /dev/null
@@ -1,105 +0,0 @@
-/* Timer_init()
- *
- * This routine initializes the Z8536 timer on the SQSIO4 SQUALL
- * board for the CVME961 board. The timer is setup to provide a
- * tick every 1 millisecond.
- *
- * Input parameters: NONE
- *
- * Output parameters: NONE
- *
- * NOTE: This routine will not work if the optimizer is enabled
- * for most compilers. The multiple writes to the Z8536
- * will be optimized away.
- *
- * 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.h>
-#include <bsp.h>
-#include <rtems/zilog/z8536.h>
-
-#define TIMER 0xc00000a0
-
-int Ttimer_val;
-rtems_boolean Timer_driver_Find_average_overhead;
-
-void flush_reg();
-rtems_isr timerisr();
-
-void Timer_initialize()
-{
- set_vector( timerisr, 4, 0 ); /* install ISR */
-
- i960_mask_intr( 5 ); /* disable VIC068 tick */
- flush_reg(); /* timed code starts clean */
- Ttimer_val = 0; /* clear timer ISR count */
- Z8x36_WRITE( TIMER, MASTER_INTR, 0x01 ); /* reset */
- Z8x36_WRITE( TIMER, MASTER_INTR, 0x00 ); /* clear reset */
- Z8x36_WRITE( TIMER, MASTER_CFG, 0x00 ); /* disable everything */
- Z8x36_WRITE( TIMER, CNT_TMR_VECTOR, 0x72 ); /* clear intr vector */
- Z8x36_WRITE( TIMER, MASTER_CFG, 0x20 ); /* clear intr info */
- Z8x36_WRITE( TIMER, MASTER_CFG, 0xe0 ); /* disable interrupts */
- Z8x36_WRITE( TIMER, MASTER_CFG, 0x20 ); /* clear intr info */
- Z8x36_WRITE( TIMER, MASTER_CFG, 0xe0 ); /* disable interrupts */
- Z8x36_WRITE( TIMER, MASTER_INTR, 0xe2 ); /* disable lower chain, */
- /* no vector, set right */
- /* justified addr and */
- /* master int enable */
- Z8x36_WRITE( TIMER, CT1_MODE_SPEC, 0x80 ); /* T1 continuous, and */
- /* cycle/pulse output */
- Z8x36_WRITE( TIMER, CT1_TIME_CONST_MSB, 0x00 );
- Z8x36_WRITE( TIMER, CT1_TIME_CONST_LSB, 0x00 );
- Z8x36_WRITE( TIMER, CT1_CMD_STATUS, 0xc0 ); /* set INTR enable (IE) */
- Z8x36_WRITE( TIMER, MASTER_CFG, 0x40 ); /* enable timer1 */
- Z8x36_WRITE( TIMER, CT1_CMD_STATUS, 0x06 ); /* set trigger command */
- /* (TCB) and gate */
- /* command (GCB) bits */
-}
-
-#define AVG_OVERHEAD 11 /* It typically takes 5.5 microseconds */
- /* (11 countdowns) to start/stop the timer. */
-#define LEAST_VALID 15 /* Don't trust a value lower than this */
-
-int Read_timer()
-{
- uint8_t msb, lsb;
- uint32_t remaining, total;
-
- Z8x36_WRITE( TIMER, CT1_CMD_STATUS, 0xce ); /* read the counter value */
- Z8x36_READ( TIMER, CT1_CUR_CNT_MSB, msb );
- Z8x36_READ( TIMER, CT1_CUR_CNT_LSB, lsb );
-
- remaining = 0xffff - ((msb << 8) + lsb);
- total = (Ttimer_val * 0x10000) + remaining;
-
- if ( Timer_driver_Find_average_overhead == 1 )
- return total; /* in one-half microsecond units */
- else {
- if ( total < LEAST_VALID )
- return 0; /* below timer resolution */
- return (total-AVG_OVERHEAD) >> 1;
- }
-}
-
-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/i960/cvme961/timer/timerisr.S b/c/src/lib/libbsp/i960/cvme961/timer/timerisr.S
deleted file mode 100644
index d1e5982c0a..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/timer/timerisr.S
+++ /dev/null
@@ -1,64 +0,0 @@
-/* timer_isr()
- *
- * This routine initializes the Z8536 timer on the SQSIO4 SQUALL
- * board for the CVME961 board. The timer is setup to provide a
- * tick every 0x10000 / 2 milliseconds. This is used to time
- * executing code.
- *
- * 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 <rtems/asm.h>
-
-.set PORT_A, 0xc00000a8 # port A
-.set PORT_B, 0xc00000a4 # port B
-.set PORT_C, 0xc00000a0 # port C
-.set CTL_PORT, 0xc00000ac # control port
-
-.set T1CSR, 0x0a # T1 command/status reg
-.set RELOAD, 0x24 # clr IP & IUS,allow countdown
-
-/*
- * Duplicating this symbol is stupid but eliminates
- * toolset variation problems.
- */
- PUBLIC(timerisr)
- PUBLIC(_timerisr)
-SYM (timerisr):
-SYM (_timerisr):
- #ldconst 1,r4
- #modpc 0,r4,r4 # enable tracing
-
- ld _Ttimer_val,r6 # r6 = test timer
-
- ldconst T1CSR,r4 # r4 = T1 control status reg
- stob r4,CTL_PORT # select T1CSR
- ldconst RELOAD,r5 # r5 = reset value
- stob r5,CTL_PORT # reset countdown
- addo 1,r6,r6
- st r6,_Ttimer_val # increment test timer
-loop_til_cleared:
- clrbit 4,sf0,sf0
- bbs 4,sf0,loop_til_cleared
-leaf: ret
-
- .leafproc _flush_reg, flush_reg.lf
- .globl _flush_reg, flush_reg.lf
-_flush_reg:
- lda leaf,g14 # g14 = exit address
-flush_reg.lf:
- flushreg
- mov g14,g0 # g0 = exit address
- ldconst 0,g14 # set g14 for non-leaf
- bx (g0)
diff --git a/c/src/lib/libbsp/i960/cvme961/times b/c/src/lib/libbsp/i960/cvme961/times
deleted file mode 100644
index 2e742dd876..0000000000
--- a/c/src/lib/libbsp/i960/cvme961/times
+++ /dev/null
@@ -1,191 +0,0 @@
-#
-# Timing Test Suite Results for the Cyclone CVME961 BSP
-#
-# $Id$
-#
-
-Board: Cyclone CVME961
-CPU: Intel i960CA
-Clock Speed: 33 Mhz
-Memory Configuration: DRAM w/no cache
-Wait States: 2 wait states
-
-Times Reported in: microseconds
-Timer Source: Z8536 on SQUALL mezzanine module
-
-Column A: 3.5.1 pre-release
-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