summaryrefslogtreecommitdiffstats
path: root/c
diff options
context:
space:
mode:
authorRalf Corsepius <ralf.corsepius@rtems.org>2006-01-09 11:25:07 +0000
committerRalf Corsepius <ralf.corsepius@rtems.org>2006-01-09 11:25:07 +0000
commit59171a9f077e199300a894c8a82e9015a52d4d51 (patch)
tree49a91636cb5e86fb93e7ce6fee0d120bef354d17 /c
parentBackport from rtems-4-6-branch (diff)
downloadrtems-59171a9f077e199300a894c8a82e9015a52d4d51.tar.bz2
Remove. Sync with rtems-4-6-branch.
Diffstat (limited to 'c')
-rw-r--r--c/src/lib/libbsp/sparc/leon/.cvsignore14
-rw-r--r--c/src/lib/libbsp/sparc/leon/ChangeLog444
-rw-r--r--c/src/lib/libbsp/sparc/leon/Makefile.am138
-rw-r--r--c/src/lib/libbsp/sparc/leon/README80
-rw-r--r--c/src/lib/libbsp/sparc/leon/bsp_specs15
-rw-r--r--c/src/lib/libbsp/sparc/leon/clock/ckinit.c249
-rw-r--r--c/src/lib/libbsp/sparc/leon/configure.ac42
-rw-r--r--c/src/lib/libbsp/sparc/leon/console/console.c429
-rw-r--r--c/src/lib/libbsp/sparc/leon/console/consolereserveresources.c21
-rw-r--r--c/src/lib/libbsp/sparc/leon/console/debugputs.c109
-rw-r--r--c/src/lib/libbsp/sparc/leon/gnatsupp/gnatsupp.c19
-rw-r--r--c/src/lib/libbsp/sparc/leon/include/.cvsignore4
-rw-r--r--c/src/lib/libbsp/sparc/leon/include/bsp.h122
-rw-r--r--c/src/lib/libbsp/sparc/leon/include/coverhd.h110
-rw-r--r--c/src/lib/libbsp/sparc/leon/include/leon.h376
-rw-r--r--c/src/lib/libbsp/sparc/leon/include/tm27.h79
-rw-r--r--c/src/lib/libbsp/sparc/leon/leon_open_eth/leon_open_eth.c47
-rw-r--r--c/src/lib/libbsp/sparc/leon/startup/boardinit.S64
-rw-r--r--c/src/lib/libbsp/sparc/leon/startup/linkcmds184
-rw-r--r--c/src/lib/libbsp/sparc/leon/startup/setvec.c70
-rw-r--r--c/src/lib/libbsp/sparc/leon/startup/spurious.c177
-rw-r--r--c/src/lib/libbsp/sparc/leon/timer/timer.c82
-rw-r--r--c/src/lib/libbsp/sparc/leon/times193
-rw-r--r--c/src/lib/libbsp/sparc/leon/tools/.cvsignore15
-rw-r--r--c/src/lib/libbsp/sparc/leon/tools/ChangeLog85
-rw-r--r--c/src/lib/libbsp/sparc/leon/tools/Makefile.am26
-rw-r--r--c/src/lib/libbsp/sparc/leon/tools/configure.ac25
-rw-r--r--c/src/lib/libbsp/sparc/leon/tools/runtest.in312
28 files changed, 0 insertions, 3531 deletions
diff --git a/c/src/lib/libbsp/sparc/leon/.cvsignore b/c/src/lib/libbsp/sparc/leon/.cvsignore
deleted file mode 100644
index bfdfd995be..0000000000
--- a/c/src/lib/libbsp/sparc/leon/.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/sparc/leon/ChangeLog b/c/src/lib/libbsp/sparc/leon/ChangeLog
deleted file mode 100644
index bbb1147b86..0000000000
--- a/c/src/lib/libbsp/sparc/leon/ChangeLog
+++ /dev/null
@@ -1,444 +0,0 @@
-2005-05-26 Ralf Corsepius <ralf.corsepius@rtems.org>
-
- * include/bsp.h: New header guard.
-
-2005-01-20 Joel Sherrill <joel@OARcorp.com>
-
- * Makefile.am: Fix typo.
-
-2005-01-07 Ralf Corsepius <ralf.corsepius@rtems.org>
-
- * Makefile.am: Eliminate CFLAGS_OPTIMIZE_V.
-
-2005-01-02 Ralf Corsepius <ralf.corsepius@rtems.org>
-
- * Makefile.am: Remove build-variant support.
-
-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).
-
-2004-04-01 Ralf Corsepius <ralf_corsepius@rtems.org>
-
- * startup/boardinit.S: Include <rtems/asm.h> instead of <asm.h>.
- * 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>.
- * console/console.c: Include <rtems/ringbuf.h> instead of <ringbuf.h>.
-
-2004-03-31 Ralf Corsepius <ralf_corsepius@rtems.org>
-
- * clock/ckinit.c, console/console.c, console/debugputs.c,
- include/bsp.h, include/leon.h, startup/setvec.c, startup/spurious.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-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Pickup files from ../../sparc/shared instead of
- ../shared. Reformat.
-
-2004-01-30 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Cosmetics.
-
-2004-01-28 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Cosmetics.
- * configure.ac: Add nostdinc to AUTOMAKE_OPTIONS.
-
-2004-01-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Merge-in clock/Makefile.am, leon_open_eth/Makefile.am,
- startup/Makefile.am, console/Makefile.am, gnatsupp/Makefile.am,
- timer/Makefile.am, wrapup/Makefile.am.
- Use automake compilation rules.
- * clock/Makefile.am, leon_open_eth/Makefile.am, startup/Makefile.am,
- console/Makefile.am, gnatsupp/Makefile.am, timer/Makefile.am,
- wrapup/Makefile.am: Remove.
- * configure.ac: Reflect changes above.
-
-2004-01-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Add PREINSTALL_DIRS.
- * wrapup/Makefile.am: Cosmetics.
-
-2004-01-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * wrapup/Makefile.am: Reflect changes to libcpu.
-
-2004-01-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Re-add dirstamps to PRE/TMPINSTALL_FILES.
- Add PRE/TMPINSTALL_FILES to CLEANFILES.
- * startup/Makefile.am: Ditto.
-
-2004-01-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * start/.cvsignore: Remove.
-
-2004-01-05 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * start/Makefile.am: Remove.
- * Makefile.am: Merge-in start/Makefile.am.
- * configure.ac: Reflect changes above.
-
-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>
-
- * start/Makefile.am: Eliminate VPATH.
-
-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-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Misc cleanups and fixes.
- * start/Makefile.am: Misc cleanups and fixes.
- * startup/Makefile.am: Misc cleanups and fixes.
- * wrapup/Makefile.am: Misc cleanups and fixes.
-
-2003-12-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Add dirstamp support to preinstallation.
- * clock/Makefile.am: Cosmetics.
- * console/Makefile.am: Cosmetics.
- * gnatsupp/Makefile.am: Cosmetics.
- * leon_open_eth/Makefile.am: Correct paths to automake/*.am..
- * startup/Makefile.am: Cosmetics.
- * timer/Makefile.am: Cosmetics.
- * wrapup/Makefile.am: Cosmetics.
-
- PR 538/bsps:
- * wrapup/Makefile.am: Add leon_open_eth.rel
-
-2003-12-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * clock/Makefile.am: Remove all-local: $(ARCH).
- * console/Makefile.am: Remove all-local: $(ARCH).
- * gnatsupp/Makefile.am: Remove all-local: $(ARCH).
- * leon_open_eth/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-10-23 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Fix preinstallation of include/coverhd.h.
-
-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-08 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, console/consolereserveresources.c,
- console/debugputs.c, include/bsp.h, include/coverhd.h,
- include/leon.h, startup/setvec.c, timer/timer.c: URL for license
- changed.
-
-2003-09-03 Jiri Gaisler <jiri@gaisler.com>
-
- PR 477/networking
- * Makefile.am, configure.ac, console/console.c, include/bsp.h,
- startup/setvec.c, wrapup/Makefile.am: Add network support and enable
- custom power down.
- * leon_open_eth/.cvsignore, leon_open_eth/Makefile.am,
- leon_open_eth/leon_open_eth.c: New files.
-
-2003-08-20 Joel Sherrill <joel@OARcorp.com>
-
- * include/bsp.h: Correct copyright statements.
-
-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/.
- * gnatsupp/Makefile.am: Reflect having moved automake/.
- * include/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>
-
- PR 452/bsps
- * startup/Makefile.am: Remove USE_INIT_FINI.
-
-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-20 Joel Sherrill <joel@OARcorp.com>
-
- * startup/linkcmds*: Add FreeBSD sysctl() sections.
-
-2002-12-14 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.
- * gnatsupp/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-11-01 Joel Sherrill <joel@OARcorp.com>
-
- * gnatsupp/gnatsupp.c, startup/spurious.c: Removed warnings.
-
-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>
-
- * start/Makefile.am: Use .$(OBJEXT) instead of .o.
- * wrapup/Makefile.am: Use .$(OBJEXT) instead of .o.
-
-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.
- * gnatsupp/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.
-
-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-20 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-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-04-01 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * configure.ac: Remove BSPOPTS_*(NO_TABLE_MOVE).
- Remove BSPOPTS_*(FPU_REVB).
- * wrapup/Makefile.am: Remove tbr.
-
-2002-03-28 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * configure.ac: Add BSPOPTS_*(NO_TABLE_MOVE).
- Add BSPOPTS_*(FPU_REVB).
- * wrapup/Makefile.am: Add tbr.
-
-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.
- * gnatsupp/Makefile.am: Remove AUTOMAKE_OPTIONS.
- * include/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.
-
-2002-02-05 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * configure.ac: Remove NETWORKING support.
- * wrapup/Makefile.am: Remove NETWORKING support.
-
-2001-12-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * configure.ac: Add RTEMS_BSPOPTS*(CONSOLE_USE_INTERRUPTS).
- Add RTEMS_BSPOPTS*(SIMSPARC_FAST_IDLE).
- Remove RTEMS_OUTPUT_BUILD_SUBDIRS.
- * include/bsp.h: include bspopts.h.
-
-2001-11-30 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * configure.ac: Introduce RTEMS_BSP_CONFIGURE.
-
-2001-11-08 Jiri Gaisler <jiri@gaisler.com>
-
- This fix is in response to test results reported by Jerry Needell
- <jerry.needell@unh.edu> for the SPARC/ERC32 and tracked as PR80.
- * include/bsp.h: TM27 was not running properly because the ERC32
- and LEON cannot nest interrupts at the same level. The BSP test support
- had to be modified to support using two different interrupt sources.
-
-2001-10-12 Joel Sherrill <joel@OARcorp.com>
-
- * clock/ckinit.c, console/console.c, include/bsp.h, include/leon.h,
- startup/setvec.c, timer/timer.c: Fixed typo.
-
-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().
-
-2001-09-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * include/Makefile.am: Use 'PREINSTALL_FILES ='.
-
-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-04-23 Jiri Gaisler <jiri@gaisler.com>
-
- * console/debugputs.c: Switched to unsigned characters.
-
-2000-12-06 Joel Sherrill <joel@OARcorp.com>
-
- * console/console.c: Removed console_reserve_resources().
-
-2000-11-13 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * include/Makefile.am: Cleanup.
-
-2000-11-14 Jiri Gaisler <jgais@ws.estec.esa.nl>
-
- * wrapup/Makefile.am: Pick up cache code from libcpu and pick
- up .o's instead of .rel's from libcpu.
-
-2000-11-14 Jiri Gaisler <jgais@ws.estec.esa.nl>
-
- * startup/boardinit.S: St 32-bit ram width by default.
-
-2000-11-13 Jiri Gaisler <jgais@ws.estec.esa.nl>
-
- * .cvsignore, ChangeLog, Makefile.am, README, bsp_specs,
- configure.in, times, clock/.cvsignore, clock/Makefile.am,
- clock/ckinit.c, console/.cvsignore, console/Makefile.am,
- console/console.c, console/consolereserveresources.c,
- console/debugputs.c, gnatsupp/.cvsignore,
- gnatsupp/Makefile.am, gnatsupp/gnatsupp.c,
- include/.cvsignore, include/Makefile.am, include/bsp.h,
- include/coverhd.h, include/leon.h, start/.cvsignore,
- start/Makefile.am, startup/.cvsignore, startup/Makefile.am,
- startup/boardinit.S, startup/linkcmds, startup/setvec.c,
- startup/spurious.c, timer/.cvsignore, timer/Makefile.am,
- timer/timer.c, tools/.cvsignore, tools/Makefile.am,
- tools/configure.in, tools/runtest.in, wrapup/.cvsignore,
- wrapup/Makefile.am: New file.
diff --git a/c/src/lib/libbsp/sparc/leon/Makefile.am b/c/src/lib/libbsp/sparc/leon/Makefile.am
deleted file mode 100644
index af5c0481a7..0000000000
--- a/c/src/lib/libbsp/sparc/leon/Makefile.am
+++ /dev/null
@@ -1,138 +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
-DISTCLEANFILES = include/bspopts.h
-
-noinst_PROGRAMS =
-
-# wrapup is the one that actually builds and installs the library
-# from the individual .rel files built in other directories
-SUBDIRS = . tools
-
-include_HEADERS += include/leon.h
-include_HEADERS += include/coverhd.h
-
-EXTRA_DIST = ../../sparc/shared/start.S
-start.$(OBJEXT): ../../sparc/shared/start.S
- $(CPPASCOMPILE) -DASM -o $@ -c $<
-
-project_lib_DATA = start.$(OBJEXT)
-
-dist_project_lib_DATA += startup/linkcmds
-
-noinst_PROGRAMS += startup.rel
-startup_rel_SOURCES = ../../sparc/shared/bspclean.c ../../shared/bsplibc.c \
- ../../shared/bsppost.c ../../sparc/shared/bspstart.c ../../shared/main.c \
- ../../shared/bootcard.c ../../shared/sbrk.c startup/setvec.c \
- startup/spurious.c startup/boardinit.S
-startup_rel_CPPFLAGS = $(AM_CPPFLAGS)
-startup_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-noinst_PROGRAMS += gnatsupp.rel
-gnatsupp_rel_SOURCES = gnatsupp/gnatsupp.c ../../sparc/shared/gnatcommon.c
-gnatsupp_rel_CPPFLAGS = $(AM_CPPFLAGS)
-gnatsupp_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-noinst_PROGRAMS += console.rel
-console_rel_SOURCES = console/console.c console/consolereserveresources.c \
- console/debugputs.c
-console_rel_CPPFLAGS = $(AM_CPPFLAGS)
-console_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-noinst_PROGRAMS += clock.rel
-clock_rel_SOURCES = clock/ckinit.c
-clock_rel_CPPFLAGS = $(AM_CPPFLAGS)
-clock_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-noinst_PROGRAMS += timer.rel
-timer_rel_SOURCES = timer/timer.c
-timer_rel_CPPFLAGS = $(AM_CPPFLAGS)
-timer_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-
-if HAS_NETWORKING
-leon_open_eth_CPPFLAGS = -D__INSIDE_RTEMS_BSD_TCPIP_STACK__
-noinst_PROGRAMS += leon_open_eth.rel
-leon_open_eth_rel_SOURCES = leon_open_eth/leon_open_eth.c
-leon_open_eth_rel_CPPFLAGS = $(AM_CPPFLAGS) $(leon_open_eth_CPPFLAGS)
-leon_open_eth_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-endif
-
-noinst_LIBRARIES = libbsp.a
-libbsp_a_SOURCES =
-libbsp_a_LIBADD = startup.rel console.rel clock.rel timer.rel gnatsupp.rel
-
-if HAS_NETWORKING
-libbsp_a_LIBADD += leon_open_eth.rel
-endif
-
-libbsp_a_LIBADD += ../../../libcpu/@RTEMS_CPU@/cache.rel \
- ../../../libcpu/@RTEMS_CPU@/reg_win.rel \
- ../../../libcpu/@RTEMS_CPU@/syscall.rel
-
-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)/leon.h: include/leon.h $(PROJECT_INCLUDE)/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/leon.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/leon.h
-
-$(PROJECT_INCLUDE)/coverhd.h: include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/coverhd.h
-
-$(PROJECT_LIB)/start.$(OBJEXT): start.$(OBJEXT) $(PROJECT_LIB)/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_LIB)/start.$(OBJEXT)
-TMPINSTALL_FILES += $(PROJECT_LIB)/start.$(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/sparc/leon/README b/c/src/lib/libbsp/sparc/leon/README
deleted file mode 100644
index 93f19bb383..0000000000
--- a/c/src/lib/libbsp/sparc/leon/README
+++ /dev/null
@@ -1,80 +0,0 @@
-#
-# Description of SIS as related to this BSP
-#
-# $Id$
-#
-
-BSP NAME: sis
-BOARD: any based on the European Space Agency's ERC32
-BUS: N/A
-CPU FAMILY: sparc
-CPU: ERC32 (SPARC V7 + on-CPU peripherals)
- based on Cypress 601/602
-COPROCESSORS: on-chip 602 compatible FPU
-MODE: 32 bit mode
-
-DEBUG MONITOR: none
-
-PERIPHERALS
-===========
-TIMERS:
- NAME: General Purpose Timer
- RESOLUTION: 50 nanoseconds - 12.8 microseconds
- NAME: Real Time Clock Timer
- RESOLUTION: 50 nanoseconds - 3.2768 milliseconds
- NAME: Watchdog Timer
- RESOLUTION: XXX
-SERIAL PORTS: 2 using on-chip UART
-REAL-TIME CLOCK: none
-DMA: on-chip
-VIDEO: none
-SCSI: none
-NETWORKING: none
-
-DRIVER INFORMATION
-==================
-CLOCK DRIVER: ERC32 internal Real Time Clock Timer
-IOSUPP DRIVER: N/A
-SHMSUPP: N/A
-TIMER DRIVER: ERC32 internal General Purpose Timer
-CONSOLE DRIVER: ERC32 internal UART
-
-STDIO
-=====
-PORT: Channel A
-ELECTRICAL: na since using simulator
-BAUD: na
-BITS PER CHARACTER: na
-PARITY: na
-STOP BITS: na
-
-Notes
-=====
-
-ERC32 BSP only supports single processor operations.
-
-A nice feature of this BSP is that the RAM and PROM size are set in the
-linkcmds file and the startup code programs the Memory Configuration
-Register based on those sizes.
-
-The Watchdog Timer is disabled.
-
-This code was developed and tested entirely using the SPARC Instruction
-Simulator (SIS) for the ERC32. All tests were known to run correctly
-against sis v1.7.
-
-
-Memory Map
-==========
-
-0x00000000 - 0x00000000 + _PROM_SIZE code and initialized data
-0x01f80000 on chip peripherals
-0x00000000 - 0x02000000 + _RAM_SIZE destination for initialized data
- BSS (i.e. unitialized data)
- C Heap (i.e. malloc area)
- RTEMS Workspace
-
-The C heap is assigned all memory between the end of the BSS and the
-RTEMS Workspace. The size of the RTEMS Workspace is based on that
-specified in the application's configuration table.
-
diff --git a/c/src/lib/libbsp/sparc/leon/bsp_specs b/c/src/lib/libbsp/sparc/leon/bsp_specs
deleted file mode 100644
index c7e3b5061f..0000000000
--- a/c/src/lib/libbsp/sparc/leon/bsp_specs
+++ /dev/null
@@ -1,15 +0,0 @@
-%rename endfile old_endfile
-%rename startfile old_startfile
-%rename link old_link
-
-*endfile:
-crtend.o%s crtn.o%s
-
-*startfile:
-%{!qrtems: %(old_startfile)} %{!nostdlib: %{qrtems: \
-%{!qrtems_debug: start.o%s crti.o%s crtbegin.o%s} \
-%{qrtems_debug: start_g.o%s crti.o%s crtbegin.o%s}}}
-
-*link:
-%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N -e start}
-
diff --git a/c/src/lib/libbsp/sparc/leon/clock/ckinit.c b/c/src/lib/libbsp/sparc/leon/clock/ckinit.c
deleted file mode 100644
index fc4d3b3608..0000000000
--- a/c/src/lib/libbsp/sparc/leon/clock/ckinit.c
+++ /dev/null
@@ -1,249 +0,0 @@
-/*
- * Clock Tick Device Driver
- *
- * This routine initializes LEON timer 1 which used for the clock tick.
- *
- * The tick frequency is directly programmed to the configured number of
- * microseconds per tick.
- *
- * COPYRIGHT (c) 1989-1998.
- * 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.
- *
- * Ported to LEON implementation of the SPARC by On-Line Applications
- * Research Corporation (OAR) under contract to the European Space
- * Agency (ESA).
- *
- * LEON modifications of respective RTEMS file: COPYRIGHT (c) 1995.
- * European Space Agency.
- *
- * $Id$
- */
-
-#include <stdlib.h>
-
-#include <bsp.h>
-#include <rtems/libio.h>
-
-/*
- * The Real Time Clock Counter Timer uses this trap type.
- */
-
-#define CLOCK_VECTOR LEON_TRAP_TYPE( LEON_INTERRUPT_TIMER1 )
-
-/*
- * Clock ticks since initialization
- */
-
-volatile uint32_t Clock_driver_ticks;
-
-/*
- * This is the value programmed into the count down timer. It
- * is artificially lowered when SIMSPARC_FAST_IDLE is defined to
- * cut down how long we spend in the idle task while executing on
- * the simulator.
- */
-
-extern uint32_t CPU_SPARC_CLICKS_PER_TICK;
-
-rtems_isr_entry Old_ticker;
-
-void Clock_exit( void );
-
-/*
- * These are set by clock driver during its init
- */
-
-rtems_device_major_number rtems_clock_major = ~0;
-rtems_device_minor_number rtems_clock_minor;
-
-/*
- * Clock_isr
- *
- * This is the clock tick interrupt handler.
- *
- * Input parameters:
- * vector - vector number
- *
- * Output parameters: NONE
- *
- * Return values: NONE
- *
- */
-
-rtems_isr Clock_isr(
- rtems_vector_number vector
-)
-{
- /*
- * If we are in "fast idle" mode, then the value for clicks per tick
- * is lowered to decrease the amount of time spent executing the idle
- * task while using the SPARC Instruction Simulator.
- */
-
-#if SIMSPARC_FAST_IDLE
- LEON_REG.Real_Time_Clock_Counter = CPU_SPARC_CLICKS_PER_TICK;
- LEON_REG_Set_Real_Time_Clock_Timer_Control(
- LEON_REG_TIMER_COUNTER_ENABLE_COUNTING |
- LEON_REG_TIMER_COUNTER_LOAD_COUNTER
- );
-#endif
-
- /*
- * The driver has seen another tick.
- */
-
- Clock_driver_ticks += 1;
-
- /*
- * Real Time Clock counter/timer is set to automatically reload.
- */
-
- rtems_clock_tick();
-}
-
-/*
- * Install_clock
- *
- * This routine actually performs the hardware initialization for the clock.
- *
- * Input parameters:
- * clock_isr - clock interrupt service routine entry point
- *
- * Output parameters: NONE
- *
- * Return values: NONE
- *
- */
-
-void Install_clock(
- rtems_isr_entry clock_isr
-)
-{
- Clock_driver_ticks = 0;
-
- if ( BSP_Configuration.ticks_per_timeslice ) {
- Old_ticker = (rtems_isr_entry) set_vector( clock_isr, CLOCK_VECTOR, 1 );
-
- LEON_REG.Timer_Reload_1 = CPU_SPARC_CLICKS_PER_TICK - 1;
-
- LEON_REG.Timer_Control_1 = (
- LEON_REG_TIMER_COUNTER_ENABLE_COUNTING |
- LEON_REG_TIMER_COUNTER_RELOAD_AT_ZERO |
- LEON_REG_TIMER_COUNTER_LOAD_COUNTER
- );
-
- atexit( Clock_exit );
- }
-
-}
-
-/*
- * Clock_exit
- *
- * This routine allows the clock driver to exit by masking the interrupt and
- * disabling the clock's counter.
- *
- * Input parameters: NONE
- *
- * Output parameters: NONE
- *
- * Return values: NONE
- *
- */
-
-void Clock_exit( void )
-{
- if ( BSP_Configuration.ticks_per_timeslice ) {
- LEON_Mask_interrupt( LEON_INTERRUPT_TIMER1 );
-
- LEON_REG.Timer_Control_1 = 0;
-
- /* do not restore old vector */
- }
-}
-
-/*
- * Clock_initialize
- *
- * This routine initializes the clock driver.
- *
- * Input parameters:
- * major - clock device major number
- * minor - clock device minor number
- * parg - pointer to optional device driver arguments
- *
- * Output parameters: NONE
- *
- * Return values:
- * rtems_device_driver status code
- */
-
-rtems_device_driver Clock_initialize(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *pargp
-)
-{
- Install_clock( Clock_isr );
-
- /*
- * make major/minor avail to others such as shared memory driver
- */
-
- rtems_clock_major = major;
- rtems_clock_minor = minor;
-
- return RTEMS_SUCCESSFUL;
-}
-
-/*
- * Clock_control
- *
- * This routine is the clock device driver control entry point.
- *
- * Input parameters:
- * major - clock device major number
- * minor - clock device minor number
- * parg - pointer to optional device driver arguments
- *
- * Output parameters: NONE
- *
- * Return values:
- * rtems_device_driver status code
- */
-
-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;
-}
diff --git a/c/src/lib/libbsp/sparc/leon/configure.ac b/c/src/lib/libbsp/sparc/leon/configure.ac
deleted file mode 100644
index 3a192be249..0000000000
--- a/c/src/lib/libbsp/sparc/leon/configure.ac
+++ /dev/null
@@ -1,42 +0,0 @@
-## Process this file with autoconf to produce a configure script.
-##
-## $Id$
-
-AC_PREREQ(2.59)
-AC_INIT([rtems-c-src-lib-libbsp-sparc-leon],[_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
-
-RTEMS_CHECK_NETWORKING
-
-AM_CONDITIONAL(HAS_NETWORKING,test "$HAS_NETWORKING" = "yes")
-
-RTEMS_CONFIG_BUILD_SUBDIRS(tools)
-
-## bsp-specific options
-RTEMS_BSPOPTS_SET([CONSOLE_USE_INTERRUPTS],[*],[0])
-RTEMS_BSPOPTS_HELP([CONSOLE_USE_INTERRUPTS],
-[The erc32 console driver can operate in either polled or interrupt mode.
-Under the simulator (especially when FAST_UART is defined), polled seems to operate
-better. It is common for a task to print a line (like the end of test message) and
-then exit. In this case, the program returns control to the simulator command line
-before the program has even queued the output to the uart. Thus sis has no chance
-of getting the data out.])
-
-RTEMS_BSPOPTS_SET([SIMSPARC_FAST_IDLE],[*],[])
-RTEMS_BSPOPTS_HELP([SIMSPARC_FAST_IDLE],
-[If defined, speed up the clock ticks while the idle task is running so
- time spent in the idle task is minimized. This significantly reduces
- the wall time required to execute the RTEMS test suites.])
-
-# Explicitly list all Makefiles here
-AC_CONFIG_FILES([Makefile])
-AC_OUTPUT
diff --git a/c/src/lib/libbsp/sparc/leon/console/console.c b/c/src/lib/libbsp/sparc/leon/console/console.c
deleted file mode 100644
index c313542317..0000000000
--- a/c/src/lib/libbsp/sparc/leon/console/console.c
+++ /dev/null
@@ -1,429 +0,0 @@
-/*
- * This file contains the TTY driver for the serial ports on the LEON.
- *
- * This driver uses the termios pseudo driver.
- *
- * COPYRIGHT (c) 1989-1998.
- * 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>
-#include <stdlib.h>
-#include <assert.h>
-
-/*
- * Should we use a polled or interrupt drived console?
- *
- * NOTE: This is defined in the custom/leon.cfg file.
- *
- * WARNING: In sis 1.6, it did not appear that the UART interrupts
- * worked in a desirable fashion. Immediately upon writing
- * a character into the TX buffer, an interrupt was generated.
- * This did not allow enough time for the program to put more
- * characters in the buffer. So every character resulted in
- * "priming" the transmitter. This effectively results in
- * in a polled console with a useless interrupt per character
- * on output. It is reasonable to assume that input does not
- * share this problem although it was not investigated.
- *
- */
-
-/*
- * console_outbyte_polled
- *
- * This routine transmits a character using polling.
- */
-
-void console_outbyte_polled(
- int port,
- char ch
-);
-
-/* body is in debugputs.c */
-
-/*
- * console_inbyte_nonblocking
- *
- * This routine polls for a character.
- */
-
-int console_inbyte_nonblocking( int port );
-
-/* body is in debugputs.c */
-
-/*
- * Interrupt driven console IO
- */
-
-#if (CONSOLE_USE_INTERRUPTS)
-
-/*
- * Buffers between task and ISRs
- */
-
-#include <rtems/ringbuf.h>
-
-Ring_buffer_t TX_Buffer[ 2 ];
-boolean Is_TX_active[ 2 ];
-
-void *console_termios_data[ 2 ];
-
-/*
- * console_isr_a
- *
- * This routine is the console interrupt handler for Channel 1.
- *
- * Input parameters:
- * vector - vector number
- *
- * Output parameters: NONE
- *
- * Return values: NONE
- */
-
-rtems_isr console_isr_a(
- rtems_vector_number vector
-)
-{
- char ch;
- int UStat;
-
- if ( (UStat = LEON_REG.UART_Status_1) & LEON_REG_UART_STATUS_DR ) {
- if (UStat & LEON_REG_UART_STATUS_ERR) {
- LEON_REG.UART_Status_1 = LEON_REG_UART_STATUS_CLR;
- }
- ch = LEON_REG.UART_Channel_1;
-
- rtems_termios_enqueue_raw_characters( console_termios_data[ 0 ], &ch, 1 );
- }
-
- if ( LEON_REG.UART_Status_1 & LEON_REG_UART_STATUS_THE ) {
- if ( !Ring_buffer_Is_empty( &TX_Buffer[ 0 ] ) ) {
- Ring_buffer_Remove_character( &TX_Buffer[ 0 ], ch );
- LEON_REG.UART_Channel_1 = (uint32_t) ch;
- } else
- Is_TX_active[ 0 ] = FALSE;
- }
-
- LEON_Clear_interrupt( LEON_INTERRUPT_UART_1_RX_TX );
-}
-
-/*
- * console_isr_b
- *
- * This routine is the console interrupt handler for Channel 2.
- *
- * Input parameters:
- * vector - vector number
- *
- * Output parameters: NONE
- *
- * Return values: NONE
- */
-
-rtems_isr console_isr_b(
- rtems_vector_number vector
-)
-{
- char ch;
- int UStat;
-
- if ( (UStat = LEON_REG.UART_Status_2) & LEON_REG_UART_STATUS_DR ) {
- if (UStat & LEON_REG_UART_STATUS_ERR) {
- LEON_REG.UART_Status_2 = LEON_REG_UART_STATUS_CLR;
- }
- ch = LEON_REG.UART_Channel_2;
- rtems_termios_enqueue_raw_characters( console_termios_data[ 1 ], &ch, 1 );
-
- }
-
- if ( LEON_REG.UART_Status_2 & LEON_REG_UART_STATUS_THE ) {
- if ( !Ring_buffer_Is_empty( &TX_Buffer[ 1 ] ) ) {
- Ring_buffer_Remove_character( &TX_Buffer[ 1 ], ch );
- LEON_REG.UART_Channel_2 = (uint32_t) ch;
- } else
- Is_TX_active[ 1 ] = FALSE;
- }
-
- LEON_Clear_interrupt( LEON_INTERRUPT_UART_2_RX_TX );
-}
-
-/*
- * console_exit
- *
- * This routine allows the console to exit by masking its associated interrupt
- * vectors.
- *
- * Input parameters: NONE
- *
- * Output parameters: NONE
- *
- * Return values: NONE
- */
-
-void console_exit()
-{
- uint32_t port;
- uint32_t ch;
-
- /*
- * Although the interrupts for the UART are unmasked, the PIL is set to
- * disable all external interrupts. So we might as well do this first.
- */
-
- LEON_Mask_interrupt( LEON_INTERRUPT_UART_1_RX_TX );
- LEON_Mask_interrupt( LEON_INTERRUPT_UART_2_RX_TX );
-
- for ( port=0 ; port <= 1 ; port++ ) {
- while ( !Ring_buffer_Is_empty( &TX_Buffer[ port ] ) ) {
- Ring_buffer_Remove_character( &TX_Buffer[ port ], ch );
- console_outbyte_polled( port, ch );
- }
- }
-
- /*
- * Now wait for all the data to actually get out ... the send register
- * should be empty.
- */
-
- while ( (LEON_REG.UART_Status_1 & LEON_REG_UART_STATUS_THE) !=
- LEON_REG_UART_STATUS_THE );
-
- while ( (LEON_REG.UART_Status_2 & LEON_REG_UART_STATUS_THE) !=
- LEON_REG_UART_STATUS_THE );
-
- LEON_REG.UART_Control_1 = 0;
- LEON_REG.UART_Control_2 = 0;
- LEON_REG.UART_Status_1 = 0;
- LEON_REG.UART_Status_2 = 0;
-
-}
-
-#define CONSOLE_UART_1_TRAP LEON_TRAP_TYPE( LEON_INTERRUPT_UART_1_RX_TX )
-#define CONSOLE_UART_2_TRAP LEON_TRAP_TYPE( LEON_INTERRUPT_UART_2_RX_TX )
-
-/*
- * console_initialize_interrupts
- *
- * This routine initializes the console's receive and transmit
- * ring buffers and loads the appropriate vectors to handle the interrupts.
- *
- * Input parameters: NONE
- *
- * Output parameters: NONE
- *
- * Return values: NONE
- */
-
-#ifdef RDB_BREAK_IN
- extern uint32_t trap_table[];
-#endif
-
-void console_initialize_interrupts( void )
-{
- Ring_buffer_Initialize( &TX_Buffer[ 0 ] );
- Ring_buffer_Initialize( &TX_Buffer[ 1 ] );
-
- Is_TX_active[ 0 ] = FALSE;
- Is_TX_active[ 1 ] = FALSE;
-
- atexit( console_exit );
-
- LEON_REG.UART_Control_1 |= LEON_REG_UART_CTRL_RI | LEON_REG_UART_CTRL_TI;
- LEON_REG.UART_Control_2 |= LEON_REG_UART_CTRL_RI | LEON_REG_UART_CTRL_TI;
-
- set_vector( console_isr_a, CONSOLE_UART_1_TRAP, 1 );
-#ifdef RDB_BREAK_IN
- if (trap_table[0x150/4] == 0x91d02000)
-#endif
- set_vector( console_isr_b, CONSOLE_UART_2_TRAP, 1 );
-}
-
-/*
- * console_outbyte_interrupt
- *
- * This routine transmits a character out.
- *
- * Input parameters:
- * port - port to transmit character to
- * ch - character to be transmitted
- *
- * Output parameters: NONE
- *
- * Return values: NONE
- */
-
-void console_outbyte_interrupt(
- int port,
- char ch
-)
-{
- /*
- * If this is the first character then we need to prime the pump
- */
-
- if ( Is_TX_active[ port ] == FALSE ) {
- Is_TX_active[ port ] = TRUE;
- console_outbyte_polled( port, ch );
- return;
- }
-
- while ( Ring_buffer_Is_full( &TX_Buffer[ port ] ) );
-
- Ring_buffer_Add_character( &TX_Buffer[ port ], ch );
-}
-
-#endif /* CONSOLE_USE_INTERRUPTS */
-
-/*
- * Console Termios Support Entry Points
- *
- */
-
-int console_write_support (int minor, const char *buf, int len)
-{
- int nwrite = 0;
-
- while (nwrite < len) {
-#if (CONSOLE_USE_INTERRUPTS)
- console_outbyte_interrupt( minor, *buf++ );
-#else
- console_outbyte_polled( minor, *buf++ );
-#endif
- nwrite++;
- }
- return nwrite;
-}
-
-/*
- * Console Device Driver Entry Points
- *
- */
-
-rtems_device_driver console_initialize(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *arg
-)
-{
- rtems_status_code status;
-
- rtems_termios_initialize();
-
- /*
- * Register Device Names
- */
-
- status = rtems_io_register_name( "/dev/console", major, 0 );
- if (status != RTEMS_SUCCESSFUL)
- rtems_fatal_error_occurred(status);
-
- status = rtems_io_register_name( "/dev/console_b", major, 1 );
- if (status != RTEMS_SUCCESSFUL)
- rtems_fatal_error_occurred(status);
-
- /*
- * Initialize Hardware
- */
-
- LEON_REG.UART_Control_1 |= LEON_REG_UART_CTRL_RE | LEON_REG_UART_CTRL_TE;
- LEON_REG.UART_Control_2 |= LEON_REG_UART_CTRL_RE | LEON_REG_UART_CTRL_TE |
- LEON_REG_UART_CTRL_RI; /* rx irq default enable for remote debugger */
- LEON_REG.UART_Status_1 = 0;
- LEON_REG.UART_Status_2 = 0;
-#if (CONSOLE_USE_INTERRUPTS)
- console_initialize_interrupts();
-#endif
-
- return RTEMS_SUCCESSFUL;
-}
-
-rtems_device_driver console_open(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void * arg
-)
-{
- rtems_status_code sc;
-#if (CONSOLE_USE_INTERRUPTS)
- rtems_libio_open_close_args_t *args = arg;
- static const rtems_termios_callbacks intrCallbacks = {
- NULL, /* firstOpen */
- NULL, /* lastClose */
- NULL, /* pollRead */
- console_write_support, /* write */
- NULL, /* setAttributes */
- NULL, /* stopRemoteTx */
- NULL, /* startRemoteTx */
- 0 /* outputUsesInterrupts */
- };
-#else
- static const rtems_termios_callbacks pollCallbacks = {
- NULL, /* firstOpen */
- NULL, /* lastClose */
- console_inbyte_nonblocking, /* pollRead */
- console_write_support, /* write */
- NULL, /* setAttributes */
- NULL, /* stopRemoteTx */
- NULL, /* startRemoteTx */
- 0 /* outputUsesInterrupts */
- };
-#endif
-
- assert( minor <= 1 );
- if ( minor > 2 )
- return RTEMS_INVALID_NUMBER;
-
-#if (CONSOLE_USE_INTERRUPTS)
- sc = rtems_termios_open (major, minor, arg, &intrCallbacks);
-
- console_termios_data[ minor ] = args->iop->data1;
-#else
- sc = rtems_termios_open (major, minor, arg, &pollCallbacks);
-#endif
-
- return RTEMS_SUCCESSFUL;
-}
-
-rtems_device_driver console_close(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void * arg
-)
-{
- return rtems_termios_close (arg);
-}
-
-rtems_device_driver console_read(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void * arg
-)
-{
- return rtems_termios_read (arg);
-}
-
-rtems_device_driver console_write(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void * arg
-)
-{
- return rtems_termios_write (arg);
-}
-
-rtems_device_driver console_control(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void * arg
-)
-{
- return rtems_termios_ioctl (arg);
-}
diff --git a/c/src/lib/libbsp/sparc/leon/console/consolereserveresources.c b/c/src/lib/libbsp/sparc/leon/console/consolereserveresources.c
deleted file mode 100644
index 7e5b155bfc..0000000000
--- a/c/src/lib/libbsp/sparc/leon/console/consolereserveresources.c
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * This file contains the TTY driver for the serial ports on the LEON.
- *
- * This driver uses the termios pseudo driver.
- *
- * 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>
-#include <stdlib.h>
-#include <assert.h>
-
-int console_reserve_resources_removed;
diff --git a/c/src/lib/libbsp/sparc/leon/console/debugputs.c b/c/src/lib/libbsp/sparc/leon/console/debugputs.c
deleted file mode 100644
index 0ff828cbfa..0000000000
--- a/c/src/lib/libbsp/sparc/leon/console/debugputs.c
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * This file contains the TTY driver for the serial ports on the LEON.
- *
- * This driver uses the termios pseudo driver.
- *
- * 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>
-#include <stdlib.h>
-#include <assert.h>
-
-/*
- * console_outbyte_polled
- *
- * This routine transmits a character using polling.
- */
-
-void console_outbyte_polled(
- int port,
- unsigned char ch
-)
-{
- if ( port == 0 ) {
- while ( (LEON_REG.UART_Status_1 & LEON_REG_UART_STATUS_THE) == 0 );
- LEON_REG.UART_Channel_1 = (unsigned int) ch;
- return;
- }
-
- while ( (LEON_REG.UART_Status_2 & LEON_REG_UART_STATUS_THE) == 0 );
- LEON_REG.UART_Channel_2 = (unsigned int) ch;
-}
-
-/*
- * console_inbyte_nonblocking
- *
- * This routine polls for a character.
- */
-
-int console_inbyte_nonblocking( int port )
-{
-
- switch (port) {
-
- case 0:
- if (LEON_REG.UART_Status_1 & LEON_REG_UART_STATUS_ERR) {
- LEON_REG.UART_Status_1 = ~LEON_REG_UART_STATUS_ERR;
- }
-
- if ((LEON_REG.UART_Status_1 & LEON_REG_UART_STATUS_DR) == 0)
- return -1;
- return (int) LEON_REG.UART_Channel_1;
- return 1;
-
- case 1:
- if (LEON_REG.UART_Status_2 & LEON_REG_UART_STATUS_ERR) {
- LEON_REG.UART_Status_2 = ~LEON_REG_UART_STATUS_ERR;
- }
-
- if ((LEON_REG.UART_Status_2 & LEON_REG_UART_STATUS_DR) == 0)
- return -1;
- return (int) LEON_REG.UART_Channel_2;
-
- default:
- assert( 0 );
- }
-
- return -1;
-}
-
-/*
- * DEBUG_puts
- *
- * This should be safe in the event of an error. It attempts to insure
- * that no TX empty interrupts occur while it is doing polled IO. Then
- * it restores the state of that external interrupt.
- *
- * Input parameters:
- * string - pointer to debug output string
- *
- * Output parameters: NONE
- *
- * Return values: NONE
- */
-
-void DEBUG_puts(
- char *string
-)
-{
- char *s;
- uint32_t old_level;
-
- LEON_Disable_interrupt( LEON_INTERRUPT_UART_1_RX_TX, old_level );
- LEON_REG.UART_Control_1 = LEON_REG_UART_CTRL_TE;
- for ( s = string ; *s ; s++ )
- console_outbyte_polled( 0, *s );
-
- console_outbyte_polled( 0, '\r' );
- console_outbyte_polled( 0, '\n' );
- LEON_Restore_interrupt( LEON_INTERRUPT_UART_1_RX_TX, old_level );
-}
diff --git a/c/src/lib/libbsp/sparc/leon/gnatsupp/gnatsupp.c b/c/src/lib/libbsp/sparc/leon/gnatsupp/gnatsupp.c
deleted file mode 100644
index 34169b9895..0000000000
--- a/c/src/lib/libbsp/sparc/leon/gnatsupp/gnatsupp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- *
- * Support for gnat/rtems interrupts and exception handling.
- * Jiri Gaisler, ESA/ESTEC, 17-02-1999.
- *
- */
-
-void __gnat_install_handler_common (int t1, int t2);
-
-/*
- * Avoid trap 0x18 which is used by the clock tick, and
- * 0x12 (UART B interrupt) which is used by the stub.
- */
-
-void
-__gnat_install_handler ()
-{
- __gnat_install_handler_common (0x18, 0x12);
-}
diff --git a/c/src/lib/libbsp/sparc/leon/include/.cvsignore b/c/src/lib/libbsp/sparc/leon/include/.cvsignore
deleted file mode 100644
index 5f1077556d..0000000000
--- a/c/src/lib/libbsp/sparc/leon/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/sparc/leon/include/bsp.h b/c/src/lib/libbsp/sparc/leon/include/bsp.h
deleted file mode 100644
index f1d9469144..0000000000
--- a/c/src/lib/libbsp/sparc/leon/include/bsp.h
+++ /dev/null
@@ -1,122 +0,0 @@
-/* bsp.h
- *
- * This include file contains all SPARC simulator definitions.
- *
- * COPYRIGHT (c) 1989-1998.
- * 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.
- *
- * Ported to ERC32 implementation of the SPARC by On-Line Applications
- * Research Corporation (OAR) under contract to the European Space
- * Agency (ESA).
- *
- * ERC32 modifications of respective RTEMS file: COPYRIGHT (c) 1995.
- * European Space Agency.
- *
- * $Id$
- */
-
-#ifndef _BSP_H
-#define _BSP_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <bspopts.h>
-
-#include <rtems.h>
-#include <rtems/iosupp.h>
-#include <leon.h>
-#include <rtems/clockdrv.h>
-
-#include <rtems/console.h>
-
-/*
- * confdefs.h overrides for this BSP:
- * - two termios serial ports
- * - Interrupt stack space is not minimum if defined.
- */
-
-#define CONFIGURE_NUMBER_OF_TERMIOS_PORTS 2
-#define CONFIGURE_INTERRUPT_STACK_MEMORY (16 * 1024)
-
-/*
- * Network driver configuration
- */
-
-struct rtems_bsdnet_ifconfig;
-extern int rtems_leon_open_eth_driver_attach (struct rtems_bsdnet_ifconfig *config);
-#define RTEMS_BSP_NETWORK_DRIVER_NAME "open_eth1"
-#define RTEMS_BSP_NETWORK_DRIVER_ATTACH rtems_leon_open_eth_driver_attach
-
-/*
- * Simple spin delay in microsecond units for device drivers.
- * This is very dependent on the clock speed of the target.
- */
-
-extern void Clock_delay(uint32_t microseconds);
-
-#define delay( microseconds ) Clock_delay(microseconds)
-
-/* Constants */
-
-/*
- * Information placed in the linkcmds file.
- */
-
-extern int RAM_START;
-extern int RAM_END;
-extern int RAM_SIZE;
-
-extern int PROM_START;
-extern int PROM_END;
-extern int PROM_SIZE;
-
-extern int CLOCK_SPEED;
-
-extern int end; /* last address in the program */
-
-/*
- * Device Driver Table Entries
- */
-
-/*
- * NOTE: Use the standard Console driver entry
- */
-
-/*
- * NOTE: Use the standard Clock driver entry
- */
-
-/* miscellaneous stuff assumed to exist */
-
-void bsp_cleanup( void );
-
-void bsp_start( void );
-
-rtems_isr_entry set_vector( /* returns old vector */
- rtems_isr_entry handler, /* isr routine */
- rtems_vector_number vector, /* vector number */
- int type /* RTEMS or RAW intr */
-);
-
-void DEBUG_puts( char *string );
-
-void BSP_fatal_return( void );
-
-void bsp_spurious_initialize( void );
-
-extern rtems_configuration_table BSP_Configuration; /* owned by BSP */
-
-extern rtems_cpu_table Cpu_table; /* owned by BSP */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-/* end of include file */
diff --git a/c/src/lib/libbsp/sparc/leon/include/coverhd.h b/c/src/lib/libbsp/sparc/leon/include/coverhd.h
deleted file mode 100644
index 1d50a4ff7a..0000000000
--- a/c/src/lib/libbsp/sparc/leon/include/coverhd.h
+++ /dev/null
@@ -1,110 +0,0 @@
-/* coverhd.h
- *
- * This include file has defines to represent the overhead associated
- * with calling a particular directive from C for this target.
- *
- * 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.
- *
- * Ported to ERC32 implementation of the SPARC by On-Line Applications
- * Research Corporation (OAR) under contract to the European Space
- * Agency (ESA).
- *
- * ERC32 modifications of respective RTEMS file: COPYRIGHT (c) 1995.
- * European Space Agency.
- *
- * $Id$
- */
-
-#ifndef __COVERHD_h
-#define __COVERHD_h
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define CALLING_OVERHEAD_INITIALIZE_EXECUTIVE 0
-#define CALLING_OVERHEAD_SHUTDOWN_EXECUTIVE 0
-#define CALLING_OVERHEAD_TASK_CREATE 0
-#define CALLING_OVERHEAD_TASK_IDENT 0
-#define CALLING_OVERHEAD_TASK_START 0
-#define CALLING_OVERHEAD_TASK_RESTART 0
-#define CALLING_OVERHEAD_TASK_DELETE 0
-#define CALLING_OVERHEAD_TASK_SUSPEND 0
-#define CALLING_OVERHEAD_TASK_RESUME 0
-#define CALLING_OVERHEAD_TASK_SET_PRIORITY 0
-#define CALLING_OVERHEAD_TASK_MODE 0
-#define CALLING_OVERHEAD_TASK_GET_NOTE 0
-#define CALLING_OVERHEAD_TASK_SET_NOTE 0
-#define CALLING_OVERHEAD_TASK_WAKE_WHEN 0
-#define CALLING_OVERHEAD_TASK_WAKE_AFTER 0
-#define CALLING_OVERHEAD_INTERRUPT_CATCH 0
-#define CALLING_OVERHEAD_CLOCK_GET 0
-#define CALLING_OVERHEAD_CLOCK_SET 0
-#define CALLING_OVERHEAD_CLOCK_TICK 0
-
-#define CALLING_OVERHEAD_TIMER_CREATE 0
-#define CALLING_OVERHEAD_TIMER_IDENT 0
-#define CALLING_OVERHEAD_TIMER_DELETE 0
-#define CALLING_OVERHEAD_TIMER_FIRE_AFTER 0
-#define CALLING_OVERHEAD_TIMER_FIRE_WHEN 0
-#define CALLING_OVERHEAD_TIMER_RESET 0
-#define CALLING_OVERHEAD_TIMER_CANCEL 0
-#define CALLING_OVERHEAD_SEMAPHORE_CREATE 0
-#define CALLING_OVERHEAD_SEMAPHORE_IDENT 0
-#define CALLING_OVERHEAD_SEMAPHORE_DELETE 0
-#define CALLING_OVERHEAD_SEMAPHORE_OBTAIN 0
-#define CALLING_OVERHEAD_SEMAPHORE_RELEASE 0
-#define CALLING_OVERHEAD_MESSAGE_QUEUE_CREATE 0
-#define CALLING_OVERHEAD_MESSAGE_QUEUE_IDENT 0
-#define CALLING_OVERHEAD_MESSAGE_QUEUE_DELETE 0
-#define CALLING_OVERHEAD_MESSAGE_QUEUE_SEND 0
-#define CALLING_OVERHEAD_MESSAGE_QUEUE_URGENT 0
-#define CALLING_OVERHEAD_MESSAGE_QUEUE_BROADCAST 0
-#define CALLING_OVERHEAD_MESSAGE_QUEUE_RECEIVE 0
-#define CALLING_OVERHEAD_MESSAGE_QUEUE_FLUSH 0
-
-#define CALLING_OVERHEAD_EVENT_SEND 0
-#define CALLING_OVERHEAD_EVENT_RECEIVE 0
-#define CALLING_OVERHEAD_SIGNAL_CATCH 0
-#define CALLING_OVERHEAD_SIGNAL_SEND 0
-#define CALLING_OVERHEAD_PARTITION_CREATE 0
-#define CALLING_OVERHEAD_PARTITION_IDENT 0
-#define CALLING_OVERHEAD_PARTITION_DELETE 0
-#define CALLING_OVERHEAD_PARTITION_GET_BUFFER 0
-#define CALLING_OVERHEAD_PARTITION_RETURN_BUFFER 0
-#define CALLING_OVERHEAD_REGION_CREATE 0
-#define CALLING_OVERHEAD_REGION_IDENT 0
-#define CALLING_OVERHEAD_REGION_DELETE 0
-#define CALLING_OVERHEAD_REGION_GET_SEGMENT 0
-#define CALLING_OVERHEAD_REGION_RETURN_SEGMENT 0
-#define CALLING_OVERHEAD_PORT_CREATE 0
-#define CALLING_OVERHEAD_PORT_IDENT 0
-#define CALLING_OVERHEAD_PORT_DELETE 0
-#define CALLING_OVERHEAD_PORT_EXTERNAL_TO_INTERNAL 0
-#define CALLING_OVERHEAD_PORT_INTERNAL_TO_EXTERNAL 0
-
-#define CALLING_OVERHEAD_IO_INITIALIZE 0
-#define CALLING_OVERHEAD_IO_OPEN 0
-#define CALLING_OVERHEAD_IO_CLOSE 0
-#define CALLING_OVERHEAD_IO_READ 0
-#define CALLING_OVERHEAD_IO_WRITE 0
-#define CALLING_OVERHEAD_IO_CONTROL 0
-#define CALLING_OVERHEAD_FATAL_ERROR_OCCURRED 0
-#define CALLING_OVERHEAD_RATE_MONOTONIC_CREATE 0
-#define CALLING_OVERHEAD_RATE_MONOTONIC_IDENT 0
-#define CALLING_OVERHEAD_RATE_MONOTONIC_DELETE 0
-#define CALLING_OVERHEAD_RATE_MONOTONIC_CANCEL 0
-#define CALLING_OVERHEAD_RATE_MONOTONIC_PERIOD 0
-#define CALLING_OVERHEAD_MULTIPROCESSING_ANNOUNCE 0
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-/* end of include file */
diff --git a/c/src/lib/libbsp/sparc/leon/include/leon.h b/c/src/lib/libbsp/sparc/leon/include/leon.h
deleted file mode 100644
index dff0dc8356..0000000000
--- a/c/src/lib/libbsp/sparc/leon/include/leon.h
+++ /dev/null
@@ -1,376 +0,0 @@
-/* erc32.h
- *
- * This include file contains information pertaining to the LEON-1.
- * The LEON-1 is a custom SPARC V7 implementation.
- * This CPU has a number of on-board peripherals and
- * was developed by the European Space Agency to target space applications.
- *
- * NOTE: Other than where absolutely required, this version currently
- * supports only the peripherals and bits used by the basic board
- * support package. This includes at least significant pieces of
- * the following items:
- *
- * + UART Channels A and B
- * + Real Time Clock
- * + Memory Control Register
- * + Interrupt Control
- *
- * COPYRIGHT (c) 1989-1998.
- * 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.
- *
- * Ported to LEON implementation of the SPARC by On-Line Applications
- * Research Corporation (OAR) under contract to the European Space
- * Agency (ESA).
- *
- * LEON modifications of respective RTEMS file: COPYRIGHT (c) 1995.
- * European Space Agency.
- *
- * $Id$
- */
-
-#ifndef _INCLUDE_LEON_h
-#define _INCLUDE_LEON_h
-
-#include <rtems/score/sparc.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * Interrupt Sources
- *
- * The interrupt source numbers directly map to the trap type and to
- * the bits used in the Interrupt Clear, Interrupt Force, Interrupt Mask,
- * and the Interrupt Pending Registers.
- */
-
-#define LEON_INTERRUPT_CORRECTABLE_MEMORY_ERROR 1
-#define LEON_INTERRUPT_UART_2_RX_TX 2
-#define LEON_INTERRUPT_UART_1_RX_TX 3
-#define LEON_INTERRUPT_EXTERNAL_0 4
-#define LEON_INTERRUPT_EXTERNAL_1 5
-#define LEON_INTERRUPT_EXTERNAL_2 6
-#define LEON_INTERRUPT_EXTERNAL_3 7
-#define LEON_INTERRUPT_TIMER1 8
-#define LEON_INTERRUPT_TIMER2 9
-#define LEON_INTERRUPT_EMPTY1 10
-#define LEON_INTERRUPT_EMPTY2 11
-#define LEON_INTERRUPT_EMPTY3 12
-#define LEON_INTERRUPT_EMPTY4 13
-#define LEON_INTERRUPT_EMPTY5 14
-#define LEON_INTERRUPT_EMPTY6 15
-
-#ifndef ASM
-
-/*
- * Trap Types for on-chip peripherals
- *
- * Source: Table 8 - Interrupt Trap Type and Default Priority Assignments
- *
- * NOTE: The priority level for each source corresponds to the least
- * significant nibble of the trap type.
- */
-
-#define LEON_TRAP_TYPE( _source ) SPARC_ASYNCHRONOUS_TRAP((_source) + 0x10)
-
-#define LEON_TRAP_SOURCE( _trap ) ((_trap) - 0x10)
-
-#define LEON_INT_TRAP( _trap ) \
- ( (_trap) >= LEON_TRAP_TYPE( LEON_INTERRUPT_CORRECTABLE_MEMORY_ERROR ) && \
- (_trap) <= LEON_TRAP_TYPE( LEON_INTERRUPT_EMPTY6 ) )
-
-/*
- * Structure for LEON memory mapped registers.
- *
- * Source: Section 6.1 - On-chip registers
- *
- * NOTE: There is only one of these structures per CPU, its base address
- * is 0x80000000, and the variable LEON_REG is placed there by the
- * linkcmds file.
- */
-
-typedef struct {
- volatile unsigned int Memory_Config_1;
- volatile unsigned int Memory_Config_2;
- volatile unsigned int Edac_Control;
- volatile unsigned int Failed_Address;
- volatile unsigned int Memory_Status;
- volatile unsigned int Cache_Control;
- volatile unsigned int Power_Down;
- volatile unsigned int Write_Protection_1;
- volatile unsigned int Write_Protection_2;
- volatile unsigned int Leon_Configuration;
- volatile unsigned int dummy2;
- volatile unsigned int dummy3;
- volatile unsigned int dummy4;
- volatile unsigned int dummy5;
- volatile unsigned int dummy6;
- volatile unsigned int dummy7;
- volatile unsigned int Timer_Counter_1;
- volatile unsigned int Timer_Reload_1;
- volatile unsigned int Timer_Control_1;
- volatile unsigned int Watchdog;
- volatile unsigned int Timer_Counter_2;
- volatile unsigned int Timer_Reload_2;
- volatile unsigned int Timer_Control_2;
- volatile unsigned int dummy8;
- volatile unsigned int Scaler_Counter;
- volatile unsigned int Scaler_Reload;
- volatile unsigned int dummy9;
- volatile unsigned int dummy10;
- volatile unsigned int UART_Channel_1;
- volatile unsigned int UART_Status_1;
- volatile unsigned int UART_Control_1;
- volatile unsigned int UART_Scaler_1;
- volatile unsigned int UART_Channel_2;
- volatile unsigned int UART_Status_2;
- volatile unsigned int UART_Control_2;
- volatile unsigned int UART_Scaler_2;
- volatile unsigned int Interrupt_Mask;
- volatile unsigned int Interrupt_Pending;
- volatile unsigned int Interrupt_Force;
- volatile unsigned int Interrupt_Clear;
- volatile unsigned int PIO_Data;
- volatile unsigned int PIO_Direction;
- volatile unsigned int PIO_Interrupt;
-} LEON_Register_Map;
-
-#endif
-
-/*
- * The following constants are intended to be used ONLY in assembly
- * language files.
- *
- * NOTE: The intended style of usage is to load the address of LEON REGS
- * into a register and then use these as displacements from
- * that register.
- */
-
-#ifdef ASM
-
-#define LEON_REG_MEMCFG1_OFFSET 0x00
-#define LEON_REG_MEMCFG2_OFFSET 0x04
-#define LEON_REG_EDACCTRL_OFFSET 0x08
-#define LEON_REG_FAILADDR_OFFSET 0x0C
-#define LEON_REG_MEMSTATUS_OFFSET 0x10
-#define LEON_REG_CACHECTRL_OFFSET 0x14
-#define LEON_REG_POWERDOWN_OFFSET 0x18
-#define LEON_REG_WRITEPROT1_OFFSET 0x1C
-#define LEON_REG_WRITEPROT2_OFFSET 0x20
-#define LEON_REG_LEONCONF_OFFSET 0x24
-#define LEON_REG_UNIMPLEMENTED_2_OFFSET 0x28
-#define LEON_REG_UNIMPLEMENTED_3_OFFSET 0x2C
-#define LEON_REG_UNIMPLEMENTED_4_OFFSET 0x30
-#define LEON_REG_UNIMPLEMENTED_5_OFFSET 0x34
-#define LEON_REG_UNIMPLEMENTED_6_OFFSET 0x38
-#define LEON_REG_UNIMPLEMENTED_7_OFFSET 0x3C
-#define LEON_REG_TIMERCNT1_OFFSET 0x40
-#define LEON_REG_TIMERLOAD1_OFFSET 0x44
-#define LEON_REG_TIMERCTRL1_OFFSET 0x48
-#define LEON_REG_WDOG_OFFSET 0x4C
-#define LEON_REG_TIMERCNT2_OFFSET 0x50
-#define LEON_REG_TIMERLOAD2_OFFSET 0x54
-#define LEON_REG_TIMERCTRL2_OFFSET 0x58
-#define LEON_REG_UNIMPLEMENTED_8_OFFSET 0x5C
-#define LEON_REG_SCALERCNT_OFFSET 0x60
-#define LEON_REG_SCALER_LOAD_OFFSET 0x64
-#define LEON_REG_UNIMPLEMENTED_9_OFFSET 0x68
-#define LEON_REG_UNIMPLEMENTED_10_OFFSET 0x6C
-#define LEON_REG_UARTDATA1_OFFSET 0x70
-#define LEON_REG_UARTSTATUS1_OFFSET 0x74
-#define LEON_REG_UARTCTRL1_OFFSET 0x78
-#define LEON_REG_UARTSCALER1_OFFSET 0x7C
-#define LEON_REG_UARTDATA2_OFFSET 0x80
-#define LEON_REG_UARTSTATUS2_OFFSET 0x84
-#define LEON_REG_UARTCTRL2_OFFSET 0x88
-#define LEON_REG_UARTSCALER2_OFFSET 0x8C
-#define LEON_REG_IRQMASK_OFFSET 0x90
-#define LEON_REG_IRQPEND_OFFSET 0x94
-#define LEON_REG_IRQFORCE_OFFSET 0x98
-#define LEON_REG_IRQCLEAR_OFFSET 0x9C
-#define LEON_REG_PIODATA_OFFSET 0xA0
-#define LEON_REG_PIODIR_OFFSET 0xA4
-#define LEON_REG_PIOIRQ_OFFSET 0xA8
-#define LEON_REG_SIM_RAM_SIZE_OFFSET 0xF4
-#define LEON_REG_SIM_ROM_SIZE_OFFSET 0xF8
-
-#endif
-
-/*
- * The following defines the bits in Memory Configuration Register 1.
- */
-
-#define LEON_MEMORY_CONFIGURATION_PROM_SIZE_MASK 0x0003C000
-
-/*
- * The following defines the bits in Memory Configuration Register 1.
- */
-
-#define LEON_MEMORY_CONFIGURATION_RAM_SIZE_MASK 0x00001E00
-
-/*
- * The following defines the bits in the Timer Control Register.
- */
-
-#define LEON_REG_TIMER_CONTROL_EN 0x00000001 /* 1 = enable counting */
- /* 0 = hold scalar and counter */
-#define LEON_REG_TIMER_CONTROL_RL 0x00000002 /* 1 = reload at 0 */
- /* 0 = stop at 0 */
-#define LEON_REG_TIMER_CONTROL_LD 0x00000004 /* 1 = load counter */
- /* 0 = no function */
-
-/*
- * The following defines the bits in the UART Control Registers.
- *
- */
-
-#define LEON_REG_UART_CONTROL_RTD 0x000000FF /* RX/TX data */
-
-/*
- * The following defines the bits in the LEON UART Status Registers.
- */
-
-#define LEON_REG_UART_STATUS_DR 0x00000001 /* Data Ready */
-#define LEON_REG_UART_STATUS_TSE 0x00000002 /* TX Send Register Empty */
-#define LEON_REG_UART_STATUS_THE 0x00000004 /* TX Hold Register Empty */
-#define LEON_REG_UART_STATUS_BR 0x00000008 /* Break Error */
-#define LEON_REG_UART_STATUS_OE 0x00000010 /* RX Overrun Error */
-#define LEON_REG_UART_STATUS_PE 0x00000020 /* RX Parity Error */
-#define LEON_REG_UART_STATUS_FE 0x00000040 /* RX Framing Error */
-#define LEON_REG_UART_STATUS_ERR 0x00000078 /* Error Mask */
-
-/*
- * The following defines the bits in the LEON UART Status Registers.
- */
-
-#define LEON_REG_UART_CTRL_RE 0x00000001 /* Receiver enable */
-#define LEON_REG_UART_CTRL_TE 0x00000002 /* Transmitter enable */
-#define LEON_REG_UART_CTRL_RI 0x00000004 /* Receiver interrupt enable */
-#define LEON_REG_UART_CTRL_TI 0x00000008 /* Transmitter interrupt enable */
-#define LEON_REG_UART_CTRL_PS 0x00000010 /* Parity select */
-#define LEON_REG_UART_CTRL_PE 0x00000020 /* Parity enable */
-#define LEON_REG_UART_CTRL_FL 0x00000040 /* Flow control enable */
-#define LEON_REG_UART_CTRL_LB 0x00000080 /* Loop Back enable */
-
-#ifndef ASM
-
-/*
- * This is used to manipulate the on-chip registers.
- *
- * The following symbol must be defined in the linkcmds file and point
- * to the correct location.
- */
-
-extern LEON_Register_Map LEON_REG;
-
-/*
- * Macros to manipulate the Interrupt Clear, Interrupt Force, Interrupt Mask,
- * and the Interrupt Pending Registers.
- *
- * NOTE: For operations which are not atomic, this code disables interrupts
- * to guarantee there are no intervening accesses to the same register.
- * The operations which read the register, modify the value and then
- * store the result back are vulnerable.
- */
-
-#define LEON_Clear_interrupt( _source ) \
- do { \
- LEON_REG.Interrupt_Clear = (1 << (_source)); \
- } while (0)
-
-#define LEON_Force_interrupt( _source ) \
- do { \
- LEON_REG.Interrupt_Force = (1 << (_source)); \
- } while (0)
-
-#define LEON_Is_interrupt_pending( _source ) \
- (LEON_REG.Interrupt_Pending & (1 << (_source)))
-
-#define LEON_Is_interrupt_masked( _source ) \
- (LEON_REG.Interrupt_Masked & (1 << (_source)))
-
-#define LEON_Mask_interrupt( _source ) \
- do { \
- uint32_t _level; \
- \
- _level = sparc_disable_interrupts(); \
- LEON_REG.Interrupt_Mask &= ~(1 << (_source)); \
- sparc_enable_interrupts( _level ); \
- } while (0)
-
-#define LEON_Unmask_interrupt( _source ) \
- do { \
- uint32_t _level; \
- \
- _level = sparc_disable_interrupts(); \
- LEON_REG.Interrupt_Mask |= (1 << (_source)); \
- sparc_enable_interrupts( _level ); \
- } while (0)
-
-#define LEON_Disable_interrupt( _source, _previous ) \
- do { \
- uint32_t _level; \
- uint32_t _mask = 1 << (_source); \
- \
- _level = sparc_disable_interrupts(); \
- (_previous) = LEON_REG.Interrupt_Mask; \
- LEON_REG.Interrupt_Mask = _previous & ~_mask; \
- sparc_enable_interrupts( _level ); \
- (_previous) &= _mask; \
- } while (0)
-
-#define LEON_Restore_interrupt( _source, _previous ) \
- do { \
- uint32_t _level; \
- uint32_t _mask = 1 << (_source); \
- \
- _level = sparc_disable_interrupts(); \
- LEON_REG.Interrupt_Mask = \
- (LEON_REG.Interrupt_Mask & ~_mask) | (_previous); \
- sparc_enable_interrupts( _level ); \
- } while (0)
-
-/*
- * Each timer control register is organized as follows:
- *
- * D0 - Enable
- * 1 = enable counting
- * 0 = hold scaler and counter
- *
- * D1 - Counter Reload
- * 1 = reload counter at zero and restart
- * 0 = stop counter at zero
- *
- * D2 - Counter Load
- * 1 = load counter with preset value
- * 0 = no function
- *
- */
-
-#define LEON_REG_TIMER_COUNTER_RELOAD_AT_ZERO 0x00000002
-#define LEON_REG_TIMER_COUNTER_STOP_AT_ZERO 0x00000000
-
-#define LEON_REG_TIMER_COUNTER_LOAD_COUNTER 0x00000004
-
-#define LEON_REG_TIMER_COUNTER_ENABLE_COUNTING 0x00000001
-#define LEON_REG_TIMER_COUNTER_DISABLE_COUNTING 0x00000000
-
-#define LEON_REG_TIMER_COUNTER_RELOAD_MASK 0x00000002
-#define LEON_REG_TIMER_COUNTER_ENABLE_MASK 0x00000001
-
-#define LEON_REG_TIMER_COUNTER_DEFINED_MASK 0x00000003
-#define LEON_REG_TIMER_COUNTER_CURRENT_MODE_MASK 0x00000003
-
-#endif /* !ASM */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* !_INCLUDE_LEON_h */
-/* end of include file */
diff --git a/c/src/lib/libbsp/sparc/leon/include/tm27.h b/c/src/lib/libbsp/sparc/leon/include/tm27.h
deleted file mode 100644
index db26a82b19..0000000000
--- a/c/src/lib/libbsp/sparc/leon/include/tm27.h
+++ /dev/null
@@ -1,79 +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
- *
- * NOTE: Since the interrupt code for the SPARC supports both synchronous
- * and asynchronous trap handlers, support for testing with both
- * is included.
- */
-
-#define SIS_USE_SYNCHRONOUS_TRAP 0
-
-/*
- * The synchronous trap is an arbitrarily chosen software trap.
- */
-
-#if (SIS_USE_SYNCHRONOUS_TRAP == 1)
-
-#define TEST_VECTOR SPARC_SYNCHRONOUS_TRAP( 0x90 )
-
-#define MUST_WAIT_FOR_INTERRUPT 1
-
-#define Install_tm27_vector( handler ) \
- set_vector( (handler), TEST_VECTOR, 1 );
-
-#define Cause_tm27_intr() \
- asm volatile( "ta 0x10; nop " );
-
-#define Clear_tm27_intr() /* empty */
-
-#define Lower_tm27_intr() /* empty */
-
-/*
- * The asynchronous trap is an arbitrarily chosen ERC32 interrupt source.
- */
-
-#else /* use a regular asynchronous trap */
-
-#define TEST_INTERRUPT_SOURCE LEON_INTERRUPT_EXTERNAL_1
-#define TEST_VECTOR LEON_TRAP_TYPE( TEST_INTERRUPT_SOURCE )
-#define TEST_INTERRUPT_SOURCE2 LEON_INTERRUPT_EXTERNAL_1+1
-#define TEST_VECTOR2 LEON_TRAP_TYPE( TEST_INTERRUPT_SOURCE2 )
-#define MUST_WAIT_FOR_INTERRUPT 1
-
-#define Install_tm27_vector( handler ) \
- set_vector( (handler), TEST_VECTOR, 1 ); \
- set_vector( (handler), TEST_VECTOR2, 1 );
-
-#define Cause_tm27_intr() \
- do { \
- LEON_Force_interrupt( TEST_INTERRUPT_SOURCE+(Interrupt_nest>>1)); \
- nop(); \
- nop(); \
- nop(); \
- } while (0)
-
-#define Clear_tm27_intr() \
- LEON_Clear_interrupt( TEST_INTERRUPT_SOURCE )
-
-#define Lower_tm27_intr() /* empty */
-
-#endif
-
-#endif
diff --git a/c/src/lib/libbsp/sparc/leon/leon_open_eth/leon_open_eth.c b/c/src/lib/libbsp/sparc/leon/leon_open_eth/leon_open_eth.c
deleted file mode 100644
index cece0053a8..0000000000
--- a/c/src/lib/libbsp/sparc/leon/leon_open_eth/leon_open_eth.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * LEON2 Opencores Ethernet MAC Configuration Information
- *
- */
-
-#include <bsp.h>
-#include <libchip/open_eth.h>
-#if (OPEN_ETH_DEBUG & OPEN_ETH_DEBUG_PRINT_REGISTERS)
-#include <stdio.h>
-#endif
-
-/*
- * Default sizes of transmit and receive descriptor areas
- */
-#define RDA_COUNT 16
-#define TDA_COUNT 16
-
-/*
- * Default location of device registers
- */
-#define OPEN_ETH_BASE_ADDRESS 0xb0000000
-
-/*
- * Default interrupt vector
- */
-#define OPEN_ETH_VECTOR 0x1C
-
-open_eth_configuration_t leon_open_eth_configuration = {
- OPEN_ETH_BASE_ADDRESS, /* base address */
- OPEN_ETH_VECTOR, /* vector number */
- TDA_COUNT, /* number of transmit descriptors */
- RDA_COUNT /* number of receive descriptors */
-};
-
-int rtems_leon_open_eth_driver_attach(struct rtems_bsdnet_ifconfig *config)
-{
-
- *(volatile int *) OPEN_ETH_BASE_ADDRESS = 0;
- *(volatile int *) OPEN_ETH_BASE_ADDRESS = 0x800;
- *(volatile int *) OPEN_ETH_BASE_ADDRESS = 0;
- if (rtems_open_eth_driver_attach( config, &leon_open_eth_configuration )) {
- LEON_REG.Interrupt_Clear = (1 << (OPEN_ETH_VECTOR - 0x10));
- LEON_REG.Interrupt_Mask |= (1 << (OPEN_ETH_VECTOR - 0x10));
- return 1;
- }
- return 0;
-}
diff --git a/c/src/lib/libbsp/sparc/leon/startup/boardinit.S b/c/src/lib/libbsp/sparc/leon/startup/boardinit.S
deleted file mode 100644
index 2c6f6b8ce0..0000000000
--- a/c/src/lib/libbsp/sparc/leon/startup/boardinit.S
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * boardinit.s
- *
- * Start code for the LEON.
- *
- * $Id$
- */
-
-#include <rtems/asm.h>
-#include <leon.h>
-
- .global __bsp_board_init
-
-__bsp_board_init:
-
-/* Check if LEON is initialised. If not, this means that we are
- running on the simulator. Initiate some of the parameters
- that are done by the boot-prom otherwise.
-*/
-
- set SYM(LEON_REG), %l0 ! %l0 = base address of peripherals
- ld [%l0+LEON_REG_CACHECTRL_OFFSET], %l1 ! Check if LEON has been initialised
- andcc %l1, 3, %g0
- bne 2f
- nop
-
- flush
- set 0x1000f, %l1
- st %l1, [%l0 + LEON_REG_CACHECTRL_OFFSET] ! enable caches
- ld [%l0 + LEON_REG_SIM_ROM_SIZE_OFFSET], %g1 ! load simulator rom size
- clr %l2
- srl %g1, 13, %g1 ! calculate appropriate rom size
-1:
- srl %g1, 1, %g1
- tst %g1
- bne,a 1b
- inc %l2
- sll %l2, 14, %l2
- st %l2, [%l0 + LEON_REG_MEMCFG1_OFFSET] ! set prom size in memcfg1
-
- set 0, %l2
- ld [%l0 + LEON_REG_SIM_RAM_SIZE_OFFSET], %g2 ! load simulator ram size
- srl %g2, 13, %g1 ! calculate appropriate ram size
-1:
- srl %g1, 1, %g1
- tst %g1
- bne,a 1b
- inc %l2
- sll %l2, 9, %l2
- or %l2, 0x20, %l2 ! set 32-bit ram width by default
- st %l2, [%l0 + LEON_REG_MEMCFG2_OFFSET] ! set ram size in memcfg2
-
- set SYM(RAM_START), %l1 ! Cannot use RAM_END due to bug in linker
- set SYM(RAM_SIZE), %l2
- add %l1, %l2, %sp
- set 49, %l2
- st %l2, [%l0 + LEON_REG_SCALER_LOAD_OFFSET] ! scaler reload register
- st %l2, [%l0 + LEON_REG_SCALERCNT_OFFSET] ! scaler counter register
-
-2:
- retl
- nop
-
-/* end of file */
diff --git a/c/src/lib/libbsp/sparc/leon/startup/linkcmds b/c/src/lib/libbsp/sparc/leon/startup/linkcmds
deleted file mode 100644
index f24806b3d2..0000000000
--- a/c/src/lib/libbsp/sparc/leon/startup/linkcmds
+++ /dev/null
@@ -1,184 +0,0 @@
-/* linkcmds
- *
- * $Id$
- */
-
-OUTPUT_ARCH(sparc)
-__DYNAMIC = 0;
-
-/*
- * The memory map looks like this:
- * +--------------------+ <- low memory
- * | .text |
- * | etext |
- * | ctor list | the ctor and dtor lists are for
- * | dtor list | C++ support
- * | _endtext |
- * +--------------------+
- * | .data | initialized data goes here
- * | _sdata |
- * | _edata |
- * +--------------------+
- * | .bss |
- * | __bss_start | start of bss, cleared by crt0
- * | _end | start of heap, used by sbrk()
- * +--------------------+
- * | heap space |
- * | _ENDHEAP |
- * | stack space |
- * | __stack | top of stack
- * +--------------------+ <- high memory
- */
-
-
-/*
- * User modifiable values:
- *
- * _CLOCK_SPEED in Mhz (used to program the counter/timers)
- *
- * _PROM_SIZE size of PROM (permissible values are 128K, 256K,
- * 512K, 1M, 2M, 4M, 8M and 16M)
- * _RAM_SIZE size of RAM (permissible values are 256K, 512K,
- * 1M, 2M, 4M, 8M, 16M, and 32M)
- *
- */
-
-/* Default values, can be overridden */
-
-_PROM_SIZE = 2M;
-_RAM_SIZE = 4M;
-
-_RAM_START = 0x40000000;
-_RAM_END = _RAM_START + _RAM_SIZE;
-
-_PROM_START = 0x00000000;
-_PROM_END = _PROM_START + _PROM_SIZE;
-
-/*
- * Alternate names without leading _.
- */
-
-PROM_START = _PROM_START;
-PROM_SIZE = _PROM_SIZE;
-PROM_END = _PROM_END;
-
-RAM_START = _RAM_START;
-RAM_SIZE = _RAM_SIZE;
-RAM_END = _RAM_END;
-
-/*
- * Base address of the on-CPU peripherals
- */
-
-_LEON_REG = 0x80000000;
-LEON_REG = 0x80000000;
-
-/* these are the maximum values */
-
-MEMORY
-{
- rom : ORIGIN = 0x00000000, LENGTH = 256M
- ram : ORIGIN = 0x40000000, LENGTH = 1024M
-}
-
-/*
- * stick everything in ram (of course)
- */
-SECTIONS
-{
- .text :
- {
- CREATE_OBJECT_SYMBOLS
- 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_frame)
- . = ALIGN (16);
-
- *(.gnu.linkonce.t*)
-
- /*
- * 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 = .;
- *(.init)
- *(.fini)
- *(.lit)
- *(.shdata)
- . = ALIGN (16);
- _endtext = .;
- } > ram
- .dynamic : { *(.dynamic) } >ram
- .jcr : { *(.jcr) } >ram
- .got : { *(.got) } >ram
- .plt : { *(.plt) } >ram
- .hash : { *(.hash) } >ram
- .dynrel : { *(.dynrel) } >ram
- .dynsym : { *(.dynsym) } >ram
- .dynstr : { *(.dynstr) } >ram
- .hash : { *(.hash) } >ram
- .data :
- {
- data_start = .;
- _data_start = .;
- _sdata = . ;
- *(.data)
- *(.gnu.linkonce.d*)
- *(.gcc_except_table)
- . = ALIGN(0x10);
- edata = .;
- _edata = .;
- } > ram
- .shbss :
- {
- *(.shbss)
- } > ram
- .bss :
- {
- __bss_start = ALIGN(0x8);
- _bss_start = .;
- bss_start = .;
- *(.bss)
- *(COMMON)
- end = .;
- _end = ALIGN(0x8);
- __end = ALIGN(0x8);
- } > ram
- .stab . (NOLOAD) :
- {
- [ .stab ]
- }
- .stabstr . (NOLOAD) :
- {
- [ .stabstr ]
- }
-}
diff --git a/c/src/lib/libbsp/sparc/leon/startup/setvec.c b/c/src/lib/libbsp/sparc/leon/startup/setvec.c
deleted file mode 100644
index d9699ce1ca..0000000000
--- a/c/src/lib/libbsp/sparc/leon/startup/setvec.c
+++ /dev/null
@@ -1,70 +0,0 @@
-/* set_vector
- *
- * This routine installs an interrupt vector on the SPARC simulator.
- *
- * INPUT PARAMETERS:
- * handler - interrupt handler entry point
- * vector - vector number
- * type - 0 indicates raw hardware connect
- * 1 indicates RTEMS interrupt connect
- *
- * OUTPUT PARAMETERS: NONE
- *
- * RETURNS:
- * address of previous interrupt handler
- *
- * COPYRIGHT (c) 1989-1998.
- * 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.
- *
- * Ported to LEON implementation of the SPARC by On-Line Applications
- * Research Corporation (OAR) under contract to the European Space
- * Agency (ESA).
- *
- * LEON modifications of respective RTEMS file: COPYRIGHT (c) 1995.
- * European Space Agency.
- *
- * $Id$
- */
-
-#include <bsp.h>
-
-rtems_isr_entry set_vector( /* returns old vector */
- rtems_isr_entry handler, /* isr routine */
- rtems_vector_number vector, /* vector number */
- int type /* RTEMS or RAW intr */
-)
-{
- rtems_isr_entry previous_isr;
- uint32_t real_trap;
- uint32_t source;
-
- if ( type )
- rtems_interrupt_catch( handler, vector, &previous_isr );
- else
- _CPU_ISR_install_raw_handler( vector, handler, (void *)&previous_isr );
-
- real_trap = SPARC_REAL_TRAP_NUMBER( vector );
-
- if ( LEON_INT_TRAP( real_trap ) ) {
-
- source = LEON_TRAP_SOURCE( real_trap );
-
- LEON_Clear_interrupt( source );
- LEON_Unmask_interrupt( source );
- }
-
- return previous_isr;
-}
-
-/* LEON specific power-down function */
-
-void _CPU_Thread_Idle_body( void )
-{
- while (1) {
- LEON_REG.Power_Down = LEON_REG.Power_Down; /* make sure on load follows store to power-down reg */
- }
-}
diff --git a/c/src/lib/libbsp/sparc/leon/startup/spurious.c b/c/src/lib/libbsp/sparc/leon/startup/spurious.c
deleted file mode 100644
index 081d9ba3a1..0000000000
--- a/c/src/lib/libbsp/sparc/leon/startup/spurious.c
+++ /dev/null
@@ -1,177 +0,0 @@
-/*
- * LEON Spurious Trap Handler
- *
- * This is just enough of a trap handler to let us know what
- * the likely source of the trap was.
- *
- * Developed as part of the port of RTEMS to the LEON implementation
- * of the SPARC by On-Line Applications Research Corporation (OAR)
- * under contract to the European Space Agency (ESA).
- *
- * COPYRIGHT (c) 1995. European Space Agency.
- *
- * This terms of the RTEMS license apply to this file.
- *
- * $Id$
- */
-
-#include <bsp.h>
-
-#include <string.h>
-
-static const char digits[16] = "0123456789abcdef";
-
-/* Simple integer-to-string conversion */
-
-void itos(uint32_t u, char *s)
-{
- int i;
-
- for (i=0; i<8; i++) {
- s[i] = digits[(u >> (28 - (i*4))) & 0x0f];
- }
-}
-
-/*
- * bsp_spurious_handler
- *
- * Print a message on the debug console and then die
- */
-
-rtems_isr bsp_spurious_handler(
- rtems_vector_number trap,
- CPU_Interrupt_frame *isf
-)
-{
- char line[ 80 ];
- uint32_t real_trap;
-
- real_trap = SPARC_REAL_TRAP_NUMBER(trap);
-
- strcpy(line, "Unexpected trap (0x ) at address 0x ");
- line[ 19 ] = digits[ real_trap >> 4 ];
- line[ 20 ] = digits[ real_trap & 0xf ];
- itos(isf->tpc, &line[36]);
- DEBUG_puts( line );
-
- switch (real_trap) {
-
- /*
- * First the ones defined by the basic architecture
- */
-
- case 0x00:
- DEBUG_puts( "reset" );
- break;
- case 0x01:
- DEBUG_puts( "instruction access exception" );
- break;
- case 0x02:
- DEBUG_puts( "illegal instruction" );
- break;
- case 0x03:
- DEBUG_puts( "privileged instruction" );
- break;
- case 0x04:
- DEBUG_puts( "fp disabled" );
- break;
- case 0x07:
- DEBUG_puts( "memory address not aligned" );
- break;
- case 0x08:
- DEBUG_puts( "fp exception" );
- break;
- case 0x09:
- strcpy(line, "data access exception at 0x " );
- itos(LEON_REG.Failed_Address, &line[27]);
- DEBUG_puts( line );
- break;
- case 0x0A:
- DEBUG_puts( "tag overflow" );
- break;
-
- /*
- * Then the ones defined by the LEON in particular
- */
-
- case LEON_TRAP_TYPE( LEON_INTERRUPT_CORRECTABLE_MEMORY_ERROR ):
- DEBUG_puts( "LEON_INTERRUPT_CORRECTABLE_MEMORY_ERROR" );
- break;
- case LEON_TRAP_TYPE( LEON_INTERRUPT_UART_2_RX_TX ):
- DEBUG_puts( "LEON_INTERRUPT_UART_2_RX_TX" );
- break;
- case LEON_TRAP_TYPE( LEON_INTERRUPT_UART_1_RX_TX ):
- DEBUG_puts( "LEON_INTERRUPT_UART_1_RX_TX" );
- break;
- case LEON_TRAP_TYPE( LEON_INTERRUPT_EXTERNAL_0 ):
- DEBUG_puts( "LEON_INTERRUPT_EXTERNAL_0" );
- break;
- case LEON_TRAP_TYPE( LEON_INTERRUPT_EXTERNAL_1 ):
- DEBUG_puts( "LEON_INTERRUPT_EXTERNAL_1" );
- break;
- case LEON_TRAP_TYPE( LEON_INTERRUPT_EXTERNAL_2 ):
- DEBUG_puts( "LEON_INTERRUPT_EXTERNAL_2" );
- break;
- case LEON_TRAP_TYPE( LEON_INTERRUPT_EXTERNAL_3 ):
- DEBUG_puts( "LEON_INTERRUPT_EXTERNAL_3" );
- break;
- case LEON_TRAP_TYPE( LEON_INTERRUPT_TIMER1 ):
- DEBUG_puts( "LEON_INTERRUPT_TIMER1" );
- break;
- case LEON_TRAP_TYPE( LEON_INTERRUPT_TIMER2 ):
- DEBUG_puts( "LEON_INTERRUPT_TIMER2" );
- break;
-
- default:
- break;
- }
-
- /*
- * What else can we do but stop ...
- */
-
- asm volatile( "mov 1, %g1; ta 0x0" );
-}
-
-/*
- * bsp_spurious_initialize
- *
- * Install the spurious handler for most traps. Note that set_vector()
- * will unmask the corresponding asynchronous interrupt, so the initial
- * interrupt mask is restored after the handlers are installed.
- */
-
-void bsp_spurious_initialize()
-{
- uint32_t trap;
- uint32_t level;
- uint32_t mask;
-
- level = sparc_disable_interrupts();
- mask = LEON_REG.Interrupt_Mask;
-
- for ( trap=0 ; trap<256 ; trap++ ) {
-
- /*
- * Skip window overflow, underflow, and flush as well as software
- * trap 0 which we will use as a shutdown. Also avoid trap 0x70 - 0x7f
- * which cannot happen and where some of the space is used to pass
- * paramaters to the program.
- */
-
- if (( trap == 5 || trap == 6 ) ||
- (( trap >= 0x11 ) && ( trap <= 0x1f )) ||
- (( trap >= 0x70 ) && ( trap <= 0x83 )))
- continue;
-
- set_vector(
- (rtems_isr_entry) bsp_spurious_handler,
- SPARC_SYNCHRONOUS_TRAP( trap ),
- 1
- );
- }
-
- LEON_REG.Interrupt_Mask = mask;
- sparc_enable_interrupts(level);
-
-}
diff --git a/c/src/lib/libbsp/sparc/leon/timer/timer.c b/c/src/lib/libbsp/sparc/leon/timer/timer.c
deleted file mode 100644
index 9a8324b3ed..0000000000
--- a/c/src/lib/libbsp/sparc/leon/timer/timer.c
+++ /dev/null
@@ -1,82 +0,0 @@
-/* timer.c
- *
- * This file implements a benchmark timer using timer 2.
- *
- * COPYRIGHT (c) 1989-1998.
- * 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.
- *
- * Ported to LEON implementation of the SPARC by On-Line Applications
- * Research Corporation (OAR) under contract to the European Space
- * Agency (ESA).
- *
- * LEON modifications of respective RTEMS file: COPYRIGHT (c) 1995.
- * European Space Agency.
- *
- * $Id$
- */
-
-#include <bsp.h>
-
-rtems_boolean Timer_driver_Find_average_overhead;
-
-rtems_boolean Timer_driver_Is_initialized = FALSE;
-
-void Timer_initialize()
-{
- /*
- * Timer runs long and accurate enough not to require an interrupt.
- */
-
- if ( Timer_driver_Is_initialized == FALSE ) {
-
- /* approximately 1 us per countdown */
- LEON_REG.Timer_Counter_2 = 0xffffff;
- LEON_REG.Timer_Reload_2 = 0xffffff;
-
- } else {
- Timer_driver_Is_initialized = TRUE;
- }
-
- LEON_REG.Timer_Control_2 = (
- LEON_REG_TIMER_COUNTER_ENABLE_COUNTING |
- LEON_REG_TIMER_COUNTER_LOAD_COUNTER
- );
-
-}
-
-#define AVG_OVERHEAD 3 /* It typically takes 3.0 microseconds */
- /* to start/stop the timer. */
-#define LEAST_VALID 2 /* Don't trust a value lower than this */
-
-int Read_timer()
-{
- uint32_t total;
-
- total = LEON_REG.Timer_Counter_2;
-
- total = 0xffffff - total;
-
- if ( Timer_driver_Find_average_overhead == 1 )
- return total; /* in one microsecond units */
-
- if ( total < LEAST_VALID )
- return 0; /* below timer resolution */
-
- return total - AVG_OVERHEAD;
-}
-
-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/sparc/leon/times b/c/src/lib/libbsp/sparc/leon/times
deleted file mode 100644
index 1b04728a25..0000000000
--- a/c/src/lib/libbsp/sparc/leon/times
+++ /dev/null
@@ -1,193 +0,0 @@
-#
-# Timing Test Suite Results for the SPARC Instruction Simulator BSP
-#
-# NOTE: The ERC32 is derived from the Cypress 601/602 chip set.
-#
-# $Id$
-#
-
-Board: SPARC Instruction Simulator v1.8
-CPU: include coprocessor if applicable
-Clock Speed: 15 Mhz
-Memory Configuration:
-Wait States: 0
-
-Times Reported in: microseconds
-Timer Source: on-CPU General Purpose Count Down Timer
-
-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
diff --git a/c/src/lib/libbsp/sparc/leon/tools/.cvsignore b/c/src/lib/libbsp/sparc/leon/tools/.cvsignore
deleted file mode 100644
index 43dd2ee260..0000000000
--- a/c/src/lib/libbsp/sparc/leon/tools/.cvsignore
+++ /dev/null
@@ -1,15 +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
-runtest
diff --git a/c/src/lib/libbsp/sparc/leon/tools/ChangeLog b/c/src/lib/libbsp/sparc/leon/tools/ChangeLog
deleted file mode 100644
index dabcf72863..0000000000
--- a/c/src/lib/libbsp/sparc/leon/tools/ChangeLog
+++ /dev/null
@@ -1,85 +0,0 @@
-2004-09-24 Ralf Corsepius <ralf_corsepius@rtems.org>
-
- * configure.ac: Require automake > 1.9.
-
-2004-01-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Re-add dirstamps to PRE/TMPINSTALL_FILES.
- Add PRE/TMPINSTALL_FILES to CLEANFILES.
-
-2003-12-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Reworked.
-
-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>
-
- * Makefile.am: Misc cleanups and fixes.
-
-2003-08-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Install to @RTEMS_BSP@/tests.
-
-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/.
-
-2003-08-14 Joel Sherrill <joel@OARcorp.com>
-
- * runtest.in: Add fileio to list of interactive tests.
-
-2003-08-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * configure.ac: Use rtems-bugs@rtems.com as bug report email address.
-
-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).
-
-2002-10-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * .cvsignore: Reformat.
- Add autom4te*cache.
- Remove autom4te.cache.
-
-2002-07-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Add transform and bsptools_bindir hacks.
- * configure.ac: Add RTEMS_ENV_RTEMSBSP.
-
-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]).
- * Makefile.am: Remove AUTOMAKE_OPTIONS.
-
-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 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * Makefile.am: Use 'TMPINSTALL_FILES ='.
-
-2001-09-14 Joel Sherrill <joel@OARcorp.com>
-
- * ChangeLog: New file.
-
diff --git a/c/src/lib/libbsp/sparc/leon/tools/Makefile.am b/c/src/lib/libbsp/sparc/leon/tools/Makefile.am
deleted file mode 100644
index 5ef0271b6f..0000000000
--- a/c/src/lib/libbsp/sparc/leon/tools/Makefile.am
+++ /dev/null
@@ -1,26 +0,0 @@
-##
-## $Id$
-##
-
-ACLOCAL_AMFLAGS = -I ../../../../../aclocal
-
-transform =
-bsptools_bindir = ${exec_prefix}/@RTEMS_BSP@/tests
-bsptools_bin_SCRIPTS = runtest
-
-all-local: $(TMPINSTALL_FILES)
-
-TMPINSTALL_FILES =
-
-$(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp):
- @$(mkdir_p) $(PROJECT_ROOT)/@RTEMS_BSP@/tests
- @: > $(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp)
-TMPINSTALL_FILES += $(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp)
-
-$(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest: runtest $(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp)
- $(INSTALL_SCRIPT) $< $(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest
-TMPINSTALL_FILES += $(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest
-
-CLEANFILES = $(TMPINSTALL_FILES)
-
-include $(top_srcdir)/../../../../../automake/host.am
diff --git a/c/src/lib/libbsp/sparc/leon/tools/configure.ac b/c/src/lib/libbsp/sparc/leon/tools/configure.ac
deleted file mode 100644
index e8d6562f10..0000000000
--- a/c/src/lib/libbsp/sparc/leon/tools/configure.ac
+++ /dev/null
@@ -1,25 +0,0 @@
-## Process this file with autoconf to produce a configure script.
-##
-## $Id$
-
-AC_PREREQ(2.59)
-AC_INIT([rtems-c-src-lib-libbsp-sparc-leon-tools],[_RTEMS_VERSION],[rtems-bugs@rtems.com])
-AC_CONFIG_SRCDIR([runtest.in])
-RTEMS_TOP(../../../../../../..)
-
-RTEMS_CANONICAL_TARGET_CPU
-
-AM_INIT_AUTOMAKE([no-define foreign 1.9])
-AM_MAINTAINER_MODE
-
-RTEMS_ENV_RTEMSBSP
-
-RTEMS_PATH_KSH
-
-RTEMS_PROJECT_ROOT
-RTEMS_TOOLPATHS
-
-# Explicitly list all Makefiles here
-AC_CONFIG_FILES([Makefile
-runtest])
-AC_OUTPUT
diff --git a/c/src/lib/libbsp/sparc/leon/tools/runtest.in b/c/src/lib/libbsp/sparc/leon/tools/runtest.in
deleted file mode 100644
index 7a8e3ac3c0..0000000000
--- a/c/src/lib/libbsp/sparc/leon/tools/runtest.in
+++ /dev/null
@@ -1,312 +0,0 @@
-#!@KSH@ -p
-#
-# $Id$
-#
-# Run rtems tests on the hppa simulator
-# This program generates a simulator script to run each test
-# Typically the test is then run, although it can be generated
-# and left as a file using -s
-#
-
-# progname=`basename $0`
-progname=${0##*/} # fast basename hack for ksh, bash
-
-USAGE=\
-"usage: $progname [ -opts ] test [ test ... ]
- -o options -- specify options to be passed to simulator
- -v -- verbose
- -s -- generate script file (as 'test'.ss) and exit
- -l logdir -- specify log directory (default is 'logdir')
-
- Specify test as 'test' or 'test.exe'.
- All multiprocessing tests *must* be specified simply as 'mp01', etc.
-"
-
-# export everything
-set -a
-
-# log an error to stderr
-prerr()
-{
- echo "$*" >&2
-}
-
-fatal() {
- [ "$1" ] && prerr $*
- prerr "$USAGE"
- exit 1
-}
-
-warn() {
- [ "$1" ] && prerr $*
-}
-
-# print args, 1 per line
-ml_echo()
-{
- for l
- do
- echo "$l"
- done
-}
-
-# run at normal and signalled exit
-test_exit()
-{
- exit_code=$1
-
- rm -f ${statfile}* ${scriptfile}* ${logfile}.tmp*
- [ "$sim_pid" ] && kill -9 $sim_pid
-
- exit $exit_code
-}
-
-#
-# process the options
-#
-# defaults for getopt vars
-#
-# max_run_time is defaulted to 5 minutes
-#
-
-verbose=""
-extra_options=""
-script_and_exit=""
-stdio_setup="yes"
-run_to_completion="yes"
-logdir=log
-update_on_tick="no"
-max_run_time=$((5 * 60))
-using_print_buffer="yes"
-
-while getopts vhr12o:c:sl:t OPT
-do
- case "$OPT" in
- v)
- verbose="yes";;
- s)
- script_and_exit="yes"
- run_to_completion="no"
- stdio_setup="no";;
- l)
- logdir="$OPTARG";;
- o)
- extra_options="$OPTARG";;
- *)
- fatal;;
- esac
-done
-
-let $((shiftcount = $OPTIND - 1))
-shift $shiftcount
-
-args=$*
-
-#
-# Run the tests
-#
-
-tests="$args"
-if [ ! "$tests" ]
-then
- set -- `echo *.exe`
- tests="$*"
-fi
-
-[ -d $logdir ] ||
- mkdir $logdir || fatal "could not create log directory ($logdir)"
-
-cpus=1
-
-# where the tmp files go
-statfile=/tmp/stats$$
-scriptfile=/tmp/script$$
-
-trap "test_exit" 1 2 3 13 14 15
-
-for tfile in $tests
-do
-
- tname=`basename $tfile .exe`
- TEST_TYPE="single"
-
- case $tname in
- monitor* | termios* | fileio*)
- if [ $run_to_completion = "yes" ]
- then
- warn "Skipping $tname; it is interactive"
- continue
- fi
- ;;
- *-node2*)
- fatal "MP tests not supported"
- warn "Skipping $tname; 'runtest' runs both nodes when for *-node1"
- continue;;
- *-node1*)
- warn "Running both nodes associated with $tname"
- variant=`echo $tname | sed 's/.*-node[12]//' | sed 's/\.exe//'`
- tname=`echo $tname | sed 's/-node.*//'`
- TEST_TYPE="mp"
- ;;
- minimum*|stackchk*|spfatal*|termio*)
- warn "Skipping $tname; it locks up or takes a VERY long time to run"
- continue
- ;;
- esac
-
- # Change the title bar to indicate which test we are running
- # The simulator screen doesn't provide any indication
-
- logfile=$logdir/$tname
- infofile=$logfile.info
-
- rm -f ${statfile}* ${scriptfile}* ${logfile}.tmp*
-
- date=`date`
- echo "Starting $tname at $date"
-
- # Generate a script file to get the work done.
- # The script file must do the following:
- #
- # load the program (programs if MP test)
- # arrange for capture of output
- # run the program
- # produce statistics
-
- {
- case $TEST_TYPE in
- "mp")
- fatal "MP tests not supported"
- ;;
-
- # All other tests (single-processor)
- *)
- echo "load $tfile"
- echo "go 0x02000000"
- echo ""
- echo "perf"
- echo "quit"
- ;;
- esac
-
- } > ${scriptfile}
-
- if [ "$script_and_exit" = "yes" ]
- then
- mv ${scriptfile} $tname.ss
- warn "script left in $tname.ss"
- test_exit 0
- fi
-
- # Spin off the simulator in the background
- sparc-rtems-sis $extra_options -c ${scriptfile} >${logfile}.tmp &
- sim_pid=$!
-
- # Make sure it won't run forever...
- {
- time_run=0
- while [ $time_run -lt $max_run_time ]
- do
- # sleep 10s at a time waiting for job to finish or timer to expire
- # if job has exited, then we exit, too.
- sleep 10
- if kill -0 $sim_pid 2>/dev/null
- then
- time_run=$((time_run + 10))
- else
- exit 0
- fi
- done
-
- kill -2 $sim_pid 2>/dev/null
- { sleep 5; kill -9 $sim_pid 2>/dev/null; } &
- } &
-
- wait $sim_pid
- status=$?
- if [ $status -ne 0 ]
- then
- ran_too_long="yes"
- else
- ran_too_long="no"
- fi
-
- sim_pid=""
-
- # fix up the printf output from the test
- case $TEST_TYPE in
- mp)
- fatal "MP not supported"
- ;;
- *)
- output_it=1
- sed -e '1,9d' \
- -e 's/ //' -e '/^$/d' < ${logfile}.tmp |
- while read line
- do
- if [ $output_it -eq 1 ] ; then
- if [ "$line" = "sis> perf" ] ; then
- output_it=0
- elif [ "$line" = "sis> quit" ] ; then
- output_it=0
- elif [ "$line" = "sis>" ] ; then
- output_it=0
- else
- echo "$line"
- fi
- fi
- done > ${logfile}_1
- ;;
- esac
-
- # Create the info files
- for cpu in $cpus
- do
- {
- echo "$date"
- echo "Test run on: `uname -n` ( `uname -a` )"
-
- output_it=0
- sed -e 's/ //' < ${logfile}.tmp |
- while read line
- do
- if [ $output_it -eq 1 ] ; then
- if [ "$line" = "sis> quit" ] ; then
- output_it=0
- else
- echo "$line"
- fi
- else
- if [ "$line" = "sis> perf" ] ; then
- output_it=1
- fi
- fi
- done
-
-
- if [ "$ran_too_long" = "yes" ]
- then
- echo "Test did NOT finish normally; killed after $max_run_time seconds"
- fi
-
- echo
- date;
- } > ${infofile}_$cpu
- done
-
- rm -f ${logfile}.tmp*
-
- if [ "$cpus" = "1" ]
- then
- mv ${infofile}_1 ${infofile}
- mv ${logfile}_1 ${logfile}
- fi
-
-done
-
-test_exit 0
-
-# Local Variables: ***
-# mode:ksh ***
-# End: ***
-