Compare commits

...

50 Commits

Author SHA1 Message Date
cvs2git
364e64d2a0 This commit was manufactured by cvs2svn to create tag 'rtems-4-9-0'.
Sprout from rtems-4-9-branch 2008-09-24 17:16:13 UTC Joel Sherrill <joel.sherrill@OARcorp.com> '2008-09-24	Joel Sherrill <joel.sherrill@OARcorp.com>'
Cherrypick from rtems-4-9-branch 2009-09-15 05:32:51 UTC cvs2git <rtems-devel@rtems.org> 'This commit was manufactured by cvs2svn to create branch 'rtems-4-9-branch'.':
    c/src/lib/libbsp/arm/smdk2410/include/.cvsignore
    c/src/lib/libbsp/m68k/genmcf548x/include/.cvsignore
    c/src/lib/libbsp/m68k/mcf52235/include/.cvsignore
    c/src/lib/libbsp/m68k/mcf5329/include/.cvsignore
    c/src/lib/libbsp/powerpc/mvme3100/include/.cvsignore
    c/src/lib/libbsp/powerpc/virtex/include/.cvsignore
2009-09-15 05:32:52 +00:00
Joel Sherrill
7cb4ce5e53 2008-09-24 Joel Sherrill <joel.sherrill@OARcorp.com>
* preinstall.am: Regenerated.
2008-09-24 17:16:13 +00:00
Joel Sherrill
564dfa32bd 2008-09-24 Joel Sherrill <joel.sherrill@OARcorp.com>
* Makefile.maint: Bump rtems_api to 4.9.
2008-09-24 17:13:41 +00:00
Joel Sherrill
8c8146e3a3 Upgrade to 4.9.0 2008-09-24 17:12:19 +00:00
Joel Sherrill
a9546aaf52 2008-09-24 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1326/cpukit
	* libi2c/libi2c.c: Use int for return value when negative values
	possible.
2008-09-24 14:31:37 +00:00
Joel Sherrill
8f60862612 2008-09-24 Ralf Corsépius <ralf.corsepius@rtems.org>
PR 1324/bsps
	* aclocal/check-bsps.m4: Add missing icecube.
2008-09-24 14:07:51 +00:00
Ralf Corsepius
734e6f6fb3 2008-09-24 Ralf Corsépius <ralf.corsepius@rtems.org>
* libnetworking/lib/ftpfs.c: Use ssize_t for read retval (Fix
	  comparision of unsigned < 0).
2008-09-24 08:52:49 +00:00
Ralf Corsepius
bfcefdd435 2008-09-24 Ralf Corsépius <ralf.corsepius@rtems.org>
* Makefile.am: Eliminates libcpudir.
2008-09-24 07:34:21 +00:00
Ralf Corsepius
27af75498f Cosmetics. 2008-09-24 07:32:19 +00:00
Ralf Corsepius
35b692611f 2008-08-24 Ralf Corsépius <ralf.corsepius@rtems.org>
PR 1323/bsps
	* Makefile.am: Remove AM_CFLAGS += -msoft-float.
2008-09-24 05:38:50 +00:00
Ralf Corsepius
00f0563ea0 2008-09-24 Ralf Corsepius <ralf.corsepius@rtems.org>
* Makefile.am: Remove empty HAS_NETWORKING conditional.
2008-09-24 03:06:42 +00:00
Ralf Corsepius
13c4012f4d 2008-09-24 Ralf Corsépius <ralf.corsepius@rtems.org>
PR 1322/bsps
	* include/bspopts.h.in: Remove.
2008-09-24 02:47:22 +00:00
Ralf Corsepius
27ccae87c2 2008-09-24 Ralf Corsépius <ralf.corsepius@rtems.org>
PR 1322/bsps
	* include/bspopts.h.in: Remove.
2008-09-24 02:19:03 +00:00
Joel Sherrill
5edccc1bcf 2008-09-23 Joel Sherrill <joel.sherrill@OARcorp.com>
* bsp_howto/BSPInitFlowchart-49.png: Update figure.
2008-09-23 21:35:01 +00:00
Thomas Doerfler
6067359a14 make sure cahce is ON when MMU is off (important for exception handling) 2008-09-23 19:53:38 +00:00
Joel Sherrill
93f8efa7c6 2008-09-23 Eric Norum <norume@aps.anl.gov>
* libnetworking/lib/rtems_bsdnet_ntp.c: Let TCP/IP stack pick port
	rather than hard coding selection.
2008-09-23 15:21:37 +00:00
Thomas Doerfler
112490e44e correct bsp_clicks_per_usec initialization for non-U-Boot case 2008-09-19 16:25:52 +00:00
Joel Sherrill
1e3c7f856c 2008-09-18 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1314/bsps
	* custom/mvme3100.cfg: Remove old stuff.
2008-09-18 14:25:07 +00:00
Ralf Corsepius
bd331c83c6 Remove. 2008-09-18 08:50:00 +00:00
Ralf Corsepius
c07a9c00c5 Update to gdb-6.8-rtems4.9-20080917.diff. 2008-09-18 08:48:17 +00:00
Ralf Corsepius
977b1736a6 Sync with rtems-4.10. 2008-09-18 08:45:29 +00:00
Ralf Corsepius
e91c4bc8e9 Do not define rtems_boolean, rtems_single, rtems_double unless RTEMS_DEPRECATED_TYPES is given. 2008-09-18 03:04:11 +00:00
Ralf Corsepius
be8f45b014 2008-09-18 Ralf Corsépius <ralf.corsepius@rtems.org>
* rtems/include/rtems/rtems/types.h: Do not define rtems_boolean,
	rtems_single, rtems_double unless RTEMS_DEPRECATED_TYPES is given.
2008-09-18 03:03:52 +00:00
Ralf Corsepius
0a37142076 2008-09-18 Ralf Corsépius <ralf.corsepius@rtems.org>
* rtems/score/types.h: Do not define boolean, single_precision,
	double_precision unless RTEMS_DEPRECATED_TYPES is given.
2008-09-18 03:02:09 +00:00
Ralf Corsepius
d0279f6e3a Do not define boolean, single_precision, double_precision unless RTEMS_DEPRECATED_TYPES is given. 2008-09-18 03:01:49 +00:00
Joel Sherrill
100198929c 2008-09-16 Joel Sherrill <joel.sherrill@OARcorp.com>
* sapi/include/confdefs.h: Revert previous patch. Does not apply to
	head.
2008-09-16 22:43:08 +00:00
Joel Sherrill
a36866199e 2008-09-16 Gene Smith <gene.smith@siemens.com>
PR 564/cpukit
	* sapi/include/confdefs.h: Fix incorrect name. Was missed in an earlier
	renaming sweep.
2008-09-16 17:13:33 +00:00
Joel Sherrill
d3320bb7cf 2008-09-15 Joel Sherrill <joel.sherrill@OARcorp.com>
* leaf.cfg: LINK.c and LINK.cc include LDFLAGS so do not include it in
	make-exe and make-cxx-exe definitions. This was resulting in the
	linker script being processed twice and breaking some BSPs.
2008-09-15 17:43:44 +00:00
Ralf Corsepius
5782420994 Use "double" instead of "rtems_double". 2008-09-15 13:56:19 +00:00
Ralf Corsepius
ee70857610 2008-09-15 Ralf Corsépius <ralf.corsepius@rtems.org>
* sp19/system.h: Use "double" instead of "rtems_double".
2008-09-15 13:55:52 +00:00
Ralf Corsepius
913ece4074 2008-09-10 Ralf Corsépius <ralf.corsepius@rtems.org>
* custom/nios2_iss.cfg: Remove.
2008-09-10 20:06:12 +00:00
Ralf Corsepius
4e3037b258 Remove from rtems-4-9-branch. 2008-09-10 19:54:49 +00:00
Ralf Corsepius
e00572f616 2008-09-10 Ralf Corsépius <ralf.corsepius@rtems.org>
* aclocal/prog-cc.m4: Remove pre-production testing CFLAGS.
2008-09-10 19:53:40 +00:00
Ralf Corsepius
b4ff9f0b67 2008-09-10 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac: Remove nios2.
2008-09-10 19:51:49 +00:00
Ralf Corsepius
98520091ea Regenerate. 2008-09-10 19:43:40 +00:00
Ralf Corsepius
bc26929055 Remove. 2008-09-10 19:42:48 +00:00
Ralf Corsepius
2344aa7405 Remove freebsd6.* 2008-09-10 19:40:51 +00:00
Ralf Corsepius
9652395558 Remove rtems-4.10. 2008-09-10 19:38:44 +00:00
Ralf Corsepius
8b66beb2e5 branch cleanup. 2008-09-10 19:37:15 +00:00
Joel Sherrill
92f3264acf 2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* MAINTAINERS, README.configure, aclocal/bsp-alias.m4,
	aclocal/canonical-target-name.m4, aclocal/check-bsps.m4: Remove TI
	C4x and NIOS2 ports from 4.9 branch.
2008-09-10 16:03:10 +00:00
Joel Sherrill
c7df255f99 2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* configure.ac: Remove TI C4x and NIOS2 ports from 4.9 branch.
2008-09-10 16:02:20 +00:00
Joel Sherrill
74c15b62ea 2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* ACKNOWLEDGEMENTS, TOOL_TARGETS: Remove TI C4x and NIOS2 ports from
	4.9 branch.
2008-09-10 16:00:41 +00:00
Joel Sherrill
abe94a6a83 2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* aclocal/canonical-target-name.m4, aclocal/rtems-cpu-subdirs.m4:
	Remove TI C4x and NIOS2 ports from 4.9 branch.
2008-09-10 15:59:44 +00:00
Joel Sherrill
a5e7b3ca94 2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* cpu_supplement/.cvsignore, cpu_supplement/Makefile.am,
	cpu_supplement/cpu_supplement.texi, porting/cpumodels.t,
	user/preface.texi: Remove TI C4x and NIOS2 ports from 4.9 branch.
	* cpu_supplement/tic4x.t: Removed.
2008-09-10 15:58:58 +00:00
Joel Sherrill
3757d4e1a0 2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* aclocal/canonical-target-name.m4: Remove TI C4x and NIOS2 ports from
	4.9 branch.
2008-09-10 15:57:26 +00:00
Joel Sherrill
5463b374ac 2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* custom/c3xsim.cfg, custom/c4xsim.cfg: Removed.
2008-09-10 15:57:08 +00:00
Joel Sherrill
f1990656e8 2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* score/cpu/c4x/.cvsignore, score/cpu/c4x/ChangeLog,
	score/cpu/c4x/Makefile.am, score/cpu/c4x/cpu.c,
	score/cpu/c4x/cpu_asm.S, score/cpu/c4x/irq.c,
	score/cpu/c4x/preinstall.am, score/cpu/c4x/rtems/asm.h,
	score/cpu/c4x/rtems/score/c4x.h, score/cpu/c4x/rtems/score/cpu.h,
	score/cpu/c4x/rtems/score/cpu_asm.h,
	score/cpu/c4x/rtems/score/types.h, score/cpu/c4x/rtems/tic4x/c4xio.h,
	score/cpu/nios2/.cvsignore, score/cpu/nios2/ChangeLog,
	score/cpu/nios2/Makefile.am, score/cpu/nios2/cpu.c,
	score/cpu/nios2/cpu_asm.S, score/cpu/nios2/irq.c,
	score/cpu/nios2/preinstall.am, score/cpu/nios2/rtems/asm.h,
	score/cpu/nios2/rtems/score/cpu.h,
	score/cpu/nios2/rtems/score/cpu_asm.h,
	score/cpu/nios2/rtems/score/nios2.h,
	score/cpu/nios2/rtems/score/types.h: Removed.
2008-09-10 15:49:32 +00:00
Joel Sherrill
4f20b858ea 2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* c4x/.cvsignore, c4x/ChangeLog, c4x/Makefile.am, c4x/acinclude.m4,
	c4x/configure.ac, c4x/c4xsim/.cvsignore, c4x/c4xsim/ChangeLog,
	c4x/c4xsim/Makefile.am, c4x/c4xsim/README, c4x/c4xsim/bsp_specs,
	c4x/c4xsim/configure.ac, c4x/c4xsim/preinstall.am,
	c4x/c4xsim/clock/clock.c, c4x/c4xsim/console/console.c,
	c4x/c4xsim/console/consolereserveresources.c,
	c4x/c4xsim/console/debugio.c, c4x/c4xsim/console/simio.c,
	c4x/c4xsim/include/.cvsignore, c4x/c4xsim/include/bsp.h,
	c4x/c4xsim/include/simio.h, c4x/c4xsim/include/tm27.h,
	c4x/c4xsim/start/start.S, c4x/c4xsim/startup/bspstart.c,
	c4x/c4xsim/startup/linkcmds, c4x/c4xsim/startup/spurious.c,
	c4x/c4xsim/timer/timer.c, c4x/c4xsim/tools/.cvsignore,
	c4x/c4xsim/tools/ChangeLog, c4x/c4xsim/tools/Makefile.am,
	c4x/c4xsim/tools/configure.ac, c4x/c4xsim/tools/runtest.in,
	c4x/shared/bspspuriousinit.c, c4x/shared/c3xspurious.c,
	c4x/shared/c4xspurious.c, nios2/.cvsignore, nios2/ChangeLog,
	nios2/Makefile.am, nios2/README, nios2/acinclude.m4,
	nios2/configure.ac, nios2/nios2_iss/.cvsignore,
	nios2/nios2_iss/ChangeLog, nios2/nios2_iss/Makefile.am,
	nios2/nios2_iss/bsp_specs, nios2/nios2_iss/configure.ac,
	nios2/nios2_iss/nios2_iss.ptf, nios2/nios2_iss/nios2_iss.sh,
	nios2/nios2_iss/preinstall.am, nios2/nios2_iss/times,
	nios2/nios2_iss/clock/clock.c, nios2/nios2_iss/console/console.c,
	nios2/nios2_iss/include/.cvsignore, nios2/nios2_iss/include/bsp.h,
	nios2/nios2_iss/include/coverhd.h, nios2/nios2_iss/include/tm27.h,
	nios2/nios2_iss/shmsupp/addrconv.c, nios2/nios2_iss/shmsupp/getcfg.c,
	nios2/nios2_iss/shmsupp/lock.c, nios2/nios2_iss/shmsupp/mpisr.c,
	nios2/nios2_iss/start/crtnn.s, nios2/nios2_iss/start/start.S,
	nios2/nios2_iss/startup/bspclean.c,
	nios2/nios2_iss/startup/bspstart.c, nios2/nios2_iss/startup/linkcmds,
	nios2/nios2_iss/startup/main.c, nios2/nios2_iss/startup/setvec.c,
	nios2/nios2_iss/timer/timer.c: Removed.
2008-09-10 15:47:31 +00:00
Joel Sherrill
26c4cb4811 2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* configure.ac, aclocal/canonical-target-name.m4,
	score/cpu/Makefile.am: Remove TI C4x and NIOS2 ports from 4.9 branch.
2008-09-10 15:43:54 +00:00
cvs2git
59ccbe2f34 This commit was manufactured by cvs2svn to create branch 'rtems-4-9-branch'.
Sprout from master 2008-09-09 18:14:52 UTC Joel Sherrill <joel.sherrill@OARcorp.com> '2008-09-09	Joel Sherrill <joel.sherrill@oarcorp.com>'
Cherrypick from shttpd 2007-06-11 13:24:29 UTC Ralf Corsepius <ralf.corsepius@rtems.org> 'Import from shttpd-1.37.':
    cpukit/shttpd/auth.c
    cpukit/shttpd/cgi.c
    cpukit/shttpd/compat_unix.c
    cpukit/shttpd/compat_unix.h
    cpukit/shttpd/compat_win32.c
    cpukit/shttpd/compat_win32.h
    cpukit/shttpd/compat_wince.c
    cpukit/shttpd/compat_wince.h
    cpukit/shttpd/config.c
    cpukit/shttpd/io.h
    cpukit/shttpd/io_cgi.c
    cpukit/shttpd/io_dir.c
    cpukit/shttpd/io_emb.c
    cpukit/shttpd/io_file.c
    cpukit/shttpd/io_socket.c
    cpukit/shttpd/io_ssl.c
    cpukit/shttpd/llist.h
    cpukit/shttpd/md5.c
    cpukit/shttpd/md5.h
    cpukit/shttpd/mime_type.c
    cpukit/shttpd/shttpd.1
    cpukit/shttpd/shttpd.c
    cpukit/shttpd/shttpd.h
    cpukit/shttpd/ssl.h
    cpukit/shttpd/standalone.c
    cpukit/shttpd/std_includes.h
Cherrypick from B_rtems_mvme3100_bsp_slac 2007-12-14 06:30:15 UTC Till Straumann <strauman@slac.stanford.edu> ' - imported MVME3100 BSP (from SLAC repository)':
    c/src/lib/libbsp/powerpc/mvme3100/.cvsignore
    c/src/lib/libbsp/powerpc/mvme3100/KNOWN_PROBLEMS
    c/src/lib/libbsp/powerpc/mvme3100/LICENSE
    c/src/lib/libbsp/powerpc/mvme3100/README
    c/src/lib/libbsp/powerpc/mvme3100/bsp_specs
    c/src/lib/libbsp/powerpc/mvme3100/configure.ac
    c/src/lib/libbsp/powerpc/mvme3100/flash/flashcfg.c
    c/src/lib/libbsp/powerpc/mvme3100/i2c/mpc8540_i2c_busdrv.h
    c/src/lib/libbsp/powerpc/mvme3100/include/bspopts.h.in
    c/src/lib/libbsp/powerpc/mvme3100/irq/irq.h
    c/src/lib/libbsp/powerpc/mvme3100/network/if_tsec_pub.h
    c/src/lib/libbsp/powerpc/mvme3100/startup/misc.c
    c/src/lib/libbsp/powerpc/mvme3100/tod/todcfg.c
    c/src/lib/libbsp/powerpc/mvme3100/vme/VMEConfig.h
Cherrypick from zlib 2005-10-28 07:22:42 UTC Ralf Corsepius <ralf.corsepius@rtems.org> 'Import of zlib-1.2.2.2.tar.gz':
    cpukit/zlib/FAQ
    cpukit/zlib/INDEX
    cpukit/zlib/algorithm.txt
    cpukit/zlib/crc32.h
    cpukit/zlib/inffast.h
    cpukit/zlib/inffixed.h
    cpukit/zlib/inflate.h
    cpukit/zlib/trees.h
Cherrypick from rtemsdoc-4-5-branch 1997-05-27 12:40:10 UTC Joel Sherrill <joel.sherrill@OARcorp.com> 'base RTEMS documentation':
    doc/common/treedef.tex
Delete:
    contrib/crossrpms/cygwin/.cvsignore
    contrib/crossrpms/cygwin/Makefile.am
    contrib/crossrpms/cygwin/binutils.am
    contrib/crossrpms/cygwin/cygwin.am
    contrib/crossrpms/cygwin/expat.am
    contrib/crossrpms/cygwin/gcc-prep.add
    contrib/crossrpms/cygwin/gcc.am
    contrib/crossrpms/cygwin/gmp.am
    contrib/crossrpms/cygwin/i686/.cvsignore
    contrib/crossrpms/cygwin/i686/Makefile.am
    contrib/crossrpms/cygwin/i686/binutils-sources.add
    contrib/crossrpms/cygwin/i686/expat.add
    contrib/crossrpms/cygwin/i686/gcc-sources.add
    contrib/crossrpms/cygwin/i686/gmp.add
    contrib/crossrpms/cygwin/i686/libs.add
    contrib/crossrpms/cygwin/i686/mpfr.add
    contrib/crossrpms/cygwin/i686/ncurses.add
    contrib/crossrpms/cygwin/i686/readline.add
    contrib/crossrpms/cygwin/i686/target-expat.add
    contrib/crossrpms/cygwin/i686/target-gmp.add
    contrib/crossrpms/cygwin/i686/target-libs.add
    contrib/crossrpms/cygwin/i686/target-mpfr.add
    contrib/crossrpms/cygwin/i686/target-ncurses.add
    contrib/crossrpms/cygwin/i686/target-readline.add
    contrib/crossrpms/cygwin/i686/target-termcap.add
    contrib/crossrpms/cygwin/i686/target-terminfo.add
    contrib/crossrpms/cygwin/i686/target-w32api.add
    contrib/crossrpms/cygwin/i686/target-zlib.add
    contrib/crossrpms/cygwin/i686/termcap.add
    contrib/crossrpms/cygwin/i686/terminfo.add
    contrib/crossrpms/cygwin/i686/w32api.add
    contrib/crossrpms/cygwin/i686/zlib.add
    contrib/crossrpms/cygwin/mpfr.am
    contrib/crossrpms/cygwin/ncurses.am
    contrib/crossrpms/cygwin/readline.am
    contrib/crossrpms/cygwin/termcap.am
    contrib/crossrpms/cygwin/terminfo.am
    contrib/crossrpms/cygwin/w32api.am
    contrib/crossrpms/cygwin/zlib.am
    contrib/crossrpms/freebsd6.2/.cvsignore
    contrib/crossrpms/freebsd6.2/Makefile.am
    contrib/crossrpms/freebsd6.2/binutils.am
    contrib/crossrpms/freebsd6.2/gcc-prep.add
    contrib/crossrpms/freebsd6.2/gcc.am
    contrib/crossrpms/freebsd6.2/i586/.cvsignore
    contrib/crossrpms/freebsd6.2/i586/Makefile.am
    contrib/crossrpms/freebsd6.2/i586/binutils-sources.add
    contrib/crossrpms/freebsd6.2/i586/gcc-sources.add
    contrib/crossrpms/freebsd6.2/i586/libs.add
    contrib/crossrpms/freebsd6.2/i586/target-libs.add
    contrib/crossrpms/freebsd6.3/.cvsignore
    contrib/crossrpms/freebsd6.3/Makefile.am
    contrib/crossrpms/freebsd6.3/binutils.am
    contrib/crossrpms/freebsd6.3/gcc-prep.add
    contrib/crossrpms/freebsd6.3/gcc.am
    contrib/crossrpms/freebsd6.3/i586/.cvsignore
    contrib/crossrpms/freebsd6.3/i586/Makefile.am
    contrib/crossrpms/freebsd6.3/i586/binutils-sources.add
    contrib/crossrpms/freebsd6.3/i586/gcc-sources.add
    contrib/crossrpms/freebsd6.3/i586/libs.add
    contrib/crossrpms/freebsd6.3/i586/target-libs.add
    contrib/crossrpms/freebsd7.0/.cvsignore
    contrib/crossrpms/freebsd7.0/Makefile.am
    contrib/crossrpms/freebsd7.0/binutils.am
    contrib/crossrpms/freebsd7.0/gcc-prep.add
    contrib/crossrpms/freebsd7.0/gcc.am
    contrib/crossrpms/freebsd7.0/i586/.cvsignore
    contrib/crossrpms/freebsd7.0/i586/Makefile.am
    contrib/crossrpms/freebsd7.0/i586/binutils-sources.add
    contrib/crossrpms/freebsd7.0/i586/gcc-sources.add
    contrib/crossrpms/freebsd7.0/i586/libs.add
    contrib/crossrpms/freebsd7.0/i586/target-libs.add
    contrib/crossrpms/mingw32/.cvsignore
    contrib/crossrpms/mingw32/Makefile.am
    contrib/crossrpms/mingw32/binutils.am
    contrib/crossrpms/mingw32/gcc-prep.add
    contrib/crossrpms/mingw32/gcc.am
    contrib/crossrpms/mingw32/i686/.cvsignore
    contrib/crossrpms/mingw32/i686/Makefile.am
    contrib/crossrpms/mingw32/i686/binutils-sources.add
    contrib/crossrpms/mingw32/i686/gcc-sources.add
    contrib/crossrpms/mingw32/i686/libs.add
    contrib/crossrpms/mingw32/i686/target-libs.add
    contrib/crossrpms/mingw32/i686/target-w32api.add
    contrib/crossrpms/mingw32/i686/w32api.add
    contrib/crossrpms/solaris2.7/.cvsignore
    contrib/crossrpms/solaris2.7/Makefile.am
    contrib/crossrpms/solaris2.7/binutils.am
    contrib/crossrpms/solaris2.7/gcc-prep.add
    contrib/crossrpms/solaris2.7/gcc.am
    contrib/crossrpms/solaris2.7/sparc/.cvsignore
    contrib/crossrpms/solaris2.7/sparc/Makefile.am
    contrib/crossrpms/solaris2.7/sparc/binutils-sources.add
    contrib/crossrpms/solaris2.7/sparc/gcc-sources.add
    contrib/crossrpms/solaris2.7/sparc/libs.add
    contrib/crossrpms/solaris2.7/sparc/target-libs.add
    cpukit/zlib/doc/rfc1950.txt
    cpukit/zlib/doc/rfc1951.txt
    cpukit/zlib/doc/rfc1952.txt
    cpukit/zlib/doc/txtvsbin.txt
    cpukit/zlib/examples/enough.c
    cpukit/zlib/examples/zran.c
    cpukit/zlib/old/as400/bndsrc
    cpukit/zlib/old/as400/compile.clp
    cpukit/zlib/old/as400/readme.txt
    cpukit/zlib/old/visualc6/README.txt
    cpukit/zlib/old/visualc6/example.dsp
    cpukit/zlib/old/visualc6/minigzip.dsp
    cpukit/zlib/old/visualc6/zlib.dsw
    cpukit/zlib/zlib.pc.in
    cpukit/zlib/zlib2ansi
2008-09-09 18:14:53 +00:00
504 changed files with 2336 additions and 38578 deletions

View File

@@ -1,3 +1,18 @@
2008-09-24 Joel Sherrill <joel.sherrill@OARcorp.com>
* Makefile.maint: Bump rtems_api to 4.9.
2008-09-24 Ralf Corsépius <ralf.corsepius@rtems.org>
PR 1324/bsps
* aclocal/check-bsps.m4: Add missing icecube.
2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* MAINTAINERS, README.configure, aclocal/bsp-alias.m4,
aclocal/canonical-target-name.m4, aclocal/check-bsps.m4: Remove TI
C4x and NIOS2 ports from 4.9 branch.
2008-09-09 Joel Sherrill <joel.sherrill@oarcorp.com>
* README.configure: Updated list of BSPs.

View File

@@ -35,7 +35,6 @@ Networking NAME-TBD EMAIL-TBD
arm Jay Monkman jtm@lopingdog.com
avr Ralf Corsepius ralf.corsepius@rtems.org
c4x Joel Sherrill joel.sherrill@OARcorp.com
h8300 NAME-TBD EMAIL-TBD
i386 NAME-TBD EMAIL-TBD
m68k NAME-TBD EMAIL-TBD

View File

@@ -31,7 +31,7 @@ TAG_SUFFIX = -test1
rtems_version := $(shell cat VERSION | sed -n '/.* Version /{s/^.*Version[ ]*\([0-9\.]\+\)/\1/p};')
rtems_tag := $(shell echo "rtems-$(rtems_version)" | tr . -)
rtems_api := 4.8
rtems_api := 4.9
PATH := /opt/rtems-$(rtems_api)/bin:$(PATH)
# -----------------

View File

@@ -91,7 +91,6 @@ The following targets are supported:
(none) will build the host-based version on Linux, Solaris and HPUX.
arm-rtems4.9
tic4x-rtems4.9
h8300-rtems4.9
i386-rtems4.9
m68k-rtems4.9
@@ -173,8 +172,6 @@ avr: : none
bfin : eZKit533 bf537Stamp
c4x : c3xsim c4xsim
h8300 : h8sim
i386 : i386ex pc386 pc386dx pc486 pc586 pc686 pck6 ts_386ex
@@ -242,22 +239,12 @@ Please refer to the BSP and Device Driver Guide.
7. Tested configurations
========================
All gnu-based bsps have been built on Linux.
The native (posix) ports have been built and run only on Linux.
The following configurations have NOT been tested:
+ Anything on Nextstep, HPUX and Irix.
+ The C4x and OR32 ports (requires specially patched toolchain)
All BSPs have been built on GNU/Linux if the target architecture
is supported in the FSF tools distribution.
8. Prerequisites
================
Gawk version 2 or higher.
GNU make version 3.72 or higher.
GNU make
Bash.
gcc version > 2.8
NOTE: These prerequisites are probably out of date but autoconf should detect
any problems.
binutils, gcc, newlib and gdb versions matching those in the RPMs.

View File

@@ -4,4 +4,4 @@
# $Id$
#
RTEMS Version 4.8.99.0
RTEMS Version 4.9.0

View File

@@ -9,7 +9,6 @@ AC_DEFUN([_RTEMS_BSP_ALIAS],
case $1 in
bare*) $2=bare ;; # EXP: bare-aliases
c3xsim) $2=c4xsim ;; # TI C3x Simulator in gdb
gen68360_040) $2=gen68360 ;; # m68k - 68360 in companion mode
pghplus) $2=tqm8xx ;; # powerpc - mpc8xx custom board
tqm8xx_stk8xx) $2=tqm8xx ;; # powerpc - tqm8xx on starter kit

View File

@@ -29,9 +29,6 @@ case "${target}" in
sparc-sun-solaris*) # unix "simulator" port
RTEMS_CPU=unix
;;
tic4x-*rtems*) # gcc changed the name
RTEMS_CPU=c4x
;;
*)
RTEMS_CPU=`echo $target | sed 's%^\([[^-]]*\)-\(.*\)$%\1%'`
;;

View File

@@ -16,7 +16,6 @@ AC_MSG_CHECKING([for available BSPs])
-e "s,/bsp_specs$,,"`
case $bsp_family in
# Now account for BSPs with build variants
c4xsim) bsps="c4xsim c3xsim";;
gen68360) bsps="gen68360 gen68360_040 pgh360";;
tqm8xx) bsps="pghplus tqm8xx_stk8xx";;
genmcf548x) bsps="m5484FireEngine";;
@@ -29,7 +28,7 @@ AC_MSG_CHECKING([for available BSPs])
;;
gen5200) bsps="pm520_cr825 pm520_ze30 brs5l";;
mpc55xxevb) bsps="mpc5566evb";;
gen83xx) bsps="mpc8349eamds hsc_cm01 mpc8313erdb";;
gen83xx) bsps="mpc8349eamds hsc_cm01 mpc8313erdb icecube";;
motorola_powerpc) bsps="mvme2307 mcp750 mtx603e mvme2100";;
pc386) bsps="pc386 pc386dx pc486 pc586 pc686 pck6";;
erc32) bsps="erc32 sis";;

View File

@@ -1,4 +1,4 @@
AC_DEFUN([RTEMS_VERSIONING],
m4_define([_RTEMS_VERSION],[4.8.99.0]))
m4_define([_RTEMS_VERSION],[4.9.0]))
m4_define([RTEMS_API],[4.9])

View File

@@ -153,7 +153,7 @@ The following persons/organizations have made contributions:
interrupt management API that reduces interrupt latency while making
it easier to support external interrupt controllers.
+ Joel Sherrill <joel@OARcorp.com> for the BSPs that work with
+ Joel Sherrill <joel.sherrill@OARcorp.com> for the BSPs that work with
numerous simulators including psim, c4xsim, h8sim, armulator,
sim68000, and simcpu32. Most of these BSPs work with instruction
set simulators in gdb.

View File

@@ -1,3 +1,8 @@
2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* ACKNOWLEDGEMENTS, TOOL_TARGETS: Remove TI C4x and NIOS2 ports from
4.9 branch.
2007-03-27 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac: Use MKDIR_P instead of mkdir_p.

View File

@@ -5,48 +5,32 @@
The following are targets for the GNU tools (gcc, binutils, newlib, and gdb)
that are for RTEMS, their object format, and status notes
arm:
arm-rtems ELF
arm: arm-rtems ELF
c4x:
c4x-rtems COFF Requires patches
h8300: h8300-rtems COFF
h8300:
h8300-rtems COFF
i386: i386-rtems ELF
i386:
i386-rtems ELF
m68k: m68k-rtems ELF
m68k:
m68k-rtems ELF
mips:
mips*-rtems ELF Big endian
mips*el-rtems ELF Little endian
mips: mips*-rtems ELF Big endian
mips*el-rtems ELF Little endian
NOTE: Little endian configuration is not in all tools and
is untested for RTEMS itself.
nios2:
nios2-elf ELF Little endian
nios2: nios2-elf ELF Little endian
NOTE: Currently there is no native nios2-rtems toolchain;
Altera's nios2-elf-tools can be used with wrapper scripts.
powerpc:
powerpc-rtems ELF
powerpcle-rtems ELF Little endian
powerpc: powerpc-rtems ELF
powerpcle-rtems ELF Little endian
NOTE: Little endian configuration is not in all tools and
is untested for RTEMS itself.
sh:
sh-rtems COFF
sh-rtemscoff COFF
sh-rtemself ELF
NOTE: ELF is not completely stable for SH yet.
sh: sh-rtems ELF
sparc:
sparc-rtems ELF

View File

@@ -1,3 +1,12 @@
2008-09-10 Ralf Corsépius <ralf.corsepius@rtems.org>
* aclocal/prog-cc.m4: Remove pre-production testing CFLAGS.
2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* aclocal/canonical-target-name.m4, aclocal/rtems-cpu-subdirs.m4:
Remove TI C4x and NIOS2 ports from 4.9 branch.
2008-09-08 Ralf Corsépius <ralf.corsepius@rtems.org>
* libchip/ide/ata.h: Convert to Unix file format.

View File

@@ -34,10 +34,6 @@ case "${host}" in
RTEMS_CPU=unix
RTEMS_HOST=Solaris
;;
tic4x-*rtems*) # gcc changed the name
RTEMS_CPU=c4x
RTEMS_HOST=$host_os
;;
*)
RTEMS_CPU=`echo $host | sed 's%^\([[^-]]*\)-\(.*\)$%\1%'`
RTEMS_HOST=$host_os

View File

@@ -37,8 +37,6 @@ AC_SUBST(GCCSPECS)
AS_IF([test "$GCC" = yes],[
RTEMS_CFLAGS="$RTEMS_CFLAGS -Wall"
# FIXME: This should be removed in production releases
RTEMS_CFLAGS="$RTEMS_CFLAGS -Wimplicit-function-declaration -Wstrict-prototypes -Wnested-externs"
m4_if([$1],,[],[RTEMS_CFLAGS="$RTEMS_CFLAGS $1"])
])
AC_SUBST(RTEMS_CFLAGS)

View File

@@ -13,13 +13,11 @@ case $RTEMS_CPU in
_RTEMS_CPU_SUBDIR([arm],[$1]);;
_RTEMS_CPU_SUBDIR([bfin],[$1]);;
_RTEMS_CPU_SUBDIR([avr],[$1]);;
_RTEMS_CPU_SUBDIR([c4x],[$1]);;
_RTEMS_CPU_SUBDIR([h8300],[$1]);;
_RTEMS_CPU_SUBDIR([hppa1.1],[$1]);;
_RTEMS_CPU_SUBDIR([i386],[$1]);;
_RTEMS_CPU_SUBDIR([m68k],[$1]);;
_RTEMS_CPU_SUBDIR([mips],[$1]);;
_RTEMS_CPU_SUBDIR([nios2],[$1]);;
_RTEMS_CPU_SUBDIR([no_cpu],[$1]);;
_RTEMS_CPU_SUBDIR([or32],[$1]);;
_RTEMS_CPU_SUBDIR([powerpc],[$1]);;

View File

@@ -1,4 +1,4 @@
AC_DEFUN([RTEMS_VERSIONING],
m4_define([_RTEMS_VERSION],[4.8.99.0]))
m4_define([_RTEMS_VERSION],[4.9.0]))
m4_define([RTEMS_API],[4.9])

View File

@@ -1,3 +1,38 @@
2008-09-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* c4x/.cvsignore, c4x/ChangeLog, c4x/Makefile.am, c4x/acinclude.m4,
c4x/configure.ac, c4x/c4xsim/.cvsignore, c4x/c4xsim/ChangeLog,
c4x/c4xsim/Makefile.am, c4x/c4xsim/README, c4x/c4xsim/bsp_specs,
c4x/c4xsim/configure.ac, c4x/c4xsim/preinstall.am,
c4x/c4xsim/clock/clock.c, c4x/c4xsim/console/console.c,
c4x/c4xsim/console/consolereserveresources.c,
c4x/c4xsim/console/debugio.c, c4x/c4xsim/console/simio.c,
c4x/c4xsim/include/.cvsignore, c4x/c4xsim/include/bsp.h,
c4x/c4xsim/include/simio.h, c4x/c4xsim/include/tm27.h,
c4x/c4xsim/start/start.S, c4x/c4xsim/startup/bspstart.c,
c4x/c4xsim/startup/linkcmds, c4x/c4xsim/startup/spurious.c,
c4x/c4xsim/timer/timer.c, c4x/c4xsim/tools/.cvsignore,
c4x/c4xsim/tools/ChangeLog, c4x/c4xsim/tools/Makefile.am,
c4x/c4xsim/tools/configure.ac, c4x/c4xsim/tools/runtest.in,
c4x/shared/bspspuriousinit.c, c4x/shared/c3xspurious.c,
c4x/shared/c4xspurious.c, nios2/.cvsignore, nios2/ChangeLog,
nios2/Makefile.am, nios2/README, nios2/acinclude.m4,
nios2/configure.ac, nios2/nios2_iss/.cvsignore,
nios2/nios2_iss/ChangeLog, nios2/nios2_iss/Makefile.am,
nios2/nios2_iss/bsp_specs, nios2/nios2_iss/configure.ac,
nios2/nios2_iss/nios2_iss.ptf, nios2/nios2_iss/nios2_iss.sh,
nios2/nios2_iss/preinstall.am, nios2/nios2_iss/times,
nios2/nios2_iss/clock/clock.c, nios2/nios2_iss/console/console.c,
nios2/nios2_iss/include/.cvsignore, nios2/nios2_iss/include/bsp.h,
nios2/nios2_iss/include/coverhd.h, nios2/nios2_iss/include/tm27.h,
nios2/nios2_iss/shmsupp/addrconv.c, nios2/nios2_iss/shmsupp/getcfg.c,
nios2/nios2_iss/shmsupp/lock.c, nios2/nios2_iss/shmsupp/mpisr.c,
nios2/nios2_iss/start/crtnn.s, nios2/nios2_iss/start/start.S,
nios2/nios2_iss/startup/bspclean.c,
nios2/nios2_iss/startup/bspstart.c, nios2/nios2_iss/startup/linkcmds,
nios2/nios2_iss/startup/main.c, nios2/nios2_iss/startup/setvec.c,
nios2/nios2_iss/timer/timer.c: Removed.
2008-07-24 Joel Sherrill <joel.sherrill@oarcorp.com>
* preinstall.am: New file.

View File

@@ -1,3 +1,7 @@
2008-09-24 Ralf Corsepius <ralf.corsepius@rtems.org>
* Makefile.am: Remove empty HAS_NETWORKING conditional.
2008-09-06 Ralf Corsepius <ralf.corsepius@rtems.org>
* irq/irq.c: Minor "bool" fixes.

View File

@@ -55,9 +55,6 @@ libbsp_a_SOURCES = $(startup_SOURCES) $(clock_SOURCES) $(console_SOURCES) \
$(timer_SOURCES) $(irq_SOURCES)
libbsp_a_LIBADD = gbaoverrides.rel
if HAS_NETWORKING
##
endif
include $(srcdir)/preinstall.am
include $(top_srcdir)/../../../../automake/local.am

View File

@@ -1,3 +1,8 @@
2008-09-24 Ralf Corsépius <ralf.corsepius@rtems.org>
PR 1322/bsps
* include/bspopts.h.in: Remove.
2008-08-21 Joel Sherrill <joel.sherrill@oarcorp.com>
* Makefile.am: No BSP should use exit.c as a file name. exit() is POSIX

View File

@@ -1,16 +0,0 @@
/* include/bspopts.h.in. Generated from configure.ac by autoheader. */
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the version of this package. */
#undef PACKAGE_VERSION

View File

@@ -1,8 +0,0 @@
aclocal.m4
autom4te*.cache
config.cache
config.log
config.status
configure
Makefile
Makefile.in

View File

@@ -1,128 +0,0 @@
2007-04-17 Joel Sherrill <joel@OARcorp.com>
* c4xsim/tools/runtest.in: Do not run pppd.exe from batch mode script.
2006-12-02 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac: New BUG-REPORT address.
2006-10-17 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac: Require autoconf-2.60. Require automake-1.10.
2005-10-16 Ralf Corsepius <ralf.corsepius@rtems.org>
* Makefile.am: Merge-in shared/Makefile.am.
* ChangeLog: Merge-in shared/ChangeLog.
* configure.ac: Remove shared/Makefile.am.
2004-09-24 Ralf Corsepius <ralf.corsepius@rtems.org>
* configure.ac: Require automake > 1.9.
2004-03-31 Ralf Corsepius <ralf.corsepius@rtems.org>
* shared/bspspuriousinit.c: Convert to using c99 fixed size types.
2004-02-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: RTEMS_CHECK_BSPDIR([$RTEMS_BSP_FAMILY]).
* acinclude.m4: Regenerate.
2004-01-13 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Use @RTEMS_BSP_FAMILY@ instead of
$(RTEMS_BSP_FAMILY).
2003-12-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Require automake >= 1.8, autoconf >= 2.59.
2003-12-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* shared/Makefile.am: Remove C_FILES (Unused).
2003-10-20 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* acinclude.m4: Reflect changes to bootstrap.
* configure.ac: Remove RTEMS_CHECK_CUSTON_BSP.
2003-09-04 Joel Sherrill <joel@OARcorp.com>
* shared/bspspuriousinit.c, shared/c3xspurious.c,
shared/c4xspurious.c: URL for license changed.
2003-08-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Reflect having moved aclocal/.
2003-08-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am, shared/Makefile.am: Reflect having moved automake/.
2003-08-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Use rtems-bugs@rtems.com as bug report email
address.
2003-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]).
* configure.ac: AC_PREREQ(2.57).
2002-12-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Remove RTEMS_CHECK_BSP_CACHE.
2002-10-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* .cvsignore: Reformat. Add autom4te*cache. Remove autom4te.cache.
2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am, shared/Makefile.am: Remove AUTOMAKE_OPTIONS.
* configure.ac: AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS).
AM_INIT_AUTOMAKE([no-define foreign 1.6]).
2002-01-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* shared/bspspuriousinit.c, shared/c3xspurious.c,
shared/c4xspurious.c: Include rtems/bspIo.h instead of bspIo.h.
2001-10-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* .cvsignore: Add autom4te.cache for autoconf > 2.52.
* configure.ac: New file, generated from configure.in by autoupdate.
* configure.in: Remove.
2001-10-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* acinclude.m4: New file.
* configure.in: Use RTEMS_BSP_SUBDIR.
2000-11-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
2000-11-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Switch to ACLOCAL_AMFLAGS = -I
$(RTEMS_TOPdir)/aclocal.
2000-10-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros. Switch to
GNU canonicalization.
2000-09-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Formatting.
2000-08-10 Joel Sherrill <joel@OARcorp.com>
* ChangeLog, shared/ChangeLog: New file.

View File

@@ -1,16 +0,0 @@
##
## $Id$
##
ACLOCAL_AMFLAGS = -I ../../../aclocal
## Descend into the @RTEMS_BSP_FAMILY@ directory
SUBDIRS = @RTEMS_BSP_FAMILY@
EXTRA_DIST =
EXTRA_DIST += shared/bspspuriousinit.c
EXTRA_DIST += shared/c3xspurious.c
EXTRA_DIST += shared/c4xspurious.c
include $(top_srcdir)/../../../automake/subdirs.am
include $(top_srcdir)/../../../automake/local.am

View File

@@ -1,10 +0,0 @@
# RTEMS_CHECK_BSPDIR(RTEMS_BSP_FAMILY)
AC_DEFUN([RTEMS_CHECK_BSPDIR],
[
case "$1" in
c4xsim )
AC_CONFIG_SUBDIRS([c4xsim]);;
*)
AC_MSG_ERROR([Invalid BSP]);;
esac
])

View File

@@ -1,8 +0,0 @@
aclocal.m4
autom4te*.cache
config.cache
config.log
config.status
configure
Makefile
Makefile.in

View File

@@ -1,474 +0,0 @@
2008-09-05 Ralf Corsépius <ralf.corsepius@rtems.org>
* timer/timer.c: Convert to "bool".
2008-08-31 Joel Sherrill <joel.sherrill@oarcorp.com>
* timer/timer.c: Eliminate empty function from every benchmark timer
driver. Fix spelling.
2008-08-31 Joel Sherrill <joel.sherrill@oarcorp.com>
* timer/timer.c: Rename timer driver methods to follow RTEMS
programming conventions.
2008-05-15 Joel Sherrill <joel.sherrill@OARcorp.com>
* startup/bspstart.c: Add capability for bootcard.c BSP Initialization
Framework to ask the BSP where it has memory for the RTEMS Workspace
and C Program Heap. These collectively are referred to as work area.
If the BSP supports this, then it does not have to include code to
split the available memory between the two areas. This reduces the
amount of code in the BSP specific bspstart.c file. Additionally, the
shared framework can initialize the C Library, call
rtems_debug_enable(), and dirty the work area memory. Until most/all
BSPs support this new capability, if the BSP supports this, it should
call RTEMS_BSP_BOOTCARD_HANDLES_RAM_ALLOCATION from its configure.ac.
When the transition is complete, this autoconf macro can be removed.
2008-05-14 Joel Sherrill <joel.sherrill@OARcorp.com>
* Makefile.am: Rework to avoid .rel files.
2008-05-12 Joel Sherrill <joel.sherrill@OARcorp.com>
* startup/bspstart.c: Refactored and renamed initialization routines to
rtems_initialize_data_structures, rtems_initialize_before_drivers,
rtems_initialize_device_drivers, and
rtems_initialize_start_multitasking. This opened the sequence up so
that bootcard() could provide a more robust and flexible framework
which is easier to explain and understand. This also lays the
groundwork for sharing the division of available memory between the
RTEMS workspace and heap and the C library initialization across all
BSPs.
2007-12-11 Joel Sherrill <joel.sherrill@OARcorp.com>
* clock/clock.c, include/bsp.h, startup/bspstart.c: Eliminate copies of
the Configuration Table. Use the RTEMS provided accessor macros to
obtain configuration fields.
2007-12-04 Joel Sherrill <joel.sherrill@OARcorp.com>
* include/bsp.h, startup/bspstart.c: Move interrupt_stack_size field
from CPU Table to Configuration Table. Eliminate CPU Table from all
ports. Delete references to CPU Table in all forms.
2007-12-03 Joel Sherrill <joel.sherrill@OARcorp.com>
* Makefile.am, startup/bspstart.c: Moved most of the remaining CPU
Table fields to the Configuration Table. This included
pretasking_hook, predriver_hook, postdriver_hook, idle_task,
do_zero_of_workspace, extra_mpci_receive_server_stack,
stack_allocate_hook, and stack_free_hook. As a side-effect of this
effort some multiprocessing code was made conditional and some style
clean up occurred.
2007-05-11 Ralf Corsépius <ralf.corsepius@rtems.org>
* clock/clock.c: include <tic4x/c4xio.h>.
2007-04-12 Ralf Corsépius <ralf.corsepius@rtems.org>
* bsp_specs: Remove qrtems_debug.
2006-12-02 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac: New BUG-REPORT address.
2006-11-15 Joel Sherrill <joel@OARcorp.com>
* Makefile.am: Merge c_rtems_main() into boot_card(). This eliminated a
file and simplified initialization.
2006-10-17 Ralf Corsépius <ralf.corsepius@rtems.org>
* Makefile.am: Remove superfluous -DASM.
2006-10-17 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac: Require autoconf-2.60. Require automake-1.10.
2006-05-31 Joel Sherrill <joel@OARcorp.com>
* clock/clock.c: Switch to using shared clock driver shell.
2006-01-11 Ralf Corsepius <ralf.corsepius@rtems.org>
* Makefile.am: Add preinstall.am.
2005-05-26 Ralf Corsepius <ralf.corsepius@rtems.org>
* include/bsp.h: New header guard.
2005-02-02 Ralf Corsepius <ralf.corsepius@rtems.org>
* include/tm27.h, timer/timer.c: #include <rtems/tic4x/c4xio.h>
instead of <rtems/tic4x/c4xio.h>.
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-02 Ralf Corsepius <ralf_corsepius@rtems.org>
* clock/clock.c, include/bsp.h, timer/timer.c: Include
<rtems/c4x/c4xio.h> instead of <c4xio.h>.
2004-04-01 Ralf Corsepius <ralf_corsepius@rtems.org>
* include/bsp.h: Include <rtems/clockdrv.h> instead of <clockdrv.h>.
* include/bsp.h: Include <rtems/console.h> instead of <console.h>.
* include/bsp.h: Include <rtems/iosupp.h> instead of <iosupp.h>.
2004-03-31 Ralf Corsepius <ralf_corsepius@rtems.org>
* clock/clock.c, include/bsp.h, startup/bspstart.c, timer/timer.c:
Convert to using c99 fixed size types.
2004-02-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Reflect changes to bsp.am.
Preinstall dist_project_lib*.
2004-02-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Reflect changes to bsp.am.
2004-02-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 ../../c4x/shared instead of
../shared. Reformat.
2004-01-29 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Merge-in clock/Makefile.am, console/Makefile.am,
start/Makefile.am, startup/Makefile.am, timer/Makefile.am,
wrapup/Makefile.am.
Use automake compilation rules.
* clock/Makefile.am, console/Makefile.am, start/Makefile.am,
startup/Makefile.am, timer/Makefile.am, wrapup/Makefile.am:
Remove.
* configure.ac: Reflect changes above.
2004-01-28 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Add nostdinc to AUTOMAKE_OPTIONS.
Add RTEMS_PROG_CCAS.
2004-01-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Add PREINSTALL_DIRS.
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.
* start/Makefile.am: Ditto.
* startup/Makefile.am: Ditto.
2004-01-05 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* wrapup/Makefile.am: Eliminate $(LIB).
Use noinst_DATA to trigger building libbsp.a.
2003-12-13 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* start/Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g.
* startup/Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g.
2003-12-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* start/Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES.
* startup/Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES.
2003-12-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Require automake >= 1.8, autoconf >= 2.59.
2003-12-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* start/Makefile.am: Misc cleanups and fixes.
* startup/Makefile.am: Misc cleanups and fixes.
* wrapup/Makefile.am: Misc cleanups and fixes.
2003-12-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Add preinstallation dirstamp support.
* clock/Makefile.am: Cosmetics.
* console/Makefile.am: Cosmetics.
* startup/Makefile.am: Cosmetics.
* timer/Makefile.am: Cosmetics.
* wrapup/Makefile.am: Cosmetics.
2003-12-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* clock/Makefile.am: Remove all-local: $(ARCH).
* console/Makefile.am: Remove all-local: $(ARCH).
* start/Makefile.am: Remove all-local: $(ARCH).
* startup/Makefile.am: Remove all-local: $(ARCH).
* timer/Makefile.am: Remove all-local: $(ARCH).
* wrapup/Makefile.am: Remove all-local: $(ARCH).
2003-09-29 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Merge-in include/Makefile.am.
Reflect changes to bsp.am.
* include/Makefile.am: Remove.
* configure.ac: Reflect changes above.
2003-09-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bsp_specs: Remove *lib:.
2003-09-04 Joel Sherrill <joel@OARcorp.com>
* clock/clock.c, console/console.c, console/consolereserveresources.c,
console/debugio.c, include/bsp.h, startup/bspstart.c,
startup/spurious.c, timer/timer.c: URL for license changed.
2003-08-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Reflect having moved aclocal/.
2003-08-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Reflect having moved automake/.
* clock/Makefile.am: Reflect having moved automake/.
* console/Makefile.am: Reflect having moved automake/.
* include/Makefile.am: Reflect having moved automake/.
* 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 for networking.
2002-12-19 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.
* 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-13 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.
* 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-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Remove RTEMS_OUTPUT_BUILD_SUBDIRS. Cosmetical
changes.
2002-10-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* .cvsignore: Reformat.
Add autom4te*cache.
Remove autom4te.cache.
2002-09-14 Joel Sherrill <joel@OARcorp.com>
* clock/clock.c: Per PR257, remove reference to c3x_set_ie.
c4x variant should use c4x_set_iie().
2002-08-21 Joel Sherrill <joel@OARcorp.com>
* bsp_specs: Added support for -nostdlibs.
2002-08-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* clock/Makefile.am: Use .$(OBJEXT) instead of .o.
* console/Makefile.am: Use .$(OBJEXT) instead of .o.
* start/Makefile.am: Use .$(OBJEXT) instead of .o.
* startup/Makefile.am: Use .$(OBJEXT) instead of .o.
* timer/Makefile.am: Use .$(OBJEXT) instead of .o.
* wrapup/Makefile.am: Use .$(OBJEXT) instead of .o.
2002-07-20 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* start/Makefile.am: Eliminate PGM.
Add bsplib_DATA = $(PROJECT_RELEASE)/lib/start$(LIB_VARIANT).o.
2002-07-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* startup/Makefile.am: Add bsplib_DATA = linkcmds.
2002-07-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* wrapup/Makefile.am: Eliminate TMPINSTALL_FILES.
Remove $(OBJS) from all-local.
2002-06-29 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* wrapup/Makefile.am: Remove preinstallation of libbsp.a,
2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac:
AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS).
AM_INIT_AUTOMAKE([no-define foreign 1.6]).
* clock/Makefile.am: Remove AUTOMAKE_OPTIONS.
* Makefile.am: Remove AUTOMAKE_OPTIONS.
* console/Makefile.am: Remove AUTOMAKE_OPTIONS.
* include/Makefile.am: Remove AUTOMAKE_OPTIONS.
* 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-01-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* startup/bspstart.c: Include rtems/bspIo.h instead of bspIo.h.
* startup/spurious.c: Include rtems/bspIo.h instead of bspIo.h.
2001-12-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bsp_specs: Replace -lrtemsall with -lrtemsbsp -lrtemscpu,
replace -lrtemsall_g with -lrtemsbsp_g -lrtemscpu_g.
2001-11-30 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Introduce RTEMS_BSP_CONFIGURE.
2001-10-12 Joel Sherrill <joel@OARcorp.com>
* console/console.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 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* include/Makefile.am: Use 'CLEANFILES ='.
* include/Makefile.am: Use 'PREINSTALL_FILES ='.
2001-05-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.in: Add bspopts.h, fix PACKAGE.
* 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-12-06 Joel Sherrill <joel@OARcorp.com>
* console/consolereserveresources.c: Removed code NOT file (YET).
2000-11-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
2000-11-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal.
2000-11-01 Joel Sherrill <joel@OARcorp.com>
* startup/bspstart.c: assoc.h, error.h, libio_.h, libio.h,
and libcsupport.h moved from libc to lib/include/rtems and
now must be referenced as <rtems/XXX.h>. Header file order
was cleaned up while doing this.
2000-10-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.in, Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros.
Switch to GNU canonicalization.
2000-09-22 Joel Sherrill <joel@OARcorp.com>
* startup/linkcmds: Use default object format to avoid name
changes in object format due to tool version changes.
2000-09-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* clock/Makefile.am, console/Makefile.am, start/Makefile.am,
startup/Makefile.am, timer/Makefile.am, wrapup/Makefile.am:
Include compile.am
2000-08-10 Joel Sherrill <joel@OARcorp.com>
* ChangeLog: New file.

View File

@@ -1,53 +0,0 @@
##
## $Id$
##
ACLOCAL_AMFLAGS = -I ../../../../aclocal
# wrapup is the one that actually builds and installs the library
# from the individual .rel files built in other directories
SUBDIRS = . tools
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 =
include_HEADERS += include/simio.h
nodist_include_HEADERS += ../../shared/include/coverhd.h
EXTRA_DIST = start/start.S
start.$(OBJEXT): start/start.S
$(CPPASCOMPILE) -o $@ -c $<
project_lib_DATA = start.$(OBJEXT)
dist_project_lib_DATA += startup/linkcmds
startup_SOURCES = ../../shared/bspclean.c ../../shared/bsplibc.c \
../../shared/bsppredriverhook.c \
../../shared/bsppost.c startup/bspstart.c \
../../shared/bootcard.c ../../shared/sbrk.c ../../shared/setvec.c \
../../c4x/shared/c3xspurious.c ../../c4x/shared/c4xspurious.c \
../../c4x/shared/bspspuriousinit.c startup/spurious.c \
../../shared/gnatinstallhandler.c
clock_SOURCES = clock/clock.c
console_SOURCES = console/consolereserveresources.c console/debugio.c \
console/simio.c ../../shared/console.c
timer_SOURCES = timer/timer.c
noinst_LIBRARIES = libbsp.a
libbsp_a_SOURCES = $(startup_SOURCES) $(clock_SOURCES) $(console_SOURCES) \
$(timer_SOURCES)
EXTRA_DIST += times
include $(srcdir)/preinstall.am
include $(top_srcdir)/../../../../automake/local.am

View File

@@ -1,46 +0,0 @@
#
# $Id$
#
BSP NAME: c4xsim
BOARD: Simulator in GDB
BUS: N/A
CPU FAMILY: C3X/C4X
CPU: C32 and others
COPROCESSORS: N/A
MODE: 32 bit mode
DEBUG MONITOR: gdb simulator
PERIPHERALS
===========
TIMERS: Internal Timer
RESOLUTION: ???
SERIAL PORTS: simulated via
REAL-TIME CLOCK: ???
DMA: none
VIDEO: none
SCSI: none
NETWORKING: none
DRIVER INFORMATION
==================
CLOCK DRIVER: ???
IOSUPP DRIVER: N/A
SHMSUPP: N/A
TIMER DRIVER: ???
TTY DRIVER: ???
STDIO
=====
PORT: Console port 0
ELECTRICAL: na
BAUD: na
BITS PER CHARACTER: na
PARITY: na
STOP BITS: na
Notes
=====
NONE

View File

@@ -1,11 +0,0 @@
%rename endfile old_endfile
%rename startfile old_startfile
%rename link old_link
*startfile:
%{!qrtems: %(old_startfile)} \
%{!nostdlib: %{qrtems: start.o%s}}
*link:
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N -e start}

View File

@@ -1,63 +0,0 @@
/* ckinit.c
*
* This file provides a template for the clock device driver initialization.
*
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#include <stdlib.h>
#include <rtems.h>
#include <rtems/libio.h>
#include <bsp.h>
#include <rtems/tic4x/c4xio.h>
#define CLOCK_VECTOR 9
#define Clock_driver_support_at_tick()
#define Clock_driver_support_install_isr( _new, _old ) \
do { _old = 0; } while(0)
void Clock_driver_support_initialize_hardware()
{
extern int _ClockFrequency;
uint32_t Clock_counter_register_value;
float tmp;
int tmpi;
tmpi = ((int) &_ClockFrequency) * 1000000; /* ClockFrequency is in Mhz */
tmp = (float) tmpi / 2.0;
tmp = ((float) rtems_configuration_get_microseconds_per_tick() / 1000000.0) * (tmp);
Clock_counter_register_value = (unsigned int) tmp;
#if 0
Clock_counter_register_value =
(uint32_t) ((float) rtems_configuration_get_microseconds_per_tick() /
((float)_ClockFrequency / 2.0)));
#endif
c4x_timer_stop( C4X_TIMER_0 );
c4x_timer_set_counter( C4X_TIMER_0, 0 );
c4x_timer_set_period( C4X_TIMER_0, Clock_counter_register_value );
c4x_timer_start( C4X_TIMER_0 );
#if defined(_C4x)
c4x_set_iee( c4x_get_iie() | 0x1 ); /* should be ETINT0 */
#else
c3x_set_ie( c3x_get_ie() | 0x100 );
#endif
Old_ticker = (rtems_isr_entry) set_vector( clock_isr, CLOCK_VECTOR, 1 );
}
#define Clock_driver_support_shutdown_hardware()
#include "../../../shared/clockdrv_shell.c"

View File

@@ -1,22 +0,0 @@
## Process this file with autoconf to produce a configure script.
##
## $Id$
AC_PREREQ(2.60)
AC_INIT([rtems-c-src-lib-libbsp-c4x-c4xsim],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
AC_CONFIG_SRCDIR([bsp_specs])
RTEMS_TOP(../../../../../..)
RTEMS_CANONICAL_TARGET_CPU
AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.10])
RTEMS_BSP_CONFIGURE
RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm])
RTEMS_CANONICALIZE_TOOLS
RTEMS_PROG_CCAS
RTEMS_CONFIG_BUILD_SUBDIRS(tools)
# Explicitly list all Makefiles here
AC_CONFIG_FILES([Makefile])
AC_OUTPUT

View File

@@ -1,153 +0,0 @@
/*
* This file contains the hardware specific portions of the TTY driver
* for the serial ports on the erc32.
*
* COPYRIGHT (c) 1989-1997.
* 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>
#include <simio.h>
/*
* console_outbyte_polled
*
* This routine transmits a character using polling.
*/
void console_outbyte_polled(
int port,
char ch
);
/*
* console_inbyte_nonblocking
*
* This routine polls for a character.
*/
int console_inbyte_nonblocking(
int port
);
/*
* Console Termios Support Entry Points
*
*/
int console_write_support (
int minor,
const char *bufarg,
int len
)
{
int nwrite = 0;
const char *buf = bufarg;
while (nwrite < len) {
if ( *buf )
console_outbyte_polled( minor, *buf & 0x7f );
buf++;
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);
return RTEMS_SUCCESSFUL;
}
rtems_device_driver console_open(
rtems_device_major_number major,
rtems_device_minor_number minor,
void * arg
)
{
rtems_status_code sc;
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 */
};
assert( minor <= 1 );
if ( minor > 2 )
return RTEMS_INVALID_NUMBER;
sc = rtems_termios_open (major, minor, arg, &pollCallbacks );
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);
}

View File

@@ -1,19 +0,0 @@
/*
* This file contains the TTY driver for the serial ports on the erc32.
*
* 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>

View File

@@ -1,56 +0,0 @@
/*
* This file contains the TTY driver for the serial ports on the erc32.
*
* 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>
#include <simio.h>
/*
* console_outbyte_polled
*
* This routine transmits a character using polling.
*/
void console_outbyte_polled(
int port,
char ch
)
{
char out[2];
out[0] = ch;
out[1] = 0;
sim_write(1, out, 1);
}
C4X_BSP_output_char( int c )
{
console_outbyte_polled( 0, (char) c );
}
/*
* console_inbyte_nonblocking
*
* This routine polls for a character.
*/
int console_inbyte_nonblocking( int port )
{
char c;
sim_read(1, &c, 1);
return c;
}

View File

@@ -1,308 +0,0 @@
/*
* C4x simulator IO interface routines based on code provided
* by Herman ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
*
* $Id$
*/
#include <stdio.h>
#define SIM_OPEN (0xf0)
#define SIM_CLOSE (0xf1)
#define SIM_READ (0xf2)
#define SIM_WRITE (0xf3)
#define SIM_LSEEK (0xf4)
#define SIM_UNLINK (0xf5)
#define SIM_GETENV (0xf6)
#define SIM_RENAME (0xf7)
#define SIM_GETTIME (0xf8)
#define SIM_GETCLOCK (0xf9)
typedef union _io {
struct _open {
int fd : 16;
int flags : 16;
} open;
struct _openr {
int result : 16;
} openr;
struct _close {
int fd : 16;
} close;
struct _closer {
int result : 16;
} closer;
struct _read {
int fd : 16;
int count : 16;
} read;
struct _readr {
int result : 16;
} readr;
struct _write {
int fd : 16;
int count : 16;
} write;
struct _writer {
int result : 16;
} writer;
struct _lseek {
int fd : 16;
int offsetlow : 16;
int offsethigh : 16;
int orgin : 16;
} lseek;
struct _lseekr {
int result;
} lseekr;
struct _unlinkr {
int result : 16;
} unlinkr;
struct _renamer {
int result : 16;
} renamer;
struct _getenvr {
int result : 16;
} getenvr;
struct _gettimer {
int result;
} gettimer;
struct _getclockr {
int result;
} getclockr;
struct _common {
int word1;
int word2;
} common;
} io;
static void to_sim(int command, io *param, char *data, int length);
static void call_sim(void);
static void from_sim(io *param, char *data);
void sim_exit(void)
{
__asm__(" .global C$$EXIT");
__asm__("C$$EXIT: nop");
__asm__("nop");
}
int sim_open(const char *path, unsigned flags, int fno)
{
io param;
param.open.fd = fno;
param.open.flags = flags;
to_sim(SIM_OPEN,&param,(char *)path,strlen(path)+1);
call_sim();
from_sim(&param, NULL);
return param.openr.result;
}
int sim_close(int fno)
{
io param;
param.close.fd = fno;
to_sim(SIM_CLOSE,&param,NULL,0);
call_sim();
from_sim(&param, NULL);
return param.closer.result;
}
int sim_read(int fno, char *buf, unsigned count)
{
io param;
param.read.fd = fno;
param.read.count = count;
to_sim(SIM_READ,&param,NULL,0);
call_sim();
from_sim(&param, buf);
return param.readr.result;
}
int sim_write(int fno, const char *buf, unsigned count)
{
io param;
param.write.fd = fno;
param.write.count = count;
to_sim(SIM_WRITE,&param,(char *)buf,count);
call_sim();
from_sim(&param, NULL);
return param.writer.result;
}
fpos_t sim_lseek(int fno, fpos_t offset, int origin)
{
io param;
param.lseek.fd = fno;
param.lseek.offsetlow = offset & 0xffff;
param.lseek.offsethigh = offset >> 16;
to_sim(SIM_LSEEK,&param,NULL,0);
call_sim();
from_sim(&param, NULL);
return param.lseekr.result;
}
int sim_unlink(const char *path)
{
io param;
to_sim(SIM_UNLINK,NULL,(char *)path,strlen(path)+1);
call_sim();
from_sim(&param, NULL);
return param.unlinkr.result;
}
int sim_rename(const char *old, const char *new)
{
int l;
static char combined[200];
io param;
strcpy(combined,old);
l = strlen(old)+1;
strcpy(combined+l,new);
l += strlen(new) + 1;
to_sim(SIM_RENAME,NULL,combined,l);
call_sim();
from_sim(&param, NULL);
return param.renamer.result;
}
char *sim_getenv(const char *str)
{
io param;
static char result[200];
to_sim(SIM_GETENV,NULL,(char *)str,strlen(str)+1);
call_sim();
from_sim(&param, result);
return param.getenvr.result ? result : NULL;
}
int sim_gettime(void)
{
io param;
to_sim(SIM_GETTIME,NULL,NULL,0);
call_sim();
from_sim(&param, NULL);
return param.gettimer.result;
}
int sim_getclock(void)
{
io param;
to_sim(SIM_GETCLOCK,NULL,NULL,0);
call_sim();
from_sim(&param, NULL);
return param.getclockr.result;
}
int _CIOBUF_[BUFSIZ+32];
static void to_sim(int command, io *param, char *data, int length)
{
int i;
int n;
int v;
int *ip = &_CIOBUF_[0];
*ip++ = length;
*ip++ = command;
if (param) {
*ip++ = param->common.word1;
*ip++ = param->common.word2;
}
else {
*ip++ = 0;
*ip++ = 0;
}
n = length & ~3;
for (i = 0 ; i < n ; i += 4) {
v = *data++ & 0xff;
v |= (*data++ & 0xff) << 8;
v |= (*data++ & 0xff) << 16;
v |= (*data++ & 0xff) << 24;
*ip++ = v;
}
v = 0;
for ( ; i < length ; i++) {
v |= (*data++ & 0xff) << ((i & 3) << 3);
}
*ip = v;
}
static void call_sim(void)
{
__asm__(" .global C$$IO$$");
__asm__("C$$IO$$: nop");
}
static void from_sim(io *param, char *data)
{
int i;
int l;
int n;
int v;
int *ip = &_CIOBUF_[0];
l = *ip++;
param->common.word1 = *ip++;
param->common.word2 = *ip++;
if (data != NULL) {
n = l & ~3;
for (i = 0 ; i < n ; i += 4) {
v = *ip++;
*data++ = v & 0xff;
*data++ = (v >> 8) & 0xff;
*data++ = (v >> 16) & 0xff;
*data++ = (v >> 24) & 0xff;
}
v = *ip;
for (; i < l ; i++) {
*data++ = v >> ((i & 3) << 3);
}
}
}
#if 0
#include <fcntl.h>
sim_io_test()
{
sim_write(1, "howdy\n", 6);
}
#endif
/*
* Debug junk
*/
#if 0
void printk_wrapper(void)
{
__asm__(" .global _printf");
__asm__("_printf: bu _printk");
}
#endif
#if 1
#ifdef _HAVE_STDC
#include <stdarg.h>
#else
#include <varargs.h>
#endif
int __svfscanf(
register FILE *fp,
char const *fmt0,
va_list ap
)
{
return 0;
}
#endif

View File

@@ -1,73 +0,0 @@
/* bsp.h
*
* This include file contains all C4X Simulator IO definitions.
*
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#ifndef _BSP_H
#define _BSP_H
#ifdef __cplusplus
extern "C" {
#endif
#include <bspopts.h>
#ifdef ASM
#else
#include <rtems.h>
#include <rtems/console.h>
#include <rtems/clockdrv.h>
#include <rtems/console.h>
#include <rtems/iosupp.h>
/* Constants */
/*
* Device Driver Table Entries
*/
/*
* NOTE: Use the standard Console driver entry
*/
/*
* NOTE: Use the standard Clock driver entry
*/
/*
* Information placed in the linkcmds file.
*/
/* functions */
void bsp_start( void );
void bsp_cleanup( 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 BSP_fatal_return( void );
void bsp_spurious_initialize( void );
#endif /* ASM */
#ifdef __cplusplus
}
#endif
#endif

View File

@@ -1,25 +0,0 @@
/*
* C4x simulator IO interface routines based on code provided
* by Herman ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
*
* $Id$
*/
#ifndef __C4X_SIMIO_IFACE_h
#define __C4X_SIMIO_IFACE_h
#include <stdio.h>
void sim_exit(void);
int sim_open(const char *path, int flags, int fno);
int sim_close(int fno);
int sim_read(int fno, char *buf, unsigned count);
int sim_write(int fno, const char *buf, unsigned count);
fpos_t sim_lseek(int fno, fpos_t offset, int origin);
int sim_unlink(const char *path);
int sim_rename(const char *old, const char *new);
char *sim_getenv(const char *str);
int sim_gettime(void);
int sim_getclock(void);
#endif

View File

@@ -1,44 +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
/*
* Stuff for Time Test 27
*/
#include <rtems/tic4x/c4xio.h>
#define MUST_WAIT_FOR_INTERRUPT 0
/* XXX */
#define Install_tm27_vector( _handler ) \
set_vector( (_handler), 0x20, 1 )
#define Cause_tm27_intr() \
do { \
__asm__ volatile ( "trapu 0" ); \
} while (0)
#define Clear_tm27_intr() \
do { \
; \
} while (0)
#define Lower_tm27_intr() \
do { \
c4x_global_interrupts_enable(); \
} while (0)
#endif

View File

@@ -1,62 +0,0 @@
## Automatically generated by ampolish3 - Do not edit
if AMPOLISH3
$(srcdir)/preinstall.am: Makefile.am
$(AMPOLISH3) $(srcdir)/Makefile.am > $(srcdir)/preinstall.am
endif
PREINSTALL_DIRS =
DISTCLEANFILES += $(PREINSTALL_DIRS)
all-local: $(TMPINSTALL_FILES)
TMPINSTALL_FILES =
CLEANFILES = $(TMPINSTALL_FILES)
all-am: $(PREINSTALL_FILES)
PREINSTALL_FILES =
CLEANFILES += $(PREINSTALL_FILES)
$(PROJECT_LIB)/$(dirstamp):
@$(MKDIR_P) $(PROJECT_LIB)
@: > $(PROJECT_LIB)/$(dirstamp)
PREINSTALL_DIRS += $(PROJECT_LIB)/$(dirstamp)
$(PROJECT_INCLUDE)/$(dirstamp):
@$(MKDIR_P) $(PROJECT_INCLUDE)
@: > $(PROJECT_INCLUDE)/$(dirstamp)
PREINSTALL_DIRS += $(PROJECT_INCLUDE)/$(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)/simio.h: include/simio.h $(PROJECT_INCLUDE)/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/simio.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/simio.h
$(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/coverhd.h
$(PROJECT_LIB)/start.$(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

View File

@@ -1,71 +0,0 @@
/*
* This start.S is a combination of the files boot.s and crt0.s
* provided by Herman ...XXX
*/
; .file "crt0.s"
.ref _c_int00
.global start
.global _start
.if .tms320C40
.sect ".const"
mem_control:
.word 000100000h
mem_data:
.word 03ef78050h
.text
start:
_start:
ldi 0800h,st
ldp @mem_control
ldi @mem_control,ar0
ldp @mem_data
ldi @mem_data,r0
sti r0,*+ar0(0)
sti r0,*+ar0(4)
br _c_int00
.else
.sect ".const"
mem_control:
.word 000808000h
mem_data:
.word 000001f00h
.text
start:
_start:
ldi 0800h,st
ldp @mem_control
ldi @mem_control,ar0
ldp @mem_data
ldi @mem_data,r0
sti r0,*+ar0(0)
sti r0,*+ar0(4)
br _c_int00
.endif
; .file "boot.s"
.global __stack
.global _c_int00
.ref .bss
.ref _boot_card
.ref _exit
__stack: .usect ".stack",0
.text
stack_addr: .word __stack
_c_int00:
ldp stack_addr
ldi @stack_addr,sp
ldi sp,ar3
ldp .bss ; For the small model, set up the DP to .bss
ldi 0,ar2 ; make sure argc=0 with regparm
push ar2 ; and memparm
call _boot_card
call _sim_exit

View File

@@ -1,72 +0,0 @@
/*
* This set of routines starts the application. It includes application,
* board, and monitor specific initialization and configuration.
* The generic CPU dependent initialization has been performed
* before any of these are invoked.
*
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#include <string.h>
#include <bsp.h>
#include <rtems/libio.h>
#include <rtems/libcsupport.h>
/*
* Use the shared implementations of the following routines
*/
void bsp_libc_init( void *, uint32_t, int );
extern void bsp_spurious_initialize();
/*
* bsp_pretasking_hook
*
* BSP pretasking hook. Called just before drivers are initialized.
* Used to setup libc and install any BSP extensions.
*/
void bsp_pretasking_hook(void)
{
extern void *_HeapStart;
extern uint32_t _HeapSize;
bsp_libc_init(&_HeapStart, (unsigned int) &_HeapSize, 0);
bsp_spurious_initialize();
}
/*
* bsp_start
*
* This routine does the bulk of the system initialization.
*/
#include <rtems/bspIo.h>
BSP_output_char_function_type BSP_output_char;
BSP_polling_getchar_function_type BSP_poll_char;
extern void C4X_BSP_output_char(char c);
void bsp_start( void )
{
extern void *_WorkspaceBase;
extern uint32_t _WorkspaceMax;
Configuration.work_space_start = (void *)&_WorkspaceBase;
/* XXX check to see if satisfying small memory model */
if ( rtems_configuration_get_work_space_size() > (int) &_WorkspaceMax )
rtems_fatal_error_occurred( 0x43218765 );
BSP_output_char = C4X_BSP_output_char;
BSP_poll_char = (BSP_polling_getchar_function_type) NULL;
}

View File

@@ -1,87 +0,0 @@
/* OUTPUT_FORMAT("coff-c4x") */
__SYSMEM_SIZE = DEFINED(__SYSMEM_SIZE) ? __SYSMEM_SIZE : 0x4000;
__STACK_SIZE = DEFINED(__STACK_SIZE) ? __STACK_SIZE : 0x1000;
__HeapSize = DEFINED(__HeapSize) ? __HeapSize : 0x10000;
__WorkspaceMax = DEFINED(__WorkspaceMax) ? __WorkspaceMax : 256K;
__ClockFrequency = DEFINED(_ClockFrequency) ? _ClockFrequency : 50;
ENTRY(_start)
SECTIONS
{
.vectors : {
. += 4 * 64;
}
.text 0x200 : {
*(.text)
/*
* Special FreeBSD sysctl sections.
*/
. = ALIGN (16);
__start_set_sysctl_set = .;
*(set_sysctl_*);
__stop_set_sysctl_set = ABSOLUTE(.);
*(set_domain_*);
*(set_pseudo_*);
___CTOR_LIST__ = .;
LONG(___CTOR_END__ - ___CTOR_LIST__ - 2)
*(.ctors)
LONG(0);
___CTOR_END__ = .;
___DTOR_LIST__ = .;
LONG(___DTOR_END__ - ___DTOR_LIST__ - 2)
*(.dtors)
LONG(0)
___DTOR_END__ = .;
}
.init : { *(.init) }
.fini : { *(.fini) }
.const :
{
*(.const)
}
.cinit :
{
*(.cinit)
}
.data :
{
*(.data)
}
.comms : {
*(.comms)
}
.bss : {
.bss = .;
*(.bss)
*(COMMON)
}
.stack :
{
*(.stack)
. = . + __STACK_SIZE;
}
.heap :
{
__HeapStart = .;
. += __HeapSize;
__WorkspaceBase = .;
. += __WorkspaceMax;
}
/*
.sysmem :
{
*(.sysmem)
}
*/
.stab 0 :
{
[ .stab ]
}
.stabstr 0 :
{
[ .stabstr ]
}
/* The TI tools sets cinit to -1 if the ram model is used. */
}

View File

@@ -1,33 +0,0 @@
/*
* CXX Simulator Spurious Trap Handler Assistant
*
* This is just enough of a trap handler to let us know what
* the likely source of the trap was.
*
* 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/bspIo.h>
#include <simio.h>
/*
* bsp_spurious_handler_assistant
*
* We can't recover so just return to gdb.
*/
void bsp_spurious_handler_assistant(
rtems_vector_number vector,
CPU_Interrupt_frame *isf
)
{
sim_exit();
}

View File

@@ -1,105 +0,0 @@
/* timer.c
*
* This file manages the benchmark timer used by the RTEMS Timing Test
* Suite. Each measured time period is demarcated by calls to
* benchmark_timer_initialize() and benchmark_timer_read(). benchmark_timer_read() usually returns
* the number of microseconds since benchmark_timer_initialize() exitted.
*
* NOTE: It is important that the timer start/stop overhead be
* determined when porting or modifying this code.
*
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#include <rtems.h>
#include <bsp.h>
#include <rtems/tic4x/c4xio.h>
uint32_t Timer_interrupts;
bool benchmark_timer_find_average_overhead;
static uint32_t start;
void benchmark_timer_initialize( void )
{
/*
* Timer has never overflowed. This may not be necessary on some
* implemenations of timer but ....
*/
c4x_timer_stop(C4X_TIMER_0);
c4x_timer_set_period(C4X_TIMER_0, 0xffffffff); /* so no interupts */
c4x_timer_start(C4X_TIMER_0);
start = c4x_timer_get_counter(C4X_TIMER_0);
Timer_interrupts = 0;
/*
* Somehow start the timer
*/
}
/*
* The following controls the behavior of benchmark_timer_read().
*
* AVG_OVEREHAD is the overhead for starting and stopping the timer. It
* is usually deducted from the number returned.
*
* LEAST_VALID is the lowest number this routine should trust. Numbers
* below this are "noise" and zero is returned.
*/
#define AVG_OVERHEAD 0 /* It typically takes X.X microseconds */
/* (Y countdowns) to start/stop the timer. */
/* This value is in microseconds. */
#define LEAST_VALID 1 /* Don't trust a clicks value lower than this */
int benchmark_timer_read( void )
{
uint32_t clicks;
uint32_t total;
int tmp;
/*
* Read the timer and see how many clicks it has been since we started.
*/
clicks = c4x_timer_get_counter(C4X_TIMER_0);
clicks -= start;
/*
* Total is calculated by taking into account the number of timer overflow
* interrupts since the timer was initialized and clicks since the last
* interrupts.
*/
total = clicks * 1;
if ( benchmark_timer_find_average_overhead == true ) {
return total; /* in count units where each count is */
/* 1 / (clock frequency/2) */
} else {
if ( total < LEAST_VALID )
return 0; /* below timer resolution */
/*
* Somehow convert total into microseconds
*/
tmp = (int) ((float) total * ((1.0 / 25.0)));
return (tmp - AVG_OVERHEAD);
}
}
void benchmark_timer_disable_subtracting_average_overhead(
bool find_flag
)
{
benchmark_timer_find_average_overhead = find_flag;
}

View File

@@ -1,5 +0,0 @@
aclocal.m4
autom4te*.cache
configure
Makefile
Makefile.in

View File

@@ -1,101 +0,0 @@
2008-03-11 Joel Sherrill <joel.sherrill@oarcorp.com>
* runtest.in: Skip all fatal error tests.
2007-09-04 Joel Sherrill <joel.sherrill@OARcorp.com>
* runtest.in: Add capture to list of interative tests to skip in batch
mode.
2007-01-26 Ralf Corsépius <ralf.corsepius@rtems.org>
* Makefile.am: Use MKDIR_P instead of mkdir_p.
2006-12-02 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac: New BUG-REPORT address.
2006-10-17 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac: Require autoconf-2.60. Require automake-1.10.
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-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-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.
2000-11-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
2000-11-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal.
2000-10-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros.
Switch to GNU canonicalization.
2000-08-10 Joel Sherrill <joel@OARcorp.com>
* ChangeLog: New file.

View File

@@ -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/local.am

View File

@@ -1,24 +0,0 @@
## Process this file with autoconf to produce a configure script.
##
## $Id$
AC_PREREQ(2.60)
AC_INIT([rtems-c-src-lib-libbsp-c4x-c4xsim-tools],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
AC_CONFIG_SRCDIR([runtest.in])
RTEMS_TOP(../../../../../../..)
RTEMS_CANONICAL_TARGET_CPU
AM_INIT_AUTOMAKE([no-define foreign 1.10])
AM_MAINTAINER_MODE
RTEMS_PATH_KSH
RTEMS_ENV_RTEMSBSP
RTEMS_PROJECT_ROOT
RTEMS_TOOLPATHS
# Explicitly list all Makefiles here
AC_CONFIG_FILES([Makefile
runtest])
AC_OUTPUT

View File

@@ -1,331 +0,0 @@
#!@KSH@ -p
#
# $Id$
#
# Run rtems tests on the c4x simulator built into gdb
# 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=$((6 * 60)) # is 5 on other simulators.
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
capture* | monitor* | termios* | fileio* | pppd*)
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*)
fatal "MP tests not supported"
warn "Running both nodes associated with $tname"
tname=`echo $tname | sed 's/-node.*//'`
TEST_TYPE="mp"
;;
stackchk*|*fatal*|malloctest*|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 "target sim -3"
echo "sim m r 0"
echo "sim m w 0"
echo "load"
echo ""
echo "printf \"START_OF_TEST\\n\""
echo "run"
echo "printf \"END_OF_TEST\\n\""
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
c4x-rtems-gdb $extra_options -n \
--command ${scriptfile} ${tfile} >${logfile}.tmp 2>&1 &
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=0
clean_exit=0
sed -e '1,9d' \
-e 's/
//' -e '/^$/d' < ${logfile}.tmp |
while read line
do
if [ $output_it -eq 1 ] ; then
case $line in
END_OF_TEST*)
output_it=0
;;
*simio.c:86*)
output_it=0
clean_exit=1
;;
*)
echo "$line"
;;
esac
else
if [ "$line" = "START_OF_TEST" ] ; then
output_it=1
fi
fi
done > ${logfile}_1
if [ ${clean_exit} -eq 0 ] ; then
mv ${logfile}_1 ${logfile}_1.XXX
sed -e '/^Program received signal SIGTRAP/d' \
<${logfile}_1.XXX >${logfile}_1
rm -f ${logfile}_1.XXX
fi
;;
esac
# Create the info files
for cpu in $cpus
do
{
echo "$date"
echo "Test run on: `uname -n` ( `uname -a` )"
output_it=1
sed -e 's/
//' < ${logfile}.tmp |
while read line
do
if [ $output_it -eq 0 ] ; then
if [ "$line" = "END_OF_TEST" ] ; then
output_it=1
fi
else
if [ "$line" = "START_OF_TEST" ] ; then
output_it=0
else
echo "$line"
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 ***

View File

@@ -1,21 +0,0 @@
## Process this file with autoconf to produce a configure script.
##
## $Id$
AC_PREREQ(2.60)
AC_INIT([rtems-c-src-lib-libbsp-c4x],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
AC_CONFIG_SRCDIR([c4xsim])
RTEMS_TOP(../../../../..)
RTEMS_CANONICAL_TARGET_CPU
AM_INIT_AUTOMAKE([no-define foreign 1.10])
AM_MAINTAINER_MODE
RTEMS_ENV_RTEMSBSP
RTEMS_PROJECT_ROOT
RTEMS_CHECK_BSPDIR([$RTEMS_BSP_FAMILY])
# Explicitly list all Makefiles here
AC_CONFIG_FILES([Makefile])
AC_OUTPUT

View File

@@ -1,44 +0,0 @@
/*
* CXX Spurious Trap Handler Install Routine
*
* This is just enough of a trap handler to let us know what
* the likely source of the trap was.
*
* 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/bspIo.h>
/*
* bsp_spurious_initialize
*
* Install the spurious handler for most vectors.
*/
rtems_isr bsp_spurious_handler(
rtems_vector_number vector,
CPU_Interrupt_frame *isf
);
void bsp_spurious_initialize()
{
uint32_t vector;
for ( vector=0 ; vector<64 ; vector++ ) {
/*
* Skip any vectors that might be generally used for traps.
*/
set_vector( bsp_spurious_handler, vector, 1 );
}
}

View File

@@ -1,85 +0,0 @@
/*
* C3X Spurious Trap Handler
*
* This is just enough of a trap handler to let us know what
* the likely source of the trap was.
*
* 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/bspIo.h>
/*
* bsp_spurious_handler
*
* Print a message on the debug console and then die
*/
void bsp_spurious_handler_assistant(
rtems_vector_number,
CPU_Interrupt_frame *
);
#if defined(_C3x)
rtems_isr bsp_spurious_handler(
rtems_vector_number vector,
CPU_Interrupt_frame *isf
)
{
char *s;
printk( "Unexpected interrupt (0x%x)\n", vector );
printk( "It looks like we got the interrupt at 0x%x\n", isf->interrupted );
/*
* Can we print a name?
*/
s = 0;
if ( vector <= 0x1f ) {
switch ( vector ) {
#if defined(_C30) || defined(_C31)
case 0: s = "RESET"; break;
#endif
case 1: s = "INT0"; break;
case 2: s = "INT1"; break;
case 3: s = "INT2"; break;
case 4: s = "INT3"; break;
case 5: s = "XINT0"; break;
case 6: s = "RINT0"; break;
#if defined(_C30) || defined(_C31)
case 7: s = "XINT1"; break;
case 8: s = "RINT1"; break;
#endif
case 9: s = "TINT0"; break;
case 0x0a: s = "TINT1"; break;
case 0x0b: s = "DINT0"; break;
#if defined(_C32)
case 0x0c: s = "DINT1"; break;
#endif
default: s = "Reserved"; break;
}
printk( "Looks like it was an %s\n", s );
} else {
printk( "Looks like it was a TRAP%d\n", vector - 0x20 );
#if defined(_C30) || defined(_C31)
if ( vector > 0x3B )
printk( "But TRAP27 - TRAP31 are reserved\n" );
#endif
}
/*
* Now call the BSP specific routine
*/
bsp_spurious_handler_assistant( vector, isf );
}
#endif

View File

@@ -1,79 +0,0 @@
/*
* C4X Spurious Trap Handler
*
* This is just enough of a trap handler to let us know what
* the likely source of the trap was.
*
* 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/bspIo.h>
/*
* bsp_spurious_handler
*
* Print a message on the debug console and then die
*/
void bsp_spurious_handler_assistant(
rtems_vector_number,
CPU_Interrupt_frame *
);
#if defined(_C4x)
rtems_isr bsp_spurious_handler(
rtems_vector_number vector,
CPU_Interrupt_frame *isf
)
{
char *s;
printk( "Unexpected interrupt (0x%x)\n", vector );
printk( "It looks like we got the interrupt at 0x%x\n", isf->interrupted );
/*
* Can we print a name?
*/
printk( "Looks like it was a " );
if ( vector >= 0x0d && vector <= 0x24 ) {
switch ( vector & 0x3 ) {
case 1: s = "ICFULL"; break;
case 2: s = "ICRDY"; break;
case 3: s = "OCRDY"; break;
case 0: s = "OCEMPTY"; break;
}
printk( "%s%d\n", s, (vector - 0x0d) / 4 );
} else if ( vector >= 0x25 && vector <= 0x2a ) {
printk( "DMA INT%d\n", (vector - 0x25) );
} else /* if ( vector <= 0x0c || vector >= 0x2b ) */ {
switch ( vector ) {
case 0: s = "RESET"; break;
case 1: s = "NMI"; break;
case 2: s = "TINT0"; break;
case 3: s = "IIOF0"; break;
case 4: s = "IIOF1"; break;
case 5: s = "IIOF2"; break;
case 6: s = "IIOF3"; break;
case 0x2b: s = "TINT1"; break;
case 0x3f: s = "Reserved"; break;
default: s = "Unused"; break;
}
printk( "%s\n", s );
}
/*
* Now call the BSP specific routine
*/
bsp_spurious_handler_assistant( vector, isf );
}
#endif

View File

@@ -131,7 +131,6 @@ if HAS_NETWORKING
libbsp_a_LIBADD += ne2000.rel wd8003.rel 3c509.rel
endif
EXTRA_DIST += HOWTO README.dec21140 STATUS times_i486dx times_p5
include $(srcdir)/preinstall.am

View File

@@ -1,3 +1,8 @@
2008-09-24 Ralf Corsépius <ralf.corsepius@rtems.org>
PR 1322/bsps
* include/bspopts.h.in: Remove.
2008-09-05 Ralf Corsépius <ralf.corsepius@rtems.org>
* timer/timer.c: Convert to "bool".

View File

@@ -1,4 +1,4 @@
bspopts.h
bspopts.h.in
stamp-h
stamp-h.in
bspopts.h
bspopts.h.in

View File

@@ -1,19 +0,0 @@
/* include/bspopts.h.in. Generated from configure.ac by autoheader. */
/* Use a clock speed of 100000000 for the m5484FireEngine board */
#undef BSP_CPU_CLOCK_SPEED
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the version of this package. */
#undef PACKAGE_VERSION

View File

@@ -1,3 +1,8 @@
2008-09-24 Ralf Corsépius <ralf.corsepius@rtems.org>
PR 1322/bsps
* include/bspopts.h.in: Remove.
2008-09-05 Ralf Corsépius <ralf.corsepius@rtems.org>
* timer/timer.c: Convert to "bool".

View File

@@ -0,0 +1,4 @@
stamp-h
stamp-h.in
bspopts.h
bspopts.h.in

View File

@@ -1,24 +0,0 @@
/* include/bspopts.h.in. Generated from configure.ac by autoheader. */
/* BSP uses shared logic in bootcard.c */
#undef BSP_BOOTCARD_HANDLES_RAM_ALLOCATION
/* If defined, then PSIM will put a non-zero pattern into the RTEMS Workspace
and C program heap. This should assist in finding code that assumes memory
starts set to zero. */
#undef BSP_DIRTY_MEMORY
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the version of this package. */
#undef PACKAGE_VERSION

View File

@@ -1,3 +1,8 @@
2008-09-24 Ralf Corsépius <ralf.corsepius@rtems.org>
PR 1322/bsps
* include/bspopts.h.in: Remove.
2008-09-05 Ralf Corsépius <ralf.corsepius@rtems.org>
* timer/timer.c: Convert to "bool".

View File

@@ -0,0 +1,4 @@
stamp-h
stamp-h.in
bspopts.h
bspopts.h.in

View File

@@ -1,24 +0,0 @@
/* include/bspopts.h.in. Generated from configure.ac by autoheader. */
/* BSP uses shared logic in bootcard.c */
#undef BSP_BOOTCARD_HANDLES_RAM_ALLOCATION
/* If defined, then PSIM will put a non-zero pattern into the RTEMS Workspace
and C program heap. This should assist in finding code that assumes memory
starts set to zero. */
#undef BSP_DIRTY_MEMORY
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the version of this package. */
#undef PACKAGE_VERSION

View File

@@ -54,7 +54,6 @@ network_rel_CPPFLAGS = $(AM_CPPFLAGS) $(network_CPPFLAGS)
network_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
endif
noinst_LIBRARIES = libbsp.a
libbsp_a_SOURCES = $(startup_SOURCES) $(clock_SOURCES) $(console_SOURCES) \
$(timer_SOURCES) $(tod_SOURCES)

View File

@@ -1,8 +0,0 @@
aclocal.m4
autom4te*.cache
config.cache
config.log
config.status
configure
Makefile
Makefile.in

View File

@@ -1,125 +0,0 @@
2006-12-02 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac: New BUG-REPORT address.
2006-10-17 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac: Require autoconf-2.60. Require automake-1.10.
2006-09-11 Chris Johns <chrisj@rtems.org>
* nios2_iss/start/crtnn.s: Remove extra CRLF.
2006-08-10 Joel Sherrill <joel@OARcorp.com>
* .cvsignore: New file.
2006-08-09 Kolja Waschk <waschk@telos.de>
* ChangeLog, Makefile.am, README, acinclude.m4, configure.ac,
nios2_iss/ChangeLog, nios2_iss/Makefile.am, nios2_iss/bsp_specs,
nios2_iss/configure.ac, nios2_iss/nios2_iss.ptf,
nios2_iss/nios2_iss.sh, nios2_iss/times, nios2_iss/console/console.c,
nios2_iss/include/bsp.h, nios2_iss/include/bspopts.h.in,
nios2_iss/include/coverhd.h, nios2_iss/include/tm27.h,
nios2_iss/shmsupp/addrconv.c, nios2_iss/shmsupp/getcfg.c,
nios2_iss/shmsupp/lock.c, nios2_iss/shmsupp/mpisr.c,
nios2_iss/start/crtnn.s, nios2_iss/start/start.S,
nios2_iss/startup/bspclean.c, nios2_iss/startup/bspstart.c,
nios2_iss/startup/linkcmds, nios2_iss/startup/main.c,
nios2_iss/startup/setvec.c, nios2_iss/timer/timer.c: New files.
2004-09-24 Ralf Corsepius <ralf_corsepius@rtems.org>
* configure.ac: Require automake > 1.9.
2004-02-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* acinclude.m4: Regenerate.
2004-02-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: RTEMS_CHECK_BSPDIR([$RTEMS_BSP_FAMILY]).
2004-01-13 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Use @RTEMS_BSP_FAMILY@ instead of
$(RTEMS_BSP_FAMILY).
2003-12-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Require automake >= 1.8, autoconf >= 2.59.
2003-10-20 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* acinclude.m4: Reflect changes to bootstrap.
* configure.ac: Remove RTEMS_CHECK_CUSTON_BSP.
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-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-12-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Remove RTEMS_CHECK_BSP_CACHE.
2002-10-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* .cvsignore: Reformat.
Add autom4te*cache.
Remove autom4te.cache.
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-10-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* acinclude.m4: New file.
* configure.in: Use RTEMS_BSP_SUBDIR.
2000-11-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
2000-11-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal.
2000-10-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros.
Switch to GNU canonicalization.
2000-08-10 Joel Sherrill <joel@OARcorp.com>
* ChangeLog: New file.

View File

@@ -1,11 +0,0 @@
##
## $Id$
##
ACLOCAL_AMFLAGS = -I ../../../aclocal
# Descend into the @RTEMS_BSP_FAMILY@ directory
SUBDIRS = @RTEMS_BSP_FAMILY@
include $(top_srcdir)/../../../automake/subdirs.am
include $(top_srcdir)/../../../automake/local.am

View File

@@ -1,79 +0,0 @@
#
# $Id$
#
# Goal is to have BSPs build almost completely automatically from a template
# and information that comes from SOPC Builder as a .PTF file. Most of the
# code will go to a shared/ BSP directory.
#
# Ideally, updates to the PTF shouldn't cause any pain for the maintainer
# of a specific BSP (possibly with enhancements not covered by the
# automatic BSP creation).
#
# Some first steps toward utilizing SOPC Builder PTF output can be found
# in top level /tools/cpu/nios2. Also see the README there.
#
# Implemented (in shared/ subdirectory)
# Clock driver
# Timer driver
# Console via JTAG UART
#
# Todo;
# Support more peripherals. My priorities:
# - (improve) Altera Avalon JTAG UART
# - Altera Avalon UART
# - OpenCores.org I2C Master
# - Altera SPI Core / EPCS Configuration Device
# - OpenCores.org 10/100 Ethernet MAC (use existing driver)
# - (more) Altera Avalon Timer
#
# Put all drivers aside in a shared/ subdirectory.
# Update the "times" file for NIOS2 with and without icache.
#
# Missing (although it looks like it's there)
# Data cache handling (for now, don't use the "fast" NIOS2)
# SHM support (just taken over the code from no_cpu/no_bsp)
#
# Kolja Waschk, 6/2006
#
BSP NAME: nios2_eb2_1
BOARD: Altera Instruction Set Simulator Default plus second timer
BUS: Avalon
CPU FAMILY: nios2
CPU: small
COPROCESSORS: none
MODE: 32 bit mode
DEBUG MONITOR: none
PERIPHERALS
===========
TIMERS: Altera Avalon Timer
RESOLUTION: .0001 microseconds
SERIAL PORTS: Altera Avalon JTAG UART
REAL-TIME CLOCK: none
DMA: none
VIDEO: none
SCSI: none
NETWORKING: none
DRIVER INFORMATION
==================
CLOCK DRIVER: Altera Avalon Timer
IOSUPP DRIVER: none
SHMSUPP: polled
TIMER DRIVER: Altera Avalon Timer
TTY DRIVER: none
STDIO
=====
PORT: Console port 0
ELECTRICAL: JTAG
BAUD: 115200
BITS PER CHARACTER: 8
PARITY: None
STOP BITS: 1
NOTES
=====

View File

@@ -1,10 +0,0 @@
# RTEMS_CHECK_BSPDIR(RTEMS_BSP_FAMILY)
AC_DEFUN([RTEMS_CHECK_BSPDIR],
[
case "$1" in
nios2_iss )
AC_CONFIG_SUBDIRS([nios2_iss]);;
*)
AC_MSG_ERROR([Invalid BSP]);;
esac
])

View File

@@ -1,21 +0,0 @@
## Process this file with autoconf to produce a configure script.
##
## $Id$
AC_PREREQ(2.60)
AC_INIT([rtems-c-src-lib-libbsp-nios2],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
AC_CONFIG_SRCDIR([nios2_iss])
RTEMS_TOP(../../../../..)
RTEMS_CANONICAL_TARGET_CPU
AM_INIT_AUTOMAKE([no-define foreign 1.10])
AM_MAINTAINER_MODE
RTEMS_ENV_RTEMSBSP
RTEMS_PROJECT_ROOT
RTEMS_CHECK_BSPDIR([$RTEMS_BSP_FAMILY])
# Explicitly list all Makefiles here
AC_CONFIG_FILES([Makefile])
AC_OUTPUT

View File

@@ -1,8 +0,0 @@
aclocal.m4
autom4te*.cache
config.cache
config.log
config.status
configure
Makefile
Makefile.in

View File

@@ -1,127 +0,0 @@
2008-09-05 Ralf Corsépius <ralf.corsepius@rtems.org>
* console/console.c, timer/timer.c: Convert to "bool".
2008-08-31 Joel Sherrill <joel.sherrill@oarcorp.com>
* timer/timer.c: Eliminate empty function from every benchmark timer
driver. Fix spelling.
2008-08-31 Joel Sherrill <joel.sherrill@oarcorp.com>
* timer/timer.c: Rename timer driver methods to follow RTEMS
programming conventions.
2008-05-15 Joel Sherrill <joel.sherrill@OARcorp.com>
* startup/bspstart.c: Add capability for bootcard.c BSP Initialization
Framework to ask the BSP where it has memory for the RTEMS Workspace
and C Program Heap. These collectively are referred to as work area.
If the BSP supports this, then it does not have to include code to
split the available memory between the two areas. This reduces the
amount of code in the BSP specific bspstart.c file. Additionally, the
shared framework can initialize the C Library, call
rtems_debug_enable(), and dirty the work area memory. Until most/all
BSPs support this new capability, if the BSP supports this, it should
call RTEMS_BSP_BOOTCARD_HANDLES_RAM_ALLOCATION from its configure.ac.
When the transition is complete, this autoconf macro can be removed.
2008-05-14 Joel Sherrill <joel.sherrill@OARcorp.com>
* Makefile.am: Rework to avoid .rel files.
2008-05-12 Joel Sherrill <joel.sherrill@OARcorp.com>
* startup/bspstart.c: Refactored and renamed initialization routines to
rtems_initialize_data_structures, rtems_initialize_before_drivers,
rtems_initialize_device_drivers, and
rtems_initialize_start_multitasking. This opened the sequence up so
that bootcard() could provide a more robust and flexible framework
which is easier to explain and understand. This also lays the
groundwork for sharing the division of available memory between the
RTEMS workspace and heap and the C library initialization across all
BSPs.
2008-03-03 Joel Sherrill <joel.sherrill@OARcorp.com>
* startup/linkcmds: Add wildcard to gcc_except_table section so
programs compiled with gcc 4.3.x can link.
2007-12-11 Joel Sherrill <joel.sherrill@OARcorp.com>
* clock/clock.c, include/bsp.h, startup/bspstart.c: Eliminate copies of
the Configuration Table. Use the RTEMS provided accessor macros to
obtain configuration fields.
2007-12-04 Joel Sherrill <joel.sherrill@OARcorp.com>
* console/console.c, include/bsp.h, startup/bspstart.c: Move
interrupt_stack_size field from CPU Table to Configuration Table.
Eliminate CPU Table from all ports. Delete references to CPU Table in
all forms.
2007-12-03 Joel Sherrill <joel.sherrill@OARcorp.com>
* console/console.c, startup/bspstart.c: Moved most of the remaining
CPU Table fields to the Configuration Table. This included
pretasking_hook, predriver_hook, postdriver_hook, idle_task,
do_zero_of_workspace, extra_mpci_receive_server_stack,
stack_allocate_hook, and stack_free_hook. As a side-effect of this
effort some multiprocessing code was made conditional and some style
clean up occurred.
2007-09-12 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1257/bsps
* startup/bspclean.c: Code outside of cpukit should use the public API
for rtems_interrupt_disable/rtems_interrupt_enable. By bypassing the
public API and directly accessing _CPU_ISR_Disable and
_CPU_ISR_Enable, they were bypassing the compiler memory barrier
directive which could lead to problems. This patch also changes the
type of the variable passed into these routines and addresses minor
style issues.
2007-04-12 Ralf Corsépius <ralf.corsepius@rtems.org>
* bsp_specs: Remove qrtems_debug.
Remove *cpp:.
2007-03-12 Joel Sherrill <joel@OARcorp.com>
* include/coverhd.h: Correct license URL and/or fix mistake in
copyright notice. Both of these mistakes appear to be from code
submitted after these changes were made previously.
2007-01-08 Ralf Corsépius <ralf.corsepius@rtems.org>
* Makefile.am: Use preinstall.am.
2006-12-02 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac: New BUG-REPORT address.
2006-11-15 Joel Sherrill <joel@OARcorp.com>
* Makefile.am: Merge c_rtems_main() into boot_card(). This eliminated a
file and simplified initialization.
2006-10-17 Ralf Corsépius <ralf.corsepius@rtems.org>
* Makefile.am: Remove superfluous -DASM.
2006-10-17 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac: Require autoconf-2.60. Require automake-1.10.
2006-08-10 Joel Sherrill <joel@OARcorp.com>
* .cvsignore: New file.
2006-08-09 Kolja Waschk <waschk@telos.de>
* clock/clock.c: New file.
2005-12-12 Kolja Waschk
* derived from no_cpu BSP

View File

@@ -1,47 +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 =
include_HEADERS += include/coverhd.h
EXTRA_DIST = start/start.S start/crtnn.s times
crtnn.$(OBJEXT): start/crtnn.s
$(CPPASCOMPILE) -o $@ -c $<
start.$(OBJEXT): start/start.S
$(CPPASCOMPILE) -o $@ -c $<
project_lib_DATA = start.$(OBJEXT) crtnn.$(OBJEXT)
dist_project_lib_DATA += startup/linkcmds
startup_SOURCES = startup/bspclean.c ../../shared/bsplibc.c \
../../shared/bsppost.c startup/bspstart.c \
../../shared/bootcard.c ../../shared/sbrk.c startup/setvec.c \
../../shared/gnatinstallhandler.c
clock_SOURCES = clock/clock.c
console_SOURCES = console/console.c
timer_SOURCES = timer/timer.c
shmsupp_SOURCES = shmsupp/addrconv.c shmsupp/getcfg.c shmsupp/lock.c \
shmsupp/mpisr.c
noinst_LIBRARIES = libbsp.a
libbsp_a_SOURCES = $(startup_SOURCES) $(clock_SOURCES) $(console_SOURCES) \
$(timer_SOURCES) $(shmsupp_SOURCES)
include $(srcdir)/preinstall.am
include $(top_srcdir)/../../../../automake/local.am

View File

@@ -1,19 +0,0 @@
%rename lib old_lib
%rename endfile old_endfile
%rename startfile old_startfile
%rename link old_link
*lib:
%{!qrtems: %(old_lib)} \
%{!nostdlib: %{qrtems: --start-group -lrtemsbsp -lrtemscpu -lc -lgcc --end-group \
%{!qnolinkcmds: -T linkcmds%s}}}
*startfile:
%{!qrtems: %(old_startfile)} \
%{!nostdlib: %{qrtems: start.o%s crti.o%s crtbegin.o%s}}
*link:
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N -e start}
*endfile:
%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtnn.o%s}

View File

@@ -1,54 +0,0 @@
/*
* Use SYS_CLK as system clock
*
* Copyright (c) 2005-2006 Kolja Waschk, rtemsdev/ixo.de
*
* $Id$
*/
#include <rtems.h>
#include <bsp.h>
#define CLOCK_REGS ((altera_avalon_timer_regs*)NIOS2_IO_BASE(CLOCK_BASE))
/*
* Periodic interval timer interrupt handler
*/
#define Clock_driver_support_at_tick() \
do { CLOCK_REGS->status = 0; } while(0)
/*
* Attach clock interrupt handler
*/
#define Clock_driver_support_install_isr(_new, _old) \
do { _old = (rtems_isr_entry)set_vector(_new, CLOCK_VECTOR, 1); } while(0)
/*
* Turn off the clock
*/
#define Clock_driver_support_shutdown_hardware() \
do { CLOCK_REGS->control = ALTERA_AVALON_TIMER_CONTROL_STOP_MSK; } while(0)
/*
* Set up the clock hardware
*/
void Clock_driver_support_initialize_hardware(void)
{
uint32_t period;
CLOCK_REGS->control = ALTERA_AVALON_TIMER_CONTROL_STOP_MSK;
period = (CLOCK_FREQ/1000000L)*rtems_configuration_get_microseconds_per_tick() - 1;
CLOCK_REGS->period_hi = period >> 16;
CLOCK_REGS->period_lo = period & 0xFFFF;
CLOCK_REGS->control = ALTERA_AVALON_TIMER_CONTROL_ITO_MSK |
ALTERA_AVALON_TIMER_CONTROL_CONT_MSK |
ALTERA_AVALON_TIMER_CONTROL_START_MSK;
NIOS2_IENABLE(1 << CLOCK_VECTOR);
}
#include "../../../shared/clockdrv_shell.c"

View File

@@ -1,20 +0,0 @@
## Process this file with autoconf to produce a configure script.
##
## $Id$
AC_PREREQ(2.60)
AC_INIT([rtems-c-src-lib-libbsp-nios2-nios2_iss],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
AC_CONFIG_SRCDIR([bsp_specs])
RTEMS_TOP(../../../../../..)
RTEMS_CANONICAL_TARGET_CPU
AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.10])
RTEMS_BSP_CONFIGURE
RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm])
RTEMS_CANONICALIZE_TOOLS
RTEMS_PROG_CCAS
# Explicitly list all Makefiles here
AC_CONFIG_FILES([Makefile])
AC_OUTPUT

View File

@@ -1,247 +0,0 @@
/*
* This file implements simple console IO via JTAG UART.
*
* Based on no_cpu/console.c
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* Altera-specific code is
* COPYRIGHT (c) 2005-2006 Kolja Waschk, rtemsdev/ixo.de
*
* 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$
*/
#define NO_BSP_INIT
#include <bsp.h>
#include <rtems/libio.h>
/* #define JTAG_UART_REGS ((altera_avalon_jtag_uart_regs*)NIOS2_IO_BASE(JTAG_UART_BASE)) */
#if 0
#define XOFFchar 0x13
#define XONchar 0x11
#endif
/* console_initialize
*
* This routine initializes the console IO driver.
*
* Input parameters: NONE
*
* Output parameters: NONE
*
* Return values:
*/
rtems_device_driver console_initialize(
rtems_device_major_number major,
rtems_device_minor_number minor,
void *arg
)
{
rtems_status_code status;
status = rtems_io_register_name(
"/dev/console",
major,
(rtems_device_minor_number) 0
);
if (status != RTEMS_SUCCESSFUL)
rtems_fatal_error_occurred(status);
return RTEMS_SUCCESSFUL;
}
/* is_character_ready
*
* If a character is available, this routine reads it and stores
* it in
* reads the character and stores
*
* Input parameters: NONE
*
* Output parameters: NONE
*
* Return values:
*/
bool is_character_ready(
char *ch
)
{
altera_avalon_jtag_uart_regs *ajur = NIOS2_IO_BASE(JTAG_UART_BASE);
unsigned int data = ajur->data;
if (data & ALTERA_AVALON_JTAG_UART_DATA_RVALID_MSK)
{
*ch = (data & ALTERA_AVALON_JTAG_UART_DATA_DATA_MSK)
>> ALTERA_AVALON_JTAG_UART_DATA_DATA_OFST;
return true;
};
return false;
}
/* inbyte
*
* This routine reads a character from the SOURCE.
*
* Input parameters: NONE
*
* Output parameters: NONE
*
* Return values:
* character read from SOURCE
*/
char inbyte( void )
{
/*
* Wait until a character is available.
*/
char ch;
while(!is_character_ready(&ch));
return ch;
}
/* outbyte
*
* This routine transmits a character out the SOURCE. It may support
* XON/XOFF flow control.
*
* Input parameters:
* ch - character to be transmitted
*
* Output parameters: NONE
*/
void outbyte(
char ch
)
{
altera_avalon_jtag_uart_regs *ajur = NIOS2_IO_BASE(JTAG_UART_BASE);
/*
* Carriage Return/New line translation.
*/
if ( ch == '\n' )
outbyte( '\r' );
/*
* Wait for the transmitter to be ready.
* Check for flow control requests and process.
* Then output the character.
*/
while ((ajur->control & ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_MSK) == 0);
ajur->data = ch;
}
/*
* Open entry point
*/
rtems_device_driver console_open(
rtems_device_major_number major,
rtems_device_minor_number minor,
void * arg
)
{
return RTEMS_SUCCESSFUL;
}
/*
* Close entry point
*/
rtems_device_driver console_close(
rtems_device_major_number major,
rtems_device_minor_number minor,
void * arg
)
{
return RTEMS_SUCCESSFUL;
}
/*
* read bytes from the serial port. We only have stdin.
*/
rtems_device_driver console_read(
rtems_device_major_number major,
rtems_device_minor_number minor,
void * arg
)
{
rtems_libio_rw_args_t *rw_args;
char *buffer;
int maximum;
int count = 0;
rw_args = (rtems_libio_rw_args_t *) arg;
buffer = rw_args->buffer;
maximum = rw_args->count;
for (count = 0; count < maximum; count++) {
buffer[ count ] = inbyte();
if (buffer[ count ] == '\n' || buffer[ count ] == '\r') {
buffer[ count++ ] = '\n';
break;
}
}
rw_args->bytes_moved = count;
return (count >= 0) ? RTEMS_SUCCESSFUL : RTEMS_UNSATISFIED;
}
/*
* write bytes to the serial port. Stdout and stderr are the same.
*/
rtems_device_driver console_write(
rtems_device_major_number major,
rtems_device_minor_number minor,
void * arg
)
{
int count;
int maximum;
rtems_libio_rw_args_t *rw_args;
char *buffer;
rw_args = (rtems_libio_rw_args_t *) arg;
buffer = rw_args->buffer;
maximum = rw_args->count;
for (count = 0; count < maximum; count++) {
if ( buffer[ count ] == '\n') {
outbyte('\r');
}
outbyte( buffer[ count ] );
}
rw_args->bytes_moved = maximum;
return 0;
}
/*
* IO Control entry point
*/
rtems_device_driver console_control(
rtems_device_major_number major,
rtems_device_minor_number minor,
void * arg
)
{
return RTEMS_SUCCESSFUL;
}

View File

@@ -1,162 +0,0 @@
/* bsp.h
*
* This include file contains all board IO definitions.
*
* XXX : put yours in here
*
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#ifndef _BSP_H
#define _BSP_H
#ifdef __cplusplus
extern "C" {
#endif
#include <stdint.h>
#include <bspopts.h>
#include <rtems.h>
#include <rtems/console.h>
#include <rtems/clockdrv.h>
/*
* Simple spin delay in microsecond units for device drivers.
* This is very dependent on the clock speed of the target.
*/
#define rtems_bsp_delay( microseconds ) \
{ \
}
/* ============================================ */
/* SOPC-specific Constants */
#define SYSTEM_BUS_WIDTH 32
#define RAM_BASE 0
#define RAM_BYTES 0x00800000
#define JTAG_UART_BASE 0x08000000
#define JTAG_UART_IRQ 2
#define CLOCK_BASE 0x08001000
#define CLOCK_FREQ 50000000
#define CLOCK_VECTOR 1
#define TIMER_BASE 0x08002000
#define TIMER_FREQ 50000000
#define TIMER_VECTOR 3
/* ============================================ */
#define NIOS2_BYPASS_CACHE ((uint32_t)0x80000000ul)
#define NIOS2_IO_BASE(x) ( (void*) ((uint32_t)x | NIOS2_BYPASS_CACHE ) )
#define NIOS2_IENABLE(x) do{ __builtin_wrctl(3,__builtin_rdctl(3)|x);}while(0)
#define NIOS2_IRQ_ENABLE(x) do {__builtin_wrctl(3,__builtin_rdctl(3)|x);} while(0)
/* ============================================ */
/* TODO: Put this in an external header file */
#ifndef SYSTEM_BUS_WIDTH
#error SYSTEM_BUS_WIDTH is undefined
#endif
#if SYSTEM_BUS_WIDTH != 32
#error Only SYSTEM_BUS_WIDTH 32 is supported
#endif
typedef struct
{
volatile uint32_t status;
volatile uint32_t control;
volatile uint32_t period_lo;
volatile uint32_t period_hi;
volatile uint32_t snap_lo;
volatile uint32_t snap_hi;
}
altera_avalon_timer_regs;
#define ALTERA_AVALON_TIMER_STATUS_TO_MSK (0x1)
#define ALTERA_AVALON_TIMER_STATUS_TO_OFST (0)
#define ALTERA_AVALON_TIMER_STATUS_RUN_MSK (0x2)
#define ALTERA_AVALON_TIMER_STATUS_RUN_OFST (1)
#define ALTERA_AVALON_TIMER_CONTROL_ITO_MSK (0x1)
#define ALTERA_AVALON_TIMER_CONTROL_ITO_OFST (0)
#define ALTERA_AVALON_TIMER_CONTROL_CONT_MSK (0x2)
#define ALTERA_AVALON_TIMER_CONTROL_CONT_OFST (1)
#define ALTERA_AVALON_TIMER_CONTROL_START_MSK (0x4)
#define ALTERA_AVALON_TIMER_CONTROL_START_OFST (2)
#define ALTERA_AVALON_TIMER_CONTROL_STOP_MSK (0x8)
#define ALTERA_AVALON_TIMER_CONTROL_STOP_OFST (3)
typedef struct
{
volatile uint32_t data;
volatile uint32_t control;
}
altera_avalon_jtag_uart_regs;
#define ALTERA_AVALON_JTAG_UART_DATA_DATA_MSK (0x000000FFu)
#define ALTERA_AVALON_JTAG_UART_DATA_DATA_OFST (0)
#define ALTERA_AVALON_JTAG_UART_DATA_RVALID_MSK (0x00008000u)
#define ALTERA_AVALON_JTAG_UART_DATA_RVALID_OFST (15)
#define ALTERA_AVALON_JTAG_UART_DATA_RAVAIL_MSK (0xFFFF0000u)
#define ALTERA_AVALON_JTAG_UART_DATA_RAVAIL_OFST (16)
#define ALTERA_AVALON_JTAG_UART_CONTROL_RE_MSK (0x00000001u)
#define ALTERA_AVALON_JTAG_UART_CONTROL_RE_OFST (0)
#define ALTERA_AVALON_JTAG_UART_CONTROL_WE_MSK (0x00000002u)
#define ALTERA_AVALON_JTAG_UART_CONTROL_WE_OFST (1)
#define ALTERA_AVALON_JTAG_UART_CONTROL_RI_MSK (0x00000100u)
#define ALTERA_AVALON_JTAG_UART_CONTROL_RI_OFST (8)
#define ALTERA_AVALON_JTAG_UART_CONTROL_WI_MSK (0x00000200u)
#define ALTERA_AVALON_JTAG_UART_CONTROL_WI_OFST (9)
#define ALTERA_AVALON_JTAG_UART_CONTROL_AC_MSK (0x00000400u)
#define ALTERA_AVALON_JTAG_UART_CONTROL_AC_OFST (10)
#define ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_MSK (0xFFFF0000u)
#define ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_OFST (16)
/* ============================================ */
/* miscellaneous stuff assumed to exist */
/*
* Device Driver Table Entries
*/
/*
* NOTE: Use the standard Console driver entry
*/
/*
* NOTE: Use the standard Clock driver entry
*/
/* functions */
void bsp_cleanup( void );
nios2_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 */
);
#ifdef __cplusplus
}
#endif
#endif
/* end of include file */

View File

@@ -1,105 +0,0 @@
/* coverhd.h
*
* This include file has defines to represent the overhead associated
* with calling a particular directive from C. These are used in the
* Timing Test Suite to ignore the overhead required to pass arguments
* to directives. On some CPUs and/or target boards, this overhead
* is significant and makes it difficult to distinguish internal
* RTEMS execution time from that used to call the directive.
* This file should be updated after running the C overhead timing
* test. Once this update has been performed, the RTEMS Time Test
* Suite should be rebuilt to account for these overhead times in the
* timing results.
*
* NOTE: If these are all zero, then the times reported include
* all calling overhead including passing of arguments.
*
* 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$
*/
#ifndef __COVERHD_h
#define __COVERHD_h
#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 1
#define CALLING_OVERHEAD_TIMER_FIRE_WHEN 1
#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
#endif

View File

@@ -1,32 +0,0 @@
/*
* tm27.h
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#ifndef _RTEMS_TMTEST27
#error "This is an RTEMS internal file you must not include directly."
#endif
#ifndef __tm27_h
#define __tm27_h
/*
* Stuff for Time Test 27
*/
#define MUST_WAIT_FOR_INTERRUPT 0
#define Install_tm27_vector( handler ) set_vector( (handler), 0, 1 )
#define Cause_tm27_intr() /* empty */
#define Clear_tm27_intr() /* empty */
#define Lower_tm27_intr() /* empty */
#endif

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +0,0 @@
#!/bin/sh
IOD=jtag_uart_0
PTF=nios2_iss.ptf
EXE="$1"
# e.g. hello.nxe
nios2-iss -c --stdin=${IOD} --stdout=${IOD} --stderr=${IOD} -f "${EXE}" -p "${PTF}"

View File

@@ -1,62 +0,0 @@
## Automatically generated by ampolish3 - Do not edit
if AMPOLISH3
$(srcdir)/preinstall.am: Makefile.am
$(AMPOLISH3) $(srcdir)/Makefile.am > $(srcdir)/preinstall.am
endif
PREINSTALL_DIRS =
DISTCLEANFILES += $(PREINSTALL_DIRS)
all-local: $(TMPINSTALL_FILES)
TMPINSTALL_FILES =
CLEANFILES = $(TMPINSTALL_FILES)
all-am: $(PREINSTALL_FILES)
PREINSTALL_FILES =
CLEANFILES += $(PREINSTALL_FILES)
$(PROJECT_LIB)/$(dirstamp):
@$(MKDIR_P) $(PROJECT_LIB)
@: > $(PROJECT_LIB)/$(dirstamp)
PREINSTALL_DIRS += $(PROJECT_LIB)/$(dirstamp)
$(PROJECT_INCLUDE)/$(dirstamp):
@$(MKDIR_P) $(PROJECT_INCLUDE)
@: > $(PROJECT_INCLUDE)/$(dirstamp)
PREINSTALL_DIRS += $(PROJECT_INCLUDE)/$(dirstamp)
$(PROJECT_LIB)/bsp_specs: bsp_specs $(PROJECT_LIB)/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_LIB)/bsp_specs
PREINSTALL_FILES += $(PROJECT_LIB)/bsp_specs
$(PROJECT_INCLUDE)/bsp.h: include/bsp.h $(PROJECT_INCLUDE)/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp.h
$(PROJECT_INCLUDE)/tm27.h: include/tm27.h $(PROJECT_INCLUDE)/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/tm27.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/tm27.h
$(PROJECT_INCLUDE)/bspopts.h: include/bspopts.h $(PROJECT_INCLUDE)/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bspopts.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/bspopts.h
$(PROJECT_INCLUDE)/coverhd.h: 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)/crtnn.$(OBJEXT): crtnn.$(OBJEXT) $(PROJECT_LIB)/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_LIB)/crtnn.$(OBJEXT)
TMPINSTALL_FILES += $(PROJECT_LIB)/crtnn.$(OBJEXT)
$(PROJECT_LIB)/linkcmds: startup/linkcmds $(PROJECT_LIB)/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds
PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds

View File

@@ -1,30 +0,0 @@
/* Shm_Convert_address
*
* No address range conversion is required.
*
* Input parameters:
* address - address to convert
*
* Output parameters:
* returns - converted address
*
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#include <rtems.h>
#include <bsp.h>
#include <shm_driver.h>
void *Shm_Convert_address(
void *address
)
{
return ( address );
}

View File

@@ -1,75 +0,0 @@
/* void Shm_Get_configuration( localnode, &shmcfg )
*
* This routine initializes, if necessary, and returns a pointer
* to the Shared Memory Configuration Table for the XXX target.
*
* INPUT PARAMETERS:
* localnode - local node number
* shmcfg - address of pointer to SHM Config Table
*
* OUTPUT PARAMETERS:
* *shmcfg - pointer to SHM Config Table
*
XXX: FIX THE COMMENTS BELOW WHEN THE CPU IS KNOWN
* NOTES: The XYZ does not have an interprocessor interrupt.
*
* The following table illustrates the configuration limitations:
*
* BUS MAX
* MODE ENDIAN NODES
* ========= ====== =======
* POLLED BIG 2+
* INTERRUPT **** NOT SUPPORTED ****
*
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#include <rtems.h>
#include <bsp.h>
#include <shm_driver.h>
/*
* configured if currently polling of interrupt driven
*/
#define INTERRUPT 0 /* XXX: */
#define POLLING 1 /* XXX: fix me -- is polling ONLY!!! */
shm_config_table BSP_shm_cfgtbl;
void Shm_Get_configuration(
uint32_t localnode,
shm_config_table **shmcfg
)
{
BSP_shm_cfgtbl.base = 0x0;
BSP_shm_cfgtbl.length = 1 * MEGABYTE;
BSP_shm_cfgtbl.format = SHM_BIG;
/*
* Override cause_intr or shm_isr if your target has
* special requirements.
*/
BSP_shm_cfgtbl.cause_intr = Shm_Cause_interrupt;
#ifdef NEUTRAL_BIG
BSP_shm_cfgtbl.convert = NULL_CONVERT;
#else
BSP_shm_cfgtbl.convert = CPU_swap_u32;
#endif
BSP_shm_cfgtbl.poll_intr = POLLED_MODE;
BSP_shm_cfgtbl.Intr.address = NO_INTERRUPT;
BSP_shm_cfgtbl.Intr.value = NO_INTERRUPT;
BSP_shm_cfgtbl.Intr.length = NO_INTERRUPT;
*shmcfg = &BSP_shm_cfgtbl;
}

View File

@@ -1,84 +0,0 @@
/* Shared Memory Lock Routines
*
* This shared memory locked queue support routine need to be
* able to lock the specified locked queue. Interrupts are
* disabled while the queue is locked to prevent preemption
* and deadlock when two tasks poll for the same lock.
* previous level.
*
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#include <rtems.h>
#include <bsp.h>
#include <shm_driver.h>
/*
* Shm_Initialize_lock
*
* Initialize the lock for the specified locked queue.
*/
void Shm_Initialize_lock(
Shm_Locked_queue_Control *lq_cb
)
{
lq_cb->lock = LQ_UNLOCKED;
}
/* void _Shm_Lock( &lq_cb )
*
* This shared memory locked queue support routine locks the
* specified locked queue. It disables interrupts to prevent
* a deadlock condition.
*/
void Shm_Lock(
Shm_Locked_queue_Control *lq_cb
)
{
uint32_t isr_level;
uint32_t *lockptr = (uint32_t*) &lq_cb->lock;
uint32_t lock_value;
lock_value = 0x80000000;
rtems_interrupt_disable( isr_level );
Shm_isrstat = isr_level;
while ( lock_value ) {
asm volatile( ""
: "=r" (lockptr), "=r" (lock_value)
: "0" (lockptr), "1" (lock_value)
);
/*
* If not available, then may want to delay to reduce load on lock.
*/
if ( lock_value )
rtems_bsp_delay( 10 ); /* approximately 10 microseconds */
}
}
/*
* Shm_Unlock
*
* Unlock the lock for the specified locked queue.
*/
void Shm_Unlock(
Shm_Locked_queue_Control *lq_cb
)
{
uint32_t isr_level;
lq_cb->lock = SHM_UNLOCK_VALUE;
isr_level = Shm_isrstat;
rtems_interrupt_enable( isr_level );
}

View File

@@ -1,46 +0,0 @@
/* Shm_isr_nobsp()
*
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#include <rtems.h>
#include <bsp.h>
#include <shm_driver.h>
rtems_isr Shm_isr_nobsp( void )
{
/*
* If this routine has to do anything other than the mpisr.c
* found in the generic driver, then copy the contents of the generic
* mpisr.c and augment it to satisfy this particular board. Typically,
* you need to have a board specific mpisr.c when the interrupt
* must be cleared.
*
* If the generic mpisr.c satisifies your requirements, then
* remove this routine from your target's shmsupp/mpisb.c file.
* Then simply install the generic Shm_isr in the Shm_setvec
* routine below.
*/
}
/* Shm_setvec
*
* This driver routine sets the SHM interrupt vector to point to the
* driver's SHM interrupt service routine.
*
* Input parameters: NONE
*
* Output parameters: NONE
*/
void Shm_setvec( void )
{
/* XXX: FIX ME!!! */
}

View File

@@ -1,45 +0,0 @@
/* NIOS2 crtn.asm fix
*
* COPYRIGHT (c) 2005-2006 Kolja Waschk rtemsdev/ixo.de
*
* 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$
*/
/* Can't use the original crtn.asm from Altera because it doesn't
restore the stack pointer correctly (in 5.1b73, the stack pointer
is further decreased by 48 instead of increased). This is named
differently (crtnn instead crtn) to make sure it can be picked up
using custom gcc specs instead of gcc's crtn. - kawk */
.section .init
ldw ra, 44(sp)
ldw r23, 40(sp)
ldw r22, 36(sp)
ldw r21, 32(sp)
ldw r20, 28(sp)
ldw r19, 24(sp)
ldw r18, 20(sp)
ldw r17, 16(sp)
ldw r16, 12(sp)
ldw fp, 8(sp)
addi sp, sp, 48
ret
.section .fini
ldw ra, 44(sp)
ldw r23, 40(sp)
ldw r22, 36(sp)
ldw r21, 32(sp)
ldw r20, 28(sp)
ldw r19, 24(sp)
ldw r18, 20(sp)
ldw r17, 16(sp)
ldw r16, 12(sp)
ldw fp, 8(sp)
addi sp, sp, 48
ret

View File

@@ -1,124 +0,0 @@
/* NIOS2 startup code
*
* This is the entry point on reset and when loading the
* executive from a bootloader.
*
* COPYRIGHT (c) 2005-2006 Kolja Waschk rtemsdev/ixo.de
*
* 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$
*/
.section .entry
.align 3
movhi et, %hiadj(start)
addi et, et, %lo(start)
jmp et
.section .irq
.align 3
movhi et, %hiadj(_exception_vector)
addi et, et, %lo(_exception_vector)
jmp et
.section .text
.align 3
.globl start
.type start,@function
.extern _exception_vector
start:
#------------------------------------------------------
# disable interrupts
wrctl status, zero
wrctl ienable, zero
#------------------------------------------------------
# invalidate instruction cache
mov r2, r0
movhi r3, %hi(__nios2_icache_size)
ori r3, r3, %lo(__nios2_icache_size)
icache_init_loop:
initi r2
addi r2, r2, __nios2_icache_line_size
bltu r2, r3, icache_init_loop
#------------------------------------------------------
# invalidate data cache
mov r2, r0
movhi r3, %hi(__nios2_dcache_size)
ori r3, r3, %lo(__nios2_dcache_size)
dcache_init_loop:
initd 0(r2)
addi r2, r2, __nios2_dcache_line_size
bltu r2, r3, dcache_init_loop
#------------------------------------------------------
# initialize stack pointer
movhi sp, %hiadj(__alt_stack_pointer - 4)
addi sp, sp, %lo(__alt_stack_pointer - 4)
# initialize global pointer
movhi gp, %hiadj(_gp)
addi gp, gp, %lo(_gp)
# initialize exception tmp register
movhi et, %hiadj(_end)
addi et, et, %lo(_end)
#------------------------------------------------------
# TODO: copy data from flash to RAM, if not there already
# For now its save to assume it is there already when we're
# loading code though JTAG into RAM-only system
# at least copy exception code to right place
movhi r2, %hiadj(__ram_exceptions_start)
addi r2, r2, %lo(__ram_exceptions_start)
movhi r3, %hiadj(brto_ev)
addi r3, r3, %lo(brto_ev)
ldw r4, 0(r3)
stw r4, 0(r2)
ldw r4, 4(r3)
stw r4, 4(r2)
ldw r4, 8(r3)
stw r4, 8(r2)
ldw r4, 12(r3)
stw r4, 12(r2)
#------------------------------------------------------
# clear bss
movhi r2, %hiadj(__bss_start)
addi r2, r2, %lo(__bss_start)
movhi r3, %hiadj(__bss_end)
addi r3, r3, %lo(__bss_end)
beq r2, r3, 1f
0:
stw zero, (r2)
addi r2, r2, 4
bltu r2, r3, 0b
1:
#------------------------------------------------------
# jump to (shared) boot_card (never comes back)
mov r4, zero
mov r5, zero
mov r6, zero
call boot_card
# but just in case it does come back, stick here.
_stuck_in_start:
br _stuck_in_start
#------------------------------------------------------
# code to be placed at exception address
brto_ev:
movhi et, %hiadj(_exception_vector)
addi et, et, %lo(_exception_vector)
jmp et

View File

@@ -1,31 +0,0 @@
/* bsp_cleanup()
*
* This routine normally is part of start.s and usually returns
* control to a monitor.
*
* INPUT: NONE
*
* OUTPUT: NONE
*
* COPYRIGHT (c) 2005-2006 Kolja Waschk rtemsdev/ixo.de
* Derived from no_cpu/no_bsp/startup/bspclean.c 1.7.
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#include <rtems.h>
#include <bsp.h>
#include <rtems/score/cpu.h>
void bsp_cleanup( void )
{
rtems_interrupt_level level;
rtems_interrupt_disable(level);
for(;;);
}

View File

@@ -1,93 +0,0 @@
/*
* This routine starts the application. It includes application,
* board, and monitor specific initialization and configuration.
* The generic CPU dependent initialization has been performed
* before this routine is invoked.
*
* COPYRIGHT (c) 2005-2006 Kolja Waschk rtemsdev/ixo.de
* Derived from no_cpu/no_bsp/startup/bspstart.c 1.23.
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#include <string.h>
#include <bsp.h>
#include <rtems/libio.h>
#include <rtems/libcsupport.h>
/*
* Use the shared implementations of the following routines
*/
extern void bsp_libc_init( void *, uint32_t, int );
#if 0
extern char _RAMBase[];
extern char _RAMSize[];
extern char _WorkspaceBase[];
extern char _HeapSize[];
#else
extern char __alt_heap_start[];
#endif
/*
* Function: bsp_pretasking_hook
* Created: 95/03/10
*
* Description:
* BSP pretasking hook. Called just before drivers are initialized.
* Used to setup libc and install any BSP extensions.
*
* NOTES:
* Must not use libc (to do io) from here, since drivers are
* not yet initialized.
*
*/
void bsp_pretasking_hook(void)
{
unsigned long heapStart;
unsigned long ramSpace;
heapStart = (unsigned long)Configuration.work_space_start
+ rtems_configuration_get_work_space_size();
if (heapStart & (CPU_ALIGNMENT-1))
heapStart = (heapStart + CPU_ALIGNMENT) & ~(CPU_ALIGNMENT-1);
ramSpace = RAM_BASE + RAM_BYTES - heapStart;
/* TODO */
ramSpace -= 16384; /* Space for initial stack, not to be zeroed */
bsp_libc_init((void *)heapStart, ramSpace, 0);
}
/*
* bsp_start
*
* This routine does the bulk of the system initialization.
*/
void bsp_start( void )
{
/*
* Need to "allocate" the memory for the RTEMS Workspace and
* tell the RTEMS configuration where it is. This memory is
* not malloc'ed. It is just "pulled from the air".
*/
#if 0
Configuration.work_space_start = (void *)_WorkspaceBase;
#else
Configuration.work_space_start = (void *)__alt_heap_start;
#endif
}

View File

@@ -1,331 +0,0 @@
/* generated.x
*
* Machine generated for a CPU named "cpu_0" as defined in:
* D:\eb2_nios2\kawkos.ptf
*
* Generated: 2005-07-10 11:52:46.899
*
*/
/*
DO NOT MODIFY THIS FILE
Changing this file will have subtle consequences
which will almost certainly lead to a nonfunctioning
system. If you do modify this file, be aware that your
changes will be overwritten and lost when this file
is generated again.
DO NOT MODIFY THIS FILE
*/
MEMORY
{
reset : ORIGIN = 0x00000000, LENGTH = 0x00000600
exceptions : ORIGIN = 0x00000600, LENGTH = 0x00000A00
onchip_memory_0 : ORIGIN = 0x00001000, LENGTH = 0x007FF000
}
/* Define symbols for each memory base-address */
__alt_mem_onchip_memory_0 = 0x00000000 ;
__nios2_icache_size = 4096 ;
__nios2_icache_line_size = 32 ;
__nios2_dcache_size = 0 ;
__nios2_dcache_line_size = 4 ;
OUTPUT_FORMAT( "elf32-littlenios2",
"elf32-littlenios2",
"elf32-littlenios2" )
OUTPUT_ARCH( nios2 )
ENTRY( _start )
/* Do we need any of these for elf?
__DYNAMIC = 0;
*/
SECTIONS
{
.entry :
{
KEEP (*(.entry))
} > reset
.exceptions :
{
PROVIDE (__ram_exceptions_start = ABSOLUTE(.));
. = ALIGN(0x20);
*(.irq)
KEEP (*(.exceptions.entry.label));
KEEP (*(.exceptions.entry.user));
KEEP (*(.exceptions.entry));
KEEP (*(.exceptions.irqtest.user));
KEEP (*(.exceptions.irqtest));
KEEP (*(.exceptions.irqhandler.user));
KEEP (*(.exceptions.irqhandler));
KEEP (*(.exceptions.irqreturn.user));
KEEP (*(.exceptions.irqreturn));
KEEP (*(.exceptions.notirq.label));
KEEP (*(.exceptions.notirq.user));
KEEP (*(.exceptions.notirq));
KEEP (*(.exceptions.soft.user));
KEEP (*(.exceptions.soft));
KEEP (*(.exceptions.unknown.user));
KEEP (*(.exceptions.unknown));
KEEP (*(.exceptions.exit.label));
KEEP (*(.exceptions.exit.user));
KEEP (*(.exceptions.exit));
KEEP (*(.exceptions));
PROVIDE (__ram_exceptions_end = ABSOLUTE(.));
} > exceptions
PROVIDE (__flash_exceptions_start = LOADADDR(.exceptions));
.text :
{
/*
* All code sections are merged into the text output section, along with
* the read only data sections.
*
*/
PROVIDE (stext = ABSOLUTE(.));
*(.interp)
*(.hash)
*(.dynsym)
*(.dynstr)
*(.gnu.version)
*(.gnu.version_d)
*(.gnu.version_r)
*(.rel.init)
*(.rela.init)
*(.rel.text .rel.text.* .rel.gnu.linkonce.t.*)
*(.rela.text .rela.text.* .rela.gnu.linkonce.t.*)
*(.rel.fini)
*(.rela.fini)
*(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*)
*(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*)
*(.rel.data .rel.data.* .rel.gnu.linkonce.d.*)
*(.rela.data .rela.data.* .rela.gnu.linkonce.d.*)
*(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*)
*(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*)
*(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*)
*(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*)
*(.rel.ctors)
*(.rela.ctors)
*(.rel.dtors)
*(.rela.dtors)
*(.rel.got)
*(.rela.got)
*(.rel.sdata .rel.sdata.* .rel.gnu.linkonce.s.*)
*(.rela.sdata .rela.sdata.* .rela.gnu.linkonce.s.*)
*(.rel.sbss .rel.sbss.* .rel.gnu.linkonce.sb.*)
*(.rela.sbss .rela.sbss.* .rela.gnu.linkonce.sb.*)
*(.rel.sdata2 .rel.sdata2.* .rel.gnu.linkonce.s2.*)
*(.rela.sdata2 .rela.sdata2.* .rela.gnu.linkonce.s2.*)
*(.rel.sbss2 .rel.sbss2.* .rel.gnu.linkonce.sb2.*)
*(.rela.sbss2 .rela.sbss2.* .rela.gnu.linkonce.sb2.*)
*(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*)
*(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*)
*(.rel.plt)
*(.rela.plt)
KEEP (*(.init))
*(.plt)
*(.text .stub .text.* .gnu.linkonce.t.*)
/* Special FreeBSD sysctl sections. */
. = ALIGN (16);
__start_set_sysctl_set = .;
*(set_sysctl_*);
__stop_set_sysctl_set = ABSOLUTE(.);
*(set_domain_*);
*(set_pseudo_*);
/* .gnu.warning sections are handled specially by elf32.em. */
*(.gnu.warning.*)
KEEP (*(.fini))
PROVIDE (__etext = ABSOLUTE(.));
PROVIDE (_etext = ABSOLUTE(.));
PROVIDE (etext = ABSOLUTE(.));
*(.eh_frame_hdr)
/* Ensure the __preinit_array_start label is properly aligned. We
could instead move the label definition inside the section, but
the linker would then create the section even if it turns out to
be empty, which isn't pretty. */
. = ALIGN(32 / 8);
PROVIDE (__preinit_array_start = ABSOLUTE(.));
*(.preinit_array)
PROVIDE (__preinit_array_end = ABSOLUTE(.));
PROVIDE (__init_array_start = ABSOLUTE(.));
*(.init_array)
PROVIDE (__init_array_end = ABSOLUTE(.));
PROVIDE (__fini_array_start = ABSOLUTE(.));
*(.fini_array)
PROVIDE (__fini_array_end = ABSOLUTE(.));
SORT(CONSTRUCTORS)
KEEP (*(.eh_frame))
*(.gcc_except_table*)
*(.dynamic)
PROVIDE (__CTOR_LIST__ = ABSOLUTE(.));
KEEP (*(.ctors))
KEEP (*(SORT(.ctors.*)))
PROVIDE (__CTOR_END__ = ABSOLUTE(.));
PROVIDE (__DTOR_LIST__ = ABSOLUTE(.));
KEEP (*(.dtors))
KEEP (*(SORT(.dtors.*)))
PROVIDE (__DTOR_END__ = ABSOLUTE(.));
KEEP (*(.jcr))
. = ALIGN(32 / 8);
} > onchip_memory_0 = 0x3a880100 /* NOP on Nios2 (big endian) */
.rodata :
{
PROVIDE (__ram_rodata_start = ABSOLUTE(.));
. = ALIGN(32 / 8);
*(.rodata .rodata.* .gnu.linkonce.r.*)
*(.rodata1)
. = ALIGN(32 / 8);
PROVIDE (__ram_rodata_end = ABSOLUTE(.));
} > onchip_memory_0
PROVIDE (__flash_rodata_start = LOADADDR(.rodata));
.rwdata :
{
PROVIDE (__ram_rwdata_start = ABSOLUTE(.));
. = ALIGN(32 / 8);
*(.got.plt) *(.got)
*(.data1)
*(.data .data.* .gnu.linkonce.d.*)
_gp = ABSOLUTE(. + 0x8000);
PROVIDE(gp = _gp);
*(.sdata .sdata.* .gnu.linkonce.s.*)
*(.sdata2 .sdata2.* .gnu.linkonce.s2.*)
. = ALIGN(32 / 8);
_edata = ABSOLUTE(.);
PROVIDE (edata = ABSOLUTE(.));
PROVIDE (__ram_rwdata_end = ABSOLUTE(.));
} > onchip_memory_0
PROVIDE (__flash_rwdata_start = LOADADDR(.rwdata));
.bss :
{
__bss_start = ABSOLUTE(.);
PROVIDE (__sbss_start = ABSOLUTE(.));
PROVIDE (___sbss_start = ABSOLUTE(.));
*(.dynsbss)
*(.sbss .sbss.* .gnu.linkonce.sb.*)
*(.sbss2 .sbss2.* .gnu.linkonce.sb2.*)
*(.scommon)
PROVIDE (__sbss_end = ABSOLUTE(.));
PROVIDE (___sbss_end = ABSOLUTE(.));
*(.dynbss)
*(.bss .bss.* .gnu.linkonce.b.*)
*(COMMON)
. = ALIGN(32 / 8);
__bss_end = ABSOLUTE(.);
} > onchip_memory_0
/*
* One output section for each of the available partitions. These are not
* used by default, but can be used by users applications using the .section
* directive.
*
* The memory partition used for the heap is treated in special way, i.e. a
* symbol is added to point to the heap start.
*
* Note that when running from flash, these sections are not loaded by the
* HAL.
*
*/
.onchip_memory_0 :
{
PROVIDE (_alt_partition_onchip_memory_0_start = ABSOLUTE(.));
*(.onchip_memory_0 .onchip_memory_0.*)
. = ALIGN(32 / 8);
PROVIDE (_alt_partition_onchip_memory_0_end = ABSOLUTE(.));
_end = ABSOLUTE(.);
end = ABSOLUTE(.);
} > onchip_memory_0
PROVIDE (_alt_partition_onchip_memory_0_load_addr = LOADADDR(.onchip_memory_0));
/*
* Stabs debugging sections.
*
*/
.stab 0 : { *(.stab) }
.stabstr 0 : { *(.stabstr) }
.stab.excl 0 : { *(.stab.excl) }
.stab.exclstr 0 : { *(.stab.exclstr) }
.stab.index 0 : { *(.stab.index) }
.stab.indexstr 0 : { *(.stab.indexstr) }
.comment 0 : { *(.comment) }
/* DWARF debug sections.
Symbols in the DWARF debugging sections are relative to the beginning
of the section so we begin them at 0. */
/* DWARF 1 */
.debug 0 : { *(.debug) }
.line 0 : { *(.line) }
/* GNU DWARF 1 extensions */
.debug_srcinfo 0 : { *(.debug_srcinfo) }
.debug_sfnames 0 : { *(.debug_sfnames) }
/* DWARF 1.1 and DWARF 2 */
.debug_aranges 0 : { *(.debug_aranges) }
.debug_pubnames 0 : { *(.debug_pubnames) }
/* DWARF 2 */
.debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) }
.debug_abbrev 0 : { *(.debug_abbrev) }
.debug_line 0 : { *(.debug_line) }
.debug_frame 0 : { *(.debug_frame) }
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
/* Altera debug extensions */
.debug_alt_sim_info 0 : { *(.debug_alt_sim_info) }
}
/* provide a pointer for the stack */
/*
* Don't override this, override the __alt_stack_* symbols instead.
*/
__alt_data_end = 0x00800000;
/*
* The next two symbols define the location of the default stack. You can
* override them to move the stack to a different memory.
*/
PROVIDE( __alt_stack_pointer = __alt_data_end );
PROVIDE( __alt_stack_limit = _end );
/*
* This symbol controls where the start of the heap is. If the stack is
* contiguous with the heap then the stack will contract as memory is
* allocated to the heap.
* Override this symbol to put the heap in a different memory.
*/
PROVIDE( __alt_heap_start = end );

View File

@@ -1,39 +0,0 @@
/* main()
*
* This is the entry point for the application. It calls
* the bsp_start routine to the actual dirty work.
*
* COPYRIGHT (c) 2005-2006 Kolja Waschk rtemsdev/ixo.de
* Derived from no_cpu/no_bsp/startup/main.c 1.9,
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#include <rtems.h>
#include <bsp.h>
int main(
int argc,
char **argv,
char **environp
)
{
extern void bsp_start( int, char**, char ** );
bsp_start( argc, argv, environp );
/*
* May be able to return to the "crt/start.s" code but also
* may not be able to. Do something here which is board dependent.
*/
rtems_fatal_error_occurred( 0 );
return 0; /* just to satisfy the native compiler */
}

View File

@@ -1,44 +0,0 @@
/* set_vector
*
* This routine installs an interrupt vector on the target Board/CPU.
* This routine is allowed to be as board dependent as necessary.
*
* INPUT:
* handler - interrupt handler entry point
* vector - vector number
* type - 0 indicates raw hardware connect
* 1 indicates RTEMS interrupt connect
*
* RETURNS:
* address of previous interrupt handler
*
* COPYRIGHT (c) 2005-2006 Kolja Waschk rtemsdev/ixo.de
* Derived from no_cpu/no_bsp/startup/setvec.c 1.8,
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#include <rtems.h>
#include <bsp.h>
nios2_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 */
)
{
nios2_isr_entry previous_isr;
if ( type )
rtems_interrupt_catch( handler, vector, (rtems_isr_entry *) &previous_isr );
else {
/* XXX: install non-RTEMS ISR as "raw" interupt */
}
return previous_isr;
}

View File

@@ -1,139 +0,0 @@
/* timer.c
*
* This file manages the benchmark timer used by the RTEMS Timing Test
* Suite. Each measured time period is demarcated by calls to
* benchmark_timer_initialize() and benchmark_timer_read(). benchmark_timer_read() usually returns
* the number of microseconds since benchmark_timer_initialize() exitted.
*
* NOTE: It is important that the timer start/stop overhead be
* determined when porting or modifying this code.
*
* COPYRIGHT (c) 2005-2006 Kolja Waschk rtemsdev/ixo.de
* Derived from no_cpu/no_bsp/timer/timer.c 1.9,
* 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$
*/
#define TIMER_WRAPS_AFTER_1MS 0
#include <rtems.h>
#include <rtems/score/cpu.h>
#include <bsp.h>
volatile uint32_t Timer_interrupts;
bool benchmark_timer_find_average_overhead;
#define TIMER_REGS ((altera_avalon_timer_regs*)NIOS2_IO_BASE(TIMER_BASE))
void timerisr( void )
{
TIMER_REGS->status = 0;
Timer_interrupts++;
}
void benchmark_timer_initialize( void )
{
uint32_t old_ie;
/* Disable timer interrupt, stop timer */
TIMER_REGS->control = ALTERA_AVALON_TIMER_CONTROL_STOP_MSK;
set_vector((nios2_isr_entry *)timerisr, TIMER_VECTOR, 1);
/* Enable interrupt processing */
NIOS2_IENABLE(1 << TIMER_VECTOR);
#if TIMER_WRAPS_AFTER_1MS
/* Writing to periodl/h resets the counter and eventually
stops it. If the timer hasn't been configured with fixed
period, set it to 1 ms now */
TIMER_REGS->period_hi = (TIMER_FREQ/1000)>>16;
TIMER_REGS->period_lo = (TIMER_FREQ/1000)&0xFFFF;
#else
/* Writing to periodl/h resets the counter and eventually
stops it. Set max period */
TIMER_REGS->period_hi = 0xFFFF;
TIMER_REGS->period_lo = 0xFFFF;
#endif
/* For timers that can be stopped, writing to periodl/h
also stopped the timer and we have to manually start it. */
TIMER_REGS->control = ALTERA_AVALON_TIMER_CONTROL_ITO_MSK |
ALTERA_AVALON_TIMER_CONTROL_CONT_MSK |
ALTERA_AVALON_TIMER_CONTROL_START_MSK;
/* This is the most safe place for resetting the overflow
counter - just _after_ we reset the timer. Depending
on the SOPC configuration, the counter may not be
stoppable and it doesn't make sense to assume that
there is any "safe" period before resetting. */
Timer_interrupts = 0;
}
/*
* The following controls the behavior of benchmark_timer_read().
*
* AVG_OVEREHAD is the overhead for starting and stopping the timer. It
* is usually deducted from the number returned.
*
* LEAST_VALID is the lowest number this routine should trust. Numbers
* below this are "noise" and zero is returned.
*/
#define AVG_OVERHEAD 2 /* It typically takes 2 microseconds */
/* to start/stop the timer. */
#define LEAST_VALID AVG_OVERHEAD /* Don't trust a value lower than this */
int benchmark_timer_read( void )
{
uint32_t timer_wraps;
uint32_t timer_snap;
uint32_t timer_ticks;
uint32_t total;
uint32_t old_ie;
/* Hold timer */
TIMER_REGS->control = ALTERA_AVALON_TIMER_CONTROL_STOP_MSK;
/* Write to request snapshot of timer value */
TIMER_REGS->snap_lo = 0;
/* Get snapshot */
timer_snap = ((TIMER_REGS->snap_hi)<<16) | TIMER_REGS->snap_lo;
timer_wraps = Timer_interrupts;
/* Restart timer */
TIMER_REGS->control = ALTERA_AVALON_TIMER_CONTROL_START_MSK;
#if TIMER_WRAPS_AFTER_1MS
timer_ticks = (TIMER_FREQ / 1000) - 1 - timer_snap;
total = timer_wraps * 1000;
#else
timer_ticks = 0xFFFFFFFF - timer_snap;
total = timer_wraps * 0x80000000 / (TIMER_FREQ / 2000000L);
#endif
total += timer_ticks / (TIMER_FREQ / 1000000L);
if(total < LEAST_VALID) return 0;
if(benchmark_timer_find_average_overhead != TRUE) total-= AVG_OVERHEAD;
return total;
}
void benchmark_timer_disable_subtracting_average_overhead(bool find_flag)
{
benchmark_timer_find_average_overhead = find_flag;
}

View File

@@ -1,194 +0,0 @@
#
# Timing Test Suite Results for the NO_BSP
#
# NOTE: This is just a template. The times are irrelevant since this BSP
# can only be compiled -- not executed.
#
# $Id$
#
Board:
CPU: include coprocessor if applicable
Clock Speed:
Memory Configuration: SRAM, DRAM, cache, etc
Wait States:
Times Reported in: cycles, microseconds, etc
Timer Source: Count Down Timer, on-CPU cycle counter, etc
Column X:
Column Y:
# 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

View File

@@ -1,3 +1,11 @@
2008-09-24 Joel Sherrill <joel.sherrill@OARcorp.com>
* preinstall.am: Regenerated.
2008-09-24 Ralf Corsépius <ralf.corsepius@rtems.org>
* Makefile.am: Eliminates libcpudir.
2008-09-08 Ralf Corsépius <ralf.corsepius@rtems.org>
* i2c/i2c.c: Remove rtems_boolean having crept in again.

Some files were not shown because too many files have changed in this diff Show More