diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2004-09-29 17:25:02 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2004-09-29 17:25:02 +0000 |
commit | c774850d227c53c35d7c99ecb390e2f02113b0fb (patch) | |
tree | 5a40759b80ec1b595aa8f76c1855baaf1347921b /c/src/lib/libbsp/i960/cvme961 | |
parent | 2004-09-27 Greg Menke <gregory.menke@gsfc.nasa.gov> (diff) | |
download | rtems-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 '')
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 |