From c774850d227c53c35d7c99ecb390e2f02113b0fb Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Wed, 29 Sep 2004 17:25:02 +0000 Subject: 2004-09-29 Joel Sherrill * .cvsignore, ChangeLog, Makefile.am, acinclude.m4, configure.ac, cvme961/.cvsignore, cvme961/ChangeLog, cvme961/Makefile.am, cvme961/bsp_specs, cvme961/configure.ac, cvme961/times, cvme961/clock/ckinit.c, cvme961/console/console.c, cvme961/include/.cvsignore, cvme961/include/bsp.h, cvme961/include/tm27.h, cvme961/shmsupp/addrconv.c, cvme961/shmsupp/getcfg.c, cvme961/shmsupp/lock.c, cvme961/shmsupp/mpisr.c, cvme961/start/start.S, cvme961/startup/bspclean.c, cvme961/startup/bspstart.c, cvme961/startup/exit.c, cvme961/startup/linkcmds, cvme961/startup/setvec.c, cvme961/timer/timer.c, cvme961/timer/timerisr.S, i960sim/.cvsignore, i960sim/ChangeLog, i960sim/Makefile.am, i960sim/bsp_specs, i960sim/configure.ac, i960sim/clock/clockdrv.c, i960sim/console/console-io.c, i960sim/console/mon-syscalls.S, i960sim/include/.cvsignore, i960sim/include/bsp.h, i960sim/include/tm27.h, i960sim/start/start.c, i960sim/startup/bspstart.c, i960sim/startup/linkcmds, rxgen960/.cvsignore, rxgen960/ChangeLog, rxgen960/Makefile.am, rxgen960/README, rxgen960/bsp_specs, rxgen960/configure.ac, rxgen960/clock/ckinit.c, rxgen960/console/concntl.h, rxgen960/console/console.c, rxgen960/console/serial.c, rxgen960/console/serial.h, rxgen960/include/.cvsignore, rxgen960/include/bsp.h, rxgen960/include/rxgen960_config.h, rxgen960/include/tm27.h, rxgen960/start/rxgen_romld.S, rxgen960/startup/asmfault.S, rxgen960/startup/asmfault.h, rxgen960/startup/asmstub.S, rxgen960/startup/asmstub.h, rxgen960/startup/bspstart.c, rxgen960/startup/cntrltbl.c, rxgen960/startup/cntrltbl.h, rxgen960/startup/dram.ld, rxgen960/startup/exit.c, rxgen960/startup/fault.c, rxgen960/startup/fault.h, rxgen960/startup/faultret.h, rxgen960/startup/flttbl.c, rxgen960/startup/flttbl.h, rxgen960/startup/frmstr.c, rxgen960/startup/frmstr.h, rxgen960/startup/i960.h, rxgen960/startup/ihandler.S, rxgen960/startup/ihandler.h, rxgen960/startup/intrtbl.c, rxgen960/startup/intrtbl.h, rxgen960/startup/kkprintf.c, rxgen960/startup/linkcmds, rxgen960/startup/linkcmds.real, rxgen960/startup/main.h, rxgen960/startup/memchnl.h, rxgen960/startup/nmi.c, rxgen960/startup/nulsystbl.c, rxgen960/startup/pmc901_memmap.h, rxgen960/startup/prcb.c, rxgen960/startup/prcb.h, rxgen960/startup/rom.ld, rxgen960/startup/rom_cntrltbl.c, rxgen960/startup/rom_ibr.c, rxgen960/startup/rom_ibr.h, rxgen960/startup/rom_prcb.c, rxgen960/startup/rommon.h, rxgen960/startup/sctns.c, rxgen960/startup/sctns.h, rxgen960/startup/setvec.c, rxgen960/startup/systbl.c, rxgen960/startup/systbl.h, rxgen960/startup/time.h, rxgen960/timer/timer.c, rxgen960/timer/timerisr.S: Removed. --- c/src/lib/libbsp/i960/.cvsignore | 14 - c/src/lib/libbsp/i960/ChangeLog | 94 ---- c/src/lib/libbsp/i960/Makefile.am | 11 - c/src/lib/libbsp/i960/acinclude.m4 | 14 - c/src/lib/libbsp/i960/configure.ac | 21 - c/src/lib/libbsp/i960/cvme961/.cvsignore | 14 - c/src/lib/libbsp/i960/cvme961/ChangeLog | 347 ------------ c/src/lib/libbsp/i960/cvme961/Makefile.am | 173 ------ c/src/lib/libbsp/i960/cvme961/bsp_specs | 12 - c/src/lib/libbsp/i960/cvme961/clock/ckinit.c | 134 ----- c/src/lib/libbsp/i960/cvme961/configure.ac | 20 - c/src/lib/libbsp/i960/cvme961/console/console.c | 206 ------- c/src/lib/libbsp/i960/cvme961/include/.cvsignore | 4 - c/src/lib/libbsp/i960/cvme961/include/bsp.h | 126 ----- c/src/lib/libbsp/i960/cvme961/include/tm27.h | 32 -- c/src/lib/libbsp/i960/cvme961/shmsupp/addrconv.c | 36 -- c/src/lib/libbsp/i960/cvme961/shmsupp/getcfg.c | 96 ---- c/src/lib/libbsp/i960/cvme961/shmsupp/lock.c | 74 --- c/src/lib/libbsp/i960/cvme961/shmsupp/mpisr.c | 69 --- c/src/lib/libbsp/i960/cvme961/start/start.S | 109 ---- c/src/lib/libbsp/i960/cvme961/startup/bspclean.c | 35 -- c/src/lib/libbsp/i960/cvme961/startup/bspstart.c | 115 ---- c/src/lib/libbsp/i960/cvme961/startup/exit.c | 37 -- c/src/lib/libbsp/i960/cvme961/startup/linkcmds | 82 --- c/src/lib/libbsp/i960/cvme961/startup/setvec.c | 144 ----- c/src/lib/libbsp/i960/cvme961/timer/timer.c | 105 ---- c/src/lib/libbsp/i960/cvme961/timer/timerisr.S | 64 --- c/src/lib/libbsp/i960/cvme961/times | 191 ------- c/src/lib/libbsp/i960/i960sim/.cvsignore | 14 - c/src/lib/libbsp/i960/i960sim/ChangeLog | 311 ----------- c/src/lib/libbsp/i960/i960sim/Makefile.am | 154 ----- c/src/lib/libbsp/i960/i960sim/bsp_specs | 12 - c/src/lib/libbsp/i960/i960sim/clock/clockdrv.c | 21 - c/src/lib/libbsp/i960/i960sim/configure.ac | 20 - c/src/lib/libbsp/i960/i960sim/console/console-io.c | 67 --- .../lib/libbsp/i960/i960sim/console/mon-syscalls.S | 41 -- c/src/lib/libbsp/i960/i960sim/include/.cvsignore | 5 - c/src/lib/libbsp/i960/i960sim/include/bsp.h | 59 -- c/src/lib/libbsp/i960/i960sim/include/tm27.h | 35 -- c/src/lib/libbsp/i960/i960sim/start/start.c | 38 -- c/src/lib/libbsp/i960/i960sim/startup/bspstart.c | 97 ---- c/src/lib/libbsp/i960/i960sim/startup/linkcmds | 65 --- c/src/lib/libbsp/i960/rxgen960/.cvsignore | 14 - c/src/lib/libbsp/i960/rxgen960/ChangeLog | 355 ------------ c/src/lib/libbsp/i960/rxgen960/Makefile.am | 173 ------ c/src/lib/libbsp/i960/rxgen960/README | 6 - c/src/lib/libbsp/i960/rxgen960/bsp_specs | 12 - c/src/lib/libbsp/i960/rxgen960/clock/ckinit.c | 172 ------ c/src/lib/libbsp/i960/rxgen960/configure.ac | 20 - c/src/lib/libbsp/i960/rxgen960/console/concntl.h | 16 - c/src/lib/libbsp/i960/rxgen960/console/console.c | 254 --------- c/src/lib/libbsp/i960/rxgen960/console/serial.c | 348 ------------ c/src/lib/libbsp/i960/rxgen960/console/serial.h | 8 - c/src/lib/libbsp/i960/rxgen960/include/.cvsignore | 4 - c/src/lib/libbsp/i960/rxgen960/include/bsp.h | 132 ----- .../libbsp/i960/rxgen960/include/rxgen960_config.h | 32 -- c/src/lib/libbsp/i960/rxgen960/include/tm27.h | 32 -- c/src/lib/libbsp/i960/rxgen960/start/rxgen_romld.S | 165 ------ c/src/lib/libbsp/i960/rxgen960/startup/asmfault.S | 48 -- c/src/lib/libbsp/i960/rxgen960/startup/asmfault.h | 19 - c/src/lib/libbsp/i960/rxgen960/startup/asmstub.S | 144 ----- c/src/lib/libbsp/i960/rxgen960/startup/asmstub.h | 37 -- c/src/lib/libbsp/i960/rxgen960/startup/bspstart.c | 136 ----- c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.c | 85 --- c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.h | 47 -- c/src/lib/libbsp/i960/rxgen960/startup/dram.ld | 154 ----- c/src/lib/libbsp/i960/rxgen960/startup/exit.c | 39 -- c/src/lib/libbsp/i960/rxgen960/startup/fault.c | 325 ----------- c/src/lib/libbsp/i960/rxgen960/startup/fault.h | 57 -- c/src/lib/libbsp/i960/rxgen960/startup/faultret.h | 20 - c/src/lib/libbsp/i960/rxgen960/startup/flttbl.c | 120 ---- c/src/lib/libbsp/i960/rxgen960/startup/flttbl.h | 39 -- c/src/lib/libbsp/i960/rxgen960/startup/frmstr.c | 619 --------------------- c/src/lib/libbsp/i960/rxgen960/startup/frmstr.h | 43 -- c/src/lib/libbsp/i960/rxgen960/startup/i960.h | 34 -- c/src/lib/libbsp/i960/rxgen960/startup/ihandler.S | 53 -- c/src/lib/libbsp/i960/rxgen960/startup/ihandler.h | 23 - c/src/lib/libbsp/i960/rxgen960/startup/intrtbl.c | 55 -- c/src/lib/libbsp/i960/rxgen960/startup/intrtbl.h | 33 -- c/src/lib/libbsp/i960/rxgen960/startup/kkprintf.c | 58 -- c/src/lib/libbsp/i960/rxgen960/startup/linkcmds | 74 --- .../lib/libbsp/i960/rxgen960/startup/linkcmds.real | 203 ------- c/src/lib/libbsp/i960/rxgen960/startup/main.h | 27 - c/src/lib/libbsp/i960/rxgen960/startup/memchnl.h | 70 --- c/src/lib/libbsp/i960/rxgen960/startup/nmi.c | 15 - c/src/lib/libbsp/i960/rxgen960/startup/nulsystbl.c | 84 --- .../libbsp/i960/rxgen960/startup/pmc901_memmap.h | 12 - c/src/lib/libbsp/i960/rxgen960/startup/prcb.c | 56 -- c/src/lib/libbsp/i960/rxgen960/startup/prcb.h | 60 -- c/src/lib/libbsp/i960/rxgen960/startup/rom.ld | 162 ------ .../libbsp/i960/rxgen960/startup/rom_cntrltbl.c | 85 --- c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.c | 33 -- c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.h | 32 -- c/src/lib/libbsp/i960/rxgen960/startup/rom_prcb.c | 57 -- c/src/lib/libbsp/i960/rxgen960/startup/rommon.h | 29 - c/src/lib/libbsp/i960/rxgen960/startup/sctns.c | 103 ---- c/src/lib/libbsp/i960/rxgen960/startup/sctns.h | 36 -- c/src/lib/libbsp/i960/rxgen960/startup/setvec.c | 200 ------- c/src/lib/libbsp/i960/rxgen960/startup/systbl.c | 100 ---- c/src/lib/libbsp/i960/rxgen960/startup/systbl.h | 37 -- c/src/lib/libbsp/i960/rxgen960/startup/time.h | 6 - c/src/lib/libbsp/i960/rxgen960/timer/timer.c | 125 ----- c/src/lib/libbsp/i960/rxgen960/timer/timerisr.S | 64 --- 103 files changed, 8919 deletions(-) delete mode 100644 c/src/lib/libbsp/i960/.cvsignore delete mode 100644 c/src/lib/libbsp/i960/ChangeLog delete mode 100644 c/src/lib/libbsp/i960/Makefile.am delete mode 100644 c/src/lib/libbsp/i960/acinclude.m4 delete mode 100644 c/src/lib/libbsp/i960/configure.ac delete mode 100644 c/src/lib/libbsp/i960/cvme961/.cvsignore delete mode 100644 c/src/lib/libbsp/i960/cvme961/ChangeLog delete mode 100644 c/src/lib/libbsp/i960/cvme961/Makefile.am delete mode 100644 c/src/lib/libbsp/i960/cvme961/bsp_specs delete mode 100644 c/src/lib/libbsp/i960/cvme961/clock/ckinit.c delete mode 100644 c/src/lib/libbsp/i960/cvme961/configure.ac delete mode 100644 c/src/lib/libbsp/i960/cvme961/console/console.c delete mode 100644 c/src/lib/libbsp/i960/cvme961/include/.cvsignore delete mode 100644 c/src/lib/libbsp/i960/cvme961/include/bsp.h delete mode 100644 c/src/lib/libbsp/i960/cvme961/include/tm27.h delete mode 100644 c/src/lib/libbsp/i960/cvme961/shmsupp/addrconv.c delete mode 100644 c/src/lib/libbsp/i960/cvme961/shmsupp/getcfg.c delete mode 100644 c/src/lib/libbsp/i960/cvme961/shmsupp/lock.c delete mode 100644 c/src/lib/libbsp/i960/cvme961/shmsupp/mpisr.c delete mode 100644 c/src/lib/libbsp/i960/cvme961/start/start.S delete mode 100644 c/src/lib/libbsp/i960/cvme961/startup/bspclean.c delete mode 100644 c/src/lib/libbsp/i960/cvme961/startup/bspstart.c delete mode 100644 c/src/lib/libbsp/i960/cvme961/startup/exit.c delete mode 100644 c/src/lib/libbsp/i960/cvme961/startup/linkcmds delete mode 100644 c/src/lib/libbsp/i960/cvme961/startup/setvec.c delete mode 100644 c/src/lib/libbsp/i960/cvme961/timer/timer.c delete mode 100644 c/src/lib/libbsp/i960/cvme961/timer/timerisr.S delete mode 100644 c/src/lib/libbsp/i960/cvme961/times delete mode 100644 c/src/lib/libbsp/i960/i960sim/.cvsignore delete mode 100644 c/src/lib/libbsp/i960/i960sim/ChangeLog delete mode 100644 c/src/lib/libbsp/i960/i960sim/Makefile.am delete mode 100644 c/src/lib/libbsp/i960/i960sim/bsp_specs delete mode 100644 c/src/lib/libbsp/i960/i960sim/clock/clockdrv.c delete mode 100644 c/src/lib/libbsp/i960/i960sim/configure.ac delete mode 100644 c/src/lib/libbsp/i960/i960sim/console/console-io.c delete mode 100644 c/src/lib/libbsp/i960/i960sim/console/mon-syscalls.S delete mode 100644 c/src/lib/libbsp/i960/i960sim/include/.cvsignore delete mode 100644 c/src/lib/libbsp/i960/i960sim/include/bsp.h delete mode 100644 c/src/lib/libbsp/i960/i960sim/include/tm27.h delete mode 100644 c/src/lib/libbsp/i960/i960sim/start/start.c delete mode 100644 c/src/lib/libbsp/i960/i960sim/startup/bspstart.c delete mode 100644 c/src/lib/libbsp/i960/i960sim/startup/linkcmds delete mode 100644 c/src/lib/libbsp/i960/rxgen960/.cvsignore delete mode 100644 c/src/lib/libbsp/i960/rxgen960/ChangeLog delete mode 100644 c/src/lib/libbsp/i960/rxgen960/Makefile.am delete mode 100644 c/src/lib/libbsp/i960/rxgen960/README delete mode 100644 c/src/lib/libbsp/i960/rxgen960/bsp_specs delete mode 100644 c/src/lib/libbsp/i960/rxgen960/clock/ckinit.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/configure.ac delete mode 100644 c/src/lib/libbsp/i960/rxgen960/console/concntl.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/console/console.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/console/serial.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/console/serial.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/include/.cvsignore delete mode 100644 c/src/lib/libbsp/i960/rxgen960/include/bsp.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/include/rxgen960_config.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/include/tm27.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/start/rxgen_romld.S delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/asmfault.S delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/asmfault.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/asmstub.S delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/asmstub.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/bspstart.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/dram.ld delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/exit.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/fault.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/fault.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/faultret.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/flttbl.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/flttbl.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/frmstr.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/frmstr.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/i960.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/ihandler.S delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/ihandler.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/intrtbl.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/intrtbl.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/kkprintf.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/linkcmds delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/linkcmds.real delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/main.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/memchnl.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/nmi.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/nulsystbl.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/pmc901_memmap.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/prcb.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/prcb.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/rom.ld delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/rom_cntrltbl.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/rom_prcb.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/rommon.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/sctns.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/sctns.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/setvec.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/systbl.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/systbl.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/startup/time.h delete mode 100644 c/src/lib/libbsp/i960/rxgen960/timer/timer.c delete mode 100644 c/src/lib/libbsp/i960/rxgen960/timer/timerisr.S (limited to 'c/src/lib/libbsp/i960') diff --git a/c/src/lib/libbsp/i960/.cvsignore b/c/src/lib/libbsp/i960/.cvsignore deleted file mode 100644 index bfdfd995be..0000000000 --- a/c/src/lib/libbsp/i960/.cvsignore +++ /dev/null @@ -1,14 +0,0 @@ -aclocal.m4 -autom4te*.cache -config.cache -config.guess -config.log -config.status -config.sub -configure -depcomp -install-sh -Makefile -Makefile.in -missing -mkinstalldirs diff --git a/c/src/lib/libbsp/i960/ChangeLog b/c/src/lib/libbsp/i960/ChangeLog deleted file mode 100644 index 21f71dbb48..0000000000 --- a/c/src/lib/libbsp/i960/ChangeLog +++ /dev/null @@ -1,94 +0,0 @@ -2004-09-24 Ralf Corsepius - - * configure.ac: Require automake > 1.9. - -2004-02-12 Ralf Corsepius - - * acinclude.m4: Regenerate. - -2004-02-12 Ralf Corsepius - - * configure.ac: RTEMS_CHECK_BSPDIR([$RTEMS_BSP_FAMILY]). - -2004-01-13 Ralf Corsepius - - * Makefile.am: Use @RTEMS_BSP_FAMILY@ instead of - $(RTEMS_BSP_FAMILY). - -2003-12-12 Ralf Corsepius - - * configure.ac: Require automake >= 1.8, autoconf >= 2.59. - -2003-10-20 Ralf Corsepius - - * acinclude.m4: Reflect changes to bootstrap. - * configure.ac: Remove RTEMS_CHECK_CUSTON_BSP. - -2003-08-18 Ralf Corsepius - - * Makefile.am: Reflect having moved aclocal/. - -2003-08-16 Ralf Corsepius - - * Makefile.am: Reflect having moved automake/. - -2003-08-11 Ralf Corsepius - - * configure.ac: Use rtems-bugs@rtems.com as bug report email address. - -2003-03-06 Ralf Corsepius - - * configure.ac: Remove AC_CONFIG_AUX_DIR. - -2003-02-11 Ralf Corsepius - - * configure.ac: AM_INIT_AUTOMAKE([1.7.2]). - -2003-02-11 Ralf Corsepius - - * configure.ac: AC_PREREQ(2.57). - -2002-12-06 Ralf Corsepius - - * configure.ac: Remove RTEMS_CHECK_BSP_CACHE. - -2002-10-21 Ralf Corsepius - - * .cvsignore: Reformat. - Add autom4te*cache. - Remove autom4te.cache. - -2002-03-27 Ralf Corsepius - - * 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 - - * .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 - - * acinclude.m4: New file. - * configure.in: Use RTEMS_BSP_SUBDIR. - -2000-11-09 Ralf Corsepius - - * Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS. - -2000-11-02 Ralf Corsepius - - * Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal. - -2000-10-27 Ralf Corsepius - - * Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros. - Switch to GNU canonicalization. - -2000-08-10 Joel Sherrill - - * ChangeLog: New file. diff --git a/c/src/lib/libbsp/i960/Makefile.am b/c/src/lib/libbsp/i960/Makefile.am deleted file mode 100644 index e60a8966ac..0000000000 --- a/c/src/lib/libbsp/i960/Makefile.am +++ /dev/null @@ -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 diff --git a/c/src/lib/libbsp/i960/acinclude.m4 b/c/src/lib/libbsp/i960/acinclude.m4 deleted file mode 100644 index 69c080c09a..0000000000 --- a/c/src/lib/libbsp/i960/acinclude.m4 +++ /dev/null @@ -1,14 +0,0 @@ -# RTEMS_CHECK_BSPDIR(RTEMS_BSP_FAMILY) -AC_DEFUN([RTEMS_CHECK_BSPDIR], -[ - case "$1" in - cvme961 ) - AC_CONFIG_SUBDIRS([cvme961]);; - i960sim ) - AC_CONFIG_SUBDIRS([i960sim]);; - rxgen960 ) - AC_CONFIG_SUBDIRS([rxgen960]);; - *) - AC_MSG_ERROR([Invalid BSP]);; - esac -]) diff --git a/c/src/lib/libbsp/i960/configure.ac b/c/src/lib/libbsp/i960/configure.ac deleted file mode 100644 index 663e1e739b..0000000000 --- a/c/src/lib/libbsp/i960/configure.ac +++ /dev/null @@ -1,21 +0,0 @@ -## Process this file with autoconf to produce a configure script. -## -## $Id$ - -AC_PREREQ(2.59) -AC_INIT([rtems-c-src-lib-libbsp-i960],[_RTEMS_VERSION],[rtems-bugs@rtems.com]) -AC_CONFIG_SRCDIR([cvme961]) -RTEMS_TOP(../../../../..) - -RTEMS_CANONICAL_TARGET_CPU -AM_INIT_AUTOMAKE([no-define foreign 1.9]) -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 diff --git a/c/src/lib/libbsp/i960/cvme961/.cvsignore b/c/src/lib/libbsp/i960/cvme961/.cvsignore deleted file mode 100644 index bfdfd995be..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/.cvsignore +++ /dev/null @@ -1,14 +0,0 @@ -aclocal.m4 -autom4te*.cache -config.cache -config.guess -config.log -config.status -config.sub -configure -depcomp -install-sh -Makefile -Makefile.in -missing -mkinstalldirs diff --git a/c/src/lib/libbsp/i960/cvme961/ChangeLog b/c/src/lib/libbsp/i960/cvme961/ChangeLog deleted file mode 100644 index 079ae805ff..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/ChangeLog +++ /dev/null @@ -1,347 +0,0 @@ -2004-09-24 Ralf Corsepius - - * configure.ac: Require automake > 1.9. - -2004-04-23 Ralf Corsepius - - PR 610/bsps - * Makefile.am: Add include/tm27.h, Cosmetics. - * include/tm27.h: Final cosmetics. - -2004-04-22 Ralf Corsepius - - * include/bsp.h: Split out tmtest27 support. - * include/tm27.h: New. - -2004-04-21 Ralf Corsepius - - PR 613/bsps - * include/bsp.h: Remove MAX_LONG_TEST_DURATION. - -2004-04-21 Ralf Corsepius - - PR 614/bsps - * include/bsp.h: Remove MAX_SHORT_TEST_DURATION (Unused). - - - * cvme961/timer/timer.c: Include instead of - . - -2004-04-02 Ralf Corsepius - - * start/start.S: Include instead of . - * timer/timerisr.S: Include instead of . - -2004-04-01 Ralf Corsepius - - * include/bsp.h: Include instead of . - * include/bsp.h: Include instead of . - * include/bsp.h: Include instead of . - -2004-03-31 Ralf Corsepius - - * clock/ckinit.c, include/bsp.h, shmsupp/addrconv.c, - shmsupp/getcfg.c, shmsupp/lock.c, shmsupp/mpisr.c, - startup/bspstart.c, timer/timer.c: Convert to using c99 fixed size - types. - -2004-02-19 Ralf Corsepius - - * Makefile.am: Reflect changes to bsp.am. - Preinstall dist_project_lib*. - -2004-02-14 Ralf Corsepius - - * Makefile.am: Reflect changes to bsp.am. - -2004-02-12 Ralf Corsepius - - * Makefile.am: Use CPPASCOMPILE instead of CCASCOMPILE. - -2004-02-02 Ralf Corsepius - - * Makefile.am: Correct path to libcpu. - -2004-02-02 Ralf Corsepius - - * Makefile.am: Merge-in clock/Makefile.am, console/Makefile.am, - shmsupp/Makefile.am, start/Makefile.am, startup/Makefile.am, - timer/Makefile.am, wrapup/Makefile.am. Use automake compilation rules. - * clock/Makefile.am, console/Makefile.am, shmsupp/Makefile.am, - start/Makefile.am, startup/Makefile.am, timer/Makefile.am, - wrapup/Makefile.am: Remove. - * configure.ac: Reflect changes above. - -2004-01-28 Ralf Corsepius - - * configure.ac: Add nostdinc to AUTOMAKE_OPTIONS. - Add RTEMS_PROG_CCAS. - -2004-01-21 Ralf Corsepius - - * Makefile.am: Add PREINSTALL_DIRS. - * wrapup/Makefile.am: Reflect changes to libcpu. - -2004-01-14 Ralf Corsepius - - * start/Makefile.am: Re-add dirstamps to PRE/TMPINSTALL_FILES. - Add PRE/TMPINSTALL_FILES to CLEANFILES. - * startup/Makefile.am: Ditto. - -2004-01-05 Ralf Corsepius - - * wrapup/Makefile.am: Eliminate $(LIB). - Use noinst_DATA to trigger building libbsp.a. - -2003-12-18 Ralf Corsepius - - * wrapup/Makefile.am: Remove GENERIC_FILES. - -2003-12-13 Ralf Corsepius - - * start/Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g. - * startup/Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g. - -2003-12-12 Ralf Corsepius - - * start/Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES. - * startup/Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES. - -2003-12-12 Ralf Corsepius - - * configure.ac: Require automake >= 1.8, autoconf >= 2.59. - -2003-12-09 Ralf Corsepius - - * start/Makefile.am: Misc cleanups and fixes. - * startup/Makefile.am: Misc cleanups and fixes. - * wrapup/Makefile.am: Misc cleanups and fixes. - -2003-12-03 Ralf Corsepius - - * Makefile.am: Add preinstallation dirstamp support. - * clock/Makefile.am: Cosmetics. - * console/Makefile.am: Cosmetics. - * shmsupp/Makefile.am: Cosmetics. - * startup/Makefile.am: Cosmetics. - * timer/Makefile.am: Cosmetics. - * wrapup/Makefile.am: Cosmetics. - -2003-12-02 Ralf Corsepius - - * clock/Makefile.am: Remove all-local: $(ARCH). - * console/Makefile.am: Remove all-local: $(ARCH). - * shmsupp/Makefile.am: Remove all-local: $(ARCH). - * start/Makefile.am: Remove all-local: $(ARCH). - * startup/Makefile.am: Remove all-local: $(ARCH). - * timer/Makefile.am: Remove all-local: $(ARCH). - * wrapup/Makefile.am: Remove all-local: $(ARCH). - -2003-09-29 Ralf Corsepius - - * Makefile.am: Merge-in include/Makefile.am. - Reflect changes to bsp.am. - * include/Makefile.am: Remove. - * configure.ac: Reflect changes above. - -2003-09-24 Ralf Corsepius - - * bsp_specs: Remove *lib:. - -2003-09-04 Joel Sherrill - - * clock/ckinit.c, console/console.c, include/bsp.h, shmsupp/addrconv.c, - shmsupp/getcfg.c, shmsupp/lock.c, shmsupp/mpisr.c, start/start.S, - startup/bspclean.c, startup/bspstart.c, startup/exit.c, - startup/linkcmds, startup/setvec.c, timer/timer.c, timer/timerisr.S: - URL for license changed. - -2003-08-18 Ralf Corsepius - - * Makefile.am: Reflect having moved aclocal/. - -2003-08-16 Ralf Corsepius - - * Makefile.am: Reflect having moved automake/. - * clock/Makefile.am: Reflect having moved automake/. - * console/Makefile.am: Reflect having moved automake/. - * include/Makefile.am: Reflect having moved automake/. - * shmsupp/Makefile.am: Reflect having moved automake/. - * start/Makefile.am: Reflect having moved automake/. - * startup/Makefile.am: Reflect having moved automake/. - * timer/Makefile.am: Reflect having moved automake/. - * wrapup/Makefile.am: Reflect having moved automake/. - -2003-08-11 Ralf Corsepius - - * configure.ac: Use rtems-bugs@rtems.com as bug report email address. - -2003-08-06 Ralf Corsepius - - PR 445/bsps - * bsp_specs: Remove -D__embedded__ -Asystem(embedded) from cpp. - Remove cpp, old_cpp (now unused). - -2003-03-06 Ralf Corsepius - - * configure.ac: Remove AC_CONFIG_AUX_DIR. - -2003-02-11 Ralf Corsepius - - * configure.ac: AM_INIT_AUTOMAKE([1.7.2]). - -2003-02-11 Ralf Corsepius - - * configure.ac: AC_PREREQ(2.57). - -2003-01-15 Ralf Corsepius - - * clock/Makefile.am: Don't include @RTEMS_BSP@.cfg. - * console/Makefile.am: Don't include @RTEMS_BSP@.cfg. - * shmsupp/Makefile.am: Don't include @RTEMS_BSP@.cfg. - * start/Makefile.am: Don't include @RTEMS_BSP@.cfg. - * startup/Makefile.am: Don't include @RTEMS_BSP@.cfg. - * timer/Makefile.am: Don't include @RTEMS_BSP@.cfg. - -2002-12-12 Ralf Corsepius - - * start/Makefile.am: Use install-data-local to install startfile. - -2002-12-10 Ralf Corsepius - - * wrapup/Makefile.am: Don't include @RTEMS_BSP@.cfg. - -2002-10-21 Ralf Corsepius - - * .cvsignore: Reformat. - Add autom4te*cache. - Remove autom4te.cache. - -2002-08-21 Joel Sherrill - - * bsp_specs: Added support for -nostdlibs. - -2002-08-11 Ralf Corsepius - - * clock/Makefile.am: Use .$(OBJEXT) instead of .o. - * console/Makefile.am: Use .$(OBJEXT) instead of .o. - * shmsupp/Makefile.am: Use .$(OBJEXT) instead of .o. - * start/Makefile.am: Use .$(OBJEXT) instead of .o. - * startup/Makefile.am: Use .$(OBJEXT) instead of .o. - * timer/Makefile.am: Use .$(OBJEXT) instead of .o. - * wrapup/Makefile.am: Use .$(OBJEXT) instead of .o. - -2002-07-20 Ralf Corsepius - - * start/Makefile.am: Eliminate PGM. - Add bsplib_DATA = $(PROJECT_RELEASE)/lib/start$(LIB_VARIANT).o. - -2002-07-19 Ralf Corsepius - - * startup/Makefile.am: Add bsplib_DATA = linkcmds. - -2002-07-04 Ralf Corsepius - - * wrapup/Makefile.am: Eliminate TMPINSTALL_FILES. - Remove $(OBJS) from all-local. - -2002-07-04 Ralf Corsepius - - * wrapup/Makefile.am: Add $(LIB) to all-local. - -2002-06-29 Ralf Corsepius - - * wrapup/Makefile.am: Remove preinstallation of libbsp.a, - -2001-05-09 Joel Sherrill - - * startup/linkcmds: In support of gcc 3.1, added one of more - of the sections .jcr, .rodata*, .data.*, .gnu.linkonce.s2.*, - .gnu.linkonce.sb2.*, and .gnu.linkonce.s.*. Spacing corrections - and direction of segments to memory regions may also have been - addressed. This was a sweep across all BSPs. - -2002-03-27 Ralf Corsepius - - * configure.ac: - AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS). - AM_INIT_AUTOMAKE([no-define foreign 1.6]). - * clock/Makefile.am: Remove AUTOMAKE_OPTIONS. - * Makefile.am: Remove AUTOMAKE_OPTIONS. - * console/Makefile.am: Remove AUTOMAKE_OPTIONS. - * include/Makefile.am: Remove AUTOMAKE_OPTIONS. - * shmsupp/Makefile.am: Remove AUTOMAKE_OPTIONS. - * start/Makefile.am: Remove AUTOMAKE_OPTIONS. - * startup/Makefile.am: Remove AUTOMAKE_OPTIONS. - * timer/Makefile.am: Remove AUTOMAKE_OPTIONS. - * wrapup/Makefile.am: Remove AUTOMAKE_OPTIONS. - -2001-12-22 Ralf Corsepius - - * bsp_specs: Replace -lrtemsall with -lrtemsbsp -lrtemscpu, - replace -lrtemsall_g with -lrtemsbsp_g -lrtemscpu_g. - -2001-11-30 Ralf Corsepius - - * configure.ac: Introduce RTEMS_BSP_CONFIGURE. - -2001-10-11 Ralf Corsepius - - * .cvsignore: Add autom4te.cache for autoconf > 2.52. - * configure.in: Remove. - * configure.ac: New file, generated from configure.in by autoupdate. - -2001-09-27 Joel Sherrill - - * include/bsp.h: Renamed delay() to rtems_bsp_delay(). - * shmsupp/lock.c: Renamed delay() to rtems_bsp_delay(). - -2001-09-27 Ralf Corsepius - - * include/Makefile.am: Use 'CLEANFILES ='. - * include/Makefile.am: Use 'TMPINSTALL_FILES ='. - -2001-09-22 Ralf Corsepius - - * wrapup/Makefile: Use GENERIC_FILES = to make automake-1.5 happy. - -2001-05-26 Ralf Corsepius - - * configure.in: Add bspopts.h. - * include/.cvsignore: Add bspopts.h*, stamp-h*. - * include/Makefile.am: Use *_HEADERS instead of *H_FILES. - * include/bsp.h: Include bspopts.h. - -2001-05-10 Ralf Corsepius - - * configure.in: Use RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm]). - -2000-11-09 Ralf Corsepius - - * Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS. - -2000-11-02 Ralf Corsepius - - * Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal. - -2000-11-01 Joel Sherrill - - * startup/bspstart.c: assoc.h, error.h, libio_.h, libio.h, - and libcsupport.h moved from libc to lib/include/rtems and - now must be referenced as . Header file order - was cleaned up while doing this. - -2000-10-27 Ralf Corsepius - - * Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros. - Switch to GNU canonicalization. - -2000-09-04 Ralf Corsepius - - * clock/Makefile.am, console/Makefile.am, shmsupp/Makefile.am, - start/Makefile.am, startup/Makefile.am, timer/Makefile.am, - wrapup/Makefile.am: Include compile.am - -2000-08-10 Joel Sherrill - - * ChangeLog: New file. diff --git a/c/src/lib/libbsp/i960/cvme961/Makefile.am b/c/src/lib/libbsp/i960/cvme961/Makefile.am deleted file mode 100644 index 61af24e20a..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/Makefile.am +++ /dev/null @@ -1,173 +0,0 @@ -## -## $Id$ -## - -ACLOCAL_AMFLAGS = -I ../../../../aclocal - -include $(top_srcdir)/../../../../automake/compile.am -include $(top_srcdir)/../../bsp.am - -dist_project_lib_DATA = bsp_specs - -include_HEADERS = include/bsp.h -include_HEADERS += include/tm27.h -nodist_include_HEADERS = include/bspopts.h - -EXTRA_PROGRAMS = -CLEANFILES = -noinst_DATA = - -nodist_include_HEADERS += ../../shared/include/coverhd.h - -EXTRA_DIST = start/start.S -start$(LIB_VARIANT).$(OBJEXT): start/start.S - $(CPPASCOMPILE) -DASM -o $@ -c $< -project_lib_DATA = start$(LIB_VARIANT).$(OBJEXT) - -dist_project_lib_DATA += startup/linkcmds - -EXTRA_PROGRAMS += startup.rel -CLEANFILES += startup.rel -startup_rel_SOURCES = startup/bspclean.c ../../shared/bsplibc.c \ - ../../shared/bsppost.c startup/bspstart.c ../../shared/bootcard.c \ - ../../shared/main.c ../../shared/sbrk.c startup/setvec.c \ - ../../shared/gnatinstallhandler.c -startup_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) -startup_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -EXTRA_PROGRAMS += startup_g.rel -CLEANFILES += startup_g.rel -startup_g_rel_SOURCES = $(startup_rel_SOURCES) -startup_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) -startup_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -noinst_DATA += startup$(LIB_VARIANT).rel - -EXTRA_PROGRAMS += clock.rel -CLEANFILES += clock.rel -clock_rel_SOURCES = clock/ckinit.c -clock_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) -clock_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -EXTRA_PROGRAMS += clock_g.rel -CLEANFILES += clock_g.rel -clock_g_rel_SOURCES = $(clock_rel_SOURCES) -clock_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) -clock_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -noinst_DATA += clock$(LIB_VARIANT).rel - -EXTRA_PROGRAMS += console.rel -CLEANFILES += console.rel -console_rel_SOURCES = console/console.c -console_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) -console_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -EXTRA_PROGRAMS += console_g.rel -CLEANFILES += console_g.rel -console_g_rel_SOURCES = $(console_rel_SOURCES) -console_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) -console_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -noinst_DATA += console$(LIB_VARIANT).rel - -EXTRA_PROGRAMS += timer.rel -CLEANFILES += timer.rel -timer_rel_SOURCES = timer/timer.c timer/timerisr.S -timer_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) -timer_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -EXTRA_PROGRAMS += timer_g.rel -CLEANFILES += timer_g.rel -timer_g_rel_SOURCES = $(timer_rel_SOURCES) -timer_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) -timer_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -noinst_DATA += timer$(LIB_VARIANT).rel - -if HAS_MP -EXTRA_PROGRAMS += shmsupp.rel -CLEANFILES += shmsupp.rel -shmsupp_rel_SOURCES = shmsupp/addrconv.c shmsupp/getcfg.c shmsupp/lock.c \ - shmsupp/mpisr.c -shmsupp_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) -shmsupp_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -EXTRA_PROGRAMS += shmsupp_g.rel -CLEANFILES += shmsupp_g.rel -shmsupp_g_rel_SOURCES = $(shmsupp_rel_SOURCES) -shmsupp_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) -shmsupp_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -noinst_DATA += shmsupp$(LIB_VARIANT).rel -endif - -EXTRA_LIBRARIES = libbsp.a -CLEANFILES += libbsp.a -libbsp_a_SOURCES = -libbsp_a_LIBADD = startup$(LIB_VARIANT).rel clock$(LIB_VARIANT).rel \ - console$(LIB_VARIANT).rel timer$(LIB_VARIANT).rel -if HAS_MP -libbsp_a_LIBADD += shmsupp$(LIB_VARIANT).rel -endif -libbsp_a_LIBADD += \ - ../../../libcpu/@RTEMS_CPU@/i960ca/score$(LIB_VARIANT).rel - -EXTRA_LIBRARIES += libbsp_g.a -CLEANFILES += libbsp_g.a -libbsp_g_a_SOURCES = $(libbsp_a_SOURCES) -libbsp_g_a_LIBADD = $(libbsp_a_LIBADD) - -noinst_DATA += libbsp$(LIB_VARIANT).a - -all-local: $(PREINSTALL_FILES) $(TMPINSTALL_FILES) - -EXTRA_DIST += times - -PREINSTALL_DIRS = -PREINSTALL_FILES = -TMPINSTALL_FILES = - -$(PROJECT_INCLUDE)/$(dirstamp): - @$(mkdir_p) $(PROJECT_INCLUDE) - @: > $(PROJECT_INCLUDE)/$(dirstamp) -PREINSTALL_DIRS += $(PROJECT_INCLUDE)/$(dirstamp) - -$(PROJECT_LIB)/$(dirstamp): - @$(mkdir_p) $(PROJECT_LIB) - @: > $(PROJECT_LIB)/$(dirstamp) -PREINSTALL_DIRS += $(PROJECT_LIB)/$(dirstamp) - -$(PROJECT_LIB)/bsp_specs: bsp_specs $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/bsp_specs -PREINSTALL_FILES += $(PROJECT_LIB)/bsp_specs - -$(PROJECT_INCLUDE)/bsp.h: include/bsp.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp.h - -$(PROJECT_INCLUDE)/tm27.h: include/tm27.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/tm27.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/tm27.h - -$(PROJECT_INCLUDE)/bspopts.h: include/bspopts.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bspopts.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/bspopts.h - -$(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/coverhd.h - -$(PROJECT_LIB)/start$(LIB_VARIANT).$(OBJEXT): start$(LIB_VARIANT).$(OBJEXT) $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/start$(LIB_VARIANT).$(OBJEXT) -TMPINSTALL_FILES += $(PROJECT_LIB)/start$(LIB_VARIANT).$(OBJEXT) - -$(PROJECT_LIB)/linkcmds: startup/linkcmds $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds -PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds - -CLEANFILES += $(PREINSTALL_FILES) -DISTCLEANFILES = $(PREINSTALL_DIRS) -CLEANFILES += $(TMPINSTALL_FILES) - -include $(top_srcdir)/../../../../automake/local.am diff --git a/c/src/lib/libbsp/i960/cvme961/bsp_specs b/c/src/lib/libbsp/i960/cvme961/bsp_specs deleted file mode 100644 index 446dafab45..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/bsp_specs +++ /dev/null @@ -1,12 +0,0 @@ -%rename endfile old_endfile -%rename startfile old_startfile -%rename link old_link - -*startfile: -%{!qrtems: %(old_startfile)} %{!nostdlib: %{qrtems: \ -%{!qrtems_debug: start.o%s} \ -%{qrtems_debug: start_g.o%s}}} - -*link: -%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N -e _start} - diff --git a/c/src/lib/libbsp/i960/cvme961/clock/ckinit.c b/c/src/lib/libbsp/i960/cvme961/clock/ckinit.c deleted file mode 100644 index d47c3450a2..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/clock/ckinit.c +++ /dev/null @@ -1,134 +0,0 @@ -/* Clock_init() - * - * This routine initializes the timer on the VIC chip on the CVME961. - * The tick frequency is 1 millisecond. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include - -#include -#include - -#define CLOCK_VECTOR 5 - -uint32_t Clock_isrs; /* ISRs until next tick */ -i960_isr_entry Old_ticker; -volatile uint32_t Clock_driver_ticks; - /* ticks since initialization */ - -void Clock_exit( void ); - -/* - * These are set by clock driver during its init - */ - -rtems_device_major_number rtems_clock_major = ~0; -rtems_device_minor_number rtems_clock_minor; - -/* this is later in the file to avoid it being inlined */ -rtems_isr Clock_isr( rtems_vector_number vector ); - -void Install_clock( - rtems_isr_entry clock_isr -) -{ - volatile unsigned char *victimer; - - Clock_driver_ticks = 0; - Clock_isrs = BSP_Configuration.microseconds_per_tick / 1000; - - Old_ticker = set_vector( clock_isr, CLOCK_VECTOR, 1 ); - victimer = (volatile unsigned char *) 0xa00000c3; - *victimer = 0x12; - *victimer = 0x92; /* 1000 HZ */ -} - -void Clock_exit() -{ - unsigned char *victimer; - - victimer = (unsigned char *) 0xa00000c3; - *victimer = 0x12; - i960_mask_intr( 5 ); - /* do not restore old vector */ -} - -rtems_device_driver Clock_initialize( - rtems_device_major_number major, - rtems_device_minor_number minor, - void *pargp -) -{ - Install_clock( Clock_isr ); - - atexit( Clock_exit ); - - /* - * make major/minor avail to others such as shared memory driver - */ - - rtems_clock_major = major; - rtems_clock_minor = minor; - - return RTEMS_SUCCESSFUL; -} - -rtems_device_driver Clock_control( - rtems_device_major_number major, - rtems_device_minor_number minor, - void *pargp -) -{ - uint32_t isrlevel; - rtems_libio_ioctl_args_t *args = pargp; - - if (args == 0) - goto done; - - /* - * This is hokey, but until we get a defined interface - * to do this, it will just be this simple... - */ - - if (args->command == rtems_build_name('I', 'S', 'R', ' ')) - { - Clock_isr(CLOCK_VECTOR); - } - else if (args->command == rtems_build_name('N', 'E', 'W', ' ')) - { - rtems_interrupt_disable( isrlevel ); - (void) set_vector( args->buffer, CLOCK_VECTOR, 1 ); - rtems_interrupt_enable( isrlevel ); - } - -done: - return RTEMS_SUCCESSFUL; -} - -rtems_isr Clock_isr( - rtems_vector_number vector -) -{ - /* enable_tracing(); */ - Clock_driver_ticks += 1; - if ( Clock_isrs == 1 ) { - rtems_clock_tick(); - Clock_isrs = BSP_Configuration.microseconds_per_tick / 1000; - } - else - Clock_isrs -= 1; - i960_clear_intr( 5 ); -} diff --git a/c/src/lib/libbsp/i960/cvme961/configure.ac b/c/src/lib/libbsp/i960/cvme961/configure.ac deleted file mode 100644 index cae33f5a77..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/configure.ac +++ /dev/null @@ -1,20 +0,0 @@ -## Process this file with autoconf to produce a configure script. -## -## $Id$ - -AC_PREREQ(2.59) -AC_INIT([rtems-c-src-lib-libbsp-i960-cvme961],[_RTEMS_VERSION],[rtems-bugs@rtems.com]) -AC_CONFIG_SRCDIR([bsp_specs]) -RTEMS_TOP(../../../../../..) - -RTEMS_CANONICAL_TARGET_CPU -AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.9]) -RTEMS_BSP_CONFIGURE - -RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm]) -RTEMS_CANONICALIZE_TOOLS -RTEMS_PROG_CCAS - -# Explicitly list all Makefiles here -AC_CONFIG_FILES([Makefile]) -AC_OUTPUT diff --git a/c/src/lib/libbsp/i960/cvme961/console/console.c b/c/src/lib/libbsp/i960/cvme961/console/console.c deleted file mode 100644 index 958d4e1638..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/console/console.c +++ /dev/null @@ -1,206 +0,0 @@ -/* - * This file contains the CVME961 console IO package. - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include - -/* console_initialize - * - * This routine initializes the console IO driver. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * Return values: - */ - -rtems_device_driver console_initialize( - rtems_device_major_number major, - rtems_device_minor_number minor, - void *arg -) -{ - rtems_status_code status; - - status = rtems_io_register_name( - "/dev/console", - major, - (rtems_device_minor_number) 0 - ); - - if (status != RTEMS_SUCCESSFUL) - rtems_fatal_error_occurred(status); - - return RTEMS_SUCCESSFUL; -} - -/* - * NINDY_IO( ... ) - * - * Interface to NINDY. - */ - -#define NINDY_INPUT 0 -#define NINDY_OUTPUT 1 - -void NINDY_IO(); - -void ___NINDY_IO_WRAPPER( void ) /* never called */ -{ - asm volatile ( " .text" ); - asm volatile ( " .align 4" ); - asm volatile ( " .globl _NINDY_IO" ); - asm volatile ( "_NINDY_IO:" ); - asm volatile ( " calls 0 /* call console routines */" ); - asm volatile ( " ret" ); -} - -/* inbyte - * - * This routine reads a character from the console using NINDY. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * Return values: - * character read from UART - */ - -char inbyte( void ) -{ - char ch; - - NINDY_IO( NINDY_INPUT, &ch ); - return ch; -} - -/* outbyte - * - * This routine transmits a character out the console using NINDY. - * - * Input parameters: - * ch - character to be transmitted - * - * Output parameters: NONE - */ - -void outbyte( - char ch -) -{ - NINDY_IO( NINDY_OUTPUT, ch ); -} - -/* - * Open entry point - */ - -rtems_device_driver console_open( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - return RTEMS_SUCCESSFUL; -} - -/* - * Close entry point - */ - -rtems_device_driver console_close( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - return RTEMS_SUCCESSFUL; -} - -/* - * read bytes from the serial port. We only have stdin. - */ - -rtems_device_driver console_read( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - rtems_libio_rw_args_t *rw_args; - char *buffer; - int maximum; - int count = 0; - - rw_args = (rtems_libio_rw_args_t *) arg; - - buffer = rw_args->buffer; - maximum = rw_args->count; - - for (count = 0; count < maximum; count++) { - buffer[ count ] = inbyte(); - if (buffer[ count ] == '\n' || buffer[ count ] == '\r') { - buffer[ count++ ] = '\n'; - break; - } - } - - rw_args->bytes_moved = count; - return (count >= 0) ? RTEMS_SUCCESSFUL : RTEMS_UNSATISFIED; -} - -/* - * write bytes to the serial port. Stdout and stderr are the same. - */ - -rtems_device_driver console_write( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - int count; - int maximum; - rtems_libio_rw_args_t *rw_args; - char *buffer; - - rw_args = (rtems_libio_rw_args_t *) arg; - - buffer = rw_args->buffer; - maximum = rw_args->count; - - for (count = 0; count < maximum; count++) { - if ( buffer[ count ] == '\n') { - outbyte('\r'); - } - outbyte( buffer[ count ] ); - } - - rw_args->bytes_moved = maximum; - return 0; -} - -/* - * IO Control entry point - */ - -rtems_device_driver console_control( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - return RTEMS_SUCCESSFUL; -} diff --git a/c/src/lib/libbsp/i960/cvme961/include/.cvsignore b/c/src/lib/libbsp/i960/cvme961/include/.cvsignore deleted file mode 100644 index 5f1077556d..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/include/.cvsignore +++ /dev/null @@ -1,4 +0,0 @@ -bspopts.h -bspopts.h.in -stamp-h -stamp-h.in diff --git a/c/src/lib/libbsp/i960/cvme961/include/bsp.h b/c/src/lib/libbsp/i960/cvme961/include/bsp.h deleted file mode 100644 index 869eefdfe7..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/include/bsp.h +++ /dev/null @@ -1,126 +0,0 @@ -/* bsp.h - * - * This include file contains some definitions specific to the - * Cyclone CVME960 and CVME961 boards. These boards are the - * same except the 960 uses SRAM and the 961 DRAM. - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#ifndef __CVME961_h -#define __CVME961_h - -#ifdef __cplusplus -extern "C" { -#endif - -#include - -#include -#include -#include -#include -#include - -/* - * confdefs.h overrides for this BSP: - * - number of termios serial ports (defaults to 1) - * - Interrupt stack space is not minimum if defined. - */ - -/* #define CONFIGURE_NUMBER_OF_TERMIOS_PORTS 2 */ -#define CONFIGURE_INTERRUPT_STACK_MEMORY (4 * 1024) - -/* - * Simple spin delay in microsecond units for device drivers. - * This is very dependent on the clock speed of the target. - */ - -#define rtems_bsp_delay( microseconds ) \ - { register uint32_t _delay=(microseconds); \ - register uint32_t _tmp = 0; /* initialized to avoid warning */ \ - asm volatile( "0: \ - remo 3,31,%0 ; \ - cmpo 0,%0 ; \ - subo 1,%1,%1 ; \ - cmpobne.t 0,%1,0b " \ - : "=d" (_tmp), "=d" (_delay) \ - : "0" (_tmp), "1" (_delay) ); \ - } - -/* Constants */ - -#define RAM_START 0 -#define RAM_END 0x100000 - -/* NINDY console I/O requests: - * CO sends a single character to stdout, - * CI reads one. - */ - -#define NINDY_INPUT 0 -#define NINDY_OUTPUT 1 - -/* - * get_prcb - * - * Returns the PRCB pointer. - */ - -static inline i960ca_PRCB *get_prcb( void ) -{ - register i960ca_PRCB *_prcb = 0; - - asm volatile( "calls 5; \ - mov g0,%0" \ - : "=d" (_prcb) \ - : "0" (_prcb) ); - return ( _prcb ); -} - -#ifdef C961_INIT -#undef BSP_EXTERN -#define BSP_EXTERN -#else -#undef BSP_EXTERN -#define BSP_EXTERN extern -#endif - -/* miscellaneous stuff assumed to exist */ - -extern rtems_configuration_table BSP_Configuration; - -BSP_EXTERN i960ca_PRCB *Prcb; -BSP_EXTERN i960ca_control_table *Ctl_tbl; - -/* - * Device Driver Table Entries - */ - -/* - * NOTE: Use the standard Console driver entry - */ - -/* - * NOTE: Use the standard Clock driver entry - */ - -/* functions */ - -void bsp_cleanup( void ); - -i960_isr_entry set_vector( rtems_isr_entry, unsigned int, unsigned int ); - -#ifdef __cplusplus -} -#endif - -#endif -/* end of include file */ diff --git a/c/src/lib/libbsp/i960/cvme961/include/tm27.h b/c/src/lib/libbsp/i960/cvme961/include/tm27.h deleted file mode 100644 index f83175a6e7..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/include/tm27.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - * tm27.h - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#ifndef _RTEMS_TMTEST27 -#error "This is an RTEMS internal file you must not include directly." -#endif - -#ifndef __tm27_h -#define __tm27_h - -/* - * Define the interrupt mechanism for Time Test 27 - */ - -#define MUST_WAIT_FOR_INTERRUPT 0 - -#define Install_tm27_vector( handler ) set_vector( (handler), 6, 1 ) - -#define Cause_tm27_intr() i960_cause_intr( 0x62 ) - -#define Clear_tm27_intr() i960_clear_intr( 6 ) - -#define Lower_tm27_intr() /* empty */ - -#endif diff --git a/c/src/lib/libbsp/i960/cvme961/shmsupp/addrconv.c b/c/src/lib/libbsp/i960/cvme961/shmsupp/addrconv.c deleted file mode 100644 index cc54dd6b54..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/shmsupp/addrconv.c +++ /dev/null @@ -1,36 +0,0 @@ -/* Shm_Convert_address - * - * This routine takes into account the peculiar short VME address - * of the CVME961 board. The CVME961 maps short address space - * 0xffffxxxx to 0xb400xxxx. - * - * Input parameters: - * address - address to convert - * - * Output parameters: - * returns - converted address - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include -#include "shm_driver.h" - -void *Shm_Convert_address( - void *address -) -{ - uint32_t workaddr = (uint32_t) address; - - if ( workaddr >= 0xffff0000 ) - workaddr = (workaddr & 0xffff) | 0xb4000000; - return ( (uint32_t*)workaddr ); -} diff --git a/c/src/lib/libbsp/i960/cvme961/shmsupp/getcfg.c b/c/src/lib/libbsp/i960/cvme961/shmsupp/getcfg.c deleted file mode 100644 index ae29aa31dc..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/shmsupp/getcfg.c +++ /dev/null @@ -1,96 +0,0 @@ -/* void Shm_Get_configuration( localnode, &shmcfg ) - * - * This routine initializes, if necessary, and returns a pointer - * to the Shared Memory Configuration Table for the Cyclone CVME961. - * - * INPUT PARAMETERS: - * localnode - local node number - * shmcfg - address of pointer to SHM Config Table - * - * OUTPUT PARAMETERS: - * *shmcfg - pointer to SHM Config Table - * - * NOTES: CVME961 target system has onboard dual-ported memory. This - * file uses the USE_ONBOARD_RAM macro to determine if this - * RAM is to be used as the SHM. If so (i.e. USE_ONBOARD_RAM - * is set to 1), it is assumed that the master node's dual - * ported memory will be used and that it is configured - * correctly. The node owning the memory CANNOT access it - * using a local address. The "if" insures that the MASTER - * node uses a local address to access the dual-ported memory. - * - * The interprocessor interrupt used on the CVME961 is generated - * by the VIC068. The ICMS capablities of the VIC068 are used - * to generate interprocessor interrupts for up to eight nodes. - * - * The following table illustrates the configuration limitations: - * - * BUS MAX - * MODE ENDIAN NODES - * ========= ====== ======= - * POLLED LITTLE 2+ - * INTERRUPT LITTLE 2-8 - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include "shm_driver.h" - -#define USE_ONBOARD_RAM 0 /* use onboard (1) or VME RAM */ - /* for SHM communications */ - -#define INTERRUPT 1 /* CVME961 target supports both */ -#define POLLING 0 /* polling and interrupt modes */ - -shm_config_table BSP_shm_cfgtbl; - -void Shm_Get_configuration( - uint32_t localnode, - shm_config_table **shmcfg -) -{ -#if ( USE_ONBOARD_RAM == 1 ) - if ( Shm_RTEMS_MP_Configuration->node == MASTER ) - BSP_shm_cfgtbl.base = (uint32_t*)0x00300000; - else - BSP_shm_cfgtbl.base = (uint32_t*)0x10300000; -#else - BSP_shm_cfgtbl.base = (uint32_t*)0x20000000; -#endif - - BSP_shm_cfgtbl.length = 1 * MEGABYTE; - BSP_shm_cfgtbl.format = SHM_LITTLE; - - BSP_shm_cfgtbl.cause_intr = Shm_Cause_interrupt; - -#ifdef NEUTRAL_BIG - BSP_shm_cfgtbl.convert = (void *)CPU_swap_u32; -#else - BSP_shm_cfgtbl.convert = NULL_CONVERT; -#endif - -#if (POLLING==1) - BSP_shm_cfgtbl.poll_intr = POLLED_MODE; - BSP_shm_cfgtbl.Intr.address = NO_INTERRUPT; - BSP_shm_cfgtbl.Intr.value = NO_INTERRUPT; - BSP_shm_cfgtbl.Intr.length = NO_INTERRUPT; -#else - BSP_shm_cfgtbl.poll_intr = INTR_MODE; - BSP_shm_cfgtbl.Intr.address = - (uint32_t*) (0xffff0021|((localnode-1) << 12)); - /* use ICMS0 */ - BSP_shm_cfgtbl.Intr.value = 1; - BSP_shm_cfgtbl.Intr.length = BYTE; -#endif - - *shmcfg = &BSP_shm_cfgtbl; - -} diff --git a/c/src/lib/libbsp/i960/cvme961/shmsupp/lock.c b/c/src/lib/libbsp/i960/cvme961/shmsupp/lock.c deleted file mode 100644 index dfddd58fcf..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/shmsupp/lock.c +++ /dev/null @@ -1,74 +0,0 @@ -/* Shared Memory Lock Routines - * - * This shared memory locked queue support routine need to be - * able to lock the specified locked queue. Interrupts are - * disabled while the queue is locked to prevent preemption - * and deadlock when two tasks poll for the same lock. - * previous level. - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include -#include - -/* - * Shm_Initialize_lock - * - * Initialize the lock for the specified locked queue. - */ - -void Shm_Initialize_lock( - Shm_Locked_queue_Control *lq_cb -) -{ - lq_cb->lock = LQ_UNLOCKED; -} - -/* void _Shm_Lock( &lq_cb ) - * - * This shared memory locked queue support routine locks the - * specified locked queue. It disables interrupts to prevent - * a deadlock condition. - */ - -void Shm_Lock( - Shm_Locked_queue_Control *lq_cb -) -{ - uint32_t isr_level, oldlock; - - rtems_interrupt_disable( isr_level ); - Shm_isrstat = isr_level; - while ( 1 ) { - atomic_modify( SHM_LOCK_VALUE, &lq_cb->lock, oldlock ); - if ( !(oldlock & SHM_LOCK_VALUE) ) - return; - rtems_bsp_delay( 28 ); /* delay 28 microseconds */ - } -} - -/* - * Shm_Unlock - * - * Unlock the lock for the specified locked queue. - */ - -void Shm_Unlock( - Shm_Locked_queue_Control *lq_cb -) -{ - uint32_t isr_level; - - lq_cb->lock = SHM_UNLOCK_VALUE; - isr_level = Shm_isrstat; - rtems_interrupt_enable( isr_level ); -} diff --git a/c/src/lib/libbsp/i960/cvme961/shmsupp/mpisr.c b/c/src/lib/libbsp/i960/cvme961/shmsupp/mpisr.c deleted file mode 100644 index 235a375d38..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/shmsupp/mpisr.c +++ /dev/null @@ -1,69 +0,0 @@ -/* Shm_isr_cvme961() - * - * NOTE: This routine is not used when in polling mode. Either - * this routine OR Shm_clockisr is used in a particular system. - * - * There must be sufficient time after the IACK (read at - * 0xb600000x) for the VIC068 to clear the interrupt request - * before the interrupt request is cleared from IPND (sf0). - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include -#include "shm_driver.h" - -rtems_isr Shm_isr_cvme961( - rtems_vector_number vector -) -{ - uint32_t vic_vector; - - /* enable_tracing(); */ - vic_vector = (*(volatile uint8_t*)0xb6000007); - /* reset intr by reading */ - /* vector at IPL=3 */ - Shm_Interrupt_count += 1; - rtems_multiprocessing_announce(); - (*(volatile uint8_t*)0xa000005f) = 0; /* clear ICMS0 */ - i960_clear_intr( 6 ); - -} - -/* void _Shm_setvec( ) - * - * This driver routine sets the SHM interrupt vector to point to the - * driver's SHM interrupt service routine. - * - * NOTE: See pp. 21-22, 36-39 of the CVME961 Manual for more info. - * - * Input parameters: NONE - * - * Output parameters: NONE - */ - -void Shm_setvec() -{ - uint32_t isrlevel; - - rtems_interrupt_disable( isrlevel ); - /* set SQSIO4 CTL REG for */ - /* VME slave address */ - (*(uint8_t*)0xc00000b0) = - (Shm_RTEMS_MP_Configuration->node - 1) | 0x10; - set_vector( Shm_isr_cvme961, 6, 1 ); - /* set ICMS Bector Base Register */ - (*(uint8_t*)0xa0000053) = 0x60; /* XINT6 vector is 0x62 */ - /* set ICMS Intr Control Reg */ - (*(uint8_t*)0xa0000047) = 0xeb; /* ICMS0 enabled, IPL=0 */ - (*(uint8_t*)0xa000005f) = 0; /* clear ICMS0 */ - rtems_interrupt_enable( isrlevel ); -} diff --git a/c/src/lib/libbsp/i960/cvme961/start/start.S b/c/src/lib/libbsp/i960/cvme961/start/start.S deleted file mode 100644 index 8a6d3d9161..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/start/start.S +++ /dev/null @@ -1,109 +0,0 @@ -/* entry.s - * - * This file contains the entry point for the application. - * The name of this entry point is compiler dependent. - * It jumps to the BSP which is responsible for performing - * all initialization. - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include - - BEGIN_CODE - PUBLIC(start) # GNU960 default entry point - -SYM(start): - mov 3, r12 - modpc r12, r12, r12 # enable tracing/trace faults - mov g5, g5 # NOP - mov 0, g14 # initialize constant for C - - /* - * zero out uninitialized data area - */ -zerobss: - lda _end, r4 /* find end of .bss */ - lda _bss_start, r5 /* find beginning of .bss */ - ldconst 0, r6 - -loop: st r6, (r5) /* to zero out uninitialized */ - addo 4, r5, r5 /* data area */ - cmpobl r5, r4, loop /* loop until _end reached */ - -/* set up stack pointer: - * The heap will begin at '_end'; its length is 'heap_size' - * bytes. The stack will begin at the first 64-byte-aligned - * block after the heap. - * - * A default value of 'heap_size' is set by linking with libnindy.a - * The default can be overridden by redefining this symbol at link - * time (with a line of the form 'heap_size=XXXX;' in the lnk960 - * linker specification file; or one of the form - * "-defsym heap_size=XXXX" on the gld960 invocation line). - */ - - ldconst _end, sp /* set sp = address of end of heap */ - lda heap_size(sp),sp - lda 64(sp), sp /* Now round up to 64-byte boundary */ - ldconst 0xffffffc0, r12 - and r12, sp, sp - st sp, _stack_start /* Save for brk() routine */ - - call init_frames - ret /* return to monitor */ - -init_frames: - mov 0, g14 /* initialize constant for C */ - ldconst 0x3b001000, g0 - ldconst 0x00009107, g1 - modac g1, g0, g0 /* set AC controls */ - - /* - * remember the frame, so that we can set it up if necessary - */ - - st fp, _start_frame - - /* - * Call application boot_card. - * Someday, real values of argc and argv will be set up. - * For now, they are set to 0. - */ - ldconst 0,g0 - ldconst 0,g1 - ldconst 0,g2 - call _boot_card - ret - -END_CODE - - BEGIN_DATA - - PUBLIC(_start_frame) - PUBLIC(start_frame) -SYM (_start_frame): -SYM (start_frame): - .word 0 # addr of first user frame: for gdb960 - - PUBLIC(_stack_start) - PUBLIC(stack_start) -SYM (_stack_start): -SYM (stack_start): - .word 0 # addr of first user frame: for gdb960 - -END_DATA - -BEGIN_BSS - PUBLIC(heap_size) - .set heap_size,0x2000 -END_BSS - -END diff --git a/c/src/lib/libbsp/i960/cvme961/startup/bspclean.c b/c/src/lib/libbsp/i960/cvme961/startup/bspclean.c deleted file mode 100644 index e9b4e72e7f..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/startup/bspclean.c +++ /dev/null @@ -1,35 +0,0 @@ -/* - * This routine is used to return control to the NINDY monitor - * and is automatically invoked at shutdown. - * - * NOTES: DOES NOT RETURN!!! - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include "bsp.h" - -void bsp_cleanup( void ) -{ - extern void start( void ); - - register volatile void *start_addr = 0; - - asm volatile( "mov 0,g0;" - "fmark ;" - "syncf ;" - ".word 0xfeedface ; " - "bx (%0)" : "=r" (start_addr) : "0" (start_addr) ); - /* The constant 0xfeedface is a magic word for break which - * is defined by NINDY. The branch extended restarts the - * application if the user types "go". - */ -} diff --git a/c/src/lib/libbsp/i960/cvme961/startup/bspstart.c b/c/src/lib/libbsp/i960/cvme961/startup/bspstart.c deleted file mode 100644 index 5a5bd86d32..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/startup/bspstart.c +++ /dev/null @@ -1,115 +0,0 @@ -/* - * This routine starts the application. It includes application, - * board, and monitor specific initialization and configuration. - * The generic CPU dependent initialization has been performed - * before this routine is invoked. - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include - -#define C961_INIT - -#include -#include -#include - -/* - * The original table from the application and our copy of it with - * some changes. - */ - -extern rtems_configuration_table Configuration; - -rtems_configuration_table BSP_Configuration; - -rtems_cpu_table Cpu_table; - -char *rtems_progname; - -/* - * Use the shared implementations of the following routines - */ - -void bsp_postdriver_hook(void); -void bsp_libc_init( void *, uint32_t, int ); - -/* - * Function: bsp_pretasking_hook - * Created: 95/03/10 - * - * Description: - * BSP pretasking hook. Called just before drivers are initialized. - * Used to setup libc and install any BSP extensions. - * - * NOTES: - * Must not use libc (to do io) from here, since drivers are - * not yet initialized. - * - */ - -void bsp_pretasking_hook(void) -{ - extern int end; - uint32_t heap_start; - - heap_start = (uint32_t) &end; - if (heap_start & (CPU_ALIGNMENT-1)) - heap_start = (heap_start + CPU_ALIGNMENT) & ~(CPU_ALIGNMENT-1); - - bsp_libc_init((void *) heap_start, 64 * 1024, 0); - -#ifdef RTEMS_DEBUG - rtems_debug_enable( RTEMS_DEBUG_ALL_MASK ); -#endif -} - -/* - * bsp_start - * - * This routine does the bulk of the system initialization. - */ - -void bsp_start( void ) -{ - /* set node number in SQSIO4 CTL REG */ - - *((uint32_t*)0xc00000b0) = - (Configuration.User_multiprocessing_table) ? - Configuration.User_multiprocessing_table->node : 0; - - Prcb = get_prcb(); - Ctl_tbl = Prcb->control_tbl; - - /* following configures the data breakpoint (which must be set - * before this is executed) to break on writes only. - */ - - Ctl_tbl->bpcon &= ~0x00cc0000; - i960_reload_ctl_group( 6 ); - - /* bit 31 of the Register Cache Control can be set to - * enable an alternative caching algorithm. It does - * not appear to help RTEMS. - */ - - /* Configure Number of Register Caches */ - - Prcb->reg_cache_cfg = 8; - i960_soft_reset( Prcb ); - - Cpu_table.pretasking_hook = bsp_pretasking_hook; /* init libc, etc. */ - Cpu_table.postdriver_hook = bsp_postdriver_hook; - Cpu_table.interrupt_stack_size = CONFIGURE_INTERRUPT_STACK_MEMORY; - - BSP_Configuration.work_space_start = (void *) - (RAM_END - BSP_Configuration.work_space_size); -} diff --git a/c/src/lib/libbsp/i960/cvme961/startup/exit.c b/c/src/lib/libbsp/i960/cvme961/startup/exit.c deleted file mode 100644 index 7774967c42..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/startup/exit.c +++ /dev/null @@ -1,37 +0,0 @@ -/* exit - * - * This routine is used to return control to the NINDY monitor - * and is automatically invoked by the STDIO exit() routine. - * - * INPUT: - * status - exit status - * - * OUTPUT: NONE - * - * NOTES: DOES NOT RETURN!!! - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include "bsp.h" - -void _exit( ) -{ - asm volatile( "mov 0,g0; \ - fmark ; \ - syncf ; \ - .word 0xfeedface ; \ - bx start" : : ); - /* The constant 0xfeedface is a magic word for break which - * is defined by NINDY. The branch extended restarts the - * application if the user types "go". - */ -} diff --git a/c/src/lib/libbsp/i960/cvme961/startup/linkcmds b/c/src/lib/libbsp/i960/cvme961/startup/linkcmds deleted file mode 100644 index e1c5041996..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/startup/linkcmds +++ /dev/null @@ -1,82 +0,0 @@ -/* - * This file contains directives for the GNU linker which are specific - * to the Cyclone CVME960/CVME961 boards. - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -MEMORY - { - ram : org = 0x0, l = 1M - } - -SECTIONS -{ - .text 0x10000 : - { - text_start = . ; - _text_start = . ; - *(.text) - . = ALIGN (16); - - /* - * Special FreeBSD sysctl sections. - */ - . = ALIGN (16); - __start_set_sysctl_set = .; - *(set_sysctl_*); - __stop_set_sysctl_set = ABSOLUTE(.); - *(set_domain_*); - *(set_pseudo_*); - - *(.eh_fram) - *(.gnu.linkonce.t*) - - . = ALIGN (16); - - /* - * C++ constructors - */ - __CTOR_LIST__ = .; - LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2) - *(.ctors) - LONG(0) - __CTOR_END__ = .; - __DTOR_LIST__ = .; - LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2) - *(.dtors) - LONG(0) - __DTOR_END__ = .; - - _rodata_start = . ; - *(.rodata*) - *(.gnu.linkonce.r*) - _erodata = ALIGN( 0x10 ) ; - etext = ALIGN( 0x10 ) ; -/* _etext = .; -- conflicts */ - } - .data ADDR( .text ) + SIZEOF( .text ): - { - data_start = . ; - _data_start = .; - *(.data) - edata = ALIGN( 0x10 ) ; -/* _edata = .; -- conflicts */ - } - .bss ADDR( .data ) + SIZEOF( .data ): - { - bss_start = . ; - _bss_start = . ; - *(.bss) - *(COMMON) - end = . ; - _end = . ; - } -} diff --git a/c/src/lib/libbsp/i960/cvme961/startup/setvec.c b/c/src/lib/libbsp/i960/cvme961/startup/setvec.c deleted file mode 100644 index 0e88c4c2a5..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/startup/setvec.c +++ /dev/null @@ -1,144 +0,0 @@ -/* set_vector - * - * This routine attempts to perform all "generic" interrupt initialization - * for the specified XINT line. It is specific to the Cyclone CVME961 in - * that it knows which interrupts are initialized by the monitor, the - * characteristics of XINT5 (VIC068 clock tick), and that it assumes the - * i960 is processing interrupts in dedicated mode. It attempts to map - * XINTs to interrupt vectors in a fairly straght forward way. - * - * XINT USE VECTOR INTR TBL INDEX TRIGGERED - * ==== ============= ====== ============== ========= - * 0 VMEbus ERROR 0x02 0x03 EDGE - * 1 DRAM PARITY 0x12 0x13 EDGE - * 2 Z8530 0x22 0x23 LEVEL - * 3 SQUALL 0 0x52 0x53 ---- - * 4 Z8536 (SQSIO4) 0x72 0x73 LEVEL - * 5 TICK 0x32 0x33 EDGE - * 6 VIC068 0x62 0x63 LEVEL - * 7 UNUSED 0x42 0x43 LEVEL - * - * The interrupt handler is installed in both the cached and memory - * resident interrupt tables. The appropriate IMAP register is updated to - * reflect the vector selected by this routine. Global interrupts are - * enabled. If XINT5 is being installed, places it in trigger mode. - * Finally, set_vector_support() is invoked to install the new IMAP and - * ICON, unmask the XINT in IMASK, and lower the i960's interrupt - * level to 0. - * - * INPUT: - * func - interrupt handler entry point - * xint - external interrupt line - * type - 0 indicates raw hardware connect - * 1 indicates RTEMS interrupt connect - * - * RETURNS: - * address of previous interrupt handler - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include - -#include - -void print_prcb(); -void print_intr_info(); -void print_ipnd_imsk(); - -unsigned int Xint_2_Group_Map[8] = { 0, 1, 2, 5, 7, 3, 6, 4 }; - -i960_isr_entry set_vector( /* returns old vector */ - rtems_isr_entry func, /* isr routine */ - unsigned int xint, /* XINT number */ - unsigned int type /* RTEMS or RAW */ -) -{ - i960_isr_entry *intr_tbl, *cached_intr_tbl; - i960_isr_entry saved_intr; - unsigned int vector, group, nibble; - unsigned int *imap; - - if ( xint > 7 ) - exit( 0x80 ); - - cached_intr_tbl = (i960_isr_entry *) 0; - intr_tbl = (i960_isr_entry *) Prcb->intr_tbl; - group = Xint_2_Group_Map[xint]; /* remap XINT to group */ - vector = (group << 4) + 2; /* direct vector num */ - - if ( type ) - rtems_interrupt_catch( func, vector, (rtems_isr_entry *) &saved_intr ); - else { - saved_intr = (i960_isr_entry) intr_tbl[ vector ]; - /* return old vector */ - intr_tbl[ vector + 1 ] = /* normal vector table */ - cached_intr_tbl[ group ] = (i960_isr_entry) func; /* cached vector */ - } - - if ( xint <= 3 ) imap = &Ctl_tbl->imap0; /* updating IMAP0 */ - else imap = &Ctl_tbl->imap1; /* updating IMAP1 */ - nibble = (xint % 4) * 4; - *imap &= ~(0xf << nibble); - *imap |= group << nibble; - - Ctl_tbl->icon &= ~0x00000400; /* enable global interrupts */ - Ctl_tbl->icon |= 0x00004000; /* fast sampling mode */ - switch ( xint ) { - case 0: Ctl_tbl->icon |= 0x00000004; break; - case 1: Ctl_tbl->icon |= 0x00000008; break; - case 2: Ctl_tbl->icon &= ~0x00000010; break; - case 4: Ctl_tbl->icon &= ~0x00000040; break; - case 5: Ctl_tbl->icon |= 0x00000080; break; - case 6: Ctl_tbl->icon &= ~0x00000100; break; - default: exit( 0x81 ); break; /* unsupported */ - } - - if ( xint == 4 ) { /* reprogram MCON for SQSIO4 */ - Ctl_tbl->mcon12 = 0x00002012; /* MCON12 - 0xCxxxxxxx */ - Ctl_tbl->mcon13 = 0x00000000; /* MCON13 - 0xDxxxxxxx */ - i960_reload_ctl_group( 5 ); /* update MCON12-MCON15 */ - } - - i960_unmask_intr( xint ); /* update IMSK */ - i960_reload_ctl_group( 1 ); /* update IMAP?/ICON */ - return( saved_intr ); /* return old vector */ -} - -void print_prcb() -{ - printf( "fault_table =0x%p\n", Prcb->fault_tbl ); - printf( "control_tbl =0x%p\n", Prcb->control_tbl ); - printf( "AC mask ov =0x%x\n", Prcb->initial_ac ); - printf( "fltconfig =0x%x\n", Prcb->fault_config ); - printf( "intr tbl =0x%p\n", Prcb->intr_tbl ); - printf( "systable =0x%p\n", Prcb->sys_proc_tbl ); - printf( "reserved =0x%x\n", Prcb->reserved ); - printf( "isr stk =0x%p\n", Prcb->intr_stack ); - printf( "ins cache =0x%x\n", Prcb->ins_cache_cfg ); - printf( "reg cache =0x%x\n", Prcb->reg_cache_cfg ); -} - -void print_intr_info() -{ - printf( "prcb =0x%p\n", Prcb ); - printf( "ctl_tbl =0x%p\n", Ctl_tbl ); - printf( "intr_tbl=0x%p\n", Prcb->intr_tbl ); - printf( "IMAP0 = 0x%x\n", Ctl_tbl->imap0 ); - printf( "IMAP1 = 0x%x\n", Ctl_tbl->imap1 ); - print_ipnd_imsk(); -} - -void print_ipnd_imsk() -{ - printf(" IPEND = 0x%x\n", i960_pend_intrs() ); - printf(" IMASK = 0x%x\n", i960_mask_intrs() ); -} diff --git a/c/src/lib/libbsp/i960/cvme961/timer/timer.c b/c/src/lib/libbsp/i960/cvme961/timer/timer.c deleted file mode 100644 index a3da5e810f..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/timer/timer.c +++ /dev/null @@ -1,105 +0,0 @@ -/* Timer_init() - * - * This routine initializes the Z8536 timer on the SQSIO4 SQUALL - * board for the CVME961 board. The timer is setup to provide a - * tick every 1 millisecond. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * NOTE: This routine will not work if the optimizer is enabled - * for most compilers. The multiple writes to the Z8536 - * will be optimized away. - * - * It is important that the timer start/stop overhead be - * determined when porting or modifying this code. - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include -#include - -#define TIMER 0xc00000a0 - -int Ttimer_val; -rtems_boolean Timer_driver_Find_average_overhead; - -void flush_reg(); -rtems_isr timerisr(); - -void Timer_initialize() -{ - set_vector( timerisr, 4, 0 ); /* install ISR */ - - i960_mask_intr( 5 ); /* disable VIC068 tick */ - flush_reg(); /* timed code starts clean */ - Ttimer_val = 0; /* clear timer ISR count */ - Z8x36_WRITE( TIMER, MASTER_INTR, 0x01 ); /* reset */ - Z8x36_WRITE( TIMER, MASTER_INTR, 0x00 ); /* clear reset */ - Z8x36_WRITE( TIMER, MASTER_CFG, 0x00 ); /* disable everything */ - Z8x36_WRITE( TIMER, CNT_TMR_VECTOR, 0x72 ); /* clear intr vector */ - Z8x36_WRITE( TIMER, MASTER_CFG, 0x20 ); /* clear intr info */ - Z8x36_WRITE( TIMER, MASTER_CFG, 0xe0 ); /* disable interrupts */ - Z8x36_WRITE( TIMER, MASTER_CFG, 0x20 ); /* clear intr info */ - Z8x36_WRITE( TIMER, MASTER_CFG, 0xe0 ); /* disable interrupts */ - Z8x36_WRITE( TIMER, MASTER_INTR, 0xe2 ); /* disable lower chain, */ - /* no vector, set right */ - /* justified addr and */ - /* master int enable */ - Z8x36_WRITE( TIMER, CT1_MODE_SPEC, 0x80 ); /* T1 continuous, and */ - /* cycle/pulse output */ - Z8x36_WRITE( TIMER, CT1_TIME_CONST_MSB, 0x00 ); - Z8x36_WRITE( TIMER, CT1_TIME_CONST_LSB, 0x00 ); - Z8x36_WRITE( TIMER, CT1_CMD_STATUS, 0xc0 ); /* set INTR enable (IE) */ - Z8x36_WRITE( TIMER, MASTER_CFG, 0x40 ); /* enable timer1 */ - Z8x36_WRITE( TIMER, CT1_CMD_STATUS, 0x06 ); /* set trigger command */ - /* (TCB) and gate */ - /* command (GCB) bits */ -} - -#define AVG_OVERHEAD 11 /* It typically takes 5.5 microseconds */ - /* (11 countdowns) to start/stop the timer. */ -#define LEAST_VALID 15 /* Don't trust a value lower than this */ - -int Read_timer() -{ - uint8_t msb, lsb; - uint32_t remaining, total; - - Z8x36_WRITE( TIMER, CT1_CMD_STATUS, 0xce ); /* read the counter value */ - Z8x36_READ( TIMER, CT1_CUR_CNT_MSB, msb ); - Z8x36_READ( TIMER, CT1_CUR_CNT_LSB, lsb ); - - remaining = 0xffff - ((msb << 8) + lsb); - total = (Ttimer_val * 0x10000) + remaining; - - if ( Timer_driver_Find_average_overhead == 1 ) - return total; /* in one-half microsecond units */ - else { - if ( total < LEAST_VALID ) - return 0; /* below timer resolution */ - return (total-AVG_OVERHEAD) >> 1; - } -} - -rtems_status_code Empty_function( void ) -{ - return RTEMS_SUCCESSFUL; -} - -void Set_find_average_overhead( - rtems_boolean find_flag -) -{ - Timer_driver_Find_average_overhead = find_flag; -} diff --git a/c/src/lib/libbsp/i960/cvme961/timer/timerisr.S b/c/src/lib/libbsp/i960/cvme961/timer/timerisr.S deleted file mode 100644 index d1e5982c0a..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/timer/timerisr.S +++ /dev/null @@ -1,64 +0,0 @@ -/* timer_isr() - * - * This routine initializes the Z8536 timer on the SQSIO4 SQUALL - * board for the CVME961 board. The timer is setup to provide a - * tick every 0x10000 / 2 milliseconds. This is used to time - * executing code. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include - -.set PORT_A, 0xc00000a8 # port A -.set PORT_B, 0xc00000a4 # port B -.set PORT_C, 0xc00000a0 # port C -.set CTL_PORT, 0xc00000ac # control port - -.set T1CSR, 0x0a # T1 command/status reg -.set RELOAD, 0x24 # clr IP & IUS,allow countdown - -/* - * Duplicating this symbol is stupid but eliminates - * toolset variation problems. - */ - PUBLIC(timerisr) - PUBLIC(_timerisr) -SYM (timerisr): -SYM (_timerisr): - #ldconst 1,r4 - #modpc 0,r4,r4 # enable tracing - - ld _Ttimer_val,r6 # r6 = test timer - - ldconst T1CSR,r4 # r4 = T1 control status reg - stob r4,CTL_PORT # select T1CSR - ldconst RELOAD,r5 # r5 = reset value - stob r5,CTL_PORT # reset countdown - addo 1,r6,r6 - st r6,_Ttimer_val # increment test timer -loop_til_cleared: - clrbit 4,sf0,sf0 - bbs 4,sf0,loop_til_cleared -leaf: ret - - .leafproc _flush_reg, flush_reg.lf - .globl _flush_reg, flush_reg.lf -_flush_reg: - lda leaf,g14 # g14 = exit address -flush_reg.lf: - flushreg - mov g14,g0 # g0 = exit address - ldconst 0,g14 # set g14 for non-leaf - bx (g0) diff --git a/c/src/lib/libbsp/i960/cvme961/times b/c/src/lib/libbsp/i960/cvme961/times deleted file mode 100644 index 2e742dd876..0000000000 --- a/c/src/lib/libbsp/i960/cvme961/times +++ /dev/null @@ -1,191 +0,0 @@ -# -# Timing Test Suite Results for the Cyclone CVME961 BSP -# -# $Id$ -# - -Board: Cyclone CVME961 -CPU: Intel i960CA -Clock Speed: 33 Mhz -Memory Configuration: DRAM w/no cache -Wait States: 2 wait states - -Times Reported in: microseconds -Timer Source: Z8536 on SQUALL mezzanine module - -Column A: 3.5.1 pre-release -Column B: unused - -# DESCRIPTION A B -== ================================================================= ==== ==== - 1 rtems_semaphore_create 20 - rtems_semaphore_delete 21 - rtems_semaphore_obtain: available 15 - rtems_semaphore_obtain: not available -- NO_WAIT 15 - rtems_semaphore_release: no waiting tasks 16 - - 2 rtems_semaphore_obtain: not available -- caller blocks 62 - - 3 rtems_semaphore_release: task readied -- preempts caller 55 - - 4 rtems_task_restart: blocked task -- preempts caller 77 - rtems_task_restart: ready task -- preempts caller 70 - rtems_semaphore_release: task readied -- returns to caller 25 - rtems_task_create 57 - rtems_task_start 31 - rtems_task_restart: suspended task -- returns to caller 36 - rtems_task_delete: suspended task 47 - rtems_task_restart: ready task -- returns to caller 37 - rtems_task_restart: blocked task -- returns to caller 46 - rtems_task_delete: blocked task 50 - - 5 rtems_task_suspend: calling task 51 - rtems_task_resume: task readied -- preempts caller 49 - - 6 rtems_task_restart: calling task 59 - rtems_task_suspend: returns to caller 18 - rtems_task_resume: task readied -- returns to caller 19 - rtems_task_delete: ready task 50 - - 7 rtems_task_restart: suspended task -- preempts caller 70 - - 8 rtems_task_set_priority: obtain current priority 12 - rtems_task_set_priority: returns to caller 27 - rtems_task_mode: obtain current mode 5 - rtems_task_mode: no reschedule 5 - rtems_task_mode: reschedule -- returns to caller 8 - rtems_task_mode: reschedule -- preempts caller 39 - rtems_task_set_note 13 - rtems_task_get_note 13 - rtems_clock_set 33 - rtems_clock_get 3 - - 9 rtems_message_queue_create 110 - rtems_message_queue_send: no waiting tasks 37 - rtems_message_queue_urgent: no waiting tasks 37 - rtems_message_queue_receive: available 31 - rtems_message_queue_flush: no messages flushed 12 - rtems_message_queue_flush: messages flushed 16 - rtems_message_queue_delete 26 - -10 rtems_message_queue_receive: not available -- NO_WAIT 15 - rtems_message_queue_receive: not available -- caller blocks 62 - -11 rtems_message_queue_send: task readied -- preempts caller 72 - -12 rtems_message_queue_send: task readied -- returns to caller 39 - -13 rtems_message_queue_urgent: task readied -- preempts caller 72 - -14 rtems_message_queue_urgent: task readied -- returns to caller 39 - -15 rtems_event_receive: obtain current events 1 - rtems_event_receive: not available -- NO_WAIT 12 - rtems_event_receive: not available -- caller blocks 56 - rtems_event_send: no task readied 12 - rtems_event_receive: available 12 - rtems_event_send: task readied -- returns to caller 24 - -16 rtems_event_send: task readied -- preempts caller 55 - -17 rtems_task_set_priority: preempts caller 62 - -18 rtems_task_delete: calling task 83 - -19 rtems_signal_catch 9 - rtems_signal_send: returns to caller 15 - rtems_signal_send: signal to self 18 - exit ASR overhead: returns to calling task 22 - exit ASR overhead: returns to preempting task 49 - -20 rtems_partition_create 35 - rtems_region_create 23 - rtems_partition_get_buffer: available 15 - rtems_partition_get_buffer: not available 13 - rtems_partition_return_buffer 18 - rtems_partition_delete 16 - rtems_region_get_segment: available 22 - rtems_region_get_segment: not available -- NO_WAIT 21 - rtems_region_return_segment: no waiting tasks 19 - rtems_region_get_segment: not available -- caller blocks 64 - rtems_region_return_segment: task readied -- preempts caller 74 - rtems_region_return_segment: task readied -- returns to caller 44 - rtems_region_delete 16 - rtems_io_initialize 2 - rtems_io_open 1 - rtems_io_close 1 - rtems_io_read 1 - rtems_io_write 1 - rtems_io_control 1 - -21 rtems_task_ident 149 - rtems_message_queue_ident 145 - rtems_semaphore_ident 156 - rtems_partition_ident 145 - rtems_region_ident 148 - rtems_port_ident 145 - rtems_timer_ident 145 - rtems_rate_monotonic_ident 145 - -22 rtems_message_queue_broadcast: task readied -- returns to caller 42 - rtems_message_queue_broadcast: no waiting tasks 17 - rtems_message_queue_broadcast: task readied -- preempts caller 78 - -23 rtems_timer_create 14 - rtems_timer_fire_after: inactive 22 - rtems_timer_fire_after: active 24 - rtems_timer_cancel: active 15 - rtems_timer_cancel: inactive 13 - rtems_timer_reset: inactive 21 - rtems_timer_reset: active 23 - rtems_timer_fire_when: inactive 34 - rtems_timer_fire_when: active 34 - rtems_timer_delete: active 19 - rtems_timer_delete: inactive 17 - rtems_task_wake_when 69 - -24 rtems_task_wake_after: yield -- returns to caller 9 - rtems_task_wake_after: yields -- preempts caller 45 - -25 rtems_clock_tick 4 - -26 _ISR_Disable 0 - _ISR_Flash 1 - _ISR_Enable 1 - _Thread_Disable_dispatch 0 - _Thread_Enable_dispatch 7 - _Thread_Set_state 11 - _Thread_Disptach (NO FP) 31 - context switch: no floating point contexts 21 - context switch: self 10 - context switch: to another task 10 - context switch: restore 1st FP task 25 - fp context switch: save idle, restore idle 31 - fp context switch: save idle, restore initialized 19 - fp context switch: save initialized, restore initialized 20 - _Thread_Resume 7 - _Thread_Unblock 7 - _Thread_Ready 9 - _Thread_Get 4 - _Semaphore_Get 2 - _Thread_Get: invalid id 0 - -27 interrupt entry overhead: returns to interrupted task 6 - interrupt exit overhead: returns to interrupted task 6 - interrupt entry overhead: returns to nested interrupt 6 - interrupt exit overhead: returns to nested interrupt 5 - interrupt entry overhead: returns to preempting task 7 - interrupt exit overhead: returns to preempting task 36 - -28 rtems_port_create 16 - rtems_port_external_to_internal 11 - rtems_port_internal_to_external 11 - rtems_port_delete 16 - -29 rtems_rate_monotonic_create 15 - rtems_rate_monotonic_period: initiate period -- returns to caller 21 - rtems_rate_monotonic_period: obtain status 13 - rtems_rate_monotonic_cancel 16 - rtems_rate_monotonic_delete: inactive 18 - rtems_rate_monotonic_delete: active 20 - rtems_rate_monotonic_period: conclude periods -- caller blocks 53 diff --git a/c/src/lib/libbsp/i960/i960sim/.cvsignore b/c/src/lib/libbsp/i960/i960sim/.cvsignore deleted file mode 100644 index bfdfd995be..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/.cvsignore +++ /dev/null @@ -1,14 +0,0 @@ -aclocal.m4 -autom4te*.cache -config.cache -config.guess -config.log -config.status -config.sub -configure -depcomp -install-sh -Makefile -Makefile.in -missing -mkinstalldirs diff --git a/c/src/lib/libbsp/i960/i960sim/ChangeLog b/c/src/lib/libbsp/i960/i960sim/ChangeLog deleted file mode 100644 index 77be17d952..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/ChangeLog +++ /dev/null @@ -1,311 +0,0 @@ -2004-09-24 Ralf Corsepius - - * configure.ac: Require automake > 1.9. - -2004-04-23 Ralf Corsepius - - PR 610/bsps - * Makefile.am: Add include/tm27.h, Cosmetics. - * include/tm27.h: Final cosmetics. - -2004-04-22 Ralf Corsepius - - * include/bsp.h: Split out tmtest27 support. - * include/tm27.h: New. - -2004-04-21 Ralf Corsepius - - PR 613/bsps - * include/bsp.h: Remove MAX_LONG_TEST_DURATION. - -2004-04-21 Ralf Corsepius - - PR 614/bsps - * include/bsp.h: Remove MAX_SHORT_TEST_DURATION (Unused). - -2004-04-01 Ralf Corsepius - - * include/bsp.h: Include instead of . - * include/bsp.h: Include instead of . - * include/bsp.h: Include instead of . - -2004-03-31 Ralf Corsepius - - * startup/bspstart.c: Convert to using c99 fixed size types. - -2004-02-19 Ralf Corsepius - - * Makefile.am: Reflect changes to bsp.am. - Preinstall dist_project_lib*. - -2004-02-14 Ralf Corsepius - - * Makefile.am: Reflect changes to bsp.am. - -2004-02-02 Ralf Corsepius - - * Makefile.am: Fix minor bugs in previous patch. - -2004-02-02 Ralf Corsepius - - * 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 - - * configure.ac: Add nostdinc to AUTOMAKE_OPTIONS. - Add RTEMS_PROG_CCAS. - -2004-01-21 Ralf Corsepius - - * Makefile.am: Add PREINSTALL_DIRS. - * wrapup/Makefile.am: Reflect changes to libcpu. - -2004-01-14 Ralf Corsepius - - * start/Makefile.am: Re-add dirstamps to PRE/TMPINSTALL_FILES. - Add PRE/TMPINSTALL_FILES to CLEANFILES. - * startup/Makefile.am: Ditto. - -2004-01-05 Ralf Corsepius - - * wrapup/Makefile.am: Eliminate $(LIB). - Use noinst_DATA to trigger building libbsp.a. - -2003-12-13 Ralf Corsepius - - * start/Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g. - * startup/Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g. - -2003-12-12 Ralf Corsepius - - * start/Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES. - * startup/Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES. - -2003-12-12 Ralf Corsepius - - * configure.ac: Require automake >= 1.8, autoconf >= 2.59. - -2003-12-09 Ralf Corsepius - - * start/Makefile.am: Misc cleanups and fixes. - * startup/Makefile.am: Misc cleanups and fixes. - * wrapup/Makefile.am: Misc cleanups and fixes. - -2003-12-03 Ralf Corsepius - - * 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 - - * 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 - - * Makefile.am: Merge-in include/Makefile.am. - Reflect changes to bsp.am. - * include/Makefile.am: Remove. - * configure.ac: Reflect changes above. - -2003-09-24 Ralf Corsepius - - * bsp_specs: Remove *lib:. - -2003-09-04 Joel Sherrill - - * console/console-io.c, include/bsp.h, startup/bspstart.c: URL for - license changed. - -2003-08-18 Ralf Corsepius - - * Makefile.am: Reflect having moved aclocal/. - -2003-08-16 Ralf Corsepius - - * Makefile.am: Reflect having moved automake/. - * clock/Makefile.am: Reflect having moved automake/. - * console/Makefile.am: Reflect having moved automake/. - * include/Makefile.am: Reflect having moved automake/. - * 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 - - * configure.ac: Use rtems-bugs@rtems.com as bug report email address. - -2003-08-06 Ralf Corsepius - - PR 445/bsps - * bsp_specs: Remove -D__embedded__ -Asystem(embedded) from cpp. - Remove cpp, old_cpp (now unused). - -2003-03-06 Ralf Corsepius - - * configure.ac: Remove AC_CONFIG_AUX_DIR. - -2003-02-11 Ralf Corsepius - - * configure.ac: AM_INIT_AUTOMAKE([1.7.2]). - -2003-02-11 Ralf Corsepius - - * configure.ac: AC_PREREQ(2.57). - -2003-01-20 Joel Sherrill - - * startup/linkcmds*: Add FreeBSD sysctl() sections. - -2003-01-15 Ralf Corsepius - - * 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 - - * start/Makefile.am: Use install-data-local to install startfile. - -2002-12-10 Ralf Corsepius - - * wrapup/Makefile.am: Don't include @RTEMS_BSP@.cfg. - -2002-10-21 Ralf Corsepius - - * .cvsignore: Reformat. - Add autom4te*cache. - Remove autom4te.cache. - -2002-08-21 Joel Sherrill - - * bsp_specs: Added support for -nostdlibs. - -2002-08-11 Ralf Corsepius - - * clock/Makefile.am: Use .$(OBJEXT) instead of .o. - * console/Makefile.am: Use .$(OBJEXT) instead of .o. - * 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 - - * start/Makefile.am: Eliminate PGM. - Add bsplib_DATA = $(PROJECT_RELEASE)/lib/start$(LIB_VARIANT).o. - -2002-07-19 Ralf Corsepius - - * startup/Makefile.am: Add bsplib_DATA = linkcmds. - -2002-07-04 Ralf Corsepius - - * wrapup/Makefile.am: Eliminate TMPINSTALL_FILES. - Remove $(OBJS) from all-local. - -2002-07-04 Ralf Corsepius - - * wrapup/Makefile.am: Add $(LIB) to all-local. - -2002-06-29 Ralf Corsepius - - * wrapup/Makefile.am: Remove preinstallation of libbsp.a, - -2002-03-27 Ralf Corsepius - - * configure.ac: - AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS). - AM_INIT_AUTOMAKE([no-define foreign 1.6]). - * clock/Makefile.am: Remove AUTOMAKE_OPTIONS. - * Makefile.am: Remove AUTOMAKE_OPTIONS. - * console/Makefile.am: Remove AUTOMAKE_OPTIONS. - * include/Makefile.am: Remove AUTOMAKE_OPTIONS. - * start/Makefile.am: Remove AUTOMAKE_OPTIONS. - * startup/Makefile.am: Remove AUTOMAKE_OPTIONS. - * timer/Makefile.am: Remove AUTOMAKE_OPTIONS. - * wrapup/Makefile.am: Remove AUTOMAKE_OPTIONS. - -2001-12-22 Ralf Corsepius - - * bsp_specs: Replace -lrtemsall with -lrtemsbsp -lrtemscpu, - replace -lrtemsall_g with -lrtemsbsp_g -lrtemscpu_g. - -2001-11-30 Ralf Corsepius - - * configure.ac: Introduce RTEMS_BSP_CONFIGURE. - -2001-10-12 Joel Sherrill - - * console/console-io.c: Fixed typo. - -2001-10-11 Ralf Corsepius - - * .cvsignore: Add autom4te.cache for autoconf > 2.52. - * configure.in: Remove. - * configure.ac: New file, generated from configure.in by autoupdate. - -2001-09-27 Ralf Corsepius - - * include/Makefile.am: Use 'CLEANFILES ='. - * include/Makefile.am: Use 'TMPINSTALL_FILES ='. - -2001-05-26 Ralf Corsepius - - * configure.in: Add bspopts.h. - * include/.cvsignore: Add bspopts.h*, stamp-h*. - * include/Makefile.am: Use *_HEADERS instead of *H_FILES. - * include/bsp.h: Include bspopts.h. - -2001-05-10 Ralf Corsepius - - * configure.in: Use RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm]). - -2001-01-03 Joel Sherrill - - * console/console-io.c: Added console_initialize_hardware(). - -2000-11-09 Ralf Corsepius - - * Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS. - -2000-11-02 Ralf Corsepius - - * Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal. - -2000-11-01 Joel Sherrill - - * startup/bspstart.c: assoc.h, error.h, libio_.h, libio.h, - and libcsupport.h moved from libc to lib/include/rtems and - now must be referenced as . Header file order - was cleaned up while doing this. - -2000-10-27 Ralf Corsepius - - * Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros. - Switch to GNU canonicalization. - -2000-09-04 Ralf Corsepius - - * console/Makefile.am, start/Makefile.am, startup/Makefile.am, - wrapup/Makefile.am, clock/Makefile.am: Include compile.am - -2000-08-10 Joel Sherrill - - * ChangeLog: New file. diff --git a/c/src/lib/libbsp/i960/i960sim/Makefile.am b/c/src/lib/libbsp/i960/i960sim/Makefile.am deleted file mode 100644 index cc196fb6cb..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/Makefile.am +++ /dev/null @@ -1,154 +0,0 @@ -## -## $Id$ -## - -ACLOCAL_AMFLAGS = -I ../../../../aclocal - -include $(top_srcdir)/../../../../automake/compile.am -include $(top_srcdir)/../../bsp.am - -dist_project_lib_DATA = bsp_specs - -include_HEADERS = include/bsp.h -include_HEADERS += include/tm27.h -nodist_include_HEADERS = include/bspopts.h - -EXTRA_PROGRAMS = -CLEANFILES = -noinst_DATA = - -nodist_include_HEADERS += ../../shared/include/coverhd.h - -EXTRA_DIST = start/start.c -start$(LIB_VARIANT).$(OBJEXT): start/start.c - ${COMPILE} -o $@ -c $< -project_lib_DATA = start$(LIB_VARIANT).$(OBJEXT) - -dist_project_lib_DATA += startup/linkcmds - -EXTRA_PROGRAMS += clock.rel -CLEANFILES += clock.rel -clock_rel_SOURCES = clock/clockdrv.c -clock_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) -clock_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -EXTRA_PROGRAMS += clock_g.rel -CLEANFILES += clock_g.rel -clock_g_rel_SOURCES = $(clock_rel_SOURCES) -clock_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) -clock_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -noinst_DATA += clock$(LIB_VARIANT).rel - -EXTRA_PROGRAMS += console.rel -CLEANFILES += console.rel -console_rel_SOURCES = console/console-io.c ../../shared/console-polled.c \ - console/mon-syscalls.S -console_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) -console_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -EXTRA_PROGRAMS += console_g.rel -CLEANFILES += console_g.rel -console_g_rel_SOURCES = $(console_rel_SOURCES) -console_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) -console_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -noinst_DATA += console$(LIB_VARIANT).rel - -EXTRA_PROGRAMS += startup.rel -CLEANFILES += startup.rel -startup_rel_SOURCES = ../../shared/bspclean.c ../../shared/bsplibc.c \ - ../../shared/bsppost.c startup/bspstart.c ../../shared/bootcard.c \ - ../../shared/main.c ../../shared/sbrk.c \ - ../../shared/gnatinstallhandler.c -startup_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) -startup_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -EXTRA_PROGRAMS += startup_g.rel -CLEANFILES += startup_g.rel -startup_g_rel_SOURCES = $(startup_rel_SOURCES) -startup_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) -startup_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -noinst_DATA += startup$(LIB_VARIANT).rel - -EXTRA_PROGRAMS += timer.rel -CLEANFILES += timer.rel -timer_rel_SOURCES = ../../shared/timerstub.c -timer_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) -timer_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -EXTRA_PROGRAMS += timer_g.rel -CLEANFILES += timer_g.rel -timer_g_rel_SOURCES = $(timer_rel_SOURCES) -timer_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) -timer_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -noinst_DATA += timer$(LIB_VARIANT).rel - -EXTRA_LIBRARIES = libbsp.a -CLEANFILES += libbsp.a -libbsp_a_SOURCES = -libbsp_a_LIBADD = startup$(LIB_VARIANT).rel clock$(LIB_VARIANT).rel \ - console$(LIB_VARIANT).rel timer$(LIB_VARIANT).rel -libbsp_a_LIBADD += \ - ../../../libcpu/@RTEMS_CPU@/i960ka/score$(LIB_VARIANT).rel - -EXTRA_LIBRARIES += libbsp_g.a -CLEANFILES += libbsp_g.a -libbsp_g_a_SOURCES = $(libbsp_a_SOURCES) -libbsp_g_a_LIBADD = $(libbsp_a_LIBADD) - -noinst_DATA += libbsp$(LIB_VARIANT).a - -all-local: $(PREINSTALL_FILES) $(TMPINSTALL_FILES) - -EXTRA_DIST += times - -PREINSTALL_DIRS = -PREINSTALL_FILES = -TMPINSTALL_FILES = - -$(PROJECT_INCLUDE)/$(dirstamp): - @$(mkdir_p) $(PROJECT_INCLUDE) - @: > $(PROJECT_INCLUDE)/$(dirstamp) -PREINSTALL_DIRS += $(PROJECT_INCLUDE)/$(dirstamp) - -$(PROJECT_LIB)/$(dirstamp): - @$(mkdir_p) $(PROJECT_LIB) - @: > $(PROJECT_LIB)/$(dirstamp) -PREINSTALL_DIRS += $(PROJECT_LIB)/$(dirstamp) - -$(PROJECT_LIB)/bsp_specs: bsp_specs $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/bsp_specs -PREINSTALL_FILES += $(PROJECT_LIB)/bsp_specs - -$(PROJECT_INCLUDE)/bsp.h: include/bsp.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp.h - -$(PROJECT_INCLUDE)/tm27.h: include/tm27.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/tm27.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/tm27.h - -$(PROJECT_INCLUDE)/bspopts.h: include/bspopts.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bspopts.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/bspopts.h - -$(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/coverhd.h - -$(PROJECT_LIB)/start$(LIB_VARIANT).$(OBJEXT): start$(LIB_VARIANT).$(OBJEXT) $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/start$(LIB_VARIANT).$(OBJEXT) -TMPINSTALL_FILES += $(PROJECT_LIB)/start$(LIB_VARIANT).$(OBJEXT) - -$(PROJECT_LIB)/linkcmds: startup/linkcmds $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds -PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds - -CLEANFILES += $(PREINSTALL_FILES) -DISTCLEANFILES = $(PREINSTALL_DIRS) -CLEANFILES += $(TMPINSTALL_FILES) - -include $(top_srcdir)/../../../../automake/local.am diff --git a/c/src/lib/libbsp/i960/i960sim/bsp_specs b/c/src/lib/libbsp/i960/i960sim/bsp_specs deleted file mode 100644 index 22fd41146c..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/bsp_specs +++ /dev/null @@ -1,12 +0,0 @@ -%rename endfile old_endfile -%rename startfile old_startfile -%rename link old_link - -*startfile: -%{!qrtems: %(old_startfile)} %{!nostdlib: %{qrtems: \ -%{!qrtems_debug: start.o%s} \ -%{qrtems_debug: start_g.o%s}}} - -*link: -%(old_link) %{!qrtems: %(old_link)} %{qrtems: -dc -dp -N -e _start} - diff --git a/c/src/lib/libbsp/i960/i960sim/clock/clockdrv.c b/c/src/lib/libbsp/i960/i960sim/clock/clockdrv.c deleted file mode 100644 index f61b66e42d..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/clock/clockdrv.c +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Instantiate the clock driver shell. - * - * Since there is no clock source on the simulator, all we do is - * make sure it will build. - * - * $Id$ - */ - -#define CLOCK_VECTOR 0 - -#define Clock_driver_support_at_tick() - -#define Clock_driver_support_install_isr( _new, _old ) \ - do { _old = 0; } while(0) - -#define Clock_driver_support_initialize_hardware() - -#define Clock_driver_support_shutdown_hardware() - -#include "../../../shared/clockdrv_shell.c" diff --git a/c/src/lib/libbsp/i960/i960sim/configure.ac b/c/src/lib/libbsp/i960/i960sim/configure.ac deleted file mode 100644 index 8e32114f10..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/configure.ac +++ /dev/null @@ -1,20 +0,0 @@ -## Process this file with autoconf to produce a configure script. -## -## $Id$ - -AC_PREREQ(2.59) -AC_INIT([rtems-c-src-lib-libbsp-i960-i960sim],[_RTEMS_VERSION],[rtems-bugs@rtems.com]) -AC_CONFIG_SRCDIR([bsp_specs]) -RTEMS_TOP(../../../../../..) - -RTEMS_CANONICAL_TARGET_CPU -AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.9]) -RTEMS_BSP_CONFIGURE - -RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm]) -RTEMS_CANONICALIZE_TOOLS -RTEMS_PROG_CCAS - -# Explicitly list all Makefiles here -AC_CONFIG_FILES([Makefile]) -AC_OUTPUT diff --git a/c/src/lib/libbsp/i960/i960sim/console/console-io.c b/c/src/lib/libbsp/i960/i960sim/console/console-io.c deleted file mode 100644 index 1f17fad4cb..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/console/console-io.c +++ /dev/null @@ -1,67 +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 -#include -#include -#include - -/* - * console_initialize_hardware - * - * This routine initializes the console hardware. - * - */ - -void console_initialize_hardware(void) -{ - return; -} - -/* - * console_outbyte_polled - * - * This routine transmits a character using polling. - */ - -void console_outbyte_polled( - int port, - char ch -) -{ - int status; - int nwritten; - - status = _sys_write (1, &ch, 1, &nwritten); -} - -/* - * console_inbyte_nonblocking - * - * This routine polls for a character. - */ - -int console_inbyte_nonblocking( - int port -) -{ - int status; - int nread; - char c; - - status = _sys_read (0, &c, 1, &nread); - if ( status == 0 ) - return c; - return -1; -} diff --git a/c/src/lib/libbsp/i960/i960sim/console/mon-syscalls.S b/c/src/lib/libbsp/i960/i960sim/console/mon-syscalls.S deleted file mode 100644 index 0c6dc97f66..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/console/mon-syscalls.S +++ /dev/null @@ -1,41 +0,0 @@ -#ifdef __STDC__ -# define _C_LABEL(x) _ ## x -#else -# define _C_LABEL(x) _/**/x -#endif -#define _ASM_LABEL(x) x - -#define _ENTRY(name) \ - .text; .align 4; .globl name; name: - -#define ENTRY(name) \ - _ENTRY(_C_LABEL(name)) - -ENTRY(_sys_exit) - lda 257,g13 - calls g13 - -ENTRY(_sys_open) - lda 230,g13 - calls g13 - ret - -ENTRY(_sys_read) - lda 231,g13 - calls g13 - ret - -ENTRY(_sys_write) - lda 232,g13 - calls g13 - ret - -ENTRY(_sys_lseek) - lda 233,g13 - calls g13 - ret - -ENTRY(_sys_close) - lda 234,g13 - calls g13 - ret diff --git a/c/src/lib/libbsp/i960/i960sim/include/.cvsignore b/c/src/lib/libbsp/i960/i960sim/include/.cvsignore deleted file mode 100644 index cd2a4e9988..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/include/.cvsignore +++ /dev/null @@ -1,5 +0,0 @@ -coverhd.h -bspopts.h -bspopts.h.in -stamp-h -stamp-h.in diff --git a/c/src/lib/libbsp/i960/i960sim/include/bsp.h b/c/src/lib/libbsp/i960/i960sim/include/bsp.h deleted file mode 100644 index 350dfc4f72..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/include/bsp.h +++ /dev/null @@ -1,59 +0,0 @@ -/* bsp.h - * - * This include file contains some definitions specific to the - * i960 simulator in gdb. - * - * 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 __I960SIM_h -#define __I960SIM_h - -#ifdef __cplusplus -extern "C" { -#endif - -#include - -#include -#include -#include -#include - -/* Constants */ - -/* miscellaneous stuff assumed to exist */ - -extern rtems_configuration_table BSP_Configuration; - -/* - * Device Driver Table Entries - */ - -/* - * NOTE: Use the standard Console driver entry - */ - -/* - * NOTE: Use the standard Clock driver entry - */ - -/* functions */ - -void bsp_cleanup( void ); - -i960_isr_entry set_vector( rtems_isr_entry, unsigned int, unsigned int ); - -#ifdef __cplusplus -} -#endif - -#endif -/* end of include file */ diff --git a/c/src/lib/libbsp/i960/i960sim/include/tm27.h b/c/src/lib/libbsp/i960/i960sim/include/tm27.h deleted file mode 100644 index 899da6de41..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/include/tm27.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * tm27.h - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#ifndef _RTEMS_TMTEST27 -#error "This is an RTEMS internal file you must not include directly." -#endif - -#ifndef __tm27_h -#define __tm27_h - -/* - * Define the interrupt mechanism for Time Test 27 - * - * NOTE: Following are for i960CA and are board independent - * - */ - -#define MUST_WAIT_FOR_INTERRUPT 0 - -#define Install_tm27_vector( handler ) /* set_vector( (handler), 6, 1 ) */ - -#define Cause_tm27_intr() /* i960_cause_intr( 0x62 ) */ - -#define Clear_tm27_intr() /* i960_clear_intr( 6 ) */ - -#define Lower_tm27_intr() /* empty */ - -#endif diff --git a/c/src/lib/libbsp/i960/i960sim/start/start.c b/c/src/lib/libbsp/i960/i960sim/start/start.c deleted file mode 100644 index 2b7a83e64c..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/start/start.c +++ /dev/null @@ -1,38 +0,0 @@ -char *__env[1] = {0}; -char **environ = __env; - -#define ENABLE_TRACE_MASK 1 -#define STACK_ALIGN 64 - -__inline static void -init_Cregs (void) -{ - /* set register values gcc like */ - register unsigned int mask0=0x3b001000; - register unsigned int mask1=0x00009107; - __asm__ volatile ("mov %0,g14" - : /* no output */ - : "I" (0)); /* gnu structure pointer */ - __asm__ volatile ("modac %1,%0,%0" - : /* no output */ - : "d" (mask0), - "d" (mask1)); /* fpu control kb */ -} - -void _start(void) -{ - extern int stack_init; - register void *ptr = &stack_init; - - /* enable tracing */ - register int mask = ENABLE_TRACE_MASK; - __asm__ volatile ("modpc %0,%0,%0" : : "d" (mask)); - - /* SP must be 64 bytes larger than FP at start. */ - __asm__ volatile ("mov %0,sp" : : "d" (ptr + STACK_ALIGN)); - __asm__ volatile ("mov %0,fp" : : "d" (ptr)); - - init_Cregs(); - boot_card(); - _sys_exit(0); -} diff --git a/c/src/lib/libbsp/i960/i960sim/startup/bspstart.c b/c/src/lib/libbsp/i960/i960sim/startup/bspstart.c deleted file mode 100644 index 60ac79070a..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/startup/bspstart.c +++ /dev/null @@ -1,97 +0,0 @@ -/* - * This routine starts the application. It includes application, - * board, and monitor specific initialization and configuration. - * The generic CPU dependent initialization has been performed - * before this routine is invoked. - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include - -#include -#include -#include - -/* - * The original table from the application and our copy of it with - * some changes. - */ - -extern rtems_configuration_table Configuration; - -rtems_configuration_table BSP_Configuration; - -rtems_cpu_table Cpu_table; - -char *rtems_progname; - -/* - * Use the shared implementations of the following routines - */ - -void bsp_postdriver_hook(void); -void bsp_libc_init( void *, uint32_t, int ); - -/* - * Function: bsp_pretasking_hook - * Created: 95/03/10 - * - * Description: - * BSP pretasking hook. Called just before drivers are initialized. - * Used to setup libc and install any BSP extensions. - * - * NOTES: - * Must not use libc (to do io) from here, since drivers are - * not yet initialized. - * - */ - -void bsp_pretasking_hook(void) -{ - extern int HeapBase; - extern int HeapSize; - void *heapStart = &HeapBase; - unsigned long heapSize = (unsigned long)&HeapSize; - unsigned long ramSpace; - - bsp_libc_init(heapStart, heapSize, 0); - -#ifdef RTEMS_DEBUG - rtems_debug_enable( RTEMS_DEBUG_ALL_MASK ); -#endif - -} - -/* - * bsp_start - * - * This routine does the bulk of the system initialization. - */ - -#include - -i960_PRCB *Prcb; /* to satisfy linking */ - -void bsp_start( void ) -{ - extern int _end; - extern int WorkspaceBase; - /* Configure Number of Register Caches */ - - Cpu_table.pretasking_hook = bsp_pretasking_hook; /* init libc, etc. */ - Cpu_table.postdriver_hook = bsp_postdriver_hook; - Cpu_table.interrupt_stack_size = 4096; - - if ( BSP_Configuration.work_space_size >(512*1024) ) - _sys_exit( 1 ); - - BSP_Configuration.work_space_start = (void *) &WorkspaceBase; -} diff --git a/c/src/lib/libbsp/i960/i960sim/startup/linkcmds b/c/src/lib/libbsp/i960/i960sim/startup/linkcmds deleted file mode 100644 index 62e708e2bd..0000000000 --- a/c/src/lib/libbsp/i960/i960sim/startup/linkcmds +++ /dev/null @@ -1,65 +0,0 @@ -/* - * $Id$ - */ - -/* - * Declare some sizes. - */ -_RamBase = DEFINED(_RamBase) ? _RamBase : 0x0; -_RamSize = DEFINED(_RamSize) ? _RamSize : 1M; -_HeapSize = DEFINED(_HeapSize) ? _HeapSize : 0x10000; -_StackSize = DEFINED(_StackSize) ? _StackSize : 0x1000; - -SECTIONS -{ - . = 0xa0008000; - .text : - { - CREATE_OBJECT_SYMBOLS - *(.text) - _etext = .; - - /* - * 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__) / 4 - 2) - *(.ctors) - LONG(0) - ___CTOR_END__ = .; - ___DTOR_LIST__ = .; - LONG((___DTOR_END__ - ___DTOR_LIST__) / 4 - 2) - *(.dtors) - LONG(0) - ___DTOR_END__ = .; - } - .data SIZEOF(.text) + ADDR(.text): - { - *(.data) - CONSTRUCTORS - _edata = .; - } - .bss SIZEOF(.data) + ADDR(.data): - { - _bss_start = .; - *(.bss) - *(COMMON) - . = ALIGN (64); - _stack_init = .; - . += _StackSize; - _clear_end = .; - _WorkspaceBase = .; - . += 512K; /* reserve some memory for workspace */ - _HeapBase = .; - . += _HeapSize; /* reserve some memory for heap */ - _end = .; - __end = .; - } -} diff --git a/c/src/lib/libbsp/i960/rxgen960/.cvsignore b/c/src/lib/libbsp/i960/rxgen960/.cvsignore deleted file mode 100644 index bfdfd995be..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/.cvsignore +++ /dev/null @@ -1,14 +0,0 @@ -aclocal.m4 -autom4te*.cache -config.cache -config.guess -config.log -config.status -config.sub -configure -depcomp -install-sh -Makefile -Makefile.in -missing -mkinstalldirs diff --git a/c/src/lib/libbsp/i960/rxgen960/ChangeLog b/c/src/lib/libbsp/i960/rxgen960/ChangeLog deleted file mode 100644 index 925c8a7498..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/ChangeLog +++ /dev/null @@ -1,355 +0,0 @@ -2004-09-24 Ralf Corsepius - - * configure.ac: Require automake > 1.9. - -2004-04-23 Ralf Corsepius - - PR 610/bsps - * Makefile.am: Add include/tm27.h, Cosmetics. - * include/tm27.h: Final cosmetics. - -2004-04-22 Ralf Corsepius - - * include/bsp.h: Split out tmtest27 support. - * include/tm27.h: New. - -2004-04-21 Ralf Corsepius - - PR 613/bsps - * include/bsp.h: Remove MAX_LONG_TEST_DURATION. - -2004-04-21 Ralf Corsepius - - PR 614/bsps - * include/bsp.h: Remove MAX_SHORT_TEST_DURATION (Unused). - -2004-04-09 Ralf Corsepius - - * start/rxgen_romld.S: Include instead of . - -2004-04-02 Ralf Corsepius - - * timer/timerisr.S: Include instead of . - -2004-04-01 Ralf Corsepius - - * include/bsp.h: Include instead of . - * include/bsp.h: Include instead of . - * include/bsp.h: Include instead of . - -2004-03-31 Ralf Corsepius - - * clock/ckinit.c, console/concntl.h, console/console.c, - include/bsp.h, startup/bspstart.c, timer/timer.c: Convert to using - c99 fixed size types. - -2004-02-19 Ralf Corsepius - - * Makefile.am: Reflect changes to bsp.am. - Preinstall dist_project_lib*. - -2004-02-14 Ralf Corsepius - - * Makefile.am: Reflect changes to bsp.am. - -2004-02-12 Ralf Corsepius - - * Makefile.am: Use CPPASCOMPILE instead of CCASCOMPILE. - -2004-02-02 Ralf Corsepius - - * 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. - * bsp_specs: Sync with other BSPs, fixup missing brace. - -2004-01-28 Ralf Corsepius - - * configure.ac: Add nostdinc to AUTOMAKE_OPTIONS. - Add RTEMS_PROG_CCAS. - -2004-01-21 Ralf Corsepius - - * Makefile.am: Add PREINSTALL_DIRS. - * wrapup/Makefile.am: Reflect changes to libcpu. - -2004-01-14 Ralf Corsepius - - * start/Makefile.am: Re-add dirstamps to PRE/TMPINSTALL_FILES. - Add PRE/TMPINSTALL_FILES to CLEANFILES. - * startup/Makefile.am: Ditto. - -2004-01-05 Ralf Corsepius - - * wrapup/Makefile.am: Eliminate $(LIB). - Use noinst_DATA to trigger building libbsp.a. - -2003-12-13 Ralf Corsepius - - * start/Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g. - * startup/Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g. - -2003-12-12 Ralf Corsepius - - * start/Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES. - * startup/Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES. - -2003-12-12 Ralf Corsepius - - * configure.ac: Require automake >= 1.8, autoconf >= 2.59. - -2003-12-09 Ralf Corsepius - - * start/Makefile.am: Misc cleanups and fixes. - * startup/Makefile.am: Misc cleanups and fixes. - * wrapup/Makefile.am: Misc cleanups and fixes. - -2003-12-03 Ralf Corsepius - - * Makefile.am: Add preinstallation dirstamp support. - * clock/Makefile.am: Cosmetics. - * console/Makefile.am: Cosmetics. - * start/Makefile.am: Cosmetics. - * startup/Makefile.am: Cosmetics. - * timer/Makefile.am: Cosmetics. - * wrapup/Makefile.am: Cosmetics. - -2003-12-02 Ralf Corsepius - - * clock/Makefile.am: Remove all-local: $(ARCH). - * console/Makefile.am: Remove all-local: $(ARCH). - * start/Makefile.am: Remove all-local: $(ARCH). - * startup/Makefile.am: Remove all-local: $(ARCH). - * timer/Makefile.am: Remove all-local: $(ARCH). - * wrapup/Makefile.am: Remove all-local: $(ARCH). - -2003-09-29 Ralf Corsepius - - * Makefile.am: Merge-in include/Makefile.am. - Reflect changes to bsp.am. - * include/Makefile.am: Remove. - * configure.ac: Reflect changes above. - -2003-09-24 Ralf Corsepius - - * bsp_specs: Remove *lib:. - -2003-09-04 Joel Sherrill - - * clock/ckinit.c, console/console.c, include/bsp.h, startup/bspstart.c, - startup/exit.c, startup/setvec.c, timer/timer.c, timer/timerisr.S: - URL for license changed. - -2003-08-18 Ralf Corsepius - - * Makefile.am: Reflect having moved aclocal/. - -2003-08-16 Ralf Corsepius - - * Makefile.am: Reflect having moved automake/. - * clock/Makefile.am: Reflect having moved automake/. - * console/Makefile.am: Reflect having moved automake/. - * include/Makefile.am: Reflect having moved automake/. - * 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 - - * configure.ac: Use rtems-bugs@rtems.com as bug report email address. - -2003-08-06 Ralf Corsepius - - PR 445/bsps - * bsp_specs: Remove -D__embedded__ -Asystem(embedded) from cpp. - Remove cpp, old_cpp (now unused). - -2003-03-06 Ralf Corsepius - - * configure.ac: Remove AC_CONFIG_AUX_DIR. - -2003-02-11 Ralf Corsepius - - * configure.ac: AM_INIT_AUTOMAKE([1.7.2]). - -2003-02-11 Ralf Corsepius - - * configure.ac: AC_PREREQ(2.57). - -2003-01-20 Joel Sherrill - - * startup/linkcmds*: Add FreeBSD sysctl() sections. - -2003-01-15 Ralf Corsepius - - * 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-10 Ralf Corsepius - - * wrapup/Makefile.am: Don't include @RTEMS_BSP@.cfg. - -2002-10-21 Ralf Corsepius - - * .cvsignore: Reformat. - Add autom4te*cache. - Remove autom4te.cache. - -2002-08-21 Joel Sherrill - - * bsp_specs: Added support for -nostdlibs. - -2002-08-11 Ralf Corsepius - - * clock/Makefile.am: Use .$(OBJEXT) instead of .o. - * console/Makefile.am: Use .$(OBJEXT) instead of .o. - * 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-21 Ralf Corsepius - - * start/Makefile.am: - Fix bsplib_DATA = $(PROJECT_RELEASE)/lib/rxgen_romld$(LIB_VARIANT).o. - -2002-07-20 Ralf Corsepius - - * start/Makefile.am: Eliminate PGM. - Add bsplib_DATA = $(PROJECT_RELEASE)/lib/rxgen_romld$(LIB_VARIANT).o. - -2002-07-19 Ralf Corsepius - - * startup/Makefile.am: Add bsplib_DATA = linkcmds. - -2002-07-04 Ralf Corsepius - - * wrapup/Makefile.am: Eliminate TMPINSTALL_FILES. - Remove $(OBJS) from all-local. - -2002-06-29 Ralf Corsepius - - * wrapup/Makefile.am: Remove preinstallation of libbsp.a, - -2001-05-09 Joel Sherrill - - * startup/linkcmds: In support of gcc 3.1, added one of more - of the sections .jcr, .rodata*, .data.*, .gnu.linkonce.s2.*, - .gnu.linkonce.sb2.*, and .gnu.linkonce.s.*. Spacing corrections - and direction of segments to memory regions may also have been - addressed. This was a sweep across all BSPs. - * startup/linkcmds.real: Ditto. - * clock/ckinit.c: Add volatile to Clock_driver_ticks. - -2002-04-20 Ralf Corsepius - - * startup/nulsystbl.c: Fix braces. - * startup/Makefile.am: Remove types.h. - * startup/types.h: Remove. - -2002-03-27 Ralf Corsepius - - * configure.ac: - AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS). - AM_INIT_AUTOMAKE([no-define foreign 1.6]). - * clock/Makefile.am: Remove AUTOMAKE_OPTIONS. - * Makefile.am: Remove AUTOMAKE_OPTIONS. - * console/Makefile.am: Remove AUTOMAKE_OPTIONS. - * include/Makefile.am: Remove AUTOMAKE_OPTIONS. - * start/Makefile.am: Remove AUTOMAKE_OPTIONS. - * startup/Makefile.am: Remove AUTOMAKE_OPTIONS. - * timer/Makefile.am: Remove AUTOMAKE_OPTIONS. - * wrapup/Makefile.am: Remove AUTOMAKE_OPTIONS. - -2002-02-05 Ralf Corsepius - - * console/console.c: Remove NO_BSP_INIT, SERIAL_INPUT. - -2001-12-22 Ralf Corsepius - - * bsp_specs: Replace -lrtemsall with -lrtemsbsp -lrtemscpu, - replace -lrtemsall_g with -lrtemsbsp_g -lrtemscpu_g. - -2001-11-30 Ralf Corsepius - - * configure.ac: Introduce RTEMS_BSP_CONFIGURE. - -2001-10-12 Joel Sherrill - - * clock/ckinit.c, console/console.c, include/bsp.h, startup/bspstart.c, - startup/exit.c, startup/setvec.c, timer/timer.c, timer/timerisr.S: - Fixed typo. - -2001-10-11 Ralf Corsepius - - * .cvsignore: Add autom4te.cache for autoconf > 2.52. - * configure.in: Remove. - * configure.ac: New file, generated from configure.in by autoupdate. - -2001-09-27 Joel Sherrill - - * include/bsp.h: Renamed delay() to rtems_bsp_delay(). - -2001-09-27 Ralf Corsepius - - * include/Makefile.am: Use 'CLEANFILES ='. - * include/Makefile.am: Use 'TMPINSTALL_FILES ='. - -2001-05-26 Ralf Corsepius - - * configure.in: Add bspopts.h. - * include/.cvsignore: Add bspopts.h*, stamp-h*. - * include/Makefile.am: Use *_HEADERS instead of *H_FILES. - * include/bsp.h: Include bspopts.h. - -2001-05-10 Ralf Corsepius - - * configure.in: Use RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm]). - -2001-01-09 Joel Sherrill - - * Removing non-function shmsupp directory. - * shmsupp/.cvsignore, shmsupp/Makefile.am, shmsupp/addrconv.c, - shmsupp/getcfg.c, shmsupp/lock.c, shmsupp/mpisr.c: Removed. - * configure.in, Makefile.am, wrapup/Makefile.am - -2000-12-06 Joel Sherrill - - * include/bsp.h: Removed incorrect error case. - -2000-11-09 Ralf Corsepius - - * Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS. - -2000-11-02 Ralf Corsepius - - * Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal. - -2000-11-01 Joel Sherrill - - * startup/bspstart.c: assoc.h, error.h, libio_.h, libio.h, - and libcsupport.h moved from libc to lib/include/rtems and - now must be referenced as . Header file order - was cleaned up while doing this. - -2000-10-27 Ralf Corsepius - - * Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros. - Switch to GNU canonicalization. - -2000-09-04 Ralf Corsepius - - * clock/Makefile.am, console/Makefile.am, shmsupp/Makefile.am, - startup/Makefile.am, timer/Makefile.am, wrapup/Makefile.am, - start/Makefile.am: Include compile.am - -2000-08-10 Joel Sherrill - - * ChangeLog: New file. diff --git a/c/src/lib/libbsp/i960/rxgen960/Makefile.am b/c/src/lib/libbsp/i960/rxgen960/Makefile.am deleted file mode 100644 index cfb7fc1b26..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/Makefile.am +++ /dev/null @@ -1,173 +0,0 @@ -## -## $Id$ -## - -ACLOCAL_AMFLAGS = -I ../../../../aclocal - -include $(top_srcdir)/../../../../automake/compile.am -include $(top_srcdir)/../../bsp.am - -dist_project_lib_DATA = bsp_specs - -include_HEADERS = include/bsp.h -include_HEADERS += include/tm27.h -nodist_include_HEADERS = include/bspopts.h - -EXTRA_PROGRAMS = -CLEANFILES = -noinst_DATA = - -nodist_include_HEADERS += ../../shared/include/coverhd.h - -# FIXME: this file should be called start.S -EXTRA_DIST = start/rxgen_romld.S -rxgen_romld$(LIB_VARIANT).$(OBJEXT): start/rxgen_romld.S - $(CPPASCOMPILE) -DASM -o $@ -c $< -project_lib_DATA = rxgen_romld$(LIB_VARIANT).$(OBJEXT) - -dist_project_lib_DATA += startup/linkcmds startup/linkcmds.real \ - startup/rom.ld - -EXTRA_PROGRAMS += clock.rel -CLEANFILES += clock.rel -clock_rel_SOURCES = clock/ckinit.c -clock_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) -clock_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -EXTRA_PROGRAMS += clock_g.rel -CLEANFILES += clock_g.rel -clock_g_rel_SOURCES = $(clock_rel_SOURCES) -clock_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) -clock_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -noinst_DATA += clock$(LIB_VARIANT).rel - -EXTRA_PROGRAMS += console.rel -CLEANFILES += console.rel -console_rel_SOURCES = console/concntl.h console/console.c console/serial.c \ - console/serial.h -console_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) -console_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -EXTRA_PROGRAMS += console_g.rel -CLEANFILES += console_g.rel -console_g_rel_SOURCES = $(console_rel_SOURCES) -console_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) -console_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -noinst_DATA += console$(LIB_VARIANT).rel - -EXTRA_PROGRAMS += startup.rel -CLEANFILES += startup.rel -startup_rel_SOURCES = include/rxgen960_config.h startup/asmfault.h \ - startup/asmfault.S startup/asmstub.h startup/asmstub.S \ - ../../shared/bootcard.c ../../shared/bspclean.c ../../shared/bsplibc.c \ - ../../shared/bsppost.c startup/bspstart.c startup/cntrltbl.c \ - startup/cntrltbl.h startup/exit.c startup/fault.c startup/fault.h \ - startup/faultret.h startup/flttbl.c startup/flttbl.h startup/frmstr.c \ - startup/frmstr.h startup/i960.h startup/ihandler.h startup/ihandler.S \ - startup/intrtbl.c startup/intrtbl.h startup/kkprintf.c \ - ../../shared/main.c startup/main.h startup/memchnl.h startup/nmi.c \ - startup/nulsystbl.c startup/pmc901_memmap.h startup/prcb.c \ - startup/prcb.h startup/rom_cntrltbl.c startup/rom_ibr.c \ - startup/rom_ibr.h startup/rommon.h startup/rom_prcb.c \ - ../../shared/sbrk.c startup/sctns.c startup/sctns.h startup/setvec.c \ - startup/systbl.c startup/systbl.h startup/time.h -startup_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) -startup_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -EXTRA_PROGRAMS += startup_g.rel -CLEANFILES += startup_g.rel -startup_g_rel_SOURCES = $(startup_rel_SOURCES) -startup_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) -startup_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -noinst_DATA += startup$(LIB_VARIANT).rel - -EXTRA_PROGRAMS += timer.rel -CLEANFILES += timer.rel -timer_rel_SOURCES = timer/timer.c -UNUSED_FILES = timer/timerisr.S -timer_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) -timer_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -EXTRA_PROGRAMS += timer_g.rel -CLEANFILES += timer_g.rel -timer_g_rel_SOURCES = $(timer_rel_SOURCES) -timer_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) -timer_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) - -noinst_DATA += timer$(LIB_VARIANT).rel - -EXTRA_LIBRARIES = libbsp.a -CLEANFILES += libbsp.a -libbsp_a_SOURCES = -libbsp_a_LIBADD = startup$(LIB_VARIANT).rel clock$(LIB_VARIANT).rel \ - console$(LIB_VARIANT).rel timer$(LIB_VARIANT).rel -libbsp_a_LIBADD += \ - ../../../libcpu/@RTEMS_CPU@/i960rp/score$(LIB_VARIANT).rel - -EXTRA_LIBRARIES += libbsp_g.a -CLEANFILES += libbsp_g.a -libbsp_g_a_SOURCES = $(libbsp_a_SOURCES) -libbsp_g_a_LIBADD = $(libbsp_a_LIBADD) - -noinst_DATA += libbsp$(LIB_VARIANT).a - -all-local: $(PREINSTALL_FILES) $(TMPINSTALL_FILES) - -PREINSTALL_DIRS = -PREINSTALL_FILES = -TMPINSTALL_FILES = - -$(PROJECT_INCLUDE)/$(dirstamp): - @$(mkdir_p) $(PROJECT_INCLUDE) - @: > $(PROJECT_INCLUDE)/$(dirstamp) -PREINSTALL_DIRS += $(PROJECT_INCLUDE)/$(dirstamp) - -$(PROJECT_LIB)/$(dirstamp): - @$(mkdir_p) $(PROJECT_LIB) - @: > $(PROJECT_LIB)/$(dirstamp) -PREINSTALL_DIRS += $(PROJECT_LIB)/$(dirstamp) - -$(PROJECT_LIB)/bsp_specs: bsp_specs $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/bsp_specs -PREINSTALL_FILES += $(PROJECT_LIB)/bsp_specs - -$(PROJECT_INCLUDE)/bsp.h: include/bsp.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp.h - -$(PROJECT_INCLUDE)/tm27.h: include/tm27.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/tm27.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/tm27.h - -$(PROJECT_INCLUDE)/bspopts.h: include/bspopts.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bspopts.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/bspopts.h - -$(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/coverhd.h - -$(PROJECT_LIB)/rxgen_romld$(LIB_VARIANT).$(OBJEXT): rxgen_romld$(LIB_VARIANT).$(OBJEXT) $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/rxgen_romld$(LIB_VARIANT).$(OBJEXT) -TMPINSTALL_FILES += $(PROJECT_LIB)/rxgen_romld$(LIB_VARIANT).$(OBJEXT) - -$(PROJECT_LIB)/linkcmds: startup/linkcmds $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds -PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds - -$(PROJECT_LIB)/linkcmds.real: startup/linkcmds.real $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.real -PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds.real - -$(PROJECT_LIB)/rom.ld: startup/rom.ld $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/rom.ld -PREINSTALL_FILES += $(PROJECT_LIB)/rom.ld - -CLEANFILES += $(PREINSTALL_FILES) -DISTCLEANFILES = $(PREINSTALL_DIRS) -CLEANFILES += $(TMPINSTALL_FILES) - -include $(top_srcdir)/../../../../automake/local.am diff --git a/c/src/lib/libbsp/i960/rxgen960/README b/c/src/lib/libbsp/i960/rxgen960/README deleted file mode 100644 index cb51c44d56..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/README +++ /dev/null @@ -1,6 +0,0 @@ -# -# $Id$ -# - -Something should be here to describe the board this runs on, -download procedure, using the BSP etc. diff --git a/c/src/lib/libbsp/i960/rxgen960/bsp_specs b/c/src/lib/libbsp/i960/rxgen960/bsp_specs deleted file mode 100644 index 0715613da3..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/bsp_specs +++ /dev/null @@ -1,12 +0,0 @@ -%rename endfile old_endfile -%rename startfile old_startfile -%rename link old_link - -*startfile: -%{!qrtems: %(old_startfile)} %{!nostdlib: %{qrtems: \ -%{!qrtems_debug: rxgen_romld.o%s} \ -%{qrtems_debug: rxgen_romld_g.o%s}}} - -*link: -%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N -e _start} - diff --git a/c/src/lib/libbsp/i960/rxgen960/clock/ckinit.c b/c/src/lib/libbsp/i960/rxgen960/clock/ckinit.c deleted file mode 100644 index f51421af68..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/clock/ckinit.c +++ /dev/null @@ -1,172 +0,0 @@ -/* Clock_init() - * - * This routine initializes the i960RP onboard timer - * The tick frequency is 1 millisecond; assuming 33MHz core - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * COPYRIGHT (c) 1989-1997. - * RAMiX Inc 1999 - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include - -#include -#include - -#define CLOCK_VECTOR 0x92 - -uint32_t Clock_isrs; /* ISRs until next tick */ -uint32_t Reload_Clock_isrs; - -i960_isr_entry Old_ticker; -volatile uint32_t Clock_driver_ticks; - /* ticks since initialization */ -unsigned int clock_isr_global[16]; /* place to store global regs */ - -void Clock_exit( void ); - -/* - * These are set by clock driver during its init - */ - -rtems_device_major_number rtems_clock_major = ~0; -rtems_device_minor_number rtems_clock_minor; - -/* this is later in the file to avoid it being inlined */ -rtems_isr Clock_isr( rtems_vector_number vector ); - -void Install_clock( - rtems_isr_entry clock_isr -) -{ - volatile unsigned int *tmr0 = (unsigned int *) TMR0_ADDR; - volatile unsigned int *trr0 = (unsigned int *) TRR0_ADDR; - volatile unsigned int *tcr0 = (unsigned int *) TCR0_ADDR; - volatile unsigned int *icon = (unsigned int *) ICON_ADDR; - volatile unsigned int *imap2 = (unsigned int *) IMAP2_ADDR; - volatile unsigned int *ipnd = (unsigned int *) IPND_ADDR; - volatile unsigned int *imsk = (unsigned int *) IMSK_ADDR; - void clockHandler(); - - Clock_driver_ticks = 0; - Reload_Clock_isrs = BSP_Configuration.microseconds_per_tick / 1000; - Clock_isrs = Reload_Clock_isrs; - - #define BUS_CLOCK_1 0 - #define TMR_WRITE_CNTL 8 - #define TMR_AUTO_RELOAD 4 - #define TMR_ENABLE 2 - #define TMR_TERM_CNT_STAT 1 - - Old_ticker = set_vector( (((unsigned int) clock_isr) | 0x2), CLOCK_VECTOR, 1 ); - - /* initialize the i960RP timer 0 here */ - - /* set the timer countdown (Assume 33MHz operation) */ - *trr0 = 30 * BSP_Configuration.microseconds_per_tick ; - *tcr0 = 30 * BSP_Configuration.microseconds_per_tick ; -/* -kkprintf("Load the timers with %x\n", 30 * BSP_Configuration.microseconds_per_tick / Reload_Clock_isrs); -*/ - - *tmr0 = BUS_CLOCK_1 | TMR_AUTO_RELOAD | TMR_ENABLE; -/* Unmask the interrupts */ - *ipnd &= ~(1 << 12); - *imsk |= 1 << 12; - -} - -void Clock_exit() -{ - volatile unsigned int *tmr0 = (unsigned int *) TMR0_ADDR; - - /* shut down the timer */ - *tmr0 = *tmr0 & ~TMR_ENABLE; - - i960_mask_intr( 12 ); - /* do not restore old vector */ -} - -rtems_device_driver Clock_initialize( - rtems_device_major_number major, - rtems_device_minor_number minor, - void *pargp -) -{ - Install_clock( Clock_isr ); - - atexit( Clock_exit ); - - /* - * make major/minor avail to others such as shared memory driver - */ - - rtems_clock_major = major; - rtems_clock_minor = minor; - - return RTEMS_SUCCESSFUL; -} - -rtems_device_driver Clock_control( - rtems_device_major_number major, - rtems_device_minor_number minor, - void *pargp -) -{ - uint32_t isrlevel; - rtems_libio_ioctl_args_t *args = pargp; - - if (args == 0) - goto done; - - /* - * This is hokey, but until we get a defined interface - * to do this, it will just be this simple... - */ - - if (args->command == rtems_build_name('I', 'S', 'R', ' ')) - { - Clock_isr(CLOCK_VECTOR); - } - else if (args->command == rtems_build_name('N', 'E', 'W', ' ')) - { - rtems_interrupt_disable( isrlevel ); - (void) set_tmr_vector( args->buffer, CLOCK_VECTOR, 0 ); - rtems_interrupt_enable( isrlevel ); - } - -done: - return RTEMS_SUCCESSFUL; -} - -rtems_isr Clock_isr( - rtems_vector_number vector -) -{ - /* enable_tracing(); */ -#ifdef NOTMB - if ( Clock_isrs == 1 ) { - rtems_clock_tick(); - Clock_isrs = Reload_Clock_isrs; - } - else - { - Clock_isrs -= 1; - } -#else -*(int *)(0xfed00000) += 1; - rtems_clock_tick(); -#endif - - i960_clear_intr( 12 ); -} diff --git a/c/src/lib/libbsp/i960/rxgen960/configure.ac b/c/src/lib/libbsp/i960/rxgen960/configure.ac deleted file mode 100644 index baa0786618..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/configure.ac +++ /dev/null @@ -1,20 +0,0 @@ -## Process this file with autoconf to produce a configure script. -## -## $Id$ - -AC_PREREQ(2.59) -AC_INIT([rtems-c-src-lib-libbsp-i960-rxgen960],[_RTEMS_VERSION],[rtems-bugs@rtems.com]) -AC_CONFIG_SRCDIR([bsp_specs]) -RTEMS_TOP(../../../../../..) - -RTEMS_CANONICAL_TARGET_CPU -AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.9]) -RTEMS_BSP_CONFIGURE - -RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm]) -RTEMS_CANONICALIZE_TOOLS -RTEMS_PROG_CCAS - -# Explicitly list all Makefiles here -AC_CONFIG_FILES([Makefile]) -AC_OUTPUT diff --git a/c/src/lib/libbsp/i960/rxgen960/console/concntl.h b/c/src/lib/libbsp/i960/rxgen960/console/concntl.h deleted file mode 100644 index c1632a6ed7..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/console/concntl.h +++ /dev/null @@ -1,16 +0,0 @@ -/* - * $Id$ - */ - -typedef enum -{ - CON_KBHIT, - CON_GET_RAW_BYTE, - CON_SEND_RAW_BYTE -} console_ioctl_t; - -typedef struct -{ - console_ioctl_t ioctl_type; - uint32_t param; -} console_ioctl_request_t; diff --git a/c/src/lib/libbsp/i960/rxgen960/console/console.c b/c/src/lib/libbsp/i960/rxgen960/console/console.c deleted file mode 100644 index 959a91deae..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/console/console.c +++ /dev/null @@ -1,254 +0,0 @@ -/* - * This file contains the template for a console IO package. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include -#include "concntl.h" -/* #include "pcimsgreg.h" XXX JRS */ - -#ifndef lint -static char _sccsid[] = "@(#)console.c 09/12/96 1.13\n"; -#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; - - if ( console_pmr_init(*(uint32_t*)arg) ) - return RTEMS_INVALID_NUMBER; - - status = rtems_io_register_name( - "/dev/console", - major, - (rtems_device_minor_number) 0 - ); - - if (status != RTEMS_SUCCESSFUL) - rtems_fatal_error_occurred(status); - - return RTEMS_SUCCESSFUL; -} - -/* is_character_ready - * - * This routine returns TRUE if a character is available. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * Return values: - */ - -rtems_boolean is_character_ready( - char *ch -) -{ - *ch = '\0'; /* return NULL for no particular reason */ - return(console_pmr_kbhit()); -} - -/* inbyte - * - * This routine reads a character from the SOURCE. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * Return values: - * character read from SOURCE - */ - -char inbyte( unsigned int minor ) -{ - /* - * If polling, wait until a character is available. - */ - return console_pmr_getc(); -} - -/* 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( unsigned int minor, - char ch -) -{ - console_pmr_putc( ch ); - - /* - * Carriage Return/New line translation. - */ - - if ( ch == '\n' ) - outbyte( minor, '\r' ); -} - -/* - * 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; - uint8_t *buffer; - uint32_t maximum; - uint32_t 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(minor); - if (buffer[ count ] == '\n' || buffer[ count ] == '\r') { - buffer[ count++ ] = '\n'; - buffer[ count ] = 0; - outbyte( minor, '\n' ); /* newline */ - break; - } - else if (buffer[ count ] == '\b' && count > 0 ) - { - outbyte( minor, '\b' ); /* move back one space */ - outbyte( minor, ' ' ); /* erase the character */ - outbyte( minor, '\b' ); /* move back one space */ - count-=2; - } - else - outbyte( minor, buffer[ count ] ); /* echo the character */ - } - - 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; - uint8_t *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(minor,'\r'); - } - outbyte( minor,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 -) -{ - if (!arg) - return RTEMS_INVALID_ADDRESS; - - switch( ((console_ioctl_request_t *)arg)->ioctl_type ) - { - case CON_KBHIT: - /* check if keyboard was hit */ - ((console_ioctl_request_t *)arg)->param = console_pmr_kbhit(); - break; - - case CON_GET_RAW_BYTE: - ((console_ioctl_request_t *)arg)->param = inbyte(minor); - break; - - case CON_SEND_RAW_BYTE: - outbyte(minor, ((console_ioctl_request_t *)arg)->param); - break; - - default: - break; - } - - return RTEMS_SUCCESSFUL; -} diff --git a/c/src/lib/libbsp/i960/rxgen960/console/serial.c b/c/src/lib/libbsp/i960/rxgen960/console/serial.c deleted file mode 100644 index 2a1b061efe..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/console/serial.c +++ /dev/null @@ -1,348 +0,0 @@ -/* - * $Id$ - */ - -#include "serial.h" -#include "rtems.h" - -typedef unsigned char uchar ; /* Abbreviations */ -typedef unsigned short ushort ; -typedef unsigned long ulong ; -int DBGConsole_make_sync = 0; -#define CONSOLE_CHANNELS 1 - -#define MAX_CONSOLE 4 -static int consoles[MAX_CONSOLE]; -static int active_consoles = 0; -static struct{ - rtems_id sem; - int rx; - int cnt; - char in_line[128]; -}cons_input[MAX_CONSOLE]; - -/* This uses the message out and in buffers as serial emulator. - Pretty stupid eh? -*/ - -#define uart1 ((volatile unsigned char *)0x1318) -#define uart1_rx ((volatile unsigned int *)0x1310) - -#define NUM_UARTS 1 -static volatile unsigned int * uart = { uart1 }; -static volatile unsigned int * uart_rx = { uart1_rx }; - -extern void display_msg(void); -/*extern int sprintf();*/ - -int -console_uartinit(unsigned int BAUDRate) -{ -#ifdef CONSOLE_CHANNELS - void cons_isr(); - rpmu_attach_inmsg0(cons_isr); -#endif - return(0); -} - -/* Introduce a new console channel */ -console_new(char * name) -{ -#ifdef CONSOLE_CHANNELS - unsigned int x, stat; - x = 0xfe000000 | (name[0] << 16) | (name[1] << 8) | name[2]; - do { - stat = *uart; - } while (DBGConsole_make_sync && (stat != 0)); - *uart = x; - x = ( name[3] << 24) | ( name[4] << 16) | ( name[5] << 8) | name[6] ; - do { - stat = *uart; - } while (DBGConsole_make_sync && (stat != 0)); - *uart = x; - active_consoles += 1; - rtems_task_ident( RTEMS_SELF, RTEMS_SEARCH_ALL_NODES, &consoles[active_consoles] ); -#endif -} - - /*********************************************************************** - *** Transmit character to host. - *** put the console ID in upper byte - *** - ***********************************************************************/ - -int console_sps_putc(int cc) -{ - register unsigned char stat; - int rtid, i; - unsigned int ch; - unsigned int level; -#ifdef CONSOLE_CHANNELS - rtems_task_ident( RTEMS_SELF, RTEMS_SEARCH_ALL_NODES, &rtid ); - ch = cc & 0xff; - for(i=1; i <= active_consoles; i++){ - if( rtid == consoles[i]){ - ch |= (i ) << 24 ; - break; - } - } -#else - ch = cc; -#endif - - /* - * Pause until there is room in the UART transmit - * buffer. - */ - - if (ch == -1) - return ch; - -wait: - do { - stat = *uart; - } while (DBGConsole_make_sync && (stat != 0)); - rtems_interrupt_disable(level); - if( (*uart != 0) && DBGConsole_make_sync){ - rtems_interrupt_enable(level); - goto wait; - } - - /* - * Transmit data. (Junk) - */ - - *uart = ch; - rtems_interrupt_enable(level); - return cc; - -} - - /* - * putnum -- print a 32 bit number in hex - */ - int - putnum (num) - unsigned int num; - { - char buffer[9]; - int count; - int digit; - - for (count = 7 ; count >= 0 ; count--) { - digit = (num >> (count * 4)) & 0xf; - - if (digit <= 9) - console_sps_putc( (char) ('0' + digit)); - else - console_sps_putc( (char) ('A' - 10 + digit)); - } - } - - /* - * putmem -- print the specified memory block - */ - void - putmem (addr, num) - char *addr; - unsigned int num; - { - int i = 0; - int j = 0; - int val = 0; - int digit = 0; - - console_sps_putc(13); - console_sps_putc(10); - putnum((unsigned int) addr); - console_sps_putc(':'); - console_sps_putc(' '); - while(num) - { - val = *addr; - - for (j = 0; j < 2; j++) - { - digit = (val & 0xf0) >> 4; - val <<= 4; - - if (digit < 10) - { - console_sps_putc(digit + '0'); - } - else - { - console_sps_putc(digit - 10 + 'A'); - } - } - console_sps_putc(' '); - - num--; - addr++; - if (++i == 16) - { - console_sps_putc(13); - console_sps_putc(10); - putnum((unsigned int) addr); - console_sps_putc(':'); - console_sps_putc(' '); - i = 0; - } - } - console_sps_putc(13); - console_sps_putc(10); - } - - /* - * putcmem -- print the specified pci config memory block - */ - void - putcmem (addr, num) - unsigned char *addr; - unsigned int num; - { - int i = 0; - int j = 0; - unsigned short val = 0; - int digit = 0; - unsigned int *satucmd = (unsigned int *) 0x1298; - unsigned int *soccar = (unsigned int *) 0x12a8; - unsigned int *soccdp = (unsigned int *) 0x12b0; - - *satucmd = 4; - - console_sps_putc(13); - console_sps_putc(10); - putnum((unsigned int) addr); - console_sps_putc(':'); - console_sps_putc(' '); - while(num) - { - *soccar = (unsigned int) addr; - val = *soccdp; - - for (j = 0; j < 4; j++) - { - digit = (val & 0xf000) >> 12; - val <<= 4; - - if (digit < 10) - { - console_sps_putc(digit + '0'); - } - else - { - console_sps_putc(digit - 10 + 'A'); - } - } - console_sps_putc(' '); - - num -= 2; - addr += 2; - if (++i == 8) - { - console_sps_putc(13); - console_sps_putc(10); - putnum((unsigned int) addr); - console_sps_putc(':'); - console_sps_putc(' '); - i = 0; - } - } - console_sps_putc(13); - console_sps_putc(10); - } - - /*********************************************************************** - *** Read character from host. - ***********************************************************************/ -#ifdef CONSOLE_CHANNELS -int console_sps_getc() -{ - - int consinx; - int rtid, i; - unsigned int level, level2; - char ch; - consinx = 0; - rtems_task_ident( RTEMS_SELF, RTEMS_SEARCH_ALL_NODES, &rtid ); - for(i=1; i <= active_consoles; i++){ - if( rtid == consoles[i]){ - consinx = i ; - break; - } - } - if( i > active_consoles) - consinx = 0; - if( cons_input[consinx].sem == 0){ - rtems_name sname; - sname = rtems_build_name('S','U','X',(char)(consinx + '0')); - rtems_semaphore_create(sname, 0, RTEMS_DEFAULT_ATTRIBUTES, 0, &cons_input[consinx].sem); - cons_input[consinx].rx = 0; - } - while( cons_input[consinx].cnt == cons_input[consinx].rx){ - rtems_semaphore_obtain(cons_input[consinx].sem, RTEMS_WAIT, 0); -/* rtems_task_wake_after( RTEMS_YIELD_PROCESSOR);*/ -} - rtems_interrupt_disable(level); - i = cons_input[consinx].rx; - ch = cons_input[consinx].in_line[i]; - i++; - if( i >= sizeof( cons_input[consinx].in_line)) - i = 0; - cons_input[consinx].rx = i; - rtems_interrupt_enable(level); - return ch; -} - -void cons_isr() -{ - unsigned int i, chin, consinx, st; - chin = *uart_rx; - consinx = chin >> 24; - if( consinx > active_consoles) - goto release; - i = cons_input[consinx].cnt; - cons_input[consinx].in_line[i] = chin & 0xff; - i++; - if( i >= sizeof( cons_input[consinx].in_line)) - i = 0; - cons_input[consinx].cnt = i; - st = rtems_semaphore_release( cons_input[consinx].sem); -release: - *uart_rx = 0; -} - -#else -volatile int console_foo = 0; -int console_sps_getc() -{ - volatile unsigned int stat; - register int ch; - - stat = *uart_rx; - while (stat == 0) - { - rtems_task_wake_after( RTEMS_YIELD_PROCESSOR ); - stat = *uart_rx; - console_foo++; - } - *uart_rx = 0; - - ch = stat; - - return ch; -} -#endif - - /*********************************************************************** - *** check character from host. - ***********************************************************************/ - -int console_sps_kbhit() -{ - register unsigned short stat; - - stat = *uart; - return ( stat != 0); -} diff --git a/c/src/lib/libbsp/i960/rxgen960/console/serial.h b/c/src/lib/libbsp/i960/rxgen960/console/serial.h deleted file mode 100644 index 55f13ccb6f..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/console/serial.h +++ /dev/null @@ -1,8 +0,0 @@ -/* - * $Id$ - */ - -int console_uartinit(unsigned int BAUDRate); -int console_sps_putc(int ch); -int console_sps_getc(); -int console_sps_kbhit(); diff --git a/c/src/lib/libbsp/i960/rxgen960/include/.cvsignore b/c/src/lib/libbsp/i960/rxgen960/include/.cvsignore deleted file mode 100644 index 5f1077556d..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/include/.cvsignore +++ /dev/null @@ -1,4 +0,0 @@ -bspopts.h -bspopts.h.in -stamp-h -stamp-h.in diff --git a/c/src/lib/libbsp/i960/rxgen960/include/bsp.h b/c/src/lib/libbsp/i960/rxgen960/include/bsp.h deleted file mode 100644 index 2e213ab744..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/include/bsp.h +++ /dev/null @@ -1,132 +0,0 @@ -/* bsp.h - * - * This include file contains some definitions specific to the - * Ramix PMC901 board - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#ifndef __PMC901_h -#define __PMC901_h - -#ifdef __cplusplus -extern "C" { -#endif - -#include - -#include -#include -#include -#include -#include - -/* - * confdefs.h overrides for this BSP: - * - number of termios serial ports (defaults to 1) - * - Interrupt stack space is not minimum if defined. - */ - -/* #define CONFIGURE_NUMBER_OF_TERMIOS_PORTS 2 */ -#define CONFIGURE_INTERRUPT_STACK_MEMORY (8 * 1024) - -/* - * Simple spin delay in microsecond units for device drivers. - * This is very dependent on the clock speed of the target. - */ - -#define rtems_bsp_delay( microseconds ) \ - { register uint32_t _delay=(microseconds); \ - register uint32_t _tmp = 0; /* initialized to avoid warning */ \ - asm volatile( "0: \ - remo 3,31,%0 ; \ - cmpo 0,%0 ; \ - subo 1,%1,%1 ; \ - cmpobne.t 0,%1,0b " \ - : "=d" (_tmp), "=d" (_delay) \ - : "0" (_tmp), "1" (_delay) ); \ - } - -/* Constants */ - -#define RAM_START 0xfed00000 -#define RAM_END 0xfef00000 /* this should actually be 16MB, most likely */ - -/* NINDY console I/O requests: - * CO sends a single character to stdout, - * CI reads one. - */ - -#define NINDY_INPUT 0 -#define NINDY_OUTPUT 1 - -/* - * get_prcb - * - * Returns the PRCB pointer. - */ - -static inline i960_PRCB *get_prcb( void ) -{ - register i960_PRCB *_prcb = 0; - - asm volatile( "calls 5; \ - mov g0,%0" \ - : "=d" (_prcb) \ - : "0" (_prcb) ); - return ( _prcb ); -} - -#ifdef RXGEN960_INIT -#undef BSP_EXTERN -#define BSP_EXTERN -#else -#undef BSP_EXTERN -#define BSP_EXTERN extern -#endif - -/* miscellaneous stuff assumed to exist */ - -extern rtems_configuration_table BSP_Configuration; - -BSP_EXTERN i960_PRCB *Prcb; -BSP_EXTERN i960_control_table *Ctl_tbl; - -/* - * Device Driver Table Entries - */ - -/* - * NOTE: Use the standard Console driver entry - */ - -/* - * NOTE: Use the standard Clock driver entry - */ - -/* - * How many libio files we want - */ - -#define BSP_LIBIO_MAX_FDS 20 - -/* functions */ - -void bsp_cleanup( void ); - -i960_isr_entry set_vector( rtems_isr_entry, unsigned int, unsigned int ); -i960_isr_entry set_tmr_vector( rtems_isr_entry, unsigned int, unsigned int ); - -#ifdef __cplusplus -} -#endif - -#endif -/* end of include file */ diff --git a/c/src/lib/libbsp/i960/rxgen960/include/rxgen960_config.h b/c/src/lib/libbsp/i960/rxgen960/include/rxgen960_config.h deleted file mode 100644 index e0969dfd89..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/include/rxgen960_config.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - * PMC901 specific configuration values - * - * $Id$ - */ - -#ifndef __PMC901_CONFIG__ -#define __PMC901_CONFIG__ -/* The following define the PMC960 bus regions */ -/* Bus configuration */ -#define RP_CONFIG_REGS I960RP_BUS_WIDTH(32) -#define FLASH I960RP_BUS_WIDTH(8) -#define DRAM I960RP_BUS_WIDTH(32) -#define UART_LED I960RP_BUS_WIDTH(8) -#define DEFAULT I960RP_BUS_WIDTH(32) - -/* Region Configuration */ -#define REGION_0_CONFIG RP_CONFIG_REGS -#define REGION_2_CONFIG DEFAULT -#define REGION_4_CONFIG DEFAULT -#define REGION_6_CONFIG DEFAULT -#define REGION_8_CONFIG DEFAULT -#define REGION_A_CONFIG DRAM -#define REGION_C_CONFIG UART_LED -#define REGION_E_CONFIG DEFAULT -/* #define REGION_BOOT_CONFIG (FLASH | I960RP_ZBYTE_ORDER)*/ -#define REGION_BOOT_CONFIG (DRAM) - -/* #define DRAM_BASE 0xfed00000 */ -#define DRAM_BASE 0xa0000000 - -#endif diff --git a/c/src/lib/libbsp/i960/rxgen960/include/tm27.h b/c/src/lib/libbsp/i960/rxgen960/include/tm27.h deleted file mode 100644 index f83175a6e7..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/include/tm27.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - * tm27.h - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#ifndef _RTEMS_TMTEST27 -#error "This is an RTEMS internal file you must not include directly." -#endif - -#ifndef __tm27_h -#define __tm27_h - -/* - * Define the interrupt mechanism for Time Test 27 - */ - -#define MUST_WAIT_FOR_INTERRUPT 0 - -#define Install_tm27_vector( handler ) set_vector( (handler), 6, 1 ) - -#define Cause_tm27_intr() i960_cause_intr( 0x62 ) - -#define Clear_tm27_intr() i960_clear_intr( 6 ) - -#define Lower_tm27_intr() /* empty */ - -#endif diff --git a/c/src/lib/libbsp/i960/rxgen960/start/rxgen_romld.S b/c/src/lib/libbsp/i960/rxgen960/start/rxgen_romld.S deleted file mode 100644 index a5fd26816c..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/start/rxgen_romld.S +++ /dev/null @@ -1,165 +0,0 @@ -/* - * $Id$ - */ - -#include - - BEGIN_CODE - - .globl _romStart - .globl start - .globl _start - .globl _romFaultStart - .globl _led_array - .text -start: /* JRS */ -_start: /* JRS */ -SYM(romStart ): -SYM(_romStart ): - # This line is to make compiler happy. - mov 0, g14 - ldconst 0x120f,r10 # BIST register -/* - Setup code for in memory loaded image -*/ -/* - # Interrupt stack is used by default. - # Copy all code (except Fault Table and Fault Handler) - # from EPROM into DRAM. -*/ - ldconst 0x120f,r10 //# BIST register - ldconst 0x2,r3 - stob r3,0(r10) //# 2->LED -/* - # Zero all uninitialized data -*/ - callx _zeroBss - ldconst 0x120f,r10 //# BIST register - ldconst 0x3,r3 - stob r3,0(r10) //# 3->LED -/* - # And reinitialize processor. - # _start is a few lines below. - # _prcb is RAM-based struct PRCB. -*/ - ldconst 0x300, r4 - ldconst _pmc_start, r5 - ldconst _ram_prcb, r6 - sysctl r4, r5, r6 -/* - # This point will never be reached. -*/ - -SYM(_pmc_start) : -SYM(pmc_start) : - ldconst 0x120f,r10 # BIST register - ldconst 0x4,r3 - stob r3,0(r10) //# 4->LED - mov 0, g14 -/* - # To get ready to invoke procedures. - # I'll use supervisor stack. -*/ - - ldconst _svrStackPtr, fp - lda 16*4(fp), sp - ldconst 0x5,r3 - stob r3,0(r10) //# 5->LED - - ldconst 0x1F0000, r4 - ldconst 0x1F2000, r3 - ldconst 0, r5 - modpc r4, r3, r5 - - ldconst 7,r3 - stob r3,0(r10) //# 7->LED - - callx _rx_boot_card -/* # if _romMain ever returns ... */ - b _romExit - -SYM(romFaultStart) : -SYM(_romFaultStart) : - - mov 0, g14 - - /* ldconst 0, sf0 XXX JRS */ -/* - # To get ready to invoke procedures. - # I'll use supervisor stack. - # _svrStackPtr is defined directly in rom.ld. -*/ - ldconst _svrStackPtr, fp - lda 16*4(fp), sp -/* - # Set processor priority to zero. -*/ - ldconst 0x1F0000, r4 - ldconst 0, r5 - modpc r4, r4, r5 -// # Now to real code -// Fix this up callx _romFaultMain - callx _rx_boot_card -// # if _romMain ever returns ... - b _romExit - -_romExit : -// # if _romMain ever returns ... -// fmark - b _romExit - -SYM(led_array): - .byte 99 - .byte 1 - .byte 2 - .byte 3 - .byte 4 - .byte 5 - .byte 6 - .byte 7 - .byte 8 - .byte 9 - .byte 0xa - .byte 0xb - .byte 0xc - -/* just to compile and link application XXX JOEL */ - .globl _faultStart - .globl _faultEnd - .globl _faultCheckSum - .globl _faultBuffer - .globl _svrStackPtr - .globl _console_pmr_getc - .globl _console_pmr_kbhit - .globl _console_pmr_init - .globl _console_pmr_putc - .globl _DBGConsole_make_sync - .globl _codeRamStart - .globl _codeRomStart - .globl _codeRamEnd - .globl _codeRomEnd - .globl _bssStart - .globl _bssEnd - .globl _bssStart_1 - .globl _bssEnd_1 - .globl _intStackPtr - -_faultStart: -_faultEnd: -_faultCheckSum: -_faultBuffer: -_svrStackPtr: -_console_pmr_getc: -_console_pmr_kbhit: -_console_pmr_init: -_console_pmr_putc: -_DBGConsole_make_sync: -_codeRamStart: -_codeRomStart: -_codeRamEnd: -_codeRomEnd: -_bssStart: -_bssEnd: -_bssStart_1: -_bssEnd_1: -_intStackPtr: diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/asmfault.S b/c/src/lib/libbsp/i960/rxgen960/startup/asmfault.S deleted file mode 100644 index 3b452f8340..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/asmfault.S +++ /dev/null @@ -1,48 +0,0 @@ -/* - * $Id$ - */ - -/* - * asmfault.s - * Last change : 31. 1.95 - */ - - .text - .globl _faultHndlEntry - - .text - -_faultHndlEntry : - /* Raise priority. */ - ldconst 0x1F0000, r4 - ldconst 0xFFFFFFFF, r5 - modpc r4, r4, r5 - /* Where to keep state of the faulted code. */ - ldconst _faultBuffer, r3 - /* Save global registers. */ - stq g0, 64+0(r3) - stq g4, 64+16(r3) - stq g8, 64+32(r3) - stt g12, 64+48(r3) - /* Faulted code's fp (g15) is our pfp. */ - st pfp, 64+60(r3) - /* Make sure locals are in stack. */ - flushreg - /* g3 = & previosFrame[0] */ - andnot 0xF, pfp, g3 - /* Save local registers of faulted procedure. */ - ldq 0(g3), r4 - stq r4, 0(r3) - ldq 16(g3), r4 - stq r4, 16(r3) - ldq 32(g3), r4 - stq r4, 32(r3) - ldq 48(g3), r4 - stq r4, 48(r3) - /* To handling. */ - mov fp, g0 - mov r3, g1 - callx _faultTblHandler - /* This point will never be reached ... */ - -/* End of file */ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/asmfault.h b/c/src/lib/libbsp/i960/rxgen960/startup/asmfault.h deleted file mode 100644 index e3c406c8ab..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/asmfault.h +++ /dev/null @@ -1,19 +0,0 @@ -/*-------------------------------------*/ -/* asmfault.h */ -/* Last change : 3.11.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _ASMFAULT_H_ -#define _ASMFAULT_H_ - - /* Fault handler start point. - */ -extern void faultHndlEntry(void); - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/asmstub.S b/c/src/lib/libbsp/i960/rxgen960/startup/asmstub.S deleted file mode 100644 index 2a9327b54f..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/asmstub.S +++ /dev/null @@ -1,144 +0,0 @@ -# -# $Id$ -# - -####################################### -# asmstub.s # -# Last change : 20. 1.95 # -####################################### - -######################################################################## -# -# PURPOSE: resets processor -# -# ARGUMENTS: g0 = start point -# g1 = prcb -# -# RETURNS: none -######################################################################## - - .text - .globl _asm_exit - - .text -_asm_exit: - ldconst 0x300, g2 -# ldconst _start, g1 -# ldconst _ram_prcb, g2 - sysctl g2, g0, g1 - ret - -######################################################################## -# -# PURPOSE: execute sysctl instruction -# -# ARGUMENTS: g0 = message type (0x300 for reinitialize) -# g1 = depends on type (inst addr for reinitialize) -# g2 = depends on type (prcb addr for reinitialize) -# -# RETURNS: none -######################################################################## - - .text - .globl _asm_sysctl - - .text -_asm_sysctl: - b _asm_sysctl - sysctl g0, g1, g2 - ret - -######################################################################## -# -# PURPOSE: alter a bit in the interrupt pending register -# -# ARGUMENTS: g0 = interrupt number -# g1 = 1 to set, 0 to clear -# -# RETURNS: none -######################################################################## - - .text - .globl _asm_ipend - - .text -_asm_ipend: - chkbit 0, g1 - /* alterbit g0, sf0, sf0 XXX JRS */ - ret -######################################################################## -# -# PURPOSE: alter a bit in the interrupt mask register -# -# ARGUMENTS: g0 = interrupt number -# g1 = 1 to set, 0 to clear -# -# RETURNS: none -######################################################################## - - .text - .globl _asm_imask - - .text -_asm_imask: - chkbit 0, g1 - /* alterbit g0, sf1, sf1 XXX JRS */ - ret - -######################################################################## -# -# PURPOSE: get the value of the interrupt mask register -# -# ARGUMENTS: none -# -# RETURNS: value of IMASK reg -######################################################################## - - .text - .globl _asm_get_imask - - .text -_asm_get_imask: - /* mov sf1, g0 XXX JRS */ - ret - -######################################################################## -# -# PURPOSE: modify process-controls register -# -# ARGUMENTS: g0 = value masked/stored in PC reg -# g1 = mask of bits to be modified -# -# RETURNS: g0 = initial value of PC reg -######################################################################## - - .text - .globl _asm_modpc - - .text -_asm_modpc: - modpc g1, g1, g0 - ret - -######################################################################## -# -# PURPOSE: change a cached interrupt vector -# -# ARGUMENTS: g0 = interrupt number -# g1 = new interrupt vector -# -# RETURNS: none -######################################################################## - - .text - .globl _asm_ivector - - .text -_asm_ivector: - addo 1, g0, g0 - st g1, [g0 * 4] - ret - -############### -# End of file # -############### diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/asmstub.h b/c/src/lib/libbsp/i960/rxgen960/startup/asmstub.h deleted file mode 100644 index 0f69a6060d..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/asmstub.h +++ /dev/null @@ -1,37 +0,0 @@ -/*-------------------------------------*/ -/* asmstub.h */ -/* Last change : 20. 1.95 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _ASMSTUB_H_ -#define _ASMSTUB_H_ - -#include "prcb.h" - - /* Reset Processor taking Start Point and Prcb - * as parameters. - */ -extern void asm_exit(void (* start)(void), struct PRCB * prcb); - /* Call SYSCTL instruction. - */ -extern void asm_sysctl(unsigned int cmd, unsigned int a1, unsigned int a2); - /* Alter a bit in the interrupt pending register. - */ -extern void asm_ipend(unsigned int iNmbr, unsigned int toSet); - /* Alter a bit in the interrupt mask register. - */ -extern void asm_imask(unsigned int iNmbr, unsigned int toSet); - /* Call MODPC instruction. - */ -extern int asm_modpc(unsigned int val, unsigned int mask); - /* Change a cached interrupt vector. - */ -extern void asm_ivector(unsigned int vctr, void (* hndl)(void)); - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/bspstart.c b/c/src/lib/libbsp/i960/rxgen960/startup/bspstart.c deleted file mode 100644 index de6651669c..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/bspstart.c +++ /dev/null @@ -1,136 +0,0 @@ -/* bsp_start() - * - * 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. - * - * INPUT: NONE - * - * OUTPUT: NONE - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include -#include - -#define RXGEN960_INIT - -#include -#include -#include - -#define HEAP_SIZE 1024*1024*2 - -/* - * The original table from the application and our copy of it with - * some changes. - */ - -extern int putnum(unsigned int); - -extern rtems_configuration_table Configuration; -extern void bsp_postdriver_hook(void); /* defined in shared directory */ - -rtems_configuration_table BSP_Configuration; - -rtems_cpu_table Cpu_table; - -char *rtems_progname; -unsigned int top_of_used_memory; - -/* - * Function: bsp_pretasking_hook - * Created: 95/03/10 - * - * Description: - * BSP pretasking hook. Called just before drivers are initialized. - * Used to setup libc and install any BSP extensions. - * - * NOTES: - * Must not use libc (to do io) from here, since drivers are - * not yet initialized. - * - */ - -void -bsp_pretasking_hook(void) -{ - - extern int end; - uint32_t heap_start; - -*(unsigned char *)(0x120f) = 0xd; -/* heap_start = (uint32_t) &end; */ - heap_start = (uint32_t) top_of_used_memory; - if (heap_start & (CPU_ALIGNMENT-1)) - heap_start = (heap_start + CPU_ALIGNMENT) & ~(CPU_ALIGNMENT-1); - - bsp_libc_init((void *) heap_start, 64 * 1024, 0); - -#ifdef RTEMS_DEBUG - rtems_debug_enable( RTEMS_DEBUG_ALL_MASK ); -#endif -*(unsigned char *)(0x120f) = 0xf; -} - -/* we need to have the top of memory remembered later to start libc_init with - the correct values -*/ -int rx_boot_card( int argc, char **argv, char **environp) -{ - extern int end; - top_of_used_memory = (uint32_t) &end + 0x1000; - if ((argc > 0) && argv && argv[0]) - rtems_progname = argv[0]; - else - rtems_progname = "RTEMS/RP"; - - boot_card(argc, argv); - -} - -bsp_start(void) -{ - - *(unsigned int *)OIMR_ADDR = 0xff; /* Mask all primary PCI Interrupts*/ - Prcb = get_prcb(); - Ctl_tbl = Prcb->control_tbl; - -*(unsigned char *)(0x120f) = 8; - /* - * we do not use the pretasking_hook. - */ - - Cpu_table.pretasking_hook = bsp_pretasking_hook; /* init libc, etc. */ - Cpu_table.postdriver_hook = bsp_postdriver_hook; - Cpu_table.do_zero_of_workspace = TRUE; - Cpu_table.interrupt_stack_size = CONFIGURE_INTERRUPT_STACK_MEMORY; - Cpu_table.extra_mpci_receive_server_stack = 0; - - /* just trying to get along */ - Cpu_table.stack_allocate_hook = 0; - Cpu_table.stack_free_hook = 0; - - /* - * Tell libio how many fd's we want and allow it to tweak config - */ - -*(unsigned char *)(0x120f) = 0x09; - - BSP_Configuration.work_space_start = (void *) top_of_used_memory; - top_of_used_memory += (BSP_Configuration.work_space_size + 0x1000); - -*(unsigned char *)(0x120f) = 0x0a; - - return 0; -} diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.c b/c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.c deleted file mode 100644 index 266f4e878a..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.c +++ /dev/null @@ -1,85 +0,0 @@ -/*-------------------------------------*/ -/* cntrltbl.c */ -/* Last change : 7.10.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#include -#include "cntrltbl.h" -/*-------------------------------------*/ - /* Control Table. - */ - /* Interrupt Map Registers Initial. - */ -#define IMAP0 0x4321 -#define IMAP1 0x8765 -#define IMAP2 0xA90000 -#define ICON (VECTOR_CACHE | MSK_UNCHNG | I_ENABLE) - -/* Bus configuration */ -#define RP_CONFIG_REGS I960RP_BUS_WIDTH_32 -#define FLASH I960RP_BUS_WIDTH_8 -#define DRAM I960RP_BUS_WIDTH_32 -#define UART_LED I960RP_BUS_WIDTH_8 -#define DEFAULT I960RP_BUS_WIDTH_32 - -/* Region Configuration */ -#define REGION_0_CONFIG RP_CONFIG_REGS -#define REGION_2_CONFIG DEFAULT -#define REGION_4_CONFIG DEFAULT -#define REGION_6_CONFIG DEFAULT -#define REGION_8_CONFIG DEFAULT -#define REGION_A_CONFIG DRAM -#define REGION_C_CONFIG UART_LED - -#define REGION_E_CONFIG DEFAULT -#define REGION_BOOT_CONFIG DRAM - - /* Trace Control Initial. */ -#define TC 0 - -/*Bus Control Initial value */ -#define BCON CONF_TBL_VALID - -ControlTblEntry controlTbl[] = { - /* --group 0 -- */ - 0, - 0, - 0, - 0, - /* --group 1 -- */ - IMAP0, - IMAP1, - IMAP2, - ICON, - /* --group 2 -- */ - REGION_0_CONFIG, - 0, - REGION_2_CONFIG, - 0, - /* --group 3 -- */ - REGION_4_CONFIG, - 0, - REGION_6_CONFIG, - 0, - /* --group 4 -- */ - REGION_8_CONFIG, - 0, - REGION_A_CONFIG, - 0, - /* --group 5 -- */ - REGION_C_CONFIG, - 0, - REGION_BOOT_CONFIG, - 0, - /* --group 6 -- */ - 0, /* Reserved */ - 0, - TC, - BCON -}; -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.h b/c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.h deleted file mode 100644 index 5c40d75430..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.h +++ /dev/null @@ -1,47 +0,0 @@ -/*-------------------------------------*/ -/* cntrltbl.h */ -/* Last change : 11. 1.95 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _CNTRLTBL_H_ -#define _CNTRLTBL_H_ - - /* Control Table Entry. - */ -typedef unsigned int ControlTblEntry; - /* Control Table itself. - */ -extern ControlTblEntry controlTbl[]; -extern ControlTblEntry rom_controlTbl[]; - - /* Interrupt Registers Initial. - */ -#define IPB0 0 -#define IPB1 0 -#define DAB0 0 -#define DAB1 0 - -#define I_DISABLE (0x1<<10) -#define I_ENABLE 0 - -#define MSK_UNCHNG 0 -#define MSK_CLEAR (0x1<<11) - -#define VECTOR_CACHE (0x1<<13) - - /* BreakPoint Control Register Initial. - */ -#define BPCON 0 - /* Bus Controller Mode Comstants. - */ -#define CONF_TBL_VALID 0x1 -#define PROTECT_RAM 0x2 -#define PROTECT_RAM_SUP 0x4 - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/dram.ld b/c/src/lib/libbsp/i960/rxgen960/startup/dram.ld deleted file mode 100644 index b4db162cec..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/dram.ld +++ /dev/null @@ -1,154 +0,0 @@ -/*------------------------------------*/ -/* rom.ld */ -/* Last change : 19. 4.95 */ -/*------------------------------------* - * To build ROM based i960 image. - *------------------------------------*/ -/* - * $Id$ - */ - - - -MEMORY -{ - dram : org = 0xa2000000, len = 120K -} - - -_bootAddr = 0xa0200000; -_HEAP = 0xA0100000 ; - -SECTIONS -{ - /* Only monitor start point and fault handler - * will live in ROM as far as text is concerned. - * Only fault table will live in ROM as far as data - * is concerned. - */ - romCode : - { - /* Make sure that the monitor start point - * is the first location in EPROM. - */ - rommon.o960(.text) - /* Procedures to copy code and - * initialize bss in RAM. - */ - sctns.o960(.text) - /* Make Sure Fault Table (and its handler's data) - * live here so that they wouldn't get destroyed). - */ - asmfault.o960 - flttbl.o960 - /* 16 byte aligned PRCB. - */ - . = ALIGN(16); - rom_prcb.o960(.data) - /* 16 byte aligned Control Table. - */ - . = ALIGN(16); - rom_cntrltbl.o960(.data) - . = ALIGN(16); - intrtbl.o960(.data) - . = ALIGN(16); - nulsystbl.o960(.data) - . = ALIGN(16); - /* I need this symbol to know where code which is - * to be copied reside in ROM. Align it on a 16 - * boundary. - */ - . = ALIGN(16); - _codeRomStart = .; - } > dram - - /* All the rest of the code will live in RAM. - * Relocation are created as though code resides - * in RAM, while code is placed right after romCode. - * This is responsiblity of the ROM monitor to - * copy code into ROM. - */ - ramCode : AT(ADDR(romCode) + SIZEOF(romCode)) - { - /* RAM-based code section start. - * I need this symbol to know where to copy code - * at initialization time . - */ - _codeRamStart = .; - /* RAM based fault recovery stuff. - */ - _faultStart = .; - fault.o960 - _faultEnd = .; - /* Check sum to gurantee that - * the above section wasn't broken. - */ - . = ALIGN(16); - _faultCheckSum = .; - . += 4; - /* Fault Buffer to keep the state of - * the fauled procedure. - */ - _faultBuffer = .; - . += 256; - /* All the rest of the text goes here. - */ - . = ALIGN(16); - *(.text) - /* 16 byte aligned PRCB. - */ - . = ALIGN(16); - prcb.o960(.data) - /* 16 byte aligned Control Table. - */ - . = ALIGN(16); - cntrltbl.o960(.data) - . = ALIGN(16); - systbl.o960(.data) - /* All the rest of program defined data goes here. - */ - *(.data) - /* RAM-based code section end. - * I need this symbol to know where to copy code - * at initialization time . - */ - _codeRamEnd = .; - } > sram - - /* RAM based uninitialized data. - */ - bss (NOLOAD) : - { - /* BSS section start. I need this symbol to - * zero BSS on initialization. - */ - _bssStart = .; - /* Supervisor Stack. Aligned on a 16 boundary. - */ - . = ALIGN(16); - _svrStackPtr = .; - . += 4K; - /* Interrupt Stack. Aligned on a 16 boundary. - */ - . = ALIGN(16); - _intStackPtr = .; - . += 4K; - /* Program defined BSS. - */ - *(.bss) - /* Program defined COMMON. - */ - *(COMMON) - /* BSS section end. I need this symbol to - * zero BSS on initialization. - */ - _bssEnd = .; - _bssStart_1 = .; - _bssEnd_1 = .; - } > dram - -} - -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/exit.c b/c/src/lib/libbsp/i960/rxgen960/startup/exit.c deleted file mode 100644 index ebf82d8f63..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/exit.c +++ /dev/null @@ -1,39 +0,0 @@ -/* exit - * - * This routine is used to return control to the NINDY monitor - * and is automatically invoked by the STDIO exit() routine. - * - * INPUT: - * status - exit status - * - * OUTPUT: NONE - * - * NOTES: DOES NOT RETURN!!! - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include "bsp.h" - -#if 0 -void _exit( ) -{ - asm volatile( "mov 0,g0; \ - fmark ; \ - syncf ; \ - .word 0xfeedface ; \ - bx start" : : ); - /* The constant 0xfeedface is a magic word for break which - * is defined by NINDY. The branch extended restarts the - * application if the user types "go". - */ -} -#endif diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/fault.c b/c/src/lib/libbsp/i960/rxgen960/startup/fault.c deleted file mode 100644 index 80fb551a8f..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/fault.c +++ /dev/null @@ -1,325 +0,0 @@ -/*-------------------------------------*/ -/* fault.c */ -/* Last change : 13. 7.95 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#include "prcb.h" -#include "i960.h" -#include "flttbl.h" -#include "fault.h" -#include "asmstub.h" -#include -#include - -extern void romFaultStart(void); - -/*-------------------------------------*/ - /* Table of user-registered fault handler entry. - */ -typedef struct { - UserFaultHandler hndl; /* Handler itself. */ - int cnt; /* Handler is valid for cnt times. */ -} UserFaultEntry; - /* Table itself. - */ -static UserFaultEntry userFaultTable[] = { - {0, 0}, /* Parallel */ - {0, 0}, /* Trace */ - {0, 0}, /* Operation */ - {0, 0}, /* Arithmetic */ - {0, 0}, /* Reserved */ - {0, 0}, /* Constraint */ - {0, 0}, /* Reserved */ - {0, 0}, /* Protection */ - {0, 0}, /* Reserved */ - {0, 0} /* Type */ -}; - /* Number of Faults. - */ -#define FaultNmbr (sizeof(userFaultTable)/sizeof(UserFaultEntry)) - -int faultRegister(int fault, UserFaultHandler hndl, int cnt) -{ - static unsigned int faultNewCheckSum(void); - int rsl = 0; - - if (0 <= fault && fault <= FaultNmbr) { - /* Register handler. - */ - userFaultTable[fault].hndl = hndl; - userFaultTable[fault].cnt = cnt; - /* Checksum has changed. - */ - faultCheckSum = faultNewCheckSum(); - rsl = 1; - } - return rsl; -} -int faultOk(int fault) -{ - static unsigned int faultNewCheckSum(void); - int rsl = 0; - - if (0 <= fault && fault <= FaultNmbr) { - /* Fault handler recovered successfully. - * Can use it at least once more. - */ - userFaultTable[fault].cnt ++; - /* Check sum has changed. - */ -#if 0 - faultCheckSum = faultNewCheckSum(); -#endif - faultCheckSum ++; - rsl = 1; - } - return rsl; -} -void faultBad(int invokedFromRom, - unsigned int inst, unsigned int * faultBuffer, - unsigned int type, unsigned int sbtp) -{ - static void faultInfo(int invokedFromRom, - unsigned int inst, unsigned int * faultBuffer, - unsigned int type, unsigned int sbtp); - - /* Close the mem channel nicely. - */ -/* memChnlI960Fault();*/ - /* Give some panic message. - */ - faultInfo(invokedFromRom, inst, faultBuffer, type, sbtp); - /* At this point RAM is repaired. Do - * whatever you want. - */ -#if 0 - if (OsfIsUp) { - asm_exit(romFaultStart, & ram_prcb); - } - else { - asm_exit(romStart, & ram_prcb); - } -# endif - asm_exit(romFaultStart, & ram_prcb); -} -void faultGood(unsigned int inst, unsigned int * faultBuffer, - unsigned int type, unsigned int sbtp) -{ - static unsigned int faultNewCheckSum(void); - - if (userFaultTable[type].hndl != 0 && userFaultTable[type].cnt > 0) { - /* This is done to avoid the situation when - * handler causes a fault and, thus, infinite recursion. - */ - userFaultTable[type].cnt --; - /* Check sum has changed. - */ -#if 0 - faultCheckSum = faultNewCheckSum(); -#endif - faultCheckSum --; - /* Invoke handler. - */ - (* userFaultTable[type].hndl)(inst, faultBuffer, type, sbtp); - /* If this returns => fault is bad. - */ - } - faultBad(0, inst, faultBuffer, type, sbtp); -} -static unsigned int faultNewCheckSum(void) -{ - unsigned int * f = faultStart; - unsigned int * l = faultEnd; - unsigned int sum; - - for (sum = 0; f < l; f ++) { - sum += * f; - } - return sum; -} -static void faultInfo(int invokedFromRom, - unsigned int inst, unsigned int * faultBuffer, - unsigned int type, unsigned int sbtp) -{ - char * typeStr; - char * sbtpStr; - static char * faultParallelSbtpStr(unsigned int); - static char * faultTraceSbtpStr(unsigned int); - static char * faultOperationSbtpStr(unsigned int); - static char * faultArithmeticSbtpStr(unsigned int); - static char * faultReservedSbtpStr(unsigned int); - static char * faultConstraintSbtpStr(unsigned int); - static char * faultProtectionSbtpStr(unsigned int); - static char * faultTypeSbtpStr(unsigned int); - static char * faultUnknownSbtpStr(unsigned int); - static struct { - char * name; - char * (* sbtpStr)(unsigned int); - } faultInfo[] = { - {"Parallel", faultParallelSbtpStr}, - {"Trace", faultTraceSbtpStr}, - {"Operation", faultOperationSbtpStr}, - {"Arithmetic", faultArithmeticSbtpStr}, - {"Reserved", faultReservedSbtpStr}, - {"Constraint", faultConstraintSbtpStr}, - {"Reserved", faultReservedSbtpStr}, - {"Protection", faultProtectionSbtpStr}, - {"Reserved", faultReservedSbtpStr}, - {"Type", faultTypeSbtpStr}, - {"Unknown", faultUnknownSbtpStr} - }; - unsigned int ix; - -/* console_set_channel(CHANNEL_B);*/ - ix = type >= FaultNmbr ? FaultNmbr : type; - typeStr = faultInfo[ix].name; - sbtpStr = (* faultInfo[ix].sbtpStr)(sbtp); - printf("\nFault at 0x%08x: %s[%s]\n", - faultBuffer[IP_REGNUM], typeStr, sbtpStr); - printf("Bad instruction: 0x%08x\n", inst); - printf("AC=0x%08x PC=0x%08x\n", - faultBuffer[ACW_REGNUM], - faultBuffer[PCW_REGNUM]); - printf("g0=0x%08x g1=0x%08x g2=0x%08x g3=0x%08x\n", - faultBuffer[G0_REGNUM+0], faultBuffer[G0_REGNUM+1], - faultBuffer[G0_REGNUM+2], faultBuffer[G0_REGNUM+3]); - printf("g4=0x%08x g5=0x%08x g6=0x%08x g7=0x%08x\n", - faultBuffer[G0_REGNUM+4], faultBuffer[G0_REGNUM+5], - faultBuffer[G0_REGNUM+6], faultBuffer[G0_REGNUM+7]); - printf("g8=0x%08x g9=0x%08x gA=0x%08x gB=0x%08x\n", - faultBuffer[G0_REGNUM+8], faultBuffer[G0_REGNUM+9], - faultBuffer[G0_REGNUM+10], faultBuffer[G0_REGNUM+11]); - printf("gC=0x%08x gD=0x%08x gE=0x%08x gF=0x%08x\n", - faultBuffer[G0_REGNUM+12], faultBuffer[G0_REGNUM+13], - faultBuffer[G0_REGNUM+14], faultBuffer[G0_REGNUM+15]); - printf("r0=0x%08x r1=0x%08x r2=0x%08x r3=0x%08x\n", - faultBuffer[R0_REGNUM+0], faultBuffer[R0_REGNUM+1], - faultBuffer[R0_REGNUM+2], faultBuffer[R0_REGNUM+3]); - printf("r4=0x%08x r5=0x%08x r6=0x%08x r7=0x%08x\n", - faultBuffer[R0_REGNUM+4], faultBuffer[R0_REGNUM+5], - faultBuffer[R0_REGNUM+6], faultBuffer[R0_REGNUM+7]); - printf("r8=0x%08x r9=0x%08x rA=0x%08x rB=0x%08x\n", - faultBuffer[R0_REGNUM+8], faultBuffer[R0_REGNUM+9], - faultBuffer[R0_REGNUM+10], faultBuffer[R0_REGNUM+11]); - printf("rC=0x%08x rD=0x%08x rE=0x%08x rF=0x%08x\n", - faultBuffer[R0_REGNUM+12], faultBuffer[R0_REGNUM+13], - faultBuffer[R0_REGNUM+14], faultBuffer[R0_REGNUM+15]); - if (invokedFromRom) { - printf("RAM image damaged. No chance to recover\n"); - } - else { - printf("RAM image not damaged. Still no recovery\n"); - } -} -static char * faultParallelSbtpStr(unsigned int sbtp) -{ - static char buf[10]; - - sprintf(buf, "%d", sbtp); - return buf; -} -static char * faultTraceSbtpStr(unsigned int sbtp) -{ - static char buf[256]; - int notEmpty; - - buf[0] = '\0'; - notEmpty = 0; - if (sbtp & 0x2) { - strcat(buf, "Instruction"); - notEmpty = 1; - } - if (sbtp & 0x4) { - if (notEmpty) strcat(buf, ":"); - strcat(buf, "Branch"); - notEmpty = 1; - } - if (sbtp & 0x8) { - if (notEmpty) strcat(buf, ":"); - strcat(buf, "Call"); - notEmpty = 1; - } - if (sbtp & 0x10) { - if (notEmpty) strcat(buf, ":"); - strcat(buf, "Return"); - notEmpty = 1; - } - if (sbtp & 0x20) { - if (notEmpty) strcat(buf, ":"); - strcat(buf, "Prereturn"); - notEmpty = 1; - } - if (sbtp & 0x40) { - if (notEmpty) strcat(buf, ":"); - strcat(buf, "Supervisor"); - notEmpty = 1; - } - if (sbtp & 0x80) { - if (notEmpty) strcat(buf, ":"); - strcat(buf, "Breakpoint"); - notEmpty = 1; - } - if (! notEmpty) { - strcat(buf, "Unknown"); - } - return buf; -} -static char * faultOperationSbtpStr(unsigned int sbtp) -{ - char * rsl; - - if (sbtp == 0x1) rsl = "Invalid Opcode"; - else if (sbtp == 0x2) rsl = "Unimplemented"; - else if (sbtp == 0x3) rsl = "Unaligned"; - else if (sbtp == 0x4) rsl = "Invalid Operand"; - else rsl = "Unknown"; - return rsl; -} -static char * faultArithmeticSbtpStr(unsigned int sbtp) -{ - char * rsl; - - if (sbtp == 0x1) rsl = "Integer Overflow"; - else if (sbtp == 0x2) rsl = "Arithmetic Zero-Divide"; - else rsl = "Unknown"; - return rsl; -} -static char * faultReservedSbtpStr(unsigned int sbtp) -{ - return "Unknown"; -} -static char * faultConstraintSbtpStr(unsigned int sbtp) -{ - char * rsl; - - if (sbtp == 0x1) rsl = "Constraint Range"; - else if (sbtp == 0x2) rsl = "Priveleged"; - else rsl = "Unknown"; - return rsl; -} -static char * faultProtectionSbtpStr(unsigned int sbtp) -{ - char * rsl; - - if (sbtp == 0x1) rsl = "Length"; - else rsl = "Unknown"; - return rsl; -} -static char * faultTypeSbtpStr(unsigned int sbtp) -{ - char * rsl; - - if (sbtp == 0x1) rsl = "Type Mismatch"; - else rsl = "Unknown"; - return rsl; -} -static char * faultUnknownSbtpStr(unsigned int sbtp) -{ - return "Unknown"; -} -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/fault.h b/c/src/lib/libbsp/i960/rxgen960/startup/fault.h deleted file mode 100644 index eb11786979..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/fault.h +++ /dev/null @@ -1,57 +0,0 @@ -/*-------------------------------------*/ -/* fault.h */ -/* Last change : 2.11.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _FAULT_H_ -#define _FAULT_H_ - - /* (RAM-based) Fault Handler. - * Is invoked when there is no chance to repair current state. - */ -extern void faultBad(int invokedFromRom, - unsigned int inst, unsigned int * faultBuffer, - unsigned int type, unsigned int sbtp); - /* (RAM-based) Fault Handler. - * Is invoked when there is a chance to repair current state. - */ -extern void faultGood(unsigned int instr, unsigned int * faultBuffer, - unsigned int type, unsigned int sbtp); - /* Some addresses that are defined in rom.ld. - */ -extern unsigned int faultCheckSum; - -extern unsigned int faultBuffer[]; - -extern unsigned int faultStart[]; -extern unsigned int faultEnd[]; - /* Interface for user to register fault handlers of his own. - * Fault names. - */ -#define ParallelFLT 0 -#define TraceFLT 1 -#define OperationFLT 2 -#define ArithmeticFLT 3 -#define ConstraintFLT 5 -#define ProtectionFLT 7 -#define TypeFLT 9 - /* User-registered fault handler. - */ -typedef void (* UserFaultHandler)(unsigned int inst, unsigned int * faultBuf, - unsigned int type, unsigned int sbtp); - /* Register user-defined fault handler. The third argument is - * how many times this fault handler will be valid. This to avoid - * the situation when handler is bad and it causes a fault itself. - */ -extern int faultRegister(int fault, UserFaultHandler, int cnt); - /* Validate handler for one more time. - */ -extern int faultOk(int fault); - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/faultret.h b/c/src/lib/libbsp/i960/rxgen960/startup/faultret.h deleted file mode 100644 index 9c667088bc..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/faultret.h +++ /dev/null @@ -1,20 +0,0 @@ -/*-------------------------------------*/ -/* faultret.h */ -/* Last change : 3.11.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _FAULTRET_H_ -#define _FAULTRET_H_ - - /* Return to the point where fault happened. - * Fault state keeps all registers. - */ -extern void faultRet(unsigned int * faultState); - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/flttbl.c b/c/src/lib/libbsp/i960/rxgen960/startup/flttbl.c deleted file mode 100644 index d83dc07eb3..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/flttbl.c +++ /dev/null @@ -1,120 +0,0 @@ -/*-------------------------------------*/ -/* flttbl.c */ -/* Last change : 3.11.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#include "i960.h" -#include "string.h" -#include "sctns.h" -#include "fault.h" -#include "asmfault.h" -#include "flttbl.h" -/*-------------------------------------*/ - /* Fault Table. It (as well as all the rest of the - * code of this file will always stay in ROM, so - * that it wouldn't be destroyed by silly user code. - * Thus, at least faults will be always caugth, - */ -FaultTblEntry faultTbl[] = { - {faultHndlEntry + LOCAL_FH, LOCAL_FW}, /* Parallel */ - {faultHndlEntry + LOCAL_FH, LOCAL_FW}, /* Trace */ - {faultHndlEntry + LOCAL_FH, LOCAL_FW}, /* Operation */ - {faultHndlEntry + LOCAL_FH, LOCAL_FW}, /* Arithmetic */ - {0, 0}, /* Reserved */ - {faultHndlEntry + LOCAL_FH, LOCAL_FW}, /* Constraint */ - {0, 0}, /* Reserved */ - {faultHndlEntry + LOCAL_FH, LOCAL_FW}, /* Protection */ - {0, 0}, /* Reserved */ - {faultHndlEntry + LOCAL_FH, LOCAL_FW} /* Type */ -}; - -void fltTblInit(void) -{ - static unsigned int fltTblCheckSum(void); - - faultCheckSum = fltTblCheckSum(); -} -static unsigned int fltTblCheckSum(void) -{ - unsigned int * f = faultStart; - unsigned int * l = faultEnd; - unsigned int sum; - - for (sum = 0; f < l; f ++) { - sum += * f; - } - return sum; -} -void faultTblHandler(unsigned int * fp, unsigned int * faultBuffer) -{ - unsigned int * ip; - struct typeWord { - unsigned int sbtp : 8; - unsigned int : 8; - unsigned int type : 8; - unsigned int : 8; - } tw; - unsigned int type; - unsigned int sbtp; - unsigned int ac; - unsigned int pc; - unsigned int inst; - - char nib; - unsigned int i; - - /* Address of faulting instruction. - */ - ip = (unsigned int *) fp[-1]; - /* Type/Subtype word. - */ - - /* put address of faulting instruction to console */ - kkprintf("Fault: %x\n", ip); - - tw = * (struct typeWord *) & fp[-2]; - /* Type and subtype. - */ - type = tw.type; - sbtp = tw.sbtp; - /* Arithmetic controls. - */ - ac = fp[-3]; - /* Process controls. - */ - pc = fp[-4]; - /* Global and local registers are in faultBuffer - * already. Save the rest. Change RIP to IP. - */ - faultBuffer[IP_REGNUM] = (unsigned int) ip; - faultBuffer[ACW_REGNUM] = ac; - faultBuffer[PCW_REGNUM] = pc; - /* Bad instruction itself. We do - * this here since it may be repaired (by copying from PROM). - */ - inst = * ip; - /* Now, to handling. - */ - if (faultCheckSum != fltTblCheckSum()) { - /* RAM-based fault repair stuff - * is broken. No chance to recover. - * Repair RAM memory which is - * destroyed by silly user. - */ - copyCodeToRom(); - /* And call RAM-based fault handler. - */ - faultBad(1, inst, faultBuffer, type, sbtp); - } - else { - /* There exist a chance to recover. - */ - faultGood(inst, faultBuffer, type, sbtp); - } -} -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/flttbl.h b/c/src/lib/libbsp/i960/rxgen960/startup/flttbl.h deleted file mode 100644 index 956d86e686..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/flttbl.h +++ /dev/null @@ -1,39 +0,0 @@ -/*-------------------------------------*/ -/* fltbl.h */ -/* Last change : 3.11.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _FLTTBL_H_ -#define _FLTTBL_H_ - - /* FaultTable Entry. - */ -typedef struct { - void (* hndl)(void); /* Fault Handle */ - unsigned int type; /* Fault Table Type */ -} FaultTblEntry; - /* Fault Handler Type. - */ -#define LOCAL_FH 0 -#define SYSTEM_FH 0x10 - -#define LOCAL_FW 0 -#define SYSTEM_FW 0x027F - /* FaultTable Itself. - */ -extern FaultTblEntry faultTbl[]; - /* To initialize fault handling. - */ -extern void faultTblInit(void); - /* Fault handler. Invoked from low-level handler. - */ -extern void faultTblHandler(unsigned int * fp, - unsigned int * faultBuffer); - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/frmstr.c b/c/src/lib/libbsp/i960/rxgen960/startup/frmstr.c deleted file mode 100644 index 682890e57b..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/frmstr.c +++ /dev/null @@ -1,619 +0,0 @@ -/*-------------------------------------*/ -/* frmstr.c */ -/* Last change : 14.10.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#include "frmstr.h" -/*-------------------------------------*/ - /* How to treat the rest. - */ -#define FOR_CONSOLE 1 -#define DO_LONG 1 - - /* To Store a byte. - */ -#ifdef _STORE_BYTE -# define STORE_BYTE(a, b) (store_byte(a, b)) - long store_byte(void); -#else -# define STORE_BYTE(a, b) (* (a) = (b)) -#endif - /* Some decalrations. - */ -static void geta(ArgType *, int); -static const char * gnum(const char *, ArgType * ); -static char * i_compute(unsigned val, int, char *); -#ifdef DO_LONG -static char * l_compute(long, int, char *); -#endif -static ArgType * nextarg; - /* And macros. - */ -#define wsize(par) ((sizeof par) / sizeof(ArgType)) -#define signbit(par) (1L<<(sizeof par * 8 - 1)) - -int format_string(const char * fmt, ArgType * args, char * buffer) -{ - char * s; -# ifdef DO_LONG - long l; - int lflag; -# else -# define lflag 0 -# endif -# ifdef DO_FLOAT - double dbl; -# endif - ArgType inte; - ArgType_U uint; - ArgType width, ndigit; - int i, j, c, rjust, ndfnd, zfill; - const char * oldfmt; - char * s1, buf[64]; - - nextarg = args; - while (c = * fmt ++) { - if (c != '%') { -# ifdef FOR_CONSOLE - if (c == '\n') STORE_BYTE(buffer ++, '\r'); -# endif - STORE_BYTE(buffer ++, c); - continue; - } -# ifdef DO_LONG - lflag = 0 ; -# endif - j = 10 ; - rjust = 0; - if (* fmt == '-') { - fmt ++; - rjust ++; - } - zfill = ' '; - if (* fmt == '0') { - fmt ++; - zfill = '0'; - } - fmt = gnum(fmt, & width); - ndigit = 0; ndfnd = 0; - if (* fmt == '.') { - fmt ++; oldfmt = fmt; - fmt = gnum(fmt, & ndigit); - ndfnd = (int)(fmt != oldfmt); - } - s = s1 = buf; -# ifdef DO_LONG - if (* fmt == 'l' || * fmt == 'L') { - fmt ++; lflag ++; - } -# endif - switch (c = * fmt ++) { - default: -# ifdef FOR_CONSOLE - if (c == '\n') STORE_BYTE(buffer ++, '\r'); -# endif - STORE_BYTE(buffer ++, c); - continue; - case 's': - geta((ArgType *) & s1, wsize(s1)); - s = s1; - do { - if (s == 0) break; - if (* s == 0) - break; - s ++; - } while (-- ndigit); - break; - case 'b': - j = 2; - case 'u': - getu: - - if (! lflag) { - geta(& inte, wsize(inte)); - goto i_unsignd; - } -# ifdef DO_LONG - case 'U': - getlu: - - geta((ArgType *) & l, wsize(l)); - goto l_unsignd; - case 'B': - j = 2 ; - goto getlu; - case 'X': - j = 16; - goto getlu; - case 'O': - j = 8; - goto getlu ; - case 'D': - l_signed: - - geta((ArgType *) & l, wsize(l)); - if (l < 0) { - STORE_BYTE(s ++, '-'); - l = -l; - } - goto do_l; - - l_unsignd: - - if (l && ndigit) - STORE_BYTE(s ++, '0'); - - do_l: - - s = l_compute(l, j, s); - break; -# endif - case 'x': - j = 16; - goto getu; - case 'o': - j = 8; - goto getu; - case 'd': - if (lflag) goto l_signed; - geta(& inte, wsize(inte)); - if (inte < 0) { - STORE_BYTE(s ++, '-'); - inte = - inte; - } - goto do_i; - - i_unsignd: - - if (inte && ndigit) - STORE_BYTE(s ++, '0'); - - do_i: - - s = i_compute(inte, j, s); - break; - case 'c': - geta ((ArgType *) & uint, wsize(uint)); - for (i = sizeof uint - 1; i >= 0; i --) { - if (STORE_BYTE(s, uint % 256)) s ++; - uint /= 256 ; - } - break; -# ifdef DO_FLOAT - case 'e': - geta((ArgType *) & dbl, wsize(dbl)); - s = _pscien(dbl, s, ndigit, ndfnd); - break; - case 'f': - geta((ArgType *) &dbl,wsize(dbl)); - s = _pfloat(dbl, s, ndigit, ndfnd); - break; -# endif - case 'r': - geta((ArgType *) & nextarg, wsize(nextarg)); - geta((ArgType *) & oldfmt, wsize(fmt)); - fmt = oldfmt; - continue; - } - j = s - s1; - if ((c = width - j) > 0) { - if (rjust == 0) { - do STORE_BYTE(buffer ++, zfill); - while (-- c); - } - } - while (-- j >= 0) - STORE_BYTE(buffer ++, * s1 ++); - while (-- c >= 0) - STORE_BYTE(buffer ++, zfill); - } - STORE_BYTE(buffer, 0); - return 0; -} -static void geta(ArgType * p, int size) -{ - if ((ArgType *) & p - (ArgType *) & size > 0) { - p += size; - while (size --) { - * -- p = * nextarg --; - } - } - else { - while (size --) { - * p ++ = * nextarg ++ ; - } - } -} -static const char * gnum(const char * f, ArgType * ip) -{ - ArgType i; - int c; - - if (* f == '*') { - geta(ip, wsize(i)) ; - f ++; - } - else { - i = 0; - while ((c = * f - '0') >= 0 && c <= 9) { - i = i * 10 + c; - f ++; - } - * ip = i; - } - return f; -} -static char * i_compute(unsigned int val, int base, char * s) -{ - int c; - - c = val % base; - val /= base; - if (val) - s = i_compute(val, base, s); - STORE_BYTE(s ++, c>9 ? c-10+'a' : c+'0'); - return s; -} -#ifdef DO_LONG -static char *l_compute(long l1,int d, char * s) -{ - int c; - long l2; - - if (l1 < 0) { - c = l1 & 1; - l2 = ((l1>>1) & ~signbit(l1)); - l1 = l2 / (d>>1); - c += (l2%(d>>1))<<1; - } - else { - c = l1 % d; - l1 = l1 / d; - } - if (l1) - s = l_compute(l1, d, s); - STORE_BYTE(s ++, c>9 ? c-10+'A' : c+'0'); - return s; -} -#endif -#ifdef _STORE_BYTE -long store_byte(char * cp, long c) -{ - long shift, reg, * ptr; - - shift = ((long) cp & 3) * 8; - ptr = (long *) ((long) cp & ~3); - reg = * ptr; - reg &= ~(0xff << shift); - reg |= c << shift; - * ptr = reg; - - return c; -} -#endif - -#define SPC 01 -#define STP 02 - -#define NULL 0 -#define EOF 0 -#define SHORT 0 -#define REGULAR 1 -#define LONG 2 -#define INT 0 -#define FLOAT 1 - -static int new_c(void); -static void unnew_c(char); -static int _innum(int ** ptr, int type, int len, int size, int * eofptr); -static int _instr(char * ptr, int type, int len, int * eofptr); -static const char * _getccl(const char *); -static int vme_isupper(char); -static int vme_tolower(char); -static int vme_isdigit(char); - -static char _sctab[128] = { - 0,0,0,0,0,0,0,0, - 0,SPC,SPC,0,0,0,0,0, - 0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0, - SPC,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0, -}; -static const char * line; -static char * linep; - -int unformat_string(const char * fmt, int ** argp, const char * buffer) -{ - int ch; - int nmatch, len, ch1; - int ** ptr, fileended, size; - - line = buffer; - linep = (char*)line; - - nmatch = 0; - fileended = 0; - for (;;) switch (ch = * fmt ++) { - case '\0': - return (nmatch); - case '%': - if ((ch = * fmt ++) == '%') - goto def; - ptr = 0; - if (ch != '*') - ptr = argp ++; - else - ch = * fmt ++; - len = 0; - size = REGULAR; - while (vme_isdigit(ch)) { - len = len*10 + ch - '0'; - ch = * fmt ++; - } - if (len == 0) - len = 30000; - if (ch == 'l') { - ch = * fmt ++; - size = LONG; - } - else if (ch == 'h') { - size = SHORT; - ch = * fmt ++; - } - else if (ch=='[') - fmt = _getccl(fmt); - if (vme_isupper(ch)) { - ch = vme_tolower(ch); - size = LONG; - } - if (ch == '\0') - return -1; - if (_innum(ptr, ch, len, size, & fileended) && ptr) - nmatch ++; - if (fileended) - return nmatch? nmatch: -1; - break; - case ' ': - case '\n': - case '\t': - while ((ch1 = new_c())==' ' || ch1=='\t' || ch1=='\n') - ; - if (ch1 != EOF) - unnew_c(ch1); - break; - default: - - def: - - ch1 = new_c(); - if (ch1 != ch) { - if (ch1==EOF) - return -1 ; - unnew_c(ch1); - return nmatch; - } - } -} -static int new_c() -{ - char c; - - if (linep) { - c = * linep ++; - return c; - } - else { - return 0; - } -} -static void unnew_c(char ch) -{ - if (linep > line) - * (-- linep) = ch; -} -static int _innum(int ** ptr, int type, int len, int size, int * eofptr) -{ -# ifdef DO_FLOAT - extern double atof(); -# endif - char * np; - char numbuf[64]; - int c, base; - int expseen, scale, negflg, c1, ndigit; - long lcval; - - if (type=='c' || type=='s' || type=='[') - return _instr(ptr? * (char **) ptr: (char *) NULL, type, len, eofptr); - lcval = 0; - ndigit = 0; - scale = INT; - if (type=='e'||type=='f') - scale = FLOAT; - base = 10; - if (type=='o') - base = 8; - else if (type=='x') - base = 16; - np = numbuf; - expseen = 0; - negflg = 0; - while ((c = new_c())==' ' || c=='\t' || c=='\n'); - if (c=='-') { - negflg ++; - * np ++ = c; - c = new_c(); - len --; - } - else if (c=='+') { - len --; - c = new_c(); - } - for ( ; -- len >= 0; * np ++ = c, c = new_c()) { - if (vme_isdigit(c) - || base==16 && ('a'<=c && c<='f' || 'A'<=c && c<='F')) { - ndigit ++; - if (base==8) - lcval <<=3; - else if (base==10) - lcval = ((lcval<<2) + lcval)<<1; - else - lcval <<= 4; - c1 = c; - if ('0'<=c && c<='9') - c -= '0'; - else if ('a'<=c && c<='f') - c -= 'a'-10; - else - c -= 'A'-10; - lcval += c; - c = c1; - continue; - } - else if (c=='.') { - if (base!=10 || scale==INT) - break; - ndigit ++; - continue; - } - else if ((c=='e'||c=='E') && expseen==0) { - if (base!=10 || scale==INT || ndigit==0) - break; - expseen ++; - * np ++ = c; - c = new_c(); - if (c!='+'&&c!='-'&&('0'>c||c>'9')) - break; - } - else - break; - } - if (negflg) - lcval = -lcval; - if (c != EOF) { - unnew_c(c); - * eofptr = 0; - } - else - * eofptr = 1; - if (ptr==NULL || np==numbuf) - return 0; - * np ++ = 0; - switch ((scale<<4) | size) { -# ifdef DO_FLOAT - - case (FLOAT<<4) | SHORT: - case (FLOAT<<4) | REGULAR: - ** (float **) ptr = atof(numbuf); - break; - - case (FLOAT<<4) | LONG: - ** (double **) ptr = atof(numbuf); - break; -# endif - case (INT<<4) | SHORT: - ** (short **) ptr = lcval; - break; - - case (INT<<4) | REGULAR: - ** (int **) ptr = lcval; - break; - - case (INT<<4) | LONG: - ** (long **) ptr = lcval; - break; - } - return 1; -} -static int _instr(char * ptr, int type, int len, int * eofptr) -{ - int ch; - char * optr; - int ignstp; - - * eofptr = 0; - optr = ptr; - if (type=='c' && len==30000) - len = 1; - ignstp = 0; - if (type=='s') - ignstp = SPC; - while (_sctab[ch = new_c()] & ignstp) - if (ch==EOF) - break; - ignstp = SPC; - if (type=='c') - ignstp = 0; - else if (type=='[') - ignstp = STP; - while (ch!=EOF && (_sctab[ch]&ignstp)==0) { - if (ptr) - * ptr ++ = ch; - if (-- len <= 0) - break; - ch = new_c(); - } - if (ch != EOF) { - if (len > 0) - unnew_c(ch); - * eofptr = 0; - } - else - * eofptr = 1; - if (ptr && ptr!=optr) { - if (type!='c') - * ptr ++ = '\0'; - return 1; - } - return 0; -} -static const char * _getccl(const char * s) -{ - int c, t; - - t = 0; - if (* s == '^') { - t ++; - s ++; - } - for (c = 0; c < 128; c++) - if (t) - _sctab[c] &= ~STP; - else - _sctab[c] |= STP; - while (((c = * s ++)&0177) != ']') { - if (t) - _sctab[c++] |= STP; - else - _sctab[c++] &= ~STP; - if (c==0) - return -- s; - } - return s; -} -static int vme_isupper(char ch) -{ - if( ch >= 'A' & ch <= 'Z') - return 1; - else - return 0; -} -static int vme_tolower(char ch) -{ - return 'a' + 'A' - ch; -} -static vme_isdigit(char ch) -{ - if (ch >= '0' & ch <= '9') - return 1; - else - return 0; -} -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/frmstr.h b/c/src/lib/libbsp/i960/rxgen960/startup/frmstr.h deleted file mode 100644 index 8c469ff4ae..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/frmstr.h +++ /dev/null @@ -1,43 +0,0 @@ -/* frmstr.h - * Interface to procedures used to implement - * the printf group. - * - * $Id$ - */ - -#ifndef _FRMSTR_H_ -#define _FRMSTR_H_ - -#ifdef __i960 - -typedef int ArgType; -typedef unsigned int ArgType_U; - -#else - -typedef long ArgType; -typedef unsigned long ArgType_U; - -#endif - - /* Format a string. - */ -extern int format_string(const char * frmt, ArgType * args, char * buffer); - /* Get arguments from formatted string. - */ -extern int unformat_string(const char * fmt, int ** argp, const char * buffer); - - /* Definitions for control characters. - */ -#define BELL ('G' & 0x1f) -#define BACKSPACE '\b' -#define DELETE 0x7f -#define KILL ('U' - 'A' + 1) -#define XON ('Q' & 0x1f) -#define XOFF ('S' & 0x1f) -#define CNTRL_C 0x3 - -#endif - - /* End of File - */ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/i960.h b/c/src/lib/libbsp/i960/rxgen960/startup/i960.h deleted file mode 100644 index 19af942ff5..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/i960.h +++ /dev/null @@ -1,34 +0,0 @@ -/*-------------------------------------*/ -/* i960.h */ -/* Last change : 3.11.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _I960_H_ -#define _I960_H_ - -#define REGISTER_SIZE 4 -#define NUM_REGS 40 - -#define R0_REGNUM 0 /* First local register */ -#define SP_REGNUM 1 /* Contains address of top of stack */ -#define RIP_REGNUM 2 /* Return instruction pointer (local r2) */ -#define R15_REGNUM 15 /* Last local register */ -#define G0_REGNUM 16 /* First global register */ -#define G13_REGNUM 29 /* g13 - holds struct return address */ -#define G14_REGNUM 30 /* g14 - ptr to arg block / leafproc return address */ -#define FP_REGNUM 31 /* Contains address of executing stack frame */ -#define PCW_REGNUM 32 /* process control word */ -#define ACW_REGNUM 33 /* arithmetic control word */ -#define TCW_REGNUM 34 /* trace control word */ -#define IP_REGNUM 35 /* instruction pointer */ -#define FP0_REGNUM 36 /* First floating point register */ - -#define REGISTER_BYTES ((36*4) + (4*10)) - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/ihandler.S b/c/src/lib/libbsp/i960/rxgen960/startup/ihandler.S deleted file mode 100644 index 71802b34f0..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/ihandler.S +++ /dev/null @@ -1,53 +0,0 @@ -# -# $Id$ -# - -####################################### -# ihandler.s # -# Last change : 8.11.94 # -####################################### - - .text - .globl _nmiHandler - .globl _intr5Handler - .globl _intr6Handler - .globl _clockHandler - - .text - -# NMI Handler -_nmiHandler : - ldconst 64, r4 - addo sp, r4, sp - - stq g0, -64(sp) - stq g4, -48(sp) - stq g8, -32(sp) - stt g12, -16(sp) - - callx _nmi_isr - - ldq -64(sp), g0 - ldq -48(sp), g4 - ldq -32(sp), g8 - ldt -16(sp), g12 - - ret -_clockHandler : - ldconst 64, r4 - addo sp, r4, sp - - stq g0, -64(sp) - stq g4, -48(sp) - stq g8, -32(sp) - stt g12, -16(sp) - - callx _Clock_isr - - ldq -64(sp), g0 - ldq -48(sp), g4 - ldq -32(sp), g8 - ldt -16(sp), g12 -# -# - ret diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/ihandler.h b/c/src/lib/libbsp/i960/rxgen960/startup/ihandler.h deleted file mode 100644 index 5121fc0155..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/ihandler.h +++ /dev/null @@ -1,23 +0,0 @@ -/*-------------------------------------*/ -/* ihandler.h */ -/* Last change : 12.10.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _IHANDLER_H_ -#define _IHANDLER_H_ - - /* Interrupt Handler for NMI. - */ -extern void nmiHandler(void); - /* Interrupt Handlers for Dedicated Interrupts. - */ -extern void intr5Handler(void); -extern void intr6Handler(void); - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/intrtbl.c b/c/src/lib/libbsp/i960/rxgen960/startup/intrtbl.c deleted file mode 100644 index 510ecc556e..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/intrtbl.c +++ /dev/null @@ -1,55 +0,0 @@ -/*-------------------------------------*/ -/* intrtbl.c */ -/* Last change : 12.10.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#include "ihandler.h" -#include "intrtbl.h" -/*-------------------------------------*/ - - /* Interrupt Table. Dedicated Interrupts are cached. - * So NMI handler has to be defined here. - */ -InterruptTbl interruptTbl = { - 0, /* Pending Priorities */ - 0, 0, 0, 0, 0, 0, 0, 0, /* Pending Interrupts */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 8 - 15 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 16 - 23 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 24 - 31 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 32 - 39 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 40 - 47 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 48 - 55 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 56 - 63 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 64 - 71 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 72 - 79 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 80 - 87 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 88 - 95 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 96 - 103 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 104 - 111 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 112 - 119 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 120 - 127 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 128 - 135 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 136 - 143 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 144 - 151 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 152 - 159 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 160 - 167 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 168 - 175 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 176 - 183 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 184 - 191 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 192 - 199 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 200 - 207 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 208 - 215 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 216 - 223 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 224 - 231 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 232 - 239 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 240 - 247 */ - nmiHandler + NORMAL_IH, /* 248 : NMI handler */ - 0, 0, 0, 0, 0, 0, 0, /* 249 - 255 */ - -}; -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/intrtbl.h b/c/src/lib/libbsp/i960/rxgen960/startup/intrtbl.h deleted file mode 100644 index 196825f2b3..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/intrtbl.h +++ /dev/null @@ -1,33 +0,0 @@ -/*-------------------------------------*/ -/* intrtbl.h */ -/* Last change : 12.10.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _INTRTBL_H_ -#define _INTRTBL_H_ - - /* Interrupt Handler. - */ -typedef void (* IntrHndl)(void); - /* Interrupt Table. - */ -typedef struct { - unsigned int pendPrty; /* Pending Priorities */ - unsigned int pendIntr[8]; /* Pending Interrupts */ - IntrHndl intrHndl[248]; /* Interrupt Handlers */ -} InterruptTbl; - /* Interrupt Handler Type. - */ -#define NORMAL_IH 0 -#define IN_CACHE_IH 0x10 - /* Interrupt Table Itself. - */ -extern InterruptTbl interruptTbl; - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/kkprintf.c b/c/src/lib/libbsp/i960/rxgen960/startup/kkprintf.c deleted file mode 100644 index 5ff6807610..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/kkprintf.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * a safe version of printf that might be useful for debugging parts that - * are known to have problems e.g. with printf() e.t.c. - * - * $Id$ - */ - -#include <_ansi.h> -#ifdef _HAVE_STDC -#include -#else -#include -#endif -char kkBuf[1024]; -/* Routine to do "console" in fully polled mode */ -void static kkputs( const char *); -format_string(char * fmt, va_list ap, char * kkBuf); -#ifdef _HAVE_STDC -void -kkprintf (const char *fmt, ...) -{ - va_list ap; - - va_start (ap, fmt); - format_string (fmt, *ap+4, kkBuf); - kkputs(kkBuf); - va_end (ap); -} -void mkvisable() -{ - kkputs("Hello"); -} -#else -void -kkprintf(fmt, va_alist) -char * fmt; -va_dcl -{ - va_list ap; - va_start(ap); - format_string(fmt, ap, kkBuf); - kkputs(kkBuf); - va_end(ap); -} -#endif -extern int DBGConsole_make_sync; -void -kkputs( const char * buf) -{ - volatile unsigned int * consoleOP; - unsigned char c; - consoleOP = (unsigned int *) 0x1318; /* Outbound Message 0 */ - while (( c = *buf++) != 0){ - while( DBGConsole_make_sync && (*consoleOP != 0)) - ; - *consoleOP = (unsigned int)c; - } -} diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/linkcmds b/c/src/lib/libbsp/i960/rxgen960/startup/linkcmds deleted file mode 100644 index 80bdba1f19..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/linkcmds +++ /dev/null @@ -1,74 +0,0 @@ -/* - * This is not the real linkcmds for this target. See - * linkcmds.real and make those work for you. That linkcmds - * goes to great lengths to handplace certain object files - * in very specific locations. - * - * $Id$ - */ - -/* - * Declare some sizes. - */ -_RamBase = DEFINED(_RamBase) ? _RamBase : 0x0; -_RamSize = DEFINED(_RamSize) ? _RamSize : 1M; -_HeapSize = DEFINED(_HeapSize) ? _HeapSize : 0x10000; -_StackSize = DEFINED(_StackSize) ? _StackSize : 0x1000; - -SECTIONS -{ - . = 0x0; - .text : - { - CREATE_OBJECT_SYMBOLS - *(.text) - _rodata_start = . ; - *(.rodata*) - *(.gnu.linkonce.r*) - _erodata = ALIGN( 0x10 ) ; - _etext = .; - - /* - * 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__) / 4 - 2) - *(.ctors) - LONG(0) - ___CTOR_END__ = .; - ___DTOR_LIST__ = .; - LONG((___DTOR_END__ - ___DTOR_LIST__) / 4 - 2) - *(.dtors) - LONG(0) - ___DTOR_END__ = .; - } - .data SIZEOF(.text) + ADDR(.text): - { - *(.data) - CONSTRUCTORS - _edata = .; - } - .bss SIZEOF(.data) + ADDR(.data): - { - _bss_start = .; - *(.bss) - *(COMMON) - . = ALIGN (64); - _stack_init = .; - . += _StackSize; - _clear_end = .; - _WorkspaceBase = .; - . += 512K; /* reserve some memory for workspace */ - _HeapBase = .; - . += _HeapSize; /* reserve some memory for heap */ - _end = .; - __end = .; - } -} diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/linkcmds.real b/c/src/lib/libbsp/i960/rxgen960/startup/linkcmds.real deleted file mode 100644 index b3f1eabc7b..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/linkcmds.real +++ /dev/null @@ -1,203 +0,0 @@ -/*------------------------------------*/ -/* rom.ld */ -/* Last change : 19. 4.95 */ -/*------------------------------------* - * To build ROM based i960 image. - *------------------------------------*/ - -/* - * $Id$ - */ - - -MEMORY -{ - config : org = 0xFEFFFF30, len = 0xd0 - eprom : org = 0xFEC00000, len = 1024K -} - - -_bootAddr = 0xa0200000; -/*_HEAP = 0xA0100000 ; */ -_rom_ibr_cksum = -(_romStart + _rom_prcb); - -SECTIONS -{ - prcb : - { - *(.prcb); /* INPUT(rom_ibr.o) */ - } > config - - /* Only monitor start point and fault handler - * will live in ROM as far as text is concerned. - * Only fault table will live in ROM as far as data - * is concerned. - */ - romCode : - { - /* Make sure that the monitor start point - * is the first location in EPROM. - */ - rxgen_romld.o(.text) - /* Procedures to copy code and - * initialize bss in RAM. - */ - sctns.o(.text) - /* Make Sure Fault Table (and its handler's data) - * live here so that they wouldn't get destroyed). - */ - asmfault.o - ihandler.o - . = ALIGN(16); - flttbl.o - /* 16 byte aligned PRCB. - */ - . = ALIGN(16); - rom_prcb.o(.data) - . = ALIGN(16); - rom_cntrltbl.o(.data) - . = ALIGN(16); - intrtbl.o(.data) - . = ALIGN(16); - nulsystbl.o(.data) - . = ALIGN(16); - /* I need this symbol to know where code which is - * to be copied reside in ROM. Align it on a 16 - * boundary. - */ - . = ALIGN(16); - _codeRomStart = .; - } > eprom - - /* All the rest of the code will live in RAM. - * Relocation are created as though code resides - * in RAM, while code is placed right after romCode. - * This is responsiblity of the ROM monitor to - * copy code into ROM. - */ - ramCode : AT(ADDR(romCode) + SIZEOF(romCode)) - { - /* RAM-based code section start. - * I need this symbol to know where to copy code - * at initialization time . - */ - _codeRamStart = .; - /* RAM based fault recovery stuff. - */ - _faultStart = .; - asmstub.o - fault.o - _faultEnd = .; - /* Check sum to gurantee that - * the above section wasn't broken. - */ - . = ALIGN(16); - _faultCheckSum = .; - . += 4; - /* Fault Buffer to keep the state of - * the fauled procedure. - */ - _faultBuffer = .; - . += 256; - /* All the rest of the text goes here. - */ - . = ALIGN(16); - *(.text) -/* NEW TEST TEST TEST TEST */ - . = ALIGN (16); - - /* - * Special FreeBSD sysctl sections. - */ - . = ALIGN (16); - __start_set_sysctl_set = .; - *(set_sysctl_*); - __stop_set_sysctl_set = ABSOLUTE(.); - *(set_domain_*); - *(set_pseudo_*); - - *(.eh_fram) - . = ALIGN (16); - - /* - * C++ constructors - */ - __CTOR_LIST__ = .; - LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2) - *(.ctors) - LONG(0) - __CTOR_END__ = .; - __DTOR_LIST__ = .; - LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2) - *(.dtors) - LONG(0) - __DTOR_END__ = .; - _rodata_start = . ; - *(.rodata*) - *(.gnu.linkonce.r*) - _erodata = ALIGN( 0x10 ) ; - etext = ALIGN( 0x10 ) ; -/* END NEW TEST TEST TEST */ - /* 16 byte aligned PRCB. - */ - . = ALIGN(16); - prcb.o(.data) - /* 16 byte aligned Control Table. - */ - . = ALIGN(16); - cntrltbl.o(.data) - . = ALIGN(16); - systbl.o(.data) - /* All the rest of program defined data goes here. - */ - *(.data) - /* RAM-based code section end. - * I need this symbol to know where to copy code - * at initialization time . - */ - _codeRamEnd = .; - } > eprom - - /* RAM based uninitialized data. - */ - bss (NOLOAD) : - { - /* BSS section start. I need this symbol to - * zero BSS on initialization. - */ - /* Heap. Aligned on a 64 boundary */ - /* . = ALIGN(64); - _heap_initial = .; - . += 64K;*/ - /* Supervisor Stack. Aligned on a 16 boundary. - */ - . = ALIGN(16); - _svrStackPtr = .; - . += 16K; - /* Interrupt Stack. Aligned on a 16 boundary. - */ - . = ALIGN(16); - _intStackPtr = .; - . += 16K; - /* Program defined BSS. - */ - _bssStart = .; - _bss_start = .; - *(.bss) - /* Program defined COMMON. - */ - *(COMMON) - _end = .; - /* BSS section end. I need this symbol to - * zero BSS on initialization. - */ - _bssEnd = .; - _bssStart_1 = .; - _bssEnd_1 = .; - } > eprom - -} - -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/main.h b/c/src/lib/libbsp/i960/rxgen960/startup/main.h deleted file mode 100644 index e71bdb59aa..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/main.h +++ /dev/null @@ -1,27 +0,0 @@ -/*-------------------------------------*/ -/* main.h */ -/* Last change : 2. 2.95 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _MAIN_H_ -#define _MAIN_H_ - - /* ROM monitor main function(s). - * Gets control from rommon.s. - */ -extern void romMain(void); -extern void romFaultMain(void); -extern void romTestMain(void); - -extern char * mainRevisionStr(void); -extern char * mainBuildStr(void); - -extern unsigned int bootAddr[]; - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/memchnl.h b/c/src/lib/libbsp/i960/rxgen960/startup/memchnl.h deleted file mode 100644 index 554b77006a..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/memchnl.h +++ /dev/null @@ -1,70 +0,0 @@ -/*-------------------------------------*/ -/* memchnl.h */ -/* Last change : 16. 5.95 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _MEMCHNL_H_ -#define _MEMCHNL_H_ - -/* The following is a dummy for now to be filled in - as the message passing stuff gets migrated to - I20 (or other standard ) -*/ - -typedef -struct memMsg{ - int * foo; -} IOTrCBlk, * iotrcb_ptr_t; - -typedef void * iotrcb_sgm_t; - - /* Interrupt arrived from X processor. - * This is invoked from low-level interrupt dispatcher. - */ -extern void memChnlIntrFromHost(void); - /* This IOT's processing is completed. - * Signal the host, it can take it back. - */ -extern void memChnlIotFinished(IOTrCBlk *); - /* A fault has just occured. Pass a signal over - * memory channel. - */ -extern void memChnlI960Fault(void); - /* IOT handler procedure. - */ -typedef void (* IotHandler)(IOTrCBlk *, int tr_req); - /* Register handler to process IOT's. - */ -extern void memChnlRegisterHndl(IotHandler); - /* Intermediate image buffer. - * Defined in *.ld - */ -extern unsigned int downloadStart[]; - -typedef struct { - int ptr_len; - iotrcb_ptr_t ptr_loc; - iotrcb_ptr_t * ptr_crnt; - iotrcb_sgm_t * sgm_crnt; -} BufLookupHndl; - /* Procedures to travel throughout the buffer page list. - * It should be accomplished as below: - * ... - * BufLookupHndl hndl; - * char * buf; - * if (memBufLookupInit(& hndl, iot) != 0) { - * while ((buf = memBufLookupNext(& hndl)) != 0) { - * ... buf is a buffer page address. - * } - * } - */ -extern BufLookupHndl * memBufLookupInit(BufLookupHndl *, IOTrCBlk *); -extern void * memBufLookupNext(BufLookupHndl *); - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/nmi.c b/c/src/lib/libbsp/i960/rxgen960/startup/nmi.c deleted file mode 100644 index 21f519e3b8..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/nmi.c +++ /dev/null @@ -1,15 +0,0 @@ -/* - * $Id$ - */ - -int mach_error_expected = 0; -void nmi_isr(void) -{ - if( mach_error_expected) - { - mach_error_expected = 0; - } - else{ - kkprintf("NMI Interrupt Occured \n"); - } -} diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/nulsystbl.c b/c/src/lib/libbsp/i960/rxgen960/startup/nulsystbl.c deleted file mode 100644 index 4dc81c02b8..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/nulsystbl.c +++ /dev/null @@ -1,84 +0,0 @@ -/*-------------------------------------*/ -/* systbl.c */ -/* Last change : 21. 3.95 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#include "prcb.h" -#include "systbl.h" -/*-------------------------------------*/ - /* System Procedures Table. - * Dummy version that will live in ROM at all times - * RP does fetch on it, so must be present here rather than pointing - * to ram - */ -SystemTbl nulsystemTbl = { - { 0, 0, 0 }, /* Reserved */ - svrStackPtr, /* Supervisor Stack Pointer Base */ - { 0, 0, 0, 0, 0, 0, 0, 0 }, /* Preserved */ - { - 0, 0, 0, 0, 0, 0, 0, 0, /* 0 - 7 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 8 - 15 */ - 0, 0, /* 16 - 17 */ - 0, /* 18 */ - 0, /* 19 */ - 0, /* 20 */ - 0, /* 21 */ - 0, 0, /* 22 - 23 */ - 0, /* 24 */ - 0, /* 25 */ - 0, /* 26 */ - 0, /* 27 */ - 0, /* 28 */ - 0, /* 29 */ - 0, /* 30 */ - 0, /* 31 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 32 - 39 */ - 0, /* 40 */ - 0, /* 41 */ - 0, /* 42 */ - 0, /* 43 */ - 0, /* 44 */ - 0, /* 45 */ - 0, /* 46 */ - 0, /* 47 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 48 - 55 */ - 0, /* 56 */ - 0, /* 57 */ - 0, /* 58 */ - 0, 0, 0, 0, 0, /* 59 - 63 */ - 0, /* 64 */ - 0, /* 65 */ - 0, 0, 0, 0, 0, 0, /* 66 - 71 */ - 0, /* 72 */ - 0, /* 73 */ - 0, /* 74 */ - 0, /* 75 */ - 0, /* 76 */ - 0, /* 77 */ - 0, 0, /* 78 - 79 */ - 0, /* 80 */ - 0, /* 81 */ - 0, 0, 0, 0, 0, 0, /* 82 - 87 */ - 0, /* 88 */ - 0, 0, 0, 0, 0, 0, 0, /* 89 - 95 */ - 0, /* 96 */ - 0, /* 97 */ - 0, 0, 0, 0, 0, 0, /* 98 - 103 */ - 0, /* 104 */ - 0, /* 105 */ - 0, /* 106 */ - 0, /* 107 */ - 0, /* 108 */ - 0, /* 109 */ - 0, 0, /* 110 - 111 */ - 0, /* 112 */ - 0, /* 113 */ - 0, /* 114 */ - } -}; -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/pmc901_memmap.h b/c/src/lib/libbsp/i960/rxgen960/startup/pmc901_memmap.h deleted file mode 100644 index 7bbc3a1e81..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/pmc901_memmap.h +++ /dev/null @@ -1,12 +0,0 @@ -/* - * $Id$ - */ - -/* Memory map for the pmc901 ; works for most RAMiX PMC/CPCI modules as well */ - -#define UART_REG 0xc0000100 -#define LED_REG 0xc0000200 -#define DRAM_BASE 0xa0000000 -#define DRAM_SIZE 0x00400000 -#define DRAM_SIZE_MASK 0xffc00000 -#define FLASH_BASE 0xfe000000 diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/prcb.c b/c/src/lib/libbsp/i960/rxgen960/startup/prcb.c deleted file mode 100644 index 49eeb6c247..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/prcb.c +++ /dev/null @@ -1,56 +0,0 @@ -/*-------------------------------------*/ -/* prcb.c */ -/* Last change : 11.10.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#include "flttbl.h" -#include "cntrltbl.h" -#include "intrtbl.h" -#include "systbl.h" -#include "prcb.h" -/*-------------------------------------*/ - /* RAM based PRocess Control Block - */ -#ifdef DBPRECISE_FAULTS -#define AC (INT_OVFL_DISABLE | PRECISE_FLTS) -#else -#define AC (INT_OVFL_DISABLE | IMPRECISE_FLTS) -#endif - - /* Initial Fault Configuration Word Image. - * As to this 1, I don't know why but without it - * fault hanlder wouldn't be invoked. - */ -#define FAULT_CONFIG (UNLGND_FAULT_DISABLE | 1) - - /* Initial Instruction Cache Configuration Word Image. - */ -#ifdef DBCACHE_OFF -#define INST_CACHE_CONFIG (INST_CACHE_DISABLE) -#else -#define INST_CACHE_CONFIG (INST_CACHE_ENABLE) -#endif - - /* Initial Register Cache Configuration Word Image. - */ -#define REG_CACHE_CONFIG 0x000 - -struct PRCB ram_prcb = { - & faultTbl[0], /* Fault Table Base */ - & controlTbl[0], /* Control Table Base */ - AC, /* AC */ - FAULT_CONFIG, /* Fault Configuration Word */ - & interruptTbl, /* Interrupt Table Base */ - & systemTbl, /* System Procedure Table Base */ - 0, /* Reserved */ - & intStackPtr[0], /* Interrupt Stack Pointer */ - INST_CACHE_CONFIG, /* Instruction Cache Config */ - REG_CACHE_CONFIG, /* Reg Cache Config */ -}; - -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/prcb.h b/c/src/lib/libbsp/i960/rxgen960/startup/prcb.h deleted file mode 100644 index f00b69e894..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/prcb.h +++ /dev/null @@ -1,60 +0,0 @@ -/*-------------------------------------*/ -/* prcb.h */ -/* Last change : 11. 1.95 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _PRCB_H_ -#define _PRCB_H_ - -#include "flttbl.h" -#include "cntrltbl.h" -#include "intrtbl.h" -#include "systbl.h" - - /* PRocess Control Block - */ -struct PRCB { - FaultTblEntry * faultTbl; /* Fault Table Base */ - ControlTblEntry * controlTbl; /* Control Table Base */ - unsigned int arithConfig; /* Arithmetic Control Register Image */ - unsigned int faultConfig; /* Fault Configuration Word Image */ - InterruptTbl * interruptTbl; /* Interrupt Table Base */ - SystemTbl * systemTbl; /* System Procedure Table Base */ - unsigned int reserved; /* Reserved */ - unsigned int * intStackPtr; /* Interrupt Stack Pointer */ - unsigned int instCacheConfig; /* Instruction Cache Config */ - unsigned int regCacheConfig; /* Register Cache Config */ -}; - /* Constants for Arithmetic Control Register. - */ -#define INT_OVFL_ENABLE 0 -#define INT_OVFL_DISABLE 0x1000 - -#define PRECISE_FLTS 0x8000 -#define IMPRECISE_FLTS 0 - /* Constants for Fault Configuration Word. - */ -#define UNLGND_FAULT_ENABLE 0 -#define UNLGND_FAULT_DISABLE 0x40000000 - /* Constants for Instruction Cache Configuration Word. - */ -#define INST_CACHE_ENABLE 0 -#define INST_CACHE_DISABLE 0x10000 - /* RAM-based Process Control Block. - */ -extern struct PRCB ram_prcb; -extern struct PRCB rom_prcb; - /* Supervisor Stack. Is defined directly in rom.ld. - */ -extern unsigned int svrStackPtr[]; - /* Interrupt Stack. Is defined directly in rom.ld. - */ -extern unsigned int intStackPtr[]; - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/rom.ld b/c/src/lib/libbsp/i960/rxgen960/startup/rom.ld deleted file mode 100644 index c5b82013df..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/rom.ld +++ /dev/null @@ -1,162 +0,0 @@ -/*------------------------------------*/ -/* rom.ld */ -/* Last change : 19. 4.95 */ -/*------------------------------------* - * To build ROM based i960 image. - *------------------------------------*/ - -/* - * $Id$ - */ - - -MEMORY -{ - config : org = 0xFeffFF30, len = 0xd0 - eprom : org = 0xfef80000, len = 120K - sram : org = 0xA0000000, len = 128K -} - -_rom_ibr_cksum = -(_romStart + _rom_prcb); - -_bootAddr = 0xa0200000; -_HEAP = 0xA0100000 ; - -SECTIONS -{ - prcb : - { - rom_ibr.o960 - } > config - - /* Only monitor start point and fault handler - * will live in ROM as far as text is concerned. - * Only fault table will live in ROM as far as data - * is concerned. - */ - romCode : - { - /* Make sure that the monitor start point - * is the first location in EPROM. - */ - rommon.o960(.text) - /* Procedures to copy code and - * initialize bss in RAM. - */ - sctns.o960(.text) - /* Make Sure Fault Table (and its handler's data) - * live here so that they wouldn't get destroyed). - */ - asmfault.o960 - flttbl.o960 - /* 16 byte aligned PRCB. - */ - . = ALIGN(16); - rom_prcb.o960(.data) - /* 16 byte aligned Control Table. - */ - . = ALIGN(16); - rom_cntrltbl.o960(.data) - . = ALIGN(16); - intrtbl.o960(.data) - . = ALIGN(16); - nulsystbl.o960(.data) - . = ALIGN(16); - /* I need this symbol to know where code which is - * to be copied reside in ROM. Align it on a 16 - * boundary. - */ - . = ALIGN(16); - _codeRomStart = .; - } > eprom - - /* All the rest of the code will live in RAM. - * Relocation are created as though code resides - * in RAM, while code is placed right after romCode. - * This is responsiblity of the ROM monitor to - * copy code into ROM. - */ - ramCode : AT(ADDR(romCode) + SIZEOF(romCode)) - { - /* RAM-based code section start. - * I need this symbol to know where to copy code - * at initialization time . - */ - _codeRamStart = .; - /* RAM based fault recovery stuff. - */ - _faultStart = .; - fault.o960 - _faultEnd = .; - /* Check sum to gurantee that - * the above section wasn't broken. - */ - . = ALIGN(16); - _faultCheckSum = .; - . += 4; - /* Fault Buffer to keep the state of - * the fauled procedure. - */ - _faultBuffer = .; - . += 256; - /* All the rest of the text goes here. - */ - . = ALIGN(16); - *(.text) - /* 16 byte aligned PRCB. - */ - . = ALIGN(16); - prcb.o960(.data) - /* 16 byte aligned Control Table. - */ - . = ALIGN(16); - cntrltbl.o960(.data) - . = ALIGN(16); - systbl.o960(.data) - /* All the rest of program defined data goes here. - */ - *(.data) - /* RAM-based code section end. - * I need this symbol to know where to copy code - * at initialization time . - */ - _codeRamEnd = .; - } > sram - - /* RAM based uninitialized data. - */ - bss (NOLOAD) : - { - /* BSS section start. I need this symbol to - * zero BSS on initialization. - */ - _bssStart = .; - /* Supervisor Stack. Aligned on a 16 boundary. - */ - . = ALIGN(16); - _svrStackPtr = .; - . += 4K; - /* Interrupt Stack. Aligned on a 16 boundary. - */ - . = ALIGN(16); - _intStackPtr = .; - . += 4K; - /* Program defined BSS. - */ - *(.bss) - /* Program defined COMMON. - */ - *(COMMON) - /* BSS section end. I need this symbol to - * zero BSS on initialization. - */ - _bssEnd = .; - _bssStart_1 = .; - _bssEnd_1 = .; - } > sram - -} - -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/rom_cntrltbl.c b/c/src/lib/libbsp/i960/rxgen960/startup/rom_cntrltbl.c deleted file mode 100644 index a9f3aea9fa..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/rom_cntrltbl.c +++ /dev/null @@ -1,85 +0,0 @@ -/*-------------------------------------*/ -/* cntrltbl.c */ -/* Last change : 7.10.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#include -#include "cntrltbl.h" -/*-------------------------------------*/ - /* Control Table. - */ - /* Interrupt Map Registers Initial. - */ -#define IMAP0 0x4321 -#define IMAP1 0x8765 -#define IMAP2 0xA90000 -#define ICON (VECTOR_CACHE | MSK_UNCHNG | I_ENABLE) - -/* Bus configuration */ -#define RP_CONFIG_REGS I960RP_BUS_WIDTH_32 -#define FLASH I960RP_BUS_WIDTH_8 -#define DRAM I960RP_BUS_WIDTH_32 -#define UART_LED I960RP_BUS_WIDTH_8 -#define DEFAULT I960RP_BUS_WIDTH_32 - -/* Region Configuration */ -#define REGION_0_CONFIG RP_CONFIG_REGS -#define REGION_2_CONFIG DEFAULT -#define REGION_4_CONFIG DEFAULT -#define REGION_6_CONFIG DEFAULT -#define REGION_8_CONFIG DEFAULT -#define REGION_A_CONFIG DRAM -#define REGION_C_CONFIG UART_LED - -#define REGION_E_CONFIG DEFAULT -#define REGION_BOOT_CONFIG (DRAM ) - - /* Trace Control Initial. */ -#define TC 0 - -/*Bus Control Initial value */ -#define BCON CONF_TBL_VALID - -ControlTblEntry rom_controlTbl[] = { - /* --group 0 -- */ - 0, - 0, - 0, - 0, - /* --group 1 -- */ - IMAP0, - IMAP1, - IMAP2, - ICON, - /* --group 2 -- */ - REGION_0_CONFIG, - 0, - REGION_2_CONFIG, - 0, - /* --group 3 -- */ - REGION_4_CONFIG, - 0, - REGION_6_CONFIG, - 0, - /* --group 4 -- */ - REGION_8_CONFIG, - 0, - REGION_A_CONFIG, - 0, - /* --group 5 -- */ - REGION_C_CONFIG, - 0, - REGION_BOOT_CONFIG, - 0, - /* --group 6 -- */ - 0, /* Reserved */ - 0, - TC, - BCON -}; -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.c b/c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.c deleted file mode 100644 index b5e9d3ef52..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.c +++ /dev/null @@ -1,33 +0,0 @@ -/*-------------------------------------*/ -/* rom_ibr.h */ -/* Last change : 23. 1.95 */ -/*-------------------------------------*/\ -/* - * $Id$ - */ - -#include "rom_ibr.h" -#include "prcb.h" -#include "cntrltbl.h" -#include -#include "../include/rxgen960_config.h" -/*-------------------------------------*/ -extern void romStart(void); - -struct IBR rom_ibr = { - {((REGION_BOOT_CONFIG) & 0xff), /* Initial Bus Configuration */ - ((REGION_BOOT_CONFIG) >> 8) & 0xff, - ((REGION_BOOT_CONFIG) >> 16) & 0xff, - ((REGION_BOOT_CONFIG) >> 24) & 0xff}, - romStart, /* Start Point */ - & rom_prcb, /* PRCB */ - {-2, /* CheckSum */ - 0, - 0, - 0, - 0, - (unsigned int) rom_ibr_cksum} -}; -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.h b/c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.h deleted file mode 100644 index e9d7b6908e..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.h +++ /dev/null @@ -1,32 +0,0 @@ -/*-------------------------------------*/ -/* rom_ibr.h */ -/* Last change : 23. 1.95 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _ROM_IBR_H_ -#define _ROM_IBR_H_ - -#include "flttbl.h" -#include "cntrltbl.h" -#include "intrtbl.h" -#include "systbl.h" - - /* Initial Boot Record. - */ -struct IBR { - unsigned int busConfig[4]; /* Initial Bus Configuration */ - void (* start)(void); /* Start Point */ - struct PRCB * prcb; /* PRCB */ - unsigned int chckSum[6]; /* CheckSum */ -}; - /* Check sum values (defined in *.ld). - */ -extern unsigned int rom_ibr_cksum[]; - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/rom_prcb.c b/c/src/lib/libbsp/i960/rxgen960/startup/rom_prcb.c deleted file mode 100644 index eb45aa108b..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/rom_prcb.c +++ /dev/null @@ -1,57 +0,0 @@ -/*-------------------------------------*/ -/* prcb.c */ -/* Last change : 11.10.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#include "flttbl.h" -#include "cntrltbl.h" -#include "intrtbl.h" -#include "systbl.h" -#include "prcb.h" -/*-------------------------------------*/ - /* RAM based PRocess Control Block - */ -#ifdef DBPRECISE_FAULTS -#define AC (INT_OVFL_DISABLE | PRECISE_FLTS) -#else -#define AC (INT_OVFL_DISABLE | IMPRECISE_FLTS) -#endif - - /* Initial Fault Configuration Word Image. - * As to this 1, I don't know why but without it - * fault hanlder wouldn't be invoked. - */ -#define FAULT_CONFIG (UNLGND_FAULT_DISABLE | 1) -extern SystemTbl nulsystemTbl; - - /* Initial Instruction Cache Configuration Word Image. - */ -#ifdef DBCACHE_OFF -#define INST_CACHE_CONFIG (INST_CACHE_DISABLE) -#else -#define INST_CACHE_CONFIG (INST_CACHE_ENABLE) -#endif - - /* Initial Register Cache Configuration Word Image. - */ -#define REG_CACHE_CONFIG 0x200 - -struct PRCB rom_prcb = { - & faultTbl[0], /* Fault Table Base */ - & rom_controlTbl[0], /* Control Table Base */ - AC, /* AC */ - FAULT_CONFIG, /* Fault Configuration Word */ - & interruptTbl, /* Interrupt Table Base */ - & nulsystemTbl, /* System Procedure Table Base */ - 0, /* Reserved */ - & intStackPtr[0], /* Interrupt Stack Pointer */ - INST_CACHE_CONFIG, /* Instruction Cache Config */ - REG_CACHE_CONFIG, /* Reg Cache Config */ -}; - -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/rommon.h b/c/src/lib/libbsp/i960/rxgen960/startup/rommon.h deleted file mode 100644 index da6e44e6a5..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/rommon.h +++ /dev/null @@ -1,29 +0,0 @@ -/*-------------------------------------*/ -/* rommon.h */ -/* Last change : 23. 1.95 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _ROMMON_H_ -#define _ROMMON_H_ - - /* ROM monitor start point. - * Gets control on power on. - */ -extern void romStart(void); -extern void start(void); - /* ROM monitor start point. - * Gets control on a fault. - */ -extern void romFaultStart(void); - /* ROM monitor start point. - * Gets control on a test command. - */ -extern void romTestStart(void); - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/sctns.c b/c/src/lib/libbsp/i960/rxgen960/startup/sctns.c deleted file mode 100644 index 466995c75b..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/sctns.c +++ /dev/null @@ -1,103 +0,0 @@ -/*-------------------------------------*/ -/* sctns.c */ -/* Last change : 10.10.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#include "sctns.h" -#include "pmc901_memmap.h" -/*#include "led.h"*/ -/*-------------------------------------*/ - -/* Temporary nullation of WRITE LED */ -#define WRITE_LED(x) errval = x; -void ledcyc() -{ - register int i,t; - extern unsigned char * led_array; - register unsigned char * la; - volatile register int k,m; - la = led_array; - i = 1; -loop: - if (i > 9 ) - i = 1; - *(unsigned char *) LED_REG = la[i]; - for(t=1; t < 0x10000; t++) - k = m + 33; - i++; - goto loop; -} - -void copyCodeToRom(void) -{ - register int errval = 0; - unsigned int * s; - volatile unsigned int * d; - unsigned int t, i; - volatile unsigned char * z; -extern unsigned char * led_array; - - WRITE_LED(0x1); - d = codeRamStart; - *d = 0; - if( *d != 0) - goto error; - WRITE_LED(0x2); - *d = 0xffffffff; - if( *d != 0xffffffff) - goto error; - WRITE_LED(0x3); - t = 1; - for( i=0; i < 31; i++){ - *d = t; - if(*d != t) - goto error; - t <<= 1; - } - z = (unsigned char *)codeRamStart; - *z = 0; - if( *z != 0) - goto error; - *z = 0xf; - if( *z != 0xf) - goto error; - WRITE_LED(0x4); - for (s = codeRomStart, d = codeRamStart; d < codeRamEnd; s ++, d ++) { - * d = * s; - } - WRITE_LED(0x5); - for (s = codeRomStart, d = codeRamStart; d < codeRamEnd; s ++, d ++) { - if( * d != * s ) - goto error; - } - WRITE_LED(0x6); - return; - -error: - while(1){ - for(t=1; t < 0x100000; t++) - *(unsigned char *) LED_REG = errval; - for(t=1; t < 0x100000; t++) - *(unsigned char *) LED_REG = led_array[0]; - } - -} -void zeroBss(void) -{ - unsigned int * p; - - extern unsigned int bssStart_1[], bssEnd_1[]; - - for (p = bssStart; p < bssEnd; p ++) { - * p = 0; - } - for (p = bssStart_1; p < bssEnd_1; p ++) { - * p = 0; - } -} -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/sctns.h b/c/src/lib/libbsp/i960/rxgen960/startup/sctns.h deleted file mode 100644 index acf78dcf3b..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/sctns.h +++ /dev/null @@ -1,36 +0,0 @@ -/*-------------------------------------*/ -/* sctns.h */ -/* Last change : 10.10.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _SCTNS_H_ -#define _SCTNS_H_ - - /* Copy all code into SRAM. - * Fault Table and Fault Handler stays in EPROM to not be - * destroyed by a buggy user program. Beyond that only - * monitor Start point and procedures to copy code - * into RAM will be relocated in ROM. - */ -extern void copyCodeToRam(void); - /* Zero uninitialized section. - */ -extern void zeroBss(void); - - /* Some relocation symbols. These - * symbols are defined in rom.ld. - */ -extern unsigned int codeRomStart[]; -extern unsigned int codeRamStart[]; -extern unsigned int codeRamEnd[]; - -extern unsigned int bssStart[]; -extern unsigned int bssEnd[]; - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/setvec.c b/c/src/lib/libbsp/i960/rxgen960/startup/setvec.c deleted file mode 100644 index e017e81a70..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/setvec.c +++ /dev/null @@ -1,200 +0,0 @@ -/* set_vector - * - * This routine attempts to perform all "generic" interrupt initialization - * for the specified XINT line. - * - * INPUT: - * func - interrupt handler entry point - * xint - external interrupt line - * type - 0 indicates raw hardware connect - * 1 indicates RTEMS interrupt connect - * - * RETURNS: - * address of previous interrupt handler - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ -/* - * i960rp specific function added - */ - -#include -#include - -#include - -void print_prcb(); -void print_intr_info(); -void print_ipnd_imsk(); - -unsigned int Xint_2_Group_Map[8] = { 0, 1, 2, 5, 7, 3, 6, 4 }; - -i960_isr_entry old_set_vector( /* returns old vector */ - rtems_isr_entry func, /* isr routine */ - unsigned int xint, /* XINT number */ - unsigned int type /* RTEMS or RAW */ -) -{ - i960_isr_entry *intr_tbl, *cached_intr_tbl; - i960_isr_entry saved_intr; - unsigned int vector, group, nibble; - unsigned int *imap; - - if ( xint > 7 ) - exit( 0x80 ); - - cached_intr_tbl = (i960_isr_entry *) 0; - intr_tbl = (i960_isr_entry *) Prcb->intr_tbl; - group = Xint_2_Group_Map[xint]; /* remap XINT to group */ - vector = (group << 4) + 2; /* direct vector num */ - - if ( type ) - rtems_interrupt_catch( func, vector, (rtems_isr_entry *) &saved_intr ); - else { - saved_intr = (i960_isr_entry) intr_tbl[ vector ]; - /* return old vector */ - intr_tbl[ vector + 1 ] = /* normal vector table */ - cached_intr_tbl[ group ] = (i960_isr_entry) func; /* cached vector */ - } - - if ( xint <= 3 ) imap = &Ctl_tbl->imap0; /* updating IMAP0 */ - else imap = &Ctl_tbl->imap1; /* updating IMAP1 */ - nibble = (xint % 4) * 4; - *imap &= ~(0xf << nibble); - *imap |= group << nibble; - - Ctl_tbl->icon &= ~0x00000400; /* enable global interrupts */ - Ctl_tbl->icon |= 0x00004000; /* fast sampling mode */ - switch ( xint ) { - case 0: Ctl_tbl->icon |= 0x00000004; break; - case 1: Ctl_tbl->icon |= 0x00000008; break; - case 2: Ctl_tbl->icon &= ~0x00000010; break; - case 4: Ctl_tbl->icon &= ~0x00000040; break; - case 5: Ctl_tbl->icon |= 0x00000080; break; - case 6: Ctl_tbl->icon &= ~0x00000100; break; - default: exit( 0x81 ); break; /* unsupported */ - } - -#if defined (i960ca) - if ( xint == 4 ) { /* reprogram MCON for SQSIO4 */ - Ctl_tbl->mcon12 = 0x00002012; /* MCON12 - 0xCxxxxxxx */ - Ctl_tbl->mcon13 = 0x00000000; /* MCON13 - 0xDxxxxxxx */ - i960_reload_ctl_group( 5 ); /* update MCON12-MCON15 */ - } -#endif; - - i960_unmask_intr( xint ); /* update IMSK */ - i960_reload_ctl_group( 1 ); /* update IMAP?/ICON */ - return( saved_intr ); /* return old vector */ -} - -/* note: this needs a little fix up work for XINTs */ -i960_isr_entry set_vector( /* returns old vector */ - rtems_isr_entry func, /* isr routine */ - unsigned int vector, /* vector number */ - unsigned int type /* RTEMS or RAW */ -) -{ - i960_isr_entry *intr_tbl, *cached_intr_tbl; - i960_isr_entry saved_intr; - unsigned int vect_idx, group, nibble; - unsigned int *imap; - unsigned int imask; - unsigned int vec_idx; - volatile unsigned int *ipnd = (unsigned int *) IPND_ADDR; - volatile unsigned int *imsk = (unsigned int *) IMSK_ADDR; - - cached_intr_tbl = (i960_isr_entry *) 0; - intr_tbl = (i960_isr_entry *) Prcb->intr_tbl; - - vec_idx = vector >> 4; - if ( type ) - { - rtems_interrupt_catch( func, vector, (rtems_isr_entry *) &saved_intr ); - return (saved_intr); - } - else { - saved_intr = (i960_isr_entry) intr_tbl[ vect_idx ]; - /* return old vector */ - intr_tbl[ vector ] = /* normal vector table */ - cached_intr_tbl[ vec_idx ] = (i960_isr_entry) func; /* cached vector */ - } - - if( vec_idx > 8) - imask = 0x1000 << (vec_idx - 9); - else - imask = 0x1 << (vec_idx - 1); - *ipnd &= ~(imask); - *imsk |= (imask); - - return( saved_intr ); /* return old vector */ -} - -i960_isr_entry set_tmr_vector( /* returns old vector */ - rtems_isr_entry func, /* isr routine */ - unsigned int vector, /* vector number */ - unsigned int tmrno /* which timer? */ -) -{ -#if defined(i960ca) - saved_intr = NULL; -#else - volatile i960_isr_entry *intr_tbl; - volatile i960_isr_entry saved_intr; - volatile unsigned int *imap2 = (unsigned int *) IMAP2_ADDR; - volatile unsigned int *isr = (unsigned int *) (4*(vector >> 4)); - - intr_tbl = (i960_isr_entry *) Prcb->intr_tbl; - saved_intr = (i960_isr_entry) intr_tbl[ vector ]; - intr_tbl[vector] = (((int) func) | 0x2); /* set IN_CACHE_IH flag */ - *isr = (unsigned int) func | 0x2; - - if (tmrno) /* timer 1 */ - { - *imap2 = (*imap2 & 0xff0fffff) | (((vector >> 4) & 0xf) << 20); - } - else /* timer 0 */ - { - *imap2 = (*imap2 & 0xfff0ffff) | (((vector >> 4) & 0xf) << 16); - } - -#endif - return( saved_intr ); /* return old vector */ -} - -void print_prcb() -{ - printf( "fault_table =0x%p\n", Prcb->fault_tbl ); - printf( "control_tbl =0x%p\n", Prcb->control_tbl ); - printf( "AC mask ov =0x%x\n", Prcb->initial_ac ); - printf( "fltconfig =0x%x\n", Prcb->fault_config ); - printf( "intr tbl =0x%p\n", Prcb->intr_tbl ); - printf( "systable =0x%p\n", Prcb->sys_proc_tbl ); - printf( "reserved =0x%x\n", Prcb->reserved ); - printf( "isr stk =0x%p\n", Prcb->intr_stack ); - printf( "ins cache =0x%x\n", Prcb->ins_cache_cfg ); - printf( "reg cache =0x%x\n", Prcb->reg_cache_cfg ); -} - -void print_intr_info() -{ - printf( "prcb =0x%p\n", Prcb ); - printf( "ctl_tbl =0x%p\n", Ctl_tbl ); - printf( "intr_tbl=0x%p\n", Prcb->intr_tbl ); - printf( "IMAP0 = 0x%x\n", Ctl_tbl->imap0 ); - printf( "IMAP1 = 0x%x\n", Ctl_tbl->imap1 ); - print_ipnd_imsk(); -} - -void print_ipnd_imsk() -{ - printf(" IPEND = 0x%x\n", i960_pend_intrs() ); - printf(" IMASK = 0x%x\n", i960_mask_intrs() ); -} diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/systbl.c b/c/src/lib/libbsp/i960/rxgen960/startup/systbl.c deleted file mode 100644 index d2861d71f9..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/systbl.c +++ /dev/null @@ -1,100 +0,0 @@ -/*-------------------------------------*/ -/* systbl.c */ -/* Last change : 21. 3.95 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#include "prcb.h" -/*#include "uart_access.h" */ -#include "fault.h" -#include "faultret.h" -#include "memchnl.h" -#include "main.h" -/*#include "string_impl.h"*/ -#include "stdio.h" -/* #include "stdio_impl.h" */ -#include "systbl.h" -#include "time.h" -/*-------------------------------------*/ - -struct PRCB *sys_get_prcb() -{ - register struct PRCB *prcb = &ram_prcb; - - return(prcb); - /*asm volatile("lda _ram_prcb, g0" : : ); */ -} - - /* System Procedures Table. - */ -SystemTbl systemTbl = { - {0, 0, 0}, /* Reserved */ - svrStackPtr, /* Supervisor Stack Pointer Base */ - {0, 0, 0, 0, 0, 0, 0, 0}, /* Preserved */ - {0, 0, 0, 0, 0, - SP(sys_get_prcb + SUPERVISOR_SP), - 0, 0, /* 6 - 7 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 8 - 15 */ - 0, 0, /* 16 - 17 */ - 0, /* 18 */ - 0, /* 19 */ - 0, /* 20 */ - 0, /* 21 */ - 0, 0, /* 22 - 23 */ - 0, /* 24 */ - 0, /* 25 */ - 0, /* 26 */ - 0, /* 27 */ - 0, /* 28 */ - 0, /* 29 */ - 0, /* 30 */ - 0, /* 31 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 32 - 39 */ - 0, /* 40 */ - 0, /* 41 */ - 0, /* 42 */ - 0, /* 43 */ - 0, /* 44 */ - 0, /* 45 */ - 0, /* 46 */ - 0, /* 47 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 48 - 55 */ - 0, /* 56 */ - 0, /* 57 */ - 0, /* 58 */ - 0, 0, 0, 0, 0, /* 59 - 63 */ - 0, /* 64 */ - 0, /* 65 */ - 0, 0, 0, 0, 0, 0, /* 66 - 71 */ - 0, /* 72 */ - 0, /* 73 */ - 0, /* 74 */ - 0, /* 75 */ - 0, /* 76 */ - 0, /* 77 */ - 0, 0, /* 78 - 79 */ - 0, /* 80 */ - 0, /* 81 */ - 0, 0, 0, 0, 0, 0, /* 82 - 87 */ - 0, /* 88 */ - 0, 0, 0, 0, 0, 0, 0, /* 89 - 95 */ - 0, /* 96 */ - 0, /* 97 */ - 0, 0, 0, 0, 0, 0, /* 98 - 103 */ - 0, /* 104 */ - 0, /* 105 */ - 0, /* 106 */ - 0, /* 107 */ - 0, /* 108 */ - 0, /* 109 */ - 0, 0, /* 110 - 111 */ - 0, /* 112 */ - 0, /* 113 */ - 0} /* 114 */ -}; - -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/systbl.h b/c/src/lib/libbsp/i960/rxgen960/startup/systbl.h deleted file mode 100644 index ac902cc829..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/systbl.h +++ /dev/null @@ -1,37 +0,0 @@ -/*-------------------------------------*/ -/* systbl.h */ -/* Last change : 14.10.94 */ -/*-------------------------------------*/ -/* - * $Id$ - */ - -#ifndef _SYSTBL_H_ -#define _SYSTBL_H_ - - /* System Procedure. - */ -typedef void (* SysProc)(void); - /* System Procedures Table. - */ -typedef struct { - unsigned int reserved[3]; /* Reserved */ - unsigned int * svrStackPtr; /* Supervisor Stack Pointer Base */ - unsigned int preserved[8]; /* Preserved */ - SysProc sysProc[259]; /* System Procedures Entry Points */ -} SystemTbl; - /* Type of System Procedure. - */ -#define LOCAL_SP 0x0 -#define SUPERVISOR_SP 0x2 - /* Cinvert to System Procedure Type. - */ -#define SP(addr) ((SysProc) (addr)) - /* System Procedures Table Itself. - */ -extern SystemTbl systemTbl; - -#endif -/*-------------*/ -/* End of file */ -/*-------------*/ diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/time.h b/c/src/lib/libbsp/i960/rxgen960/startup/time.h deleted file mode 100644 index 08122607bf..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/startup/time.h +++ /dev/null @@ -1,6 +0,0 @@ -/* - * $Id$ - */ - - extern void gettime_impl(void); - extern void gettime_us_impl(void); diff --git a/c/src/lib/libbsp/i960/rxgen960/timer/timer.c b/c/src/lib/libbsp/i960/rxgen960/timer/timer.c deleted file mode 100644 index 1b99f73dcb..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/timer/timer.c +++ /dev/null @@ -1,125 +0,0 @@ -/* Timer_init() - * - * This routine initializes the Z8536 timer on the SQSIO4 SQUALL - * board for the CVME961 board. The timer is setup to provide a - * tick every 1 millisecond. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * NOTE: This routine will not work if the optimizer is enabled - * for most compilers. The multiple writes to the Z8536 - * will be optimized away. - * - * It is important that the timer start/stop overhead be - * determined when porting or modifying this code. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include -#include -#include - -#define TIMER_VECTOR 34 - -int Ttimer_val; -rtems_boolean Timer_driver_Find_average_overhead = 0; - -void flush_reg(); -rtems_isr timerisr(); - -void Timer_initialize() -{ - volatile unsigned int *tmr1 = (unsigned int *) TMR1_ADDR; - volatile unsigned int *trr1 = (unsigned int *) TRR1_ADDR; - volatile unsigned int *tcr1 = (unsigned int *) TCR1_ADDR; - volatile unsigned int *imsk = (unsigned int *) IMSK_ADDR; - volatile unsigned int *icon = (unsigned int *) ICON_ADDR; - volatile unsigned int *ipnd = (unsigned int *) IPND_ADDR; - volatile unsigned int *imap2 = (unsigned int *) IMAP2_ADDR; - - #define BUS_CLOCK_1 0 - #define TMR_WRITE_CNTL 8 - #define TMR_AUTO_RELOAD 4 - #define TMR_ENABLE 2 - #define TMR_TERM_CNT_STAT 1 - - *tmr1 = BUS_CLOCK_1 | TMR_AUTO_RELOAD; - *icon = 0x6000; - - set_vector( (((unsigned int) timerisr) | 0x2), TIMER_VECTOR, 1 ); - - *imap2 = (*imap2 & 0xff0fffff) | (((TIMER_VECTOR >> 4) & 0xf) << 20); - - /* initialize the i960RP timer 1 here */ - - /* set the timer countdown */ - *trr1 = 33 * BSP_Configuration.microseconds_per_tick; - *tcr1 = 33 * BSP_Configuration.microseconds_per_tick; - - *ipnd &= ~(1<<13); - *imsk |= (1 << 13); - Ttimer_val = 0; - *tmr1 = BUS_CLOCK_1 | TMR_AUTO_RELOAD | TMR_ENABLE; - -} - -rtems_isr timerisr( - rtems_vector_number vector -) -{ - /* enable_tracing(); */ - Ttimer_val++; - i960_clear_intr( 13 ); -} - -#define AVG_OVERHEAD 4 /* It typically takes 5.5 microseconds */ - /* (11 countdowns) to start/stop the timer. */ -#define LEAST_VALID 5 /* Don't trust a value lower than this */ - -int Read_timer() -{ - volatile unsigned int *tcr1 = (unsigned int *) TCR1_ADDR; - volatile unsigned int *trr1 = (unsigned int *) TRR1_ADDR; - uint32_t remaining, total; - - /* this routine is supposed to count in 1/2 uSec units */ - /* pretty funny when using a 33MHz clock for the counter */ - remaining = *tcr1; - remaining = *trr1 - remaining; - total = (2 * ((Ttimer_val * *trr1) + remaining)) / 33; -/* - putnum(remaining); - console_sps_putc(':'); - putnum(total); -*/ - - if ( Timer_driver_Find_average_overhead == 1 ) - return total; /* in one-half microsecond units */ - else { - if ( total < LEAST_VALID ) - return 0; /* below timer resolution */ - return (total-AVG_OVERHEAD) >> 1; - } -} - -rtems_status_code Empty_function( void ) -{ - return RTEMS_SUCCESSFUL; -} - -void Set_find_average_overhead( - rtems_boolean find_flag -) -{ - Timer_driver_Find_average_overhead = find_flag; -} diff --git a/c/src/lib/libbsp/i960/rxgen960/timer/timerisr.S b/c/src/lib/libbsp/i960/rxgen960/timer/timerisr.S deleted file mode 100644 index 984a360b39..0000000000 --- a/c/src/lib/libbsp/i960/rxgen960/timer/timerisr.S +++ /dev/null @@ -1,64 +0,0 @@ -/* timer_isr() - * - * This routine initializes the Z8536 timer on the SQSIO4 SQUALL - * board for the CVME961 board. The timer is setup to provide a - * tick every 0x10000 / 2 milliseconds. This is used to time - * executing code. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - */ - -#include - -.set PORT_A, 0xc00000a8 # port A -.set PORT_B, 0xc00000a4 # port B -.set PORT_C, 0xc00000a0 # port C -.set CTL_PORT, 0xc00000ac # control port - -.set T1CSR, 0x0a # T1 command/status reg -.set RELOAD, 0x24 # clr IP & IUS,allow countdown - -/* - * Duplicating this symbol is stupid but eliminates - * toolset variation problems. - */ - PUBLIC(timerisr) - PUBLIC(_timerisr) -SYM (timerisr): -SYM (_timerisr): - #ldconst 1,r4 - #modpc 0,r4,r4 # enable tracing - - ld _Ttimer_val,r6 # r6 = test timer - - ldconst T1CSR,r4 # r4 = T1 control status reg - stob r4,CTL_PORT # select T1CSR - ldconst RELOAD,r5 # r5 = reset value - stob r5,CTL_PORT # reset countdown - addo 1,r6,r6 - st r6,_Ttimer_val # increment test timer -loop_til_cleared: - /* clrbit 4,sf0,sf0 XXX JRS */ - /* bbs 4,sf0,loop_til_cleared XXX JRS */ -leaf: ret - - .leafproc _flush_reg, flush_reg.lf - .globl _flush_reg, flush_reg.lf -_flush_reg: - lda leaf,g14 # g14 = exit address -flush_reg.lf: - flushreg - mov g14,g0 # g0 = exit address - ldconst 0,g14 # set g14 for non-leaf - bx (g0) -- cgit v1.2.3