2003-11-10 Ralf Corsepius <corsepiu@faw.uni-ulm.de>

* sp01/.cvsignore: Remove.
	* sp01/Makefile.am: Remove.
	* sp01/init.c: Remove.
	* sp01/sp01.doc: Remove.
	* sp01/sp01.scn: Remove.
	* sp01/system.h: Remove.
	* sp01/task1.c: Remove.
	* sp02/.cvsignore: Remove.
	* sp02/Makefile.am: Remove.
	* sp02/init.c: Remove.
	* sp02/preempt.c: Remove.
	* sp02/sp02.doc: Remove.
	* sp02/sp02.scn: Remove.
	* sp02/system.h: Remove.
	* sp02/task1.c: Remove.
	* sp02/task2.c: Remove.
	* sp02/task3.c: Remove.
	* .cvsignore: Remove.
	* ChangeLog: Remove.
	* Makefile.am: Remove.
	* README: Remove.
	* configure.ac: Remove.
	* sptests.am: Remove.
	* sp03/.cvsignore: Remove.
	* sp03/Makefile.am: Remove.
	* sp03/init.c: Remove.
	* sp03/sp03.doc: Remove.
	* sp03/sp03.scn: Remove.
	* sp03/system.h: Remove.
	* sp03/task1.c: Remove.
	* sp03/task2.c: Remove.
	* sp04/.cvsignore: Remove.
	* sp04/Makefile.am: Remove.
	* sp04/init.c: Remove.
	* sp04/sp04.doc: Remove.
	* sp04/sp04.scn: Remove.
	* sp04/system.h: Remove.
	* sp04/task1.c: Remove.
	* sp04/task2.c: Remove.
	* sp04/task3.c: Remove.
	* sp04/tswitch.c: Remove.
	* sp05/.cvsignore: Remove.
	* sp05/Makefile.am: Remove.
	* sp05/init.c: Remove.
	* sp05/sp05.doc: Remove.
	* sp05/sp05.scn: Remove.
	* sp05/system.h: Remove.
	* sp05/task1.c: Remove.
	* sp05/task2.c: Remove.
	* sp05/task3.c: Remove.
	* sp06/.cvsignore: Remove.
	* sp06/Makefile.am: Remove.
	* sp06/init.c: Remove.
	* sp06/sp06.doc: Remove.
	* sp06/sp06.scn: Remove.
	* sp06/system.h: Remove.
	* sp06/task1.c: Remove.
	* sp06/task2.c: Remove.
	* sp06/task3.c: Remove.
	* sp07/.cvsignore: Remove.
	* sp07/Makefile.am: Remove.
	* sp07/init.c: Remove.
	* sp07/sp07.doc: Remove.
	* sp07/sp07.scn: Remove.
	* sp07/system.h: Remove.
	* sp07/task1.c: Remove.
	* sp07/task2.c: Remove.
	* sp07/task3.c: Remove.
	* sp07/task4.c: Remove.
	* sp07/taskexit.c: Remove.
	* sp07/tcreate.c: Remove.
	* sp07/tdelete.c: Remove.
	* sp07/trestart.c: Remove.
	* sp07/tstart.c: Remove.
	* sp08/.cvsignore: Remove.
	* sp08/Makefile.am: Remove.
	* sp08/init.c: Remove.
	* sp08/sp08.doc: Remove.
	* sp08/sp08.scn: Remove.
	* sp08/system.h: Remove.
	* sp08/task1.c: Remove.
	* sp09/.cvsignore: Remove.
	* sp09/Makefile.am: Remove.
	* sp09/delay.c: Remove.
	* sp09/init.c: Remove.
	* sp09/isr.c: Remove.
	* sp09/screen01.c: Remove.
	* sp09/screen02.c: Remove.
	* sp09/screen03.c: Remove.
	* sp09/screen04.c: Remove.
	* sp09/screen05.c: Remove.
	* sp09/screen06.c: Remove.
	* sp09/screen07.c: Remove.
	* sp09/screen08.c: Remove.
	* sp09/screen09.c: Remove.
	* sp09/screen10.c: Remove.
	* sp09/screen11.c: Remove.
	* sp09/screen12.c: Remove.
	* sp09/screen13.c: Remove.
	* sp09/screen14.c: Remove.
	* sp09/sp09.doc: Remove.
	* sp09/sp09.scn: Remove.
	* sp09/system.h: Remove.
	* sp09/task1.c: Remove.
	* sp09/task2.c: Remove.
	* sp09/task3.c: Remove.
	* sp09/task4.c: Remove.
	* sp11/.cvsignore: Remove.
	* sp11/Makefile.am: Remove.
	* sp11/init.c: Remove.
	* sp11/sp11.doc: Remove.
	* sp11/sp11.scn: Remove.
	* sp11/system.h: Remove.
	* sp11/task1.c: Remove.
	* sp11/task2.c: Remove.
	* sp11/timer.c: Remove.
	* sp12/.cvsignore: Remove.
	* sp12/Makefile.am: Remove.
	* sp12/init.c: Remove.
	* sp12/pridrv.c: Remove.
	* sp12/pritask.c: Remove.
	* sp12/sp12.doc: Remove.
	* sp12/sp12.scn: Remove.
	* sp12/system.h: Remove.
	* sp12/task1.c: Remove.
	* sp12/task2.c: Remove.
	* sp12/task3.c: Remove.
	* sp12/task4.c: Remove.
	* sp12/task5.c: Remove.
	* sp13/.cvsignore: Remove.
	* sp13/Makefile.am: Remove.
	* sp13/fillbuff.c: Remove.
	* sp13/init.c: Remove.
	* sp13/putbuff.c: Remove.
	* sp13/sp13.doc: Remove.
	* sp13/sp13.scn: Remove.
	* sp13/system.h: Remove.
	* sp13/task1.c: Remove.
	* sp13/task2.c: Remove.
	* sp13/task3.c: Remove.
	* sp14/.cvsignore: Remove.
	* sp14/Makefile.am: Remove.
	* sp14/asr.c: Remove.
	* sp14/init.c: Remove.
	* sp14/sp14.doc: Remove.
	* sp14/sp14.scn: Remove.
	* sp14/system.h: Remove.
	* sp14/task1.c: Remove.
	* sp14/task2.c: Remove.
	* sp15/.cvsignore: Remove.
	* sp15/Makefile.am: Remove.
	* sp15/init.c: Remove.
	* sp15/sp15.doc: Remove.
	* sp15/sp15.scn: Remove.
	* sp15/system.h: Remove.
	* sp15/task1.c: Remove.
	* sp16/.cvsignore: Remove.
	* sp16/Makefile.am: Remove.
	* sp16/init.c: Remove.
	* sp16/sp16.doc: Remove.
	* sp16/sp16.scn: Remove.
	* sp16/system.h: Remove.
	* sp16/task1.c: Remove.
	* sp16/task2.c: Remove.
	* sp16/task3.c: Remove.
	* sp16/task4.c: Remove.
	* sp16/task5.c: Remove.
	* sp17/.cvsignore: Remove.
	* sp17/Makefile.am: Remove.
	* sp17/asr.c: Remove.
	* sp17/init.c: Remove.
	* sp17/sp17.doc: Remove.
	* sp17/sp17.scn: Remove.
	* sp17/system.h: Remove.
	* sp17/task1.c: Remove.
	* sp17/task2.c: Remove.
	* sp19/.cvsignore: Remove.
	* sp19/Makefile.am: Remove.
	* sp19/first.c: Remove.
	* sp19/fptask.c: Remove.
	* sp19/fptest.h: Remove.
	* sp19/init.c: Remove.
	* sp19/inttest.h: Remove.
	* sp19/sp19.doc: Remove.
	* sp19/sp19.scn: Remove.
	* sp19/system.h: Remove.
	* sp19/task1.c: Remove.
	* sp20/.cvsignore: Remove.
	* sp20/Makefile.am: Remove.
	* sp20/getall.c: Remove.
	* sp20/init.c: Remove.
	* sp20/sp20.doc: Remove.
	* sp20/sp20.scn: Remove.
	* sp20/system.h: Remove.
	* sp20/task1.c: Remove.
	* sp21/.cvsignore: Remove.
	* sp21/Makefile.am: Remove.
	* sp21/init.c: Remove.
	* sp21/sp21.doc: Remove.
	* sp21/sp21.scn: Remove.
	* sp21/system.h: Remove.
	* sp21/task1.c: Remove.
	* sp22/.cvsignore: Remove.
	* sp22/Makefile.am: Remove.
	* sp22/delay.c: Remove.
	* sp22/init.c: Remove.
	* sp22/prtime.c: Remove.
	* sp22/sp22.doc: Remove.
	* sp22/sp22.scn: Remove.
	* sp22/system.h: Remove.
	* sp22/task1.c: Remove.
	* sp23/.cvsignore: Remove.
	* sp23/Makefile.am: Remove.
	* sp23/init.c: Remove.
	* sp23/sp23.doc: Remove.
	* sp23/sp23.scn: Remove.
	* sp23/system.h: Remove.
	* sp23/task1.c: Remove.
	* sp24/.cvsignore: Remove.
	* sp24/Makefile.am: Remove.
	* sp24/init.c: Remove.
	* sp24/resume.c: Remove.
	* sp24/sp24.doc: Remove.
	* sp24/sp24.scn: Remove.
	* sp24/system.h: Remove.
	* sp24/task1.c: Remove.
	* sp25/.cvsignore: Remove.
	* sp25/Makefile.am: Remove.
	* sp25/init.c: Remove.
	* sp25/sp25.doc: Remove.
	* sp25/sp25.scn: Remove.
	* sp25/system.h: Remove.
	* sp25/task1.c: Remove.
	* sp26/.cvsignore: Remove.
	* sp26/Makefile.am: Remove.
	* sp26/init.c: Remove.
	* sp26/sp26.doc: Remove.
	* sp26/sp26.scn: Remove.
	* sp26/system.h: Remove.
	* sp26/task1.c: Remove.
	* sp27/.cvsignore: Remove.
	* sp27/Makefile.am: Remove.
	* sp27/init.c: Remove.
	* sp27/sp27.doc: Remove.
	* sp27/sp27.scn: Remove.
	* sp28/.cvsignore: Remove.
	* sp28/Makefile.am: Remove.
	* sp28/init.c: Remove.
	* sp28/sp28.doc: Remove.
	* sp28/sp28.scn: Remove.
	* sp29/.cvsignore: Remove.
	* sp29/Makefile.am: Remove.
	* sp29/init.c: Remove.
	* sp29/sp29.doc: Remove.
	* sp29/sp29.scn: Remove.
	* sp30/.cvsignore: Remove.
	* sp30/Makefile.am: Remove.
	* sp30/init.c: Remove.
	* sp30/resume.c: Remove.
	* sp30/sp30.doc: Remove.
	* sp30/sp30.scn: Remove.
	* sp30/system.h: Remove.
	* sp30/task1.c: Remove.
	* sp31/.cvsignore: Remove.
	* sp31/Makefile.am: Remove.
	* sp31/delay.c: Remove.
	* sp31/init.c: Remove.
	* sp31/prtime.c: Remove.
	* sp31/sp31.doc: Remove.
	* sp31/sp31.scn: Remove.
	* sp31/system.h: Remove.
	* sp31/task1.c: Remove.
	* sp32/.cvsignore: Remove.
	* sp32/Makefile.am: Remove.
	* sp32/init.c: Remove.
	* sp32/sp32.scn: Remove.
	* spfatal/.cvsignore: Remove.
	* spfatal/Makefile.am: Remove.
	* spfatal/README: Remove.
	* spfatal/fatal.c: Remove.
	* spfatal/init.c: Remove.
	* spfatal/puterr.c: Remove.
	* spfatal/spfatal.doc: Remove.
	* spfatal/spfatal.scn: Remove.
	* spfatal/system.h: Remove.
	* spfatal/task1.c: Remove.
	* spsize/.cvsignore: Remove.
	* spsize/Makefile.am: Remove.
	* spsize/getint.c: Remove.
	* spsize/init.c: Remove.
	* spsize/size.c: Remove.
	* spsize/size.scn: Remove.
	* spsize/system.h: Remove.
This commit is contained in:
Ralf Corsepius
2003-11-11 00:58:28 +00:00
parent 532f51ce42
commit 5ada27d280
293 changed files with 0 additions and 19061 deletions

View File

@@ -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

View File

@@ -1,743 +0,0 @@
2003-11-10 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* sp01/.cvsignore: Remove.
* sp01/Makefile.am: Remove.
* sp01/init.c: Remove.
* sp01/sp01.doc: Remove.
* sp01/sp01.scn: Remove.
* sp01/system.h: Remove.
* sp01/task1.c: Remove.
* sp02/.cvsignore: Remove.
* sp02/Makefile.am: Remove.
* sp02/init.c: Remove.
* sp02/preempt.c: Remove.
* sp02/sp02.doc: Remove.
* sp02/sp02.scn: Remove.
* sp02/system.h: Remove.
* sp02/task1.c: Remove.
* sp02/task2.c: Remove.
* sp02/task3.c: Remove.
* .cvsignore: Remove.
* ChangeLog: Remove.
* Makefile.am: Remove.
* README: Remove.
* configure.ac: Remove.
* sptests.am: Remove.
* sp03/.cvsignore: Remove.
* sp03/Makefile.am: Remove.
* sp03/init.c: Remove.
* sp03/sp03.doc: Remove.
* sp03/sp03.scn: Remove.
* sp03/system.h: Remove.
* sp03/task1.c: Remove.
* sp03/task2.c: Remove.
* sp04/.cvsignore: Remove.
* sp04/Makefile.am: Remove.
* sp04/init.c: Remove.
* sp04/sp04.doc: Remove.
* sp04/sp04.scn: Remove.
* sp04/system.h: Remove.
* sp04/task1.c: Remove.
* sp04/task2.c: Remove.
* sp04/task3.c: Remove.
* sp04/tswitch.c: Remove.
* sp05/.cvsignore: Remove.
* sp05/Makefile.am: Remove.
* sp05/init.c: Remove.
* sp05/sp05.doc: Remove.
* sp05/sp05.scn: Remove.
* sp05/system.h: Remove.
* sp05/task1.c: Remove.
* sp05/task2.c: Remove.
* sp05/task3.c: Remove.
* sp06/.cvsignore: Remove.
* sp06/Makefile.am: Remove.
* sp06/init.c: Remove.
* sp06/sp06.doc: Remove.
* sp06/sp06.scn: Remove.
* sp06/system.h: Remove.
* sp06/task1.c: Remove.
* sp06/task2.c: Remove.
* sp06/task3.c: Remove.
* sp07/.cvsignore: Remove.
* sp07/Makefile.am: Remove.
* sp07/init.c: Remove.
* sp07/sp07.doc: Remove.
* sp07/sp07.scn: Remove.
* sp07/system.h: Remove.
* sp07/task1.c: Remove.
* sp07/task2.c: Remove.
* sp07/task3.c: Remove.
* sp07/task4.c: Remove.
* sp07/taskexit.c: Remove.
* sp07/tcreate.c: Remove.
* sp07/tdelete.c: Remove.
* sp07/trestart.c: Remove.
* sp07/tstart.c: Remove.
* sp08/.cvsignore: Remove.
* sp08/Makefile.am: Remove.
* sp08/init.c: Remove.
* sp08/sp08.doc: Remove.
* sp08/sp08.scn: Remove.
* sp08/system.h: Remove.
* sp08/task1.c: Remove.
* sp09/.cvsignore: Remove.
* sp09/Makefile.am: Remove.
* sp09/delay.c: Remove.
* sp09/init.c: Remove.
* sp09/isr.c: Remove.
* sp09/screen01.c: Remove.
* sp09/screen02.c: Remove.
* sp09/screen03.c: Remove.
* sp09/screen04.c: Remove.
* sp09/screen05.c: Remove.
* sp09/screen06.c: Remove.
* sp09/screen07.c: Remove.
* sp09/screen08.c: Remove.
* sp09/screen09.c: Remove.
* sp09/screen10.c: Remove.
* sp09/screen11.c: Remove.
* sp09/screen12.c: Remove.
* sp09/screen13.c: Remove.
* sp09/screen14.c: Remove.
* sp09/sp09.doc: Remove.
* sp09/sp09.scn: Remove.
* sp09/system.h: Remove.
* sp09/task1.c: Remove.
* sp09/task2.c: Remove.
* sp09/task3.c: Remove.
* sp09/task4.c: Remove.
* sp11/.cvsignore: Remove.
* sp11/Makefile.am: Remove.
* sp11/init.c: Remove.
* sp11/sp11.doc: Remove.
* sp11/sp11.scn: Remove.
* sp11/system.h: Remove.
* sp11/task1.c: Remove.
* sp11/task2.c: Remove.
* sp11/timer.c: Remove.
* sp12/.cvsignore: Remove.
* sp12/Makefile.am: Remove.
* sp12/init.c: Remove.
* sp12/pridrv.c: Remove.
* sp12/pritask.c: Remove.
* sp12/sp12.doc: Remove.
* sp12/sp12.scn: Remove.
* sp12/system.h: Remove.
* sp12/task1.c: Remove.
* sp12/task2.c: Remove.
* sp12/task3.c: Remove.
* sp12/task4.c: Remove.
* sp12/task5.c: Remove.
* sp13/.cvsignore: Remove.
* sp13/Makefile.am: Remove.
* sp13/fillbuff.c: Remove.
* sp13/init.c: Remove.
* sp13/putbuff.c: Remove.
* sp13/sp13.doc: Remove.
* sp13/sp13.scn: Remove.
* sp13/system.h: Remove.
* sp13/task1.c: Remove.
* sp13/task2.c: Remove.
* sp13/task3.c: Remove.
* sp14/.cvsignore: Remove.
* sp14/Makefile.am: Remove.
* sp14/asr.c: Remove.
* sp14/init.c: Remove.
* sp14/sp14.doc: Remove.
* sp14/sp14.scn: Remove.
* sp14/system.h: Remove.
* sp14/task1.c: Remove.
* sp14/task2.c: Remove.
* sp15/.cvsignore: Remove.
* sp15/Makefile.am: Remove.
* sp15/init.c: Remove.
* sp15/sp15.doc: Remove.
* sp15/sp15.scn: Remove.
* sp15/system.h: Remove.
* sp15/task1.c: Remove.
* sp16/.cvsignore: Remove.
* sp16/Makefile.am: Remove.
* sp16/init.c: Remove.
* sp16/sp16.doc: Remove.
* sp16/sp16.scn: Remove.
* sp16/system.h: Remove.
* sp16/task1.c: Remove.
* sp16/task2.c: Remove.
* sp16/task3.c: Remove.
* sp16/task4.c: Remove.
* sp16/task5.c: Remove.
* sp17/.cvsignore: Remove.
* sp17/Makefile.am: Remove.
* sp17/asr.c: Remove.
* sp17/init.c: Remove.
* sp17/sp17.doc: Remove.
* sp17/sp17.scn: Remove.
* sp17/system.h: Remove.
* sp17/task1.c: Remove.
* sp17/task2.c: Remove.
* sp19/.cvsignore: Remove.
* sp19/Makefile.am: Remove.
* sp19/first.c: Remove.
* sp19/fptask.c: Remove.
* sp19/fptest.h: Remove.
* sp19/init.c: Remove.
* sp19/inttest.h: Remove.
* sp19/sp19.doc: Remove.
* sp19/sp19.scn: Remove.
* sp19/system.h: Remove.
* sp19/task1.c: Remove.
* sp20/.cvsignore: Remove.
* sp20/Makefile.am: Remove.
* sp20/getall.c: Remove.
* sp20/init.c: Remove.
* sp20/sp20.doc: Remove.
* sp20/sp20.scn: Remove.
* sp20/system.h: Remove.
* sp20/task1.c: Remove.
* sp21/.cvsignore: Remove.
* sp21/Makefile.am: Remove.
* sp21/init.c: Remove.
* sp21/sp21.doc: Remove.
* sp21/sp21.scn: Remove.
* sp21/system.h: Remove.
* sp21/task1.c: Remove.
* sp22/.cvsignore: Remove.
* sp22/Makefile.am: Remove.
* sp22/delay.c: Remove.
* sp22/init.c: Remove.
* sp22/prtime.c: Remove.
* sp22/sp22.doc: Remove.
* sp22/sp22.scn: Remove.
* sp22/system.h: Remove.
* sp22/task1.c: Remove.
* sp23/.cvsignore: Remove.
* sp23/Makefile.am: Remove.
* sp23/init.c: Remove.
* sp23/sp23.doc: Remove.
* sp23/sp23.scn: Remove.
* sp23/system.h: Remove.
* sp23/task1.c: Remove.
* sp24/.cvsignore: Remove.
* sp24/Makefile.am: Remove.
* sp24/init.c: Remove.
* sp24/resume.c: Remove.
* sp24/sp24.doc: Remove.
* sp24/sp24.scn: Remove.
* sp24/system.h: Remove.
* sp24/task1.c: Remove.
* sp25/.cvsignore: Remove.
* sp25/Makefile.am: Remove.
* sp25/init.c: Remove.
* sp25/sp25.doc: Remove.
* sp25/sp25.scn: Remove.
* sp25/system.h: Remove.
* sp25/task1.c: Remove.
* sp26/.cvsignore: Remove.
* sp26/Makefile.am: Remove.
* sp26/init.c: Remove.
* sp26/sp26.doc: Remove.
* sp26/sp26.scn: Remove.
* sp26/system.h: Remove.
* sp26/task1.c: Remove.
* sp27/.cvsignore: Remove.
* sp27/Makefile.am: Remove.
* sp27/init.c: Remove.
* sp27/sp27.doc: Remove.
* sp27/sp27.scn: Remove.
* sp28/.cvsignore: Remove.
* sp28/Makefile.am: Remove.
* sp28/init.c: Remove.
* sp28/sp28.doc: Remove.
* sp28/sp28.scn: Remove.
* sp29/.cvsignore: Remove.
* sp29/Makefile.am: Remove.
* sp29/init.c: Remove.
* sp29/sp29.doc: Remove.
* sp29/sp29.scn: Remove.
* sp30/.cvsignore: Remove.
* sp30/Makefile.am: Remove.
* sp30/init.c: Remove.
* sp30/resume.c: Remove.
* sp30/sp30.doc: Remove.
* sp30/sp30.scn: Remove.
* sp30/system.h: Remove.
* sp30/task1.c: Remove.
* sp31/.cvsignore: Remove.
* sp31/Makefile.am: Remove.
* sp31/delay.c: Remove.
* sp31/init.c: Remove.
* sp31/prtime.c: Remove.
* sp31/sp31.doc: Remove.
* sp31/sp31.scn: Remove.
* sp31/system.h: Remove.
* sp31/task1.c: Remove.
* sp32/.cvsignore: Remove.
* sp32/Makefile.am: Remove.
* sp32/init.c: Remove.
* sp32/sp32.scn: Remove.
* spfatal/.cvsignore: Remove.
* spfatal/Makefile.am: Remove.
* spfatal/README: Remove.
* spfatal/fatal.c: Remove.
* spfatal/init.c: Remove.
* spfatal/puterr.c: Remove.
* spfatal/spfatal.doc: Remove.
* spfatal/spfatal.scn: Remove.
* spfatal/system.h: Remove.
* spfatal/task1.c: Remove.
* spsize/.cvsignore: Remove.
* spsize/Makefile.am: Remove.
* spsize/getint.c: Remove.
* spsize/init.c: Remove.
* spsize/size.c: Remove.
* spsize/size.scn: Remove.
* spsize/system.h: Remove.
2003-10-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Remove RTEMS_CANONICAL_HOST.
2003-10-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac:Remove RTEMS_CHECK_CPU.
2003-09-04 Joel Sherrill <joel@OARcorp.com>
* sp01/init.c, sp01/sp01.doc, sp01/system.h, sp01/task1.c, sp02/init.c,
sp02/preempt.c, sp02/sp02.doc, sp02/system.h, sp02/task1.c,
sp02/task2.c, sp02/task3.c, sp03/init.c, sp03/sp03.doc,
sp03/system.h, sp03/task1.c, sp03/task2.c, sp04/init.c,
sp04/sp04.doc, sp04/system.h, sp04/task1.c, sp04/task2.c,
sp04/task3.c, sp04/tswitch.c, sp05/init.c, sp05/sp05.doc,
sp05/system.h, sp05/task1.c, sp05/task2.c, sp05/task3.c, sp06/init.c,
sp06/sp06.doc, sp06/system.h, sp06/task1.c, sp06/task2.c,
sp06/task3.c, sp07/init.c, sp07/sp07.doc, sp07/system.h,
sp07/task1.c, sp07/task2.c, sp07/task3.c, sp07/task4.c,
sp07/taskexit.c, sp07/tcreate.c, sp07/tdelete.c, sp07/trestart.c,
sp07/tstart.c, sp08/init.c, sp08/sp08.doc, sp08/system.h,
sp08/task1.c, sp09/delay.c, sp09/init.c, sp09/isr.c, sp09/screen01.c,
sp09/screen02.c, sp09/screen03.c, sp09/screen04.c, sp09/screen05.c,
sp09/screen06.c, sp09/screen07.c, sp09/screen08.c, sp09/screen09.c,
sp09/screen10.c, sp09/screen11.c, sp09/screen12.c, sp09/screen13.c,
sp09/screen14.c, sp09/sp09.doc, sp09/system.h, sp09/task1.c,
sp09/task2.c, sp09/task3.c, sp09/task4.c, sp11/init.c, sp11/sp11.doc,
sp11/system.h, sp11/task1.c, sp11/task2.c, sp11/timer.c, sp12/init.c,
sp12/pridrv.c, sp12/pritask.c, sp12/sp12.doc, sp12/system.h,
sp12/task1.c, sp12/task2.c, sp12/task3.c, sp12/task4.c, sp12/task5.c,
sp13/fillbuff.c, sp13/init.c, sp13/putbuff.c, sp13/sp13.doc,
sp13/system.h, sp13/task1.c, sp13/task2.c, sp13/task3.c, sp14/asr.c,
sp14/init.c, sp14/sp14.doc, sp14/system.h, sp14/task1.c,
sp14/task2.c, sp15/init.c, sp15/sp15.doc, sp15/system.h,
sp15/task1.c, sp16/init.c, sp16/sp16.doc, sp16/system.h,
sp16/task1.c, sp16/task2.c, sp16/task3.c, sp16/task4.c, sp16/task5.c,
sp17/asr.c, sp17/init.c, sp17/sp17.doc, sp17/system.h, sp17/task1.c,
sp17/task2.c, sp19/first.c, sp19/fptask.c, sp19/fptest.h,
sp19/init.c, sp19/inttest.h, sp19/sp19.doc, sp19/system.h,
sp19/task1.c, sp20/getall.c, sp20/init.c, sp20/sp20.doc,
sp20/system.h, sp20/task1.c, sp21/init.c, sp21/sp21.doc,
sp21/system.h, sp21/task1.c, sp22/delay.c, sp22/init.c,
sp22/prtime.c, sp22/sp22.doc, sp22/system.h, sp22/task1.c,
sp23/init.c, sp23/sp23.doc, sp23/system.h, sp23/task1.c, sp24/init.c,
sp24/resume.c, sp24/sp24.doc, sp24/system.h, sp24/task1.c,
sp25/init.c, sp25/sp25.doc, sp25/system.h, sp25/task1.c, sp26/init.c,
sp26/sp26.doc, sp26/system.h, sp26/task1.c, sp30/init.c,
sp30/resume.c, sp30/sp30.doc, sp30/system.h, sp30/task1.c,
sp31/delay.c, sp31/init.c, sp31/prtime.c, sp31/sp31.doc,
sp31/system.h, sp31/task1.c, sp32/init.c, spfatal/fatal.c,
spfatal/init.c, spfatal/puterr.c, spfatal/spfatal.doc,
spfatal/system.h, spfatal/task1.c, spsize/getint.c, spsize/init.c,
spsize/size.c, spsize/system.h: URL for license changed.
2003-08-18 Eiichiro Kawaguchi <e-kawaguchi@ct.jp.nec.com>
PR 458/tests
* sp30/task1.c: Correct indexing problem.
2003-08-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Reflect having moved aclocal/.
2003-08-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Reflect having moved automake/.
* sp01/Makefile.am: Reflect having moved automake/.
* sp02/Makefile.am: Reflect having moved automake/.
* sp03/Makefile.am: Reflect having moved automake/.
* sp04/Makefile.am: Reflect having moved automake/.
* sp05/Makefile.am: Reflect having moved automake/.
* sp06/Makefile.am: Reflect having moved automake/.
* sp07/Makefile.am: Reflect having moved automake/.
* sp08/Makefile.am: Reflect having moved automake/.
* sp09/Makefile.am: Reflect having moved automake/.
* sp11/Makefile.am: Reflect having moved automake/.
* sp12/Makefile.am: Reflect having moved automake/.
* sp13/Makefile.am: Reflect having moved automake/.
* sp14/Makefile.am: Reflect having moved automake/.
* sp15/Makefile.am: Reflect having moved automake/.
* sp16/Makefile.am: Reflect having moved automake/.
* sp17/Makefile.am: Reflect having moved automake/.
* sp19/Makefile.am: Reflect having moved automake/.
* sp20/Makefile.am: Reflect having moved automake/.
* sp21/Makefile.am: Reflect having moved automake/.
* sp22/Makefile.am: Reflect having moved automake/.
* sp23/Makefile.am: Reflect having moved automake/.
* sp24/Makefile.am: Reflect having moved automake/.
* sp25/Makefile.am: Reflect having moved automake/.
* sp26/Makefile.am: Reflect having moved automake/.
* sp27/Makefile.am: Reflect having moved automake/.
* sp28/Makefile.am: Reflect having moved automake/.
* sp29/Makefile.am: Reflect having moved automake/.
* sp30/Makefile.am: Reflect having moved automake/.
* sp31/Makefile.am: Reflect having moved automake/.
* sp32/Makefile.am: Reflect having moved automake/.
* spfatal/Makefile.am: Reflect having moved automake/.
* spsize/Makefile.am: Reflect having moved automake/.
2003-08-14 Joel Sherrill <joel@OARcorp.com>
* sp02/task1.c: Added ID to name lookup service and changed name of
id/name translation status code. This propagated to multiple
functions. The user API service added was rtems_object_id_to_name()
2003-08-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Use rtems-bugs@rtems.com as bug report email address.
2003-05-29 Joel Sherrill <joel@OARcorp.com>
* sp27/init.c, sp29/init.c, spsize/size.c: Removed warnings.
2003-05-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Remove CC_CFLAGS_DEBUG_V.
CC_CFLAGS_DEFAULT (obsolete).
2003-05-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Remove CC_CFLAGS_PROFILE_V.
Remove CC_LDFLAGS_PROFILE_V.
2003-03-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Remove AC_CONFIG_AUX_DIR.
2003-02-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: AM_INIT_AUTOMAKE([1.7.2]).
2003-02-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: AC_PREREQ(2.57).
2002-11-14 Joel Sherrill <joel@OARcorp.com>
* sp02/sp02.scn, sp15/sp15.scn, sp16/sp16.scn, sp20/sp20.scn,
sp22/sp22.scn, sp23/sp23.scn, sp25/sp25.scn, sp31/sp31.scn: Per PR239
update the IDs in the screens.
2002-10-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* .cvsignore: Reformat.
Add autom4te*cache.
Remove autom4te.cache.
2002-09-14 Joel Sherrill <joel@OARcorp.com>
* sp32/.cvsignore: New file.
2002-09-14 Aaron J. Grier <aaron@frye.com>
* PR271 was not applicable against the current source but included
a nice test that Joel decided to add to the tree as sp32.
* sp32/Makefile.am, sp32/init.c, sp32/sp32.scn: New file.
* Makefile.am, configure.ac: Modified to reflect addition.
2002-08-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* sp01/Makefile.am: Use $(OBJEXT) instead of .o.
* sp02/Makefile.am: Use $(OBJEXT) instead of .o.
* sp03/Makefile.am: Use $(OBJEXT) instead of .o.
* sp04/Makefile.am: Use $(OBJEXT) instead of .o.
* sp05/Makefile.am: Use $(OBJEXT) instead of .o.
* sp06/Makefile.am: Use $(OBJEXT) instead of .o.
* sp07/Makefile.am: Use $(OBJEXT) instead of .o.
* sp08/Makefile.am: Use $(OBJEXT) instead of .o.
* sp09/Makefile.am: Use $(OBJEXT) instead of .o.
* sp11/Makefile.am: Use $(OBJEXT) instead of .o.
* sp12/Makefile.am: Use $(OBJEXT) instead of .o.
* sp13/Makefile.am: Use $(OBJEXT) instead of .o.
* sp14/Makefile.am: Use $(OBJEXT) instead of .o.
* sp15/Makefile.am: Use $(OBJEXT) instead of .o.
* sp16/Makefile.am: Use $(OBJEXT) instead of .o.
* sp17/Makefile.am: Use $(OBJEXT) instead of .o.
* sp19/Makefile.am: Use $(OBJEXT) instead of .o.
* sp20/Makefile.am: Use $(OBJEXT) instead of .o.
* sp21/Makefile.am: Use $(OBJEXT) instead of .o.
* sp22/Makefile.am: Use $(OBJEXT) instead of .o.
* sp23/Makefile.am: Use $(OBJEXT) instead of .o.
* sp24/Makefile.am: Use $(OBJEXT) instead of .o.
* sp25/Makefile.am: Use $(OBJEXT) instead of .o.
* sp26/Makefile.am: Use $(OBJEXT) instead of .o.
* sp27/Makefile.am: Use $(OBJEXT) instead of .o.
* sp28/Makefile.am: Use $(OBJEXT) instead of .o.
* sp29/Makefile.am: Use $(OBJEXT) instead of .o.
* sp30/Makefile.am: Use $(OBJEXT) instead of .o.
* sp31/Makefile.am: Use $(OBJEXT) instead of .o.
* spfatal/Makefile.am: Use $(OBJEXT) instead of .o.
* spsize/Makefile.am: Use $(OBJEXT) instead of .o.
2002-08-01 Joel Sherrill <joel@OARcorp.com>
* Per PR47 add support for buffered test output. This involved
adding defines to redirect output to a buffer and dump it when
full, at "test pause", and at exit. To avoid problems when redefining
exit(), all tests were modified to call rtems_test_exit().
Some tests, notable psxtests, had to be modified to include
the standard test macro .h file (pmacros.h or tmacros.h) to
enable this support.
* sp01/task1.c, sp02/task1.c, sp03/task2.c, sp04/task1.c, sp05/task1.c,
sp06/task1.c, sp07/taskexit.c, sp08/task1.c, sp09/task1.c,
sp11/task1.c, sp12/pritask.c, sp12/task5.c, sp13/task1.c,
sp14/task2.c, sp15/task1.c, sp16/task1.c, sp17/task1.c,
sp19/fptask.c, sp20/task1.c, sp21/task1.c, sp22/task1.c,
sp23/task1.c, sp24/task1.c, sp25/task1.c, sp26/init.c, sp26/task1.c,
sp30/task1.c, sp31/task1.c, spsize/init.c, spsize/size.c: Modified.
2002-07-30 Joel Sherrill <joel@OARcorp.com>
* spsize/size.c: Don't reference the RTEMS allocated interrupt
stack if the port doesn't configure using it.
2002-07-04 Joel Sherrill <joel@OARcorp.com>
* Jump table for single entry point removed.
* spsize/size.c: Modified to reflect above.
2002-07-01 Joel Sherrill <joel@OARcorp.com>
* sp29/init.c: Corrected definitions for task stack usage.
2002-07-01 Joel Sherrill <joel@OARcorp.com>
* spsize/size.c: _Thread_queue_Extract_table removed.
2001-05-17 Joel Sherrill <joel@OARcorp.com>
* sp21/task1.c (INVALID_DRIVER_MAJOR): Change definition to reflect
number of staticly configured device drivers.
2001-05-14 Joel Sherrill <joel@OARcorp.com>
* sp21/task1.c: Correct INVALID_DRIVER_MAJOR so it is precisely 1 more
than the configured number of drivers.
2002-04-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Remove ENABLE_GCC28.
2001-04-04 Joel Sherrill <joel@OARcorp.com>
* spsize/size.c: Reflect SPARC modifcation to get rid of
NO_TABLE_MOVE and references to _CPU_Trap_Table_area.
2001-03-29 Joel Sherrill <joel@OARcorp.com>
* Per PR147 addressed problems when reseting and inserting a timer
into a timer chain that did not honor time passage since the last
time the timer server was scheduled and the new insertion.
* sp31/sp31.scn, sp31/task1.c: Added test code to detect this case.
2001-03-28 Joel Sherrill <joel@OARcorp.com>
* Side-effect of PR132.
* sp21/system.h: Now must explicitly request NULL driver.
2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac:
AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS).
AM_INIT_AUTOMAKE([no-define foreign 1.6]).
* sp01/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp02/Makefile.am: Remove AUTOMAKE_OPTIONS.
* Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp03/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp04/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp05/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp06/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp07/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp08/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp09/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp11/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp12/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp13/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp14/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp15/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp16/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp17/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp19/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp20/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp21/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp22/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp23/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp24/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp25/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp26/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp27/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp28/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp29/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp30/Makefile.am: Remove AUTOMAKE_OPTIONS.
* sp31/Makefile.am: Remove AUTOMAKE_OPTIONS.
* spfatal/Makefile.am: Remove AUTOMAKE_OPTIONS.
* spsize/Makefile.am: Remove AUTOMAKE_OPTIONS.
2002-03-20 Chris Johns <ccj@acm.org>
* PR145.
* sp04/task1.c, sp04/tswitch.c: Test fails if other tasks present
in system (e.g. driver tasks). Also exit on minimum number of
switches not precise number.
2001-01-29 Joel Sherrill <joel@OARcorp.com>
* Fixed bug where resetting a timer that was not at the head
of one of the task timer chains resulted in the Timer Server
task waking up too far in the future.
* Added rtems_timer_get_information() directive to support testing.
* sp31/init.c, sp31/system.h, sp31/task1.c: Modified to test for
above condition.
2001-01-22 Joel Sherrill <joel@OARcorp.com>
* sp09/screen14.c, sp09/sp09.scn, sp30/init.c, sp31/init.c: Modified
because priority added as argument to rtems_timer_initiate_server().
2001-01-16 Joel Sherrill <joel@OARcorp.com>
* Added tests for task-based timers. This included the new tests
sp30 and sp31.
* Makefile.am, configure.ac: Modified to reflect new tests and files.
* sp09/screen14.c, sp09/sp09.scn: Modified to add error checks
for task-based timer services.
* sp30/.cvsignore, sp30/Makefile.am, sp30/init.c, sp30/resume.c,
sp30/sp30.doc, sp30/sp30.scn, sp30/system.h, sp30/task1.c,
sp31/.cvsignore, sp31/Makefile.am, sp31/delay.c, sp31/init.c,
sp31/prtime.c, sp31/sp31.doc, sp31/sp31.scn, sp31/system.h,
sp31/task1.c: New files.
2001-11-01 Joel Sherrill <joel@OARcorp.com>
* sp26/system.h: Properly account for stack memory used by
this test. Reported by Jerry Needell <jerry.needell@unh.edu>
and processed as PR78.
2001-10-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* .cvsignore: Add autom4te.cache for autoconf > 2.52.
* configure.in: Remove.
* configure.ac: New file, generated from configure.in by autoupdate.
2001-09-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* sptests.am: Use TMPINSTALL_FILES = to make automake-1.5 happy.
2001-09-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* sp20/Makefile.am: include leaf.am instead of leaf.cfg.
* sp02/Makefile.am: include leaf.am instead of leaf.cfg.
* sp19/Makefile.am: include leaf.am instead of leaf.cfg.
* sp11/Makefile.am: include leaf.am instead of leaf.cfg.
* sp25/Makefile.am: include leaf.am instead of leaf.cfg.
* sp04/Makefile.am: include leaf.am instead of leaf.cfg.
* spsize/Makefile.am: include leaf.am instead of leaf.cfg.
* sp01/Makefile.am: include leaf.am instead of leaf.cfg.
* sp16/Makefile.am: include leaf.am instead of leaf.cfg.
* sp05/Makefile.am: include leaf.am instead of leaf.cfg.
* sp09/Makefile.am: include leaf.am instead of leaf.cfg.
* spfatal/Makefile.am: include leaf.am instead of leaf.cfg.
* sp06/Makefile.am: include leaf.am instead of leaf.cfg.
* sp23/Makefile.am: include leaf.am instead of leaf.cfg.
* sp28/Makefile.am: include leaf.am instead of leaf.cfg.
* sp03/Makefile.am: include leaf.am instead of leaf.cfg.
* sp29/Makefile.am: include leaf.am instead of leaf.cfg.
* sp13/Makefile.am: include leaf.am instead of leaf.cfg.
* sp27/Makefile.am: include leaf.am instead of leaf.cfg.
* sp14/Makefile.am: include leaf.am instead of leaf.cfg.
* sp07/Makefile.am: include leaf.am instead of leaf.cfg.
* sp15/Makefile.am: include leaf.am instead of leaf.cfg.
* sp17/Makefile.am: include leaf.am instead of leaf.cfg.
* sp22/Makefile.am: include leaf.am instead of leaf.cfg.
* sp12/Makefile.am: include leaf.am instead of leaf.cfg.
* sp26/Makefile.am: include leaf.am instead of leaf.cfg.
* sp21/Makefile.am: include leaf.am instead of leaf.cfg.
* sp24/Makefile.am: include leaf.am instead of leaf.cfg.
* sp08/Makefile.am: include leaf.am instead of leaf.cfg.
2001-08-16 Joel Sherrill <joel@OARcorp.com>
* sp20/system.h: Account for extra task stacks properly.
2001-08-16 Joel Sherrill <joel@OARcorp.com>
* sp13/sp13.scn: Id in screen had wrong class field value.
* sp13/system.h: Account for message buffer memory.
* sp13/task2.c: Remove unnecessary check for failure.
2001-05-10 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.in: Use RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm]).
2001-04-20 Joel Sherrill <joel@OARcorp.com>
* sp298/sp28.scn: Minor adjustment so test output matches the screen
file.
2001-02-07 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* spsize/size.c: Use #if !defined(RTEMS_UNIX).
2001-01-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* sp21/Makefile.am: Remove libtest.
2000-11-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
2000-11-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal.
2000-10-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros.
Switch to GNU canonicalization.
* sptests.am: Remove DEFS.
2000-09-29 Joel Sherrill <joel@OARcorp.com>
* sp20/sp20.scn: Corrected to reflect new addition.
* sp20/system.h: Removed comment reflecting history.
2000-09-29 Stephan Merker <merker@decrc.abb.de>
* sp20/getall.c, sp20/init.c, sp20/system.h, sp20/task1.c:
Added new task to test sequence of altering a period's length
while it is still active.
2000-09-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* sp01/Makefile.am, sp02/Makefile.am, sp03/Makefile.am,
sp04/Makefile.am, sp05/Makefile.am, sp06/Makefile.am,
sp07/Makefile.am, sp08/Makefile.am, sp09/Makefile.am,
sp11/Makefile.am, sp12/Makefile.am, sp13/Makefile.am,
sp14/Makefile.am, sp15/Makefile.am, sp16/Makefile.am,
sp17/Makefile.am, sp19/Makefile.am, sp20/Makefile.am,
sp21/Makefile.am, sp22/Makefile.am, sp23/Makefile.am,
sp24/Makefile.am, sp25/Makefile.am, sp26/Makefile.am,
sp27/Makefile.am, sp28/Makefile.am, sp29/Makefile.am,
spfatal/Makefile.am, spsize/Makefile.am: Include compile.am
2000-08-10 Joel Sherrill <joel@OARcorp.com>
* ChangeLog: New file.

View File

@@ -1,15 +0,0 @@
##
## $Id$
##
ACLOCAL_AMFLAGS = -I ../aclocal
## sp10 and spfatal are not included for now
SUBDIRS = sp01 sp02 sp03 sp04 sp05 sp06 sp07 sp08 sp09 sp11 sp12 sp13 sp14 \
sp15 sp16 sp17 sp19 sp20 sp21 sp22 sp23 sp24 sp25 sp26 sp27 sp28 sp29 \
sp30 sp31 sp32 spsize
EXTRA_DIST = sptests.am spfatal
include $(top_srcdir)/../automake/subdirs.am
include $(top_srcdir)/../automake/local.am

View File

@@ -1,9 +0,0 @@
#
# $Id$
#
This directory contains the RTEMS Single Processor Test Suite.
The tests in this directory provide near complete (98%+) test
coverage of the non-multiprocessor code in RTEMS.

View File

@@ -1,67 +0,0 @@
## Process this file with autoconf to produce a configure script.
##
## $Id$
AC_PREREQ(2.57)
AC_INIT([rtems-c-src-tests-sptests],[_RTEMS_VERSION],[rtems-bugs@rtems.com])
AC_CONFIG_SRCDIR([sp01])
RTEMS_TOP(../../../..)
RTEMS_CANONICAL_TARGET_CPU
AM_INIT_AUTOMAKE([no-define foreign 1.7.2])
AM_MAINTAINER_MODE
RTEMS_ENABLE_BARE
RTEMS_ENV_RTEMSBSP
RTEMS_CHECK_RTEMS_TEST_NO_PAUSE
RTEMS_PROJECT_ROOT
RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm])
RTEMS_CANONICALIZE_TOOLS
RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP)
AC_SUBST(BARE_CPU_CFLAGS)
AC_SUBST(BARE_CPU_MODEL)
# Explicitly list all Makefiles here
AC_CONFIG_FILES([Makefile
sp01/Makefile
sp02/Makefile
sp03/Makefile
sp04/Makefile
sp05/Makefile
sp06/Makefile
sp07/Makefile
sp08/Makefile
sp09/Makefile
sp11/Makefile
sp12/Makefile
sp13/Makefile
sp14/Makefile
sp15/Makefile
sp16/Makefile
sp17/Makefile
sp19/Makefile
sp20/Makefile
sp21/Makefile
sp22/Makefile
sp23/Makefile
sp24/Makefile
sp25/Makefile
sp26/Makefile
sp27/Makefile
sp28/Makefile
sp29/Makefile
sp30/Makefile
sp31/Makefile
sp32/Makefile
spsize/Makefile
])
AC_OUTPUT
# spfatal/Makefile

View File

@@ -1,2 +0,0 @@
Makefile
Makefile.in

View File

@@ -1,38 +0,0 @@
##
## $Id$
##
TEST = sp01
MANAGERS = io
C_FILES = init.c task1.c
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
H_FILES = system.h
noinst_HEADERS = $(H_FILES)
DOCTYPES = scn doc
DOCS = $(DOCTYPES:%=$(TEST).%)
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
PRINT_SRCS = $(DOCS)
PGM = ${ARCH}/$(TEST).exe
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../automake/compile.am
include $(top_srcdir)/../automake/leaf.am
include $(top_srcdir)/sptests.am
${PGM}: $(OBJS) $(LINK_FILES)
$(make-exe)
all-local: $(ARCH) $(TMPINSTALL_FILES)
EXTRA_DIST = $(C_FILES) $(DOCS)
include $(top_srcdir)/../automake/local.am

View File

@@ -1,85 +0,0 @@
/* Init
*
* This routine is the initialization task for this test program.
* It is a user initialization task and has the responsibility for creating
* and starting the tasks that make up the test. If the time of day
* clock is required for the test, it should also be set to a known
* value by this function.
*
* Input parameters:
* argument - task argument
*
* 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$
*/
#define TEST_INIT
#include "system.h"
rtems_task Init(
rtems_task_argument argument
)
{
rtems_time_of_day time;
rtems_status_code status;
puts( "\n\n*** TEST 1 ***" );
build_time( &time, 12, 31, 1988, 9, 0, 0, 0 );
status = rtems_clock_set( &time );
directive_failed( status, "rtems_clock_set" );
Task_name[ 1 ] = rtems_build_name( 'T', 'A', '1', ' ' );
Task_name[ 2 ] = rtems_build_name( 'T', 'A', '2', ' ' );
Task_name[ 3 ] = rtems_build_name( 'T', 'A', '3', ' ' );
status = rtems_task_create(
Task_name[ 1 ],
1,
RTEMS_MINIMUM_STACK_SIZE * 2,
RTEMS_INTERRUPT_LEVEL(31),
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 1 ]
);
directive_failed( status, "rtems_task_create of TA1" );
status = rtems_task_create(
Task_name[ 2 ],
1,
RTEMS_MINIMUM_STACK_SIZE * 2,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 2 ]
);
directive_failed( status, "rtems_task_create of TA2" );
status = rtems_task_create(
Task_name[ 3 ],
1,
RTEMS_MINIMUM_STACK_SIZE * 3,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 3 ]
);
directive_failed( status, "rtems_task_create of TA3" );
status = rtems_task_start( Task_id[ 1 ], Task_1_through_3, 0 );
directive_failed( status, "rtems_task_start of TA1" );
status = rtems_task_start( Task_id[ 2 ], Task_1_through_3, 0 );
directive_failed( status, "rtems_task_start of TA2" );
status = rtems_task_start( Task_id[ 3 ], Task_1_through_3, 0 );
directive_failed( status, "rtems_task_start of TA3" );
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
}

View File

@@ -1,42 +0,0 @@
#
# $Id$
#
# 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.
#
This file describes the directives and concepts tested by this test set.
test set name: test1
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, t_ident,
tm_set, tm_get, tm_wkafter
concepts:
a. Verifies system can create and start both the executive's system
initialization and idle task.
b. Verifies executive can swap between three application tasks at the
same priority and the executive's internal idle task.
c. Verifies can print strings to the CRT on port 2 of the mvme136 board
using Print and Println in the board support package.
d. Verifies interrupt handler can handle a task switch from an interrupt
as specified with the i_return directive.
e. Verifies executive initialization performed correctly.
f. Verifies the executive trap handler except for the halt function.
g. Verifies that a task can get the task identification number of itself.
output:
"TA1" is printed once every 5 seconds. "TA2" is printed once
every 10 seconds. "TA3" is printed once every 15 seconds.

View File

@@ -1,18 +0,0 @@
*** TEST 1 ***
TA1 - rtems_clock_get - 09:00:00 12/31/1988
TA2 - rtems_clock_get - 09:00:00 12/31/1988
TA3 - rtems_clock_get - 09:00:00 12/31/1988
TA1 - rtems_clock_get - 09:00:05 12/31/1988
TA2 - rtems_clock_get - 09:00:10 12/31/1988
TA1 - rtems_clock_get - 09:00:10 12/31/1988
TA3 - rtems_clock_get - 09:00:15 12/31/1988
TA1 - rtems_clock_get - 09:00:15 12/31/1988
TA2 - rtems_clock_get - 09:00:20 12/31/1988
TA1 - rtems_clock_get - 09:00:20 12/31/1988
TA1 - rtems_clock_get - 09:00:25 12/31/1988
TA3 - rtems_clock_get - 09:00:30 12/31/1988
TA2 - rtems_clock_get - 09:00:30 12/31/1988
TA1 - rtems_clock_get - 09:00:30 12/31/1988
*** END OF TEST 1 ***
NOTE: The order of the prints at each time interval is irrelevant.

View File

@@ -1,45 +0,0 @@
/* system.h
*
* This include file contains information that is included in every
* function in the test set.
*
* 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 <tmacros.h>
/* functions */
rtems_task Init(
rtems_task_argument argument
);
rtems_task Task_1_through_3(
rtems_task_argument argument
);
/* configuration information */
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
#define CONFIGURE_EXTRA_TASK_STACKS (4 * RTEMS_MINIMUM_STACK_SIZE)
#define CONFIGURE_MAXIMUM_TASKS 4
#include <confdefs.h>
/* global variables */
TEST_EXTERN rtems_id Task_id[ 4 ]; /* array of task ids */
TEST_EXTERN rtems_name Task_name[ 4 ]; /* array of task names */
/* end of include file */

View File

@@ -1,49 +0,0 @@
/* Task_1_through_3
*
* This routine serves as a test task. It verifies the basic task
* switching capabilities of the executive.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_1_through_3(
rtems_task_argument argument
)
{
rtems_id tid;
rtems_time_of_day time;
rtems_status_code status;
status = rtems_task_ident( RTEMS_SELF, RTEMS_SEARCH_ALL_NODES, &tid );
directive_failed( status, "rtems_task_ident" );
while( FOREVER ) {
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed( status, "rtems_clock_get" );
if ( time.second >= 35 ) {
puts( "*** END OF TEST 1 ***" );
rtems_test_exit( 0 );
}
put_name( Task_name[ task_number( tid ) ], FALSE );
print_time( " - rtems_clock_get - ", &time, "\n" );
status = rtems_task_wake_after( task_number( tid ) * 5 * TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after" );
}
}

View File

@@ -1,2 +0,0 @@
Makefile
Makefile.in

View File

@@ -1,38 +0,0 @@
##
## $Id$
##
TEST = sp02
MANAGERS = io
C_FILES = init.c task1.c task2.c task3.c preempt.c
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
H_FILES = system.h
noinst_HEADERS = $(H_FILES)
DOCTYPES = scn doc
DOCS = $(DOCTYPES:%=$(TEST).%)
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
PRINT_SRCS = $(DOCS)
PGM = ${ARCH}/$(TEST).exe
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../automake/compile.am
include $(top_srcdir)/../automake/leaf.am
include $(top_srcdir)/sptests.am
${PGM}: $(OBJS) $(LINK_FILES)
$(make-exe)
all-local: $(ARCH) $(TMPINSTALL_FILES)
EXTRA_DIST = $(C_FILES) $(DOCS)
include $(top_srcdir)/../automake/local.am

View File

@@ -1,151 +0,0 @@
/* Init
*
* This routine is the initialization task for this test program.
* It is a user initialization task and has the responsibility for creating
* and starting the tasks that make up the test. If the time of day
* clock is required for the test, it should also be set to a known
* value by this function.
*
* Input parameters:
* argument - task argument
*
* 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$
*/
#define TEST_INIT
#include "system.h"
rtems_task Init(
rtems_task_argument argument
)
{
rtems_status_code status;
puts( "\n\n*** TEST 2 ***" );
Preempt_task_name = rtems_build_name( 'P', 'R', 'M', 'T' );
status = rtems_task_create(
Preempt_task_name,
1,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Preempt_task_id
);
directive_failed( status, "rtems_task_create of RTEMS_PREEMPT" );
status = rtems_task_start( Preempt_task_id, Preempt_task, 0 );
directive_failed( status, "rtems_task_start of RTEMS_PREEMPT" );
puts( "INIT - rtems_task_wake_after - yielding processor" );
status = rtems_task_wake_after( RTEMS_YIELD_PROCESSOR );
directive_failed( status, "rtems_task_wake_after" );
Task_name[ 1 ] = rtems_build_name( 'T', 'A', '1', ' ' );
Task_name[ 2 ] = rtems_build_name( 'T', 'A', '2', ' ' );
Task_name[ 3 ] = rtems_build_name( 'T', 'A', '3', ' ' );
status = rtems_task_create(
Task_name[ 1 ],
3,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 1 ]
);
directive_failed( status, "rtems_task_create of TA1" );
status = rtems_task_create(
Task_name[ 2 ],
3,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 2 ]
);
directive_failed( status, "rtems_task_create of TA2" );
status = rtems_task_create(
Task_name[ 3 ],
3,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 3 ]
);
directive_failed( status, "rtems_task_create of TA3" );
status = rtems_task_start( Task_id[ 1 ], Task_1, 0 );
directive_failed( status, "rtems_task_start of TA1" );
status = rtems_task_start( Task_id[ 2 ], Task_2, 0 );
directive_failed( status, "rtems_task_start of TA2" );
status = rtems_task_start( Task_id[ 3 ], Task_3, 0 );
directive_failed( status, "rtems_task_start of TA3" );
puts( "INIT - suspending TA2 while middle task on a ready chain" );
status = rtems_task_suspend( Task_id[ 2 ] );
directive_failed( status, "rtems_task_suspend of TA2" );
status = rtems_task_delete( Task_id[ 1 ] );
directive_failed( status, "rtems_task_delete of TA1" );
status = rtems_task_delete( Task_id[ 2 ] );
directive_failed( status, "rtems_task_delete of TA2" );
status = rtems_task_delete( Task_id[ 3 ] );
directive_failed( status, "rtems_task_delete of TA3" );
status = rtems_task_create(
Task_name[ 1 ],
1,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 1 ]
);
directive_failed( status, "rtems_task_create of TA1" );
status = rtems_task_create(
Task_name[ 2 ],
3,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 2 ]
);
directive_failed( status, "rtems_task_create of TA2" );
status = rtems_task_create(
Task_name[ 3 ],
3,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 3 ]
);
directive_failed( status, "rtems_task_create of TA3" );
status = rtems_task_start( Task_id[ 1 ], Task_1, 0 );
directive_failed( status, "rtems_task_start of TA1" );
status = rtems_task_start( Task_id[ 2 ], Task_2, 0 );
directive_failed( status, "rtems_task_start of TA2" );
status = rtems_task_start( Task_id[ 3 ], Task_3, 0 );
directive_failed( status, "rtems_task_start of TA3" );
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
}

View File

@@ -1,31 +0,0 @@
/* Preempt_task
*
* This routine serves as a test task. It verifies the task manager.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Preempt_task(
rtems_task_argument argument
)
{
rtems_status_code status;
puts( "PREEMPT - rtems_task_delete - deleting self" );
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of RTEMS_PREEMPT" );
}

View File

@@ -1,36 +0,0 @@
#
# $Id$
#
# 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.
#
This file describes the directives and concepts tested by this test set.
test set name: test2
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, t_ident,
t_delete, tm_wkafter, t_setpri, t_suspend
concepts:
a. Verifies that a task can delete another task and also delete itself.
b. Verifies that memory is freed back to the heap correctly.
c. Verifies that TCBs are freed back to the inactive chain correctly.
d. Verifies that a task can get the task identification number of
another task.
e. Verifies the _Set_state routine where the task is not READY.
f. Verifies the break statement in the _Block_activate routine.
g. Verifies the while loop in the _Prev_tcb routine.

View File

@@ -1,15 +0,0 @@
*** TEST 2 ***
INIT - rtems_task_wake_after - yielding processor
PREEMPT - rtems_task_delete - deleting self
INIT - suspending TA2 while middle task on a ready chain
TA1 - rtems_task_wake_after - sleep 1 second
TA2 - rtems_task_wake_after - sleep 1 minute
TA3 - rtems_task_wake_after - sleep 5 seconds
TA1 - rtems_task_ident - tid of TA2 (0x0a010004)
TA1 - rtems_task_ident - tid of TA3 (0x0a010002)
TA1 - rtems_task_set_priority - set TA3's priority to 2
TA1 - rtems_task_suspend - suspend TA2
TA1 - rtems_task_delete - delete TA2
TA1 - rtems_task_wake_after - sleep for 5 seconds
TA3 - rtems_task_delete - delete self
*** END OF TEST 2 ***

View File

@@ -1,58 +0,0 @@
/* system.h
*
* This include file contains information that is included in every
* function in the test set.
*
* 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 <tmacros.h>
/* functions */
rtems_task Init(
rtems_task_argument argument
);
rtems_task Preempt_task(
rtems_task_argument argument
);
rtems_task Task_1(
rtems_task_argument argument
);
rtems_task Task_2(
rtems_task_argument argument
);
rtems_task Task_3(
rtems_task_argument argument
);
/* configuration information */
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
#define CONFIGURE_MAXIMUM_TASKS 4
#include <confdefs.h>
/* global variables */
TEST_EXTERN rtems_id Task_id[ 4 ]; /* array of task ids */
TEST_EXTERN rtems_name Task_name[ 4 ]; /* array of task names */
TEST_EXTERN rtems_id Preempt_task_id; /* preempt task id */
TEST_EXTERN rtems_name Preempt_task_name; /* preempt task name */
/* end of include file */

View File

@@ -1,72 +0,0 @@
/* Task_1
*
* This routine serves as a test task. It verifies the task manager.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_1(
rtems_task_argument argument
)
{
rtems_id tid2;
rtems_id tid3;
rtems_status_code status;
rtems_name tid2_name;
rtems_unsigned32 previous_priority;
puts( "TA1 - rtems_task_wake_after - sleep 1 second" );
status = rtems_task_wake_after( 1*TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after" );
status = rtems_task_ident( Task_name[ 2 ], RTEMS_SEARCH_ALL_NODES, &tid2 );
directive_failed( status, "rtems_task_ident of TA2" );
printf( "TA1 - rtems_task_ident - tid of TA2 (0x%.8x)\n", tid2 );
status = rtems_object_id_to_name( tid2, &tid2_name );
directive_failed( status, "rtems_object_id_to_name of TA2" );
printf( "TA1 - rtems_id_to_name - id -> name of TA2 %sOK\n",
(tid2_name != Task_name[2]) ? "NOT " : "" );
status = rtems_task_ident( Task_name[ 3 ], RTEMS_SEARCH_ALL_NODES, &tid3 );
directive_failed( status, "rtems_task_ident of TA3" );
printf( "TA1 - rtems_task_ident - tid of TA3 (0x%.8x)\n", tid3 );
status = rtems_task_set_priority( tid3, 2, &previous_priority );
directive_failed( status, "rtems_task_set_priority" );
puts( "TA1 - rtems_task_set_priority - set TA3's priority to 2" );
puts( "TA1 - rtems_task_suspend - suspend TA2" );
status = rtems_task_suspend( tid2 );
directive_failed( status, "rtems_task_suspend of TA2" );
puts( "TA1 - rtems_task_delete - delete TA2" );
status = rtems_task_delete( tid2 );
directive_failed( status, "rtems_task_delete of TA2" );
puts( "TA1 - rtems_task_wake_after - sleep for 5 seconds" );
status = rtems_task_wake_after( 5*TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after" );
puts( "*** END OF TEST 2 ***" );
rtems_test_exit( 0 );
}

View File

@@ -1,33 +0,0 @@
/* Task_2
*
* This routine serves as a test task. It sleeps for 1 minute but
* does not expect to wake up. Task 1 should suspend then delete it
* so that it appears to never wake up.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_2(
rtems_task_argument argument
)
{
rtems_status_code status;
puts( "TA2 - rtems_task_wake_after - sleep 1 minute" );
status = rtems_task_wake_after( 60*TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after in TA2" );
}

View File

@@ -1,36 +0,0 @@
/* Task_3
*
* This routine serves as a test task. It simply sleeps for 5 seconds
* and then deletes itself.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_3(
rtems_task_argument argument
)
{
rtems_status_code status;
puts( "TA3 - rtems_task_wake_after - sleep 5 seconds" );
status = rtems_task_wake_after( 5*TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after in TA3" );
puts( "TA3 - rtems_task_delete - delete self" );
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of TA3" );
}

View File

@@ -1,2 +0,0 @@
Makefile
Makefile.in

View File

@@ -1,38 +0,0 @@
##
## $Id$
##
TEST = sp03
MANAGERS = io
C_FILES = init.c task1.c task2.c
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
H_FILES = system.h
noinst_HEADERS = $(H_FILES)
DOCTYPES = scn doc
DOCS = $(DOCTYPES:%=$(TEST).%)
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
PRINT_SRCS = $(DOCS)
PGM = ${ARCH}/$(TEST).exe
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../automake/compile.am
include $(top_srcdir)/../automake/leaf.am
include $(top_srcdir)/sptests.am
${PGM}: $(OBJS) $(LINK_FILES)
$(make-exe)
all-local: $(ARCH) $(TMPINSTALL_FILES)
EXTRA_DIST = $(C_FILES) $(DOCS)
include $(top_srcdir)/../automake/local.am

View File

@@ -1,66 +0,0 @@
/* Init
*
* This routine is the initialization task for this test program.
* It is a user initialization task and has the responsibility for creating
* and starting the tasks that make up the test. If the time of day
* clock is required for the test, it should also be set to a known
* value by this function.
*
* Input parameters:
* argument - task argument
*
* 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$
*/
#define TEST_INIT
#include "system.h"
rtems_task Init(
rtems_task_argument argument
)
{
rtems_status_code status;
puts( "\n\n*** TEST 3 ***" );
Task_name[ 1 ] = rtems_build_name( 'T', 'A', '1', ' ' );
Task_name[ 2 ] = rtems_build_name( 'T', 'A', '2', ' ' );
status = rtems_task_create(
Task_name[ 1 ],
1,
RTEMS_MINIMUM_STACK_SIZE * 2,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 1 ]
);
directive_failed( status, "rtems_task_create of TA1" );
status = rtems_task_create(
Task_name[ 2 ],
1,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 2 ]
);
directive_failed( status, "rtems_task_create of TA2" );
status = rtems_task_start( Task_id[ 1 ], Task_1, 0 );
directive_failed( status, "rtems_task_start of TA1" );
status = rtems_task_start( Task_id[ 2 ], Task_2, 0 );
directive_failed( status, "rtems_task_start of TA2" );
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
}

View File

@@ -1,23 +0,0 @@
#
# $Id$
#
# 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.
#
This file describes the directives and concepts tested by this test set.
test set name: test3
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, tm_wkafter,
tm_wkwhen, tm_set, tm_get
concepts:
a. Verifies conversion routines - _Utd_to_etd and _Etd_to_utd

View File

@@ -1,26 +0,0 @@
*** TEST 3 ***
TA1 sets clock: 09:15:00 12/31/1988
TA1 going to sleep: 09:15:00 12/31/1988
TA2 09:15:01 12/31/1988
TA2 09:15:02 12/31/1988
TA2 09:15:03 12/31/1988
TA2 09:15:04 12/31/1988
TA1 awakened: 09:15:05 12/31/1988
TA1 going to sleep: 09:15:05 12/31/1988
TA2 09:15:05 12/31/1988
TA2 09:15:06 12/31/1988
TA2 09:15:07 12/31/1988
TA2 09:15:08 12/31/1988
TA2 09:15:09 12/31/1988
TA1 awakened: 09:15:10 12/31/1988
TA1 going to sleep: 09:15:10 12/31/1988
TA2 09:15:10 12/31/1988
TA2 09:15:11 12/31/1988
TA2 09:15:12 12/31/1988
TA2 09:15:13 12/31/1988
TA2 09:15:14 12/31/1988
TA1 awakened: 09:15:15 12/31/1988
TA1 going to sleep: 09:15:15 12/31/1988
TA2 09:15:15 12/31/1988
TA2 09:15:16 12/31/1988
*** END OF TEST 3 ***

View File

@@ -1,50 +0,0 @@
/* system.h
*
* This include file contains information that is included in every
* function in the test set.
*
* 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 <tmacros.h>
/* functions */
rtems_task Init(
rtems_task_argument argument
);
rtems_task Task_1(
rtems_task_argument argument
);
rtems_task Task_2(
rtems_task_argument argument
);
/* configuration information */
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
#define CONFIGURE_EXTRA_TASK_STACKS (1 * RTEMS_MINIMUM_STACK_SIZE)
#define CONFIGURE_MAXIMUM_TASKS 3
#include <confdefs.h>
/* global variables */
TEST_EXTERN rtems_id Task_id[ 4 ]; /* array of task ids */
TEST_EXTERN rtems_name Task_name[ 4 ]; /* array of task names */
/* end of include file */

View File

@@ -1,58 +0,0 @@
/* Task_1
*
* This routine serves as a test task. It verifies the capability to
* set and read the executives calender and clock.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_1(
rtems_task_argument argument
)
{
rtems_status_code status;
rtems_time_of_day time;
build_time( &time, 12, 31, 1988, 9, 15, 0, 0 );
status = rtems_clock_set( &time );
directive_failed( status, "rtems_clock_set" );
put_name( Task_name[ 1 ], FALSE );
print_time( " sets clock: ", &time, "\n" );
while( FOREVER ) {
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed( status, "rtems_clock_get" );
put_name( Task_name[ 1 ], FALSE );
print_time( " going to sleep: ", &time, "\n" );
time.second += 5;
time.minute += ( time.second / 60 );
time.second %= 60;
time.hour += ( time.minute / 60 );
time.minute %= 60;
time.hour %= 24;
status = rtems_task_wake_when( &time );
directive_failed( status, "rtems_task_wake_when" );
put_name( Task_name[ 1 ], FALSE );
print_time( " awakened: ", &time, "\n" );
}
}

View File

@@ -1,45 +0,0 @@
/* Task_2
*
* This routine serves as a test task. It repeatedly gets the system time
* and date, converts it to printable form, and print it.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_2(
rtems_task_argument argument
)
{
rtems_status_code status;
rtems_time_of_day time;
while( FOREVER ) {
status = rtems_task_wake_after( 1*TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after" );
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed( status, "rtems_clock_get" );
if ( time.second >= 17 ) {
puts( "*** END OF TEST 3 *** " );
rtems_test_exit( 0 );
}
put_name( Task_name[ 2 ], FALSE );
print_time( " ", &time, "\n" );
}
}

View File

@@ -1,2 +0,0 @@
Makefile
Makefile.in

View File

@@ -1,38 +0,0 @@
##
## $Id$
##
TEST = sp04
MANAGERS = io
C_FILES = init.c task1.c task2.c task3.c tswitch.c
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
H_FILES = system.h
noinst_HEADERS = $(H_FILES)
DOCTYPES = scn doc
DOCS = $(DOCTYPES:%=$(TEST).%)
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
PRINT_SRCS = $(DOCS)
PGM = ${ARCH}/$(TEST).exe
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../automake/compile.am
include $(top_srcdir)/../automake/leaf.am
include $(top_srcdir)/sptests.am
${PGM}: $(OBJS) $(LINK_FILES)
$(make-exe)
all-local: $(ARCH) $(TMPINSTALL_FILES)
EXTRA_DIST = $(C_FILES) $(DOCS)
include $(top_srcdir)/../automake/local.am

View File

@@ -1,109 +0,0 @@
/* Init
*
* This routine is the initialization task for this test program.
* It is a user initialization task and has the responsibility for creating
* and starting the tasks that make up the test. If the time of day
* clock is required for the test, it should also be set to a known
* value by this function.
*
* Input parameters:
* argument - task argument
*
* 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$
*/
#define TEST_INIT
#include "system.h"
rtems_extensions_table Extensions = {
NULL, /* task create user extension */
NULL, /* task start user extension */
NULL, /* task restart user extension */
NULL, /* task delete user extension */
Task_switch, /* task switch user extension */
NULL, /* task begin user extension */
NULL, /* task exitted user extension */
NULL /* fatal error user extension */
};
rtems_task Init(
rtems_task_argument argument
)
{
rtems_status_code status;
rtems_time_of_day time;
puts( "\n\n*** TEST 4 ***" );
build_time( &time, 12, 31, 1988, 9, 15, 0, 0 );
status = rtems_clock_set( &time );
directive_failed( status, "rtems_clock_set" );
Extension_name[ 1 ] = rtems_build_name( 'E', 'X', 'T', ' ' );
status = rtems_extension_create(
Extension_name[ 1 ],
&Extensions,
&Extension_id[ 1 ]
);
directive_failed( status, "rtems_extension_create" );
Task_name[ 1 ] = rtems_build_name( 'T', 'A', '1', ' ' );
Task_name[ 2 ] = rtems_build_name( 'T', 'A', '2', ' ' );
Task_name[ 3 ] = rtems_build_name( 'T', 'A', '3', ' ' );
Run_count[ 1 ] = 0;
Run_count[ 2 ] = 0;
Run_count[ 3 ] = 0;
status = rtems_task_create(
Task_name[ 1 ],
1,
RTEMS_MINIMUM_STACK_SIZE * 2,
RTEMS_TIMESLICE,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 1 ]
);
directive_failed( status, "rtems_task_create of TA1" );
status = rtems_task_create(
Task_name[ 2 ],
1,
RTEMS_MINIMUM_STACK_SIZE * 2,
RTEMS_TIMESLICE,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 2 ]
);
directive_failed( status, "rtems_task_create of TA2" );
status = rtems_task_create(
Task_name[ 3 ],
1,
RTEMS_MINIMUM_STACK_SIZE * 2,
RTEMS_TIMESLICE,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 3 ]
);
directive_failed( status, "rtems_task_create of TA3" );
status = rtems_task_start( Task_id[ 1 ], Task_1, 0 );
directive_failed( status, "rtems_task_start of TA1" );
status = rtems_task_start( Task_id[ 2 ], Task_2, 0 );
directive_failed( status, "rtems_task_start of TA2" );
status = rtems_task_start( Task_id[ 3 ], Task_3, 0 );
directive_failed( status, "rtems_task_start of TA3" );
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
}

View File

@@ -1,37 +0,0 @@
#
# $Id$
#
# 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.
#
This file describes the directives and concepts tested by this test set.
test set name: test4
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return,
tm_set, tm_get, ev_receive, t_mode
concepts:
a. Verifies timeslicing ( all tasks are in timeslice mode ).
b. Verifies the tswitch user extension.
c. Verifies the no preemption mode.
d. Verifies time-slice gets reset even if only one task ready.
output:
The task name and the current time are printed out each time that a new
task is being dispatched. The configured timeslice is 100 ticks
( 1 second ); therefore, a task name and the time are printed once
every second. After each task runs 3 times, task 1 changes its mode to
no preempt and runs for about 6 seconds and then changes its mode back to
preempt mode.

View File

@@ -1,25 +0,0 @@
*** TEST 4 ***
TA1 - rtems_task_suspend - on Task 2
TA1 - rtems_task_suspend - on Task 3
TA1 - killing time
TA1 - rtems_task_resume - on Task 2
TA1 - rtems_task_resume - on Task 3
TA1 - rtems_task_mode - change mode to NO RTEMS_PREEMPT
TA1 - 09:15:10 12/31/1988
TA1 - 09:15:11 12/31/1988
TA1 - 09:15:12 12/31/1988
TA1 - 09:15:13 12/31/1988
TA1 - 09:15:14 12/31/1988
TA1 - 09:15:15 12/31/1988
TA1 - rtems_task_mode - change mode to RTEMS_PREEMPT
TA1 - 09:15:00 12/31/1988
TA2 - 09:15:04 12/31/1988
TA3 - 09:15:05 12/31/1988
TA1 - 09:15:06 12/31/1988
TA2 - 09:15:07 12/31/1988
TA3 - 09:15:08 12/31/1988
TA1 - 09:15:09 12/31/1988
TA2 - 09:15:16 12/31/1988
TA3 - 09:15:17 12/31/1988
TA1 - 09:15:18 12/31/1988
*** END OF TEST 4 ***

View File

@@ -1,81 +0,0 @@
/* system.h
*
* This include file contains information that is included in every
* function in the test set.
*
* 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 <tmacros.h>
/* functions */
rtems_task Init(
rtems_task_argument argument
);
rtems_task Task_1(
rtems_task_argument argument
);
rtems_task Task_2(
rtems_task_argument argument
);
rtems_task Task_3(
rtems_task_argument argument
);
void Task_switch(
rtems_tcb *unused,
rtems_tcb *heir
);
/* configuration information */
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_USER_EXTENSIONS 1
#define CONFIGURE_TICKS_PER_TIMESLICE 100
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
#define CONFIGURE_EXTRA_TASK_STACKS (3 * RTEMS_MINIMUM_STACK_SIZE)
#define CONFIGURE_MAXIMUM_TASKS 4
#include <confdefs.h>
/* global variables */
TEST_EXTERN rtems_id Task_id[ 4 ]; /* array of task ids */
TEST_EXTERN rtems_name Task_name[ 4 ]; /* array of task names */
TEST_EXTERN rtems_id Extension_id[ 4 ];
TEST_EXTERN rtems_name Extension_name[ 4 ]; /* array of task names */
/* array of task run counts */
TEST_EXTERN volatile rtems_unsigned32 Run_count[ 4 ];
/*
* Keep track of task switches
*/
struct taskSwitchLog {
int taskIndex;
rtems_time_of_day when;
};
extern struct taskSwitchLog taskSwitchLog[];
extern int taskSwitchLogIndex;
volatile extern int testsFinished;
/* end of include file */

View File

@@ -1,117 +0,0 @@
/* Task_1
*
* This test serves as a test task. It verifies timeslicing activities
* and tswitch extension processing.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
static void
showTaskSwitches (void)
{
int i;
int switches = taskSwitchLogIndex;
for (i = 0 ; i < switches ; i++) {
put_name( Task_name[taskSwitchLog[i].taskIndex], FALSE );
print_time( "- ", &taskSwitchLog[i].when, "\n" );
}
}
rtems_task Task_1(
rtems_task_argument argument
)
{
rtems_unsigned32 seconds;
rtems_unsigned32 old_seconds;
rtems_mode previous_mode;
rtems_time_of_day time;
rtems_status_code status;
rtems_unsigned32 start_time;
rtems_unsigned32 end_time;
puts( "TA1 - rtems_task_suspend - on Task 2" );
status = rtems_task_suspend( Task_id[ 2 ] );
directive_failed( status, "rtems_task_suspend of TA2" );
puts( "TA1 - rtems_task_suspend - on Task 3" );
status = rtems_task_suspend( Task_id[ 3 ] );
directive_failed( status, "rtems_task_suspend of TA3" );
status = rtems_clock_get( RTEMS_CLOCK_GET_SECONDS_SINCE_EPOCH, &start_time );
directive_failed( status, "rtems_clock_get" );
puts( "TA1 - killing time" );
for ( ; ; ) {
status = rtems_clock_get( RTEMS_CLOCK_GET_SECONDS_SINCE_EPOCH, &end_time );
directive_failed( status, "rtems_clock_get" );
if ( end_time > (start_time + 2) )
break;
}
puts( "TA1 - rtems_task_resume - on Task 2" );
status = rtems_task_resume( Task_id[ 2 ] );
directive_failed( status, "rtems_task_resume of TA2" );
puts( "TA1 - rtems_task_resume - on Task 3" );
status = rtems_task_resume( Task_id[ 3 ] );
directive_failed( status, "rtems_task_resume of TA3" );
while ( FOREVER ) {
if ( Run_count[ 1 ] >= 3 ) {
puts( "TA1 - rtems_task_mode - change mode to NO RTEMS_PREEMPT" );
status = rtems_task_mode(
RTEMS_NO_PREEMPT,
RTEMS_PREEMPT_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed( status, "rtems_clock_get" );
old_seconds = time.second;
for ( seconds = 0 ; seconds < 6 ; ) {
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed( status, "rtems_clock_get" );
if ( time.second != old_seconds ) {
old_seconds = time.second;
seconds++;
print_time( "TA1 - ", &time, "\n" );
}
}
puts( "TA1 - rtems_task_mode - change mode to RTEMS_PREEMPT" );
status = rtems_task_mode(
RTEMS_PREEMPT,
RTEMS_PREEMPT_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
while ( !testsFinished );
showTaskSwitches ();
puts( "*** END OF TEST 4 ***" );
rtems_test_exit (0);
}
}
}

View File

@@ -1,28 +0,0 @@
/* Task_2
*
* This routine serves as a test task. It is just a CPU bound task
* requiring timesliced operation.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_2(
rtems_task_argument argument
)
{
while( FOREVER );
}

View File

@@ -1,28 +0,0 @@
/* Task_3
*
* This routine serves as a test task. It is just a CPU bound task
* requiring timesliced operation.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_3(
rtems_task_argument argument
)
{
while( FOREVER );
}

View File

@@ -1,62 +0,0 @@
/* Task_switch
*
* This routine is the tswitch user extension. It determines which
* task is being switched to and displays a message indicating the
* time and date that it gained control.
*
* Input parameters:
* unused - pointer to currently running TCB
* heir - pointer to heir TCB
*
* 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 "system.h"
struct taskSwitchLog taskSwitchLog[1000];
int taskSwitchLogIndex;
volatile int testsFinished;
rtems_extension Task_switch(
rtems_tcb *unused,
rtems_tcb *heir
)
{
rtems_unsigned32 index;
rtems_time_of_day time;
rtems_status_code status;
index = task_number( heir->Object.id ) - task_number( Task_id[1] ) + 1;
switch( index ) {
case 1:
case 2:
case 3:
Run_count[ index ] += 1;
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed_with_level( status, "rtems_clock_get", 1 );
if (taskSwitchLogIndex < (sizeof taskSwitchLog / sizeof taskSwitchLog[0])) {
taskSwitchLog[taskSwitchLogIndex].taskIndex = index;
taskSwitchLog[taskSwitchLogIndex].when = time;
taskSwitchLogIndex++;
}
if ( time.second >= 16 )
testsFinished = 1;
break;
case 0:
default:
break;
}
}

View File

@@ -1,2 +0,0 @@
Makefile
Makefile.in

View File

@@ -1,38 +0,0 @@
##
## $Id$
##
TEST = sp05
MANAGERS = io
C_FILES = init.c task1.c task2.c task3.c
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
H_FILES = system.h
noinst_HEADERS = $(H_FILES)
DOCTYPES = scn doc
DOCS = $(DOCTYPES:%=$(TEST).%)
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
PRINT_SRCS = $(DOCS)
PGM = ${ARCH}/$(TEST).exe
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../automake/compile.am
include $(top_srcdir)/../automake/leaf.am
include $(top_srcdir)/sptests.am
${PGM}: $(OBJS) $(LINK_FILES)
$(make-exe)
all-local: $(ARCH) $(TMPINSTALL_FILES)
EXTRA_DIST = $(C_FILES) $(DOCS)
include $(top_srcdir)/../automake/local.am

View File

@@ -1,80 +0,0 @@
/* Init
*
* This routine is the initialization task for this test program.
* It is a user initialization task and has the responsibility for creating
* and starting the tasks that make up the test. If the time of day
* clock is required for the test, it should also be set to a known
* value by this function.
*
* Input parameters:
* argument - task argument
*
* 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$
*/
#define TEST_INIT
#include "system.h"
rtems_task Init(
rtems_task_argument argument
)
{
rtems_status_code status;
puts( "\n\n*** TEST 5 ***" );
Task_name[ 1 ] = rtems_build_name( 'T', 'A', '1', ' ' );
Task_name[ 2 ] = rtems_build_name( 'T', 'A', '2', ' ' );
Task_name[ 3 ] = rtems_build_name( 'T', 'A', '3', ' ' );
status = rtems_task_create(
Task_name[ 1 ],
1,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 1 ]
);
directive_failed( status, "rtems_task_create of TA1" );
status = rtems_task_create(
Task_name[ 2 ],
1,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 2 ]
);
directive_failed( status, "rtems_task_create of TA2" );
status = rtems_task_create(
Task_name[ 3 ],
1,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 3 ]
);
directive_failed( status, "rtems_task_create of TA3" );
status = rtems_task_start( Task_id[ 1 ], Task_1, 0 );
directive_failed( status, "rtems_task_start of TA1" );
status = rtems_task_start( Task_id[ 2 ], Task_2, 0 );
directive_failed( status, "rtems_task_start of TA2" );
status = rtems_task_start( Task_id[ 3 ], Task_3, 0 );
directive_failed( status, "rtems_task_start of TA3" );
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
}

View File

@@ -1,25 +0,0 @@
#
# $Id$
#
# 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.
#
This file describes the directives and concepts tested by this test set.
test set name: test5
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, t_ident
tm_wkafter, t_suspend, t_resume
concepts:
a. Verifies that a task can be suspended and resumed.
b. Verifies that a task can suspend itself.

View File

@@ -1,47 +0,0 @@
*** TEST 5 ***
TA1 - rtems_task_wake_after - sleep 5 seconds
TA2 - rtems_task_suspend - suspend self
TA3 - rtems_task_suspend - suspend self
TA1 - rtems_task_suspend - suspend TA3
TA1 - rtems_task_resume - resume TA2
TA1 - rtems_task_wake_after - sleep 5 seconds
TA2 - rtems_task_wake_after - sleep 1 second
TA2 - rtems_task_wake_after - sleep 1 second
TA2 - rtems_task_wake_after - sleep 1 second
TA2 - rtems_task_wake_after - sleep 1 second
TA2 - rtems_task_wake_after - sleep 1 second
TA1 - rtems_task_suspend - suspend TA2
TA1 - rtems_task_resume - resume TA3
TA1 - rtems_task_wake_after - sleep 5 seconds
TA3 - rtems_task_wake_after - sleep 1 second
TA3 - rtems_task_wake_after - sleep 1 second
TA3 - rtems_task_wake_after - sleep 1 second
TA3 - rtems_task_wake_after - sleep 1 second
TA3 - rtems_task_wake_after - sleep 1 second
TA1 - rtems_task_suspend - suspend TA3
TA1 - rtems_task_resume - resume TA2
TA1 - rtems_task_wake_after - sleep 5 seconds
TA2 - rtems_task_wake_after - sleep 1 second
TA2 - rtems_task_wake_after - sleep 1 second
TA2 - rtems_task_wake_after - sleep 1 second
TA2 - rtems_task_wake_after - sleep 1 second
TA2 - rtems_task_wake_after - sleep 1 second
TA1 - rtems_task_suspend - suspend TA2
TA1 - rtems_task_resume - resume TA3
TA1 - rtems_task_wake_after - sleep 5 seconds
TA3 - rtems_task_wake_after - sleep 1 second
TA3 - rtems_task_wake_after - sleep 1 second
TA3 - rtems_task_wake_after - sleep 1 second
TA3 - rtems_task_wake_after - sleep 1 second
TA3 - rtems_task_wake_after - sleep 1 second
TA1 - rtems_task_suspend - suspend TA3
TA1 - rtems_task_resume - resume TA2
TA1 - rtems_task_wake_after - sleep 5 seconds
TA2 - rtems_task_wake_after - sleep 1 second
TA2 - rtems_task_wake_after - sleep 1 second
TA2 - rtems_task_wake_after - sleep 1 second
TA2 - rtems_task_wake_after - sleep 1 second
TA2 - rtems_task_wake_after - sleep 1 second
TA1 - rtems_task_suspend - suspend TA2
TA1 - rtems_task_resume - resume TA3
*** END OF TEST 5 ***

View File

@@ -1,53 +0,0 @@
/* system.h
*
* This include file contains information that is included in every
* function in the test set.
*
* 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 <tmacros.h>
/* functions */
rtems_task Init(
rtems_task_argument argument
);
rtems_task Task_1(
rtems_task_argument argument
);
rtems_task Task_2(
rtems_task_argument argument
);
rtems_task Task_3(
rtems_task_argument argument
);
/* configuration information */
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_TICKS_PER_TIMESLICE 100
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
#define CONFIGURE_MAXIMUM_TASKS 4
#include <confdefs.h>
/* global variables */
TEST_EXTERN rtems_id Task_id[ 4 ]; /* array of task ids */
TEST_EXTERN rtems_name Task_name[ 4 ]; /* array of task names */
/* end of include file */

View File

@@ -1,77 +0,0 @@
/* Task_1
*
* This routine serves as a test task. It verifies that tasks can
* be suspended and resumed.
*
* Input parameters:
* argument - task argument
*
* Output parameters: NONE
*
* NOTE: The rtems_task_suspend() directives fail on the first iteration.
*
* 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 "system.h"
rtems_task Task_1(
rtems_task_argument argument
)
{
rtems_id tid2;
rtems_id tid3;
rtems_unsigned32 pass;
rtems_status_code status;
status = rtems_task_ident( Task_name[ 2 ], 1, &tid2 );
directive_failed( status, "rtems_task_ident of TA2" );
status = rtems_task_ident( Task_name[ 3 ], 1, &tid3 );
directive_failed( status, "rtems_task_ident of TA3" );
for ( pass=1 ; pass <= 3 ; pass++ ) {
puts( "TA1 - rtems_task_wake_after - sleep 5 seconds" );
status = rtems_task_wake_after( 5*TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after of TA1" );
puts( "TA1 - rtems_task_suspend - suspend TA3" );
status = rtems_task_suspend( tid3 );
if ( pass == 1 ) {
fatal_directive_status(
status,
RTEMS_ALREADY_SUSPENDED,
"rtems_task_suspend of TA3"
);
} else {
directive_failed( status, "rtems_task_suspend of TA3" );
}
puts( "TA1 - rtems_task_resume - resume TA2" );
status = rtems_task_resume( tid2 );
directive_failed( status, "rtems_task_resume of TA2" );
puts( "TA1 - rtems_task_wake_after - sleep 5 seconds" );
status = rtems_task_wake_after( 5*TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after" );
puts( "TA1 - rtems_task_suspend - suspend TA2" );
status = rtems_task_suspend( tid2 );
directive_failed( status, "rtems_task_suspend of TA2" );
puts( "TA1 - rtems_task_resume - resume TA3" );
status = rtems_task_resume( tid3 );
directive_failed( status, "rtems_task_resume" );
}
puts( "*** END OF TEST 5 ***" );
rtems_test_exit( 0 );
}

View File

@@ -1,38 +0,0 @@
/* Task_2
*
* This routine serves as a test task. Makes sure a task can suspend
* itself.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_2(
rtems_task_argument argument
)
{
rtems_status_code status;
puts( "TA2 - rtems_task_suspend - suspend self" );
status = rtems_task_suspend( RTEMS_SELF );
directive_failed( status, "rtems_task_suspend of TA2" );
while( FOREVER ) {
puts( "TA2 - rtems_task_wake_after - sleep 1 second" );
status = rtems_task_wake_after( 1*TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after of TA2" );
}
}

View File

@@ -1,38 +0,0 @@
/* Task_3
*
* This routine serves as a test task. Makes sure a task can suspend
* itself.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_3(
rtems_task_argument argument
)
{
rtems_status_code status;
puts( "TA3 - rtems_task_suspend - suspend self" );
status = rtems_task_suspend( RTEMS_SELF );
directive_failed( status, "rtems_task_suspend of TA3" );
while( FOREVER ) {
puts( "TA3 - rtems_task_wake_after - sleep 1 second" );
status = rtems_task_wake_after( 1*TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after of TA3" );
}
}

View File

@@ -1,2 +0,0 @@
Makefile
Makefile.in

View File

@@ -1,38 +0,0 @@
##
## $Id$
##
TEST = sp06
MANAGERS = io
C_FILES = init.c task1.c task2.c task3.c
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
H_FILES = system.h
noinst_HEADERS = $(H_FILES)
DOCTYPES = scn doc
DOCS = $(DOCTYPES:%=$(TEST).%)
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
PRINT_SRCS = $(DOCS)
PGM = ${ARCH}/$(TEST).exe
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../automake/compile.am
include $(top_srcdir)/../automake/leaf.am
include $(top_srcdir)/sptests.am
${PGM}: $(OBJS) $(LINK_FILES)
$(make-exe)
all-local: $(ARCH) $(TMPINSTALL_FILES)
EXTRA_DIST = $(C_FILES) $(DOCS)
include $(top_srcdir)/../automake/local.am

View File

@@ -1,86 +0,0 @@
/* Init
*
* This routine is the initialization task for this test program.
* It is a user initialization task and has the responsibility for creating
* and starting the tasks that make up the test. If the time of day
* clock is required for the test, it should also be set to a known
* value by this function.
*
* Input parameters:
* argument - task argument
*
* 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$
*/
#define TEST_INIT
#include "system.h"
rtems_task Init(
rtems_task_argument argument
)
{
rtems_status_code status;
rtems_task_priority previous_priority;
puts( "\n\n*** TEST 6 ***" );
Task_name[ 1 ] = rtems_build_name( 'T', 'A', '1', ' ' );
Task_name[ 2 ] = rtems_build_name( 'T', 'A', '2', ' ' );
Task_name[ 3 ] = rtems_build_name( 'T', 'A', '3', ' ' );
Argument = 0;
Restart_argument = 1;
status = rtems_task_create(
Task_name[ 1 ],
1,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 1 ]
);
directive_failed( status, "rtems_task_create of TA1" );
status = rtems_task_create(
Task_name[ 2 ],
1,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 2 ]
);
directive_failed( status, "rtems_task_create of TA2" );
status = rtems_task_create(
Task_name[ 3 ],
10,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 3 ]
);
directive_failed( status, "rtems_task_create of TA3" );
status = rtems_task_start( Task_id[ 1 ], Task_1, 0 );
directive_failed( status, "rtems_task_start of TA1" );
status = rtems_task_start( Task_id[ 2 ], Task_2, Argument );
directive_failed( status, "rtems_task_start of TA2" );
status = rtems_task_start( Task_id[ 3 ], Task_3, Argument );
directive_failed( status, "rtems_task_start of TA3" );
status = rtems_task_set_priority( Task_id[ 3 ], 5, &previous_priority );
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
}

View File

@@ -1,25 +0,0 @@
#
# $Id$
#
# 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.
#
This file describes the directives and concepts tested by this test set.
test set name: test6
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return,
tm_wkafter, t_restart
concepts:
a. Verifies that a task can restart a task other than itself.
b. Verifies that a task can restart itself.

View File

@@ -1,40 +0,0 @@
*** TEST 6 ***
TA1 - is beginning to run
TA1 - restarting TA3
TA2 - is beginning to run
TA2 - rtems_task_wake_after - sleep 1/2 second
TA2 - rtems_task_wake_after - sleep 1/2 second
TA1 - rtems_task_restart - restarting TA2
TA2 - is beginning to run
TA2 - rtems_task_wake_after - sleep 1/2 second
TA2 - rtems_task_wake_after - sleep 1/2 second
TA1 - rtems_task_restart - restarting self
TA1 - is beginning to run
TA2 - rtems_task_wake_after - sleep 1/2 second
TA2 - rtems_task_wake_after - sleep 1/2 second
TA1 - rtems_task_restart - restarting TA2
TA2 - is beginning to run
TA2 - rtems_task_wake_after - sleep 1/2 second
TA2 - rtems_task_wake_after - sleep 1/2 second
TA1 - rtems_task_restart - restarting self
TA1 - is beginning to run
TA2 - rtems_task_wake_after - sleep 1/2 second
TA2 - rtems_task_wake_after - sleep 1/2 second
TA1 - rtems_task_restart - restarting TA2
TA2 - is beginning to run
TA2 - rtems_task_wake_after - sleep 1/2 second
TA2 - rtems_task_wake_after - sleep 1/2 second
TA1 - rtems_task_restart - restarting self
TA1 - is beginning to run
TA2 - rtems_task_wake_after - sleep 1/2 second
TA2 - rtems_task_wake_after - sleep 1/2 second
TA1 - rtems_task_restart - restarting TA2
TA2 - is beginning to run
TA2 - rtems_task_wake_after - sleep 1/2 second
TA2 - rtems_task_wake_after - sleep 1/2 second
TA1 - rtems_task_restart - restarting self
TA1 - is beginning to run
*** END OF TEST 6 ***
NOTE: The prints from TA2 may not be as regular as indicated in the screen.
The important point is that TA2 is running and gets restarted.

View File

@@ -1,56 +0,0 @@
/* system.h
*
* This include file contains information that is included in every
* function in the test set.
*
* 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 <tmacros.h>
/* functions */
rtems_task Init(
rtems_task_argument argument
);
rtems_task Task_1(
rtems_task_argument argument
);
rtems_task Task_2(
rtems_task_argument argument
);
rtems_task Task_3(
rtems_task_argument argument
);
/* configuration information */
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_TICKS_PER_TIMESLICE 100
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
#define CONFIGURE_MAXIMUM_TASKS 4
#include <confdefs.h>
/* global variables */
TEST_EXTERN rtems_id Task_id[ 4 ]; /* array of task ids */
TEST_EXTERN rtems_name Task_name[ 4 ]; /* array of task names */
TEST_EXTERN rtems_task_argument Argument; /* generic task argument */
TEST_EXTERN rtems_task_argument Restart_argument; /* task 1 restart argument */
/* end of include file */

View File

@@ -1,60 +0,0 @@
/* Task_1
*
* This task serves as a test task. Verifies that a task can restart
* both itself and other tasks.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_1( argument )
rtems_unsigned32 argument;
{
rtems_unsigned32 pass;
rtems_status_code status;
puts( "TA1 - is beginning to run" );
pass = argument + 1;
if ( pass == 5 ) {
puts( "*** END OF TEST 6 ***" );
rtems_test_exit( 0 );
}
if ( pass == 1 ) {
puts( "TA1 - restarting TA3" );
status = rtems_task_restart( Task_id[ 3 ], Restart_argument );
directive_failed( status, "rtems_task_restart of TA3" );
status = rtems_task_wake_after( 2 * TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after" );
}
status = rtems_task_wake_after( TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after" );
puts( "TA1 - rtems_task_restart - restarting TA2" );
status = rtems_task_restart( Task_id[ 2 ], Restart_argument );
directive_failed( status, "rtems_task_restart TA2" );
status = rtems_task_wake_after( 1*TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after" );
puts( "TA1 - rtems_task_restart - restarting self" );
status = rtems_task_restart( Task_id[ 1 ], pass );
directive_failed( status, "rtems_task_restart of RTEMS_SELF" );
}

View File

@@ -1,39 +0,0 @@
/* Task_2
*
* This routine serves as a test task. It simply runs forever so
* another task can restart it.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_2( argument )
rtems_task_argument argument;
{
rtems_status_code status;
puts( "TA2 - is beginning to run" );
if ( argument == Argument ) {
status = rtems_task_wake_after( 2 * TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after" );
}
while( FOREVER ) {
puts( "TA2 - rtems_task_wake_after - sleep 1/2 second" );
status = rtems_task_wake_after( TICKS_PER_SECOND / 2 );
directive_failed( status, "rtems_task_wake_after" );
}
}

View File

@@ -1,31 +0,0 @@
/* Task_3
*
* This routine serves as a test task. It is started, has its priority
* changed, and when it runs it deletes itself.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_3(
rtems_task_argument argument
)
{
rtems_status_code status;
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
}

View File

@@ -1,2 +0,0 @@
Makefile
Makefile.in

View File

@@ -1,39 +0,0 @@
##
## $Id$
##
TEST = sp07
MANAGERS = io
C_FILES = init.c task1.c task2.c task3.c task4.c taskexit.c tcreate.c \
tdelete.c trestart.c tstart.c
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
H_FILES = system.h
noinst_HEADERS = $(H_FILES)
DOCTYPES = scn doc
DOCS = $(DOCTYPES:%=$(TEST).%)
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
PRINT_SRCS = $(DOCS)
PGM = ${ARCH}/$(TEST).exe
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../automake/compile.am
include $(top_srcdir)/../automake/leaf.am
include $(top_srcdir)/sptests.am
${PGM}: $(OBJS) $(LINK_FILES)
$(make-exe)
all-local: $(ARCH) $(TMPINSTALL_FILES)
EXTRA_DIST = $(C_FILES) $(DOCS)
include $(top_srcdir)/../automake/local.am

View File

@@ -1,127 +0,0 @@
/* Init
*
* This routine is the initialization task for this test program.
* It is a user initialization task and has the responsibility for creating
* and starting the tasks that make up the test. If the time of day
* clock is required for the test, it should also be set to a known
* value by this function.
*
* Input parameters:
* argument - task argument
*
* 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$
*/
#define TEST_INIT
#include "system.h"
rtems_extensions_table Extensions = {
Task_create_extension, /* task create user extension */
Task_start_extension, /* task start user extension */
Task_restart_extension, /* task restart user extension */
Task_delete_extension, /* task delete user extension */
NULL, /* task switch user extension */
NULL, /* begin user extension */
Task_exit_extension, /* task exitted user extension */
NULL /* fatal error extension */
};
rtems_task Init(
rtems_task_argument argument
)
{
rtems_status_code status;
puts( "\n\n*** TEST 7 ***" );
Extension_name[ 1 ] = rtems_build_name( 'E', 'X', 'T', ' ' );
status = rtems_extension_create(
Extension_name[ 1 ],
&Extensions,
&Extension_id[ 1 ]
);
directive_failed( status, "rtems_extension_create" );
Task_name[ 1 ] = rtems_build_name( 'T', 'A', '1', ' ' );
Task_name[ 2 ] = rtems_build_name( 'T', 'A', '2', ' ' );
Task_name[ 3 ] = rtems_build_name( 'T', 'A', '3', ' ' );
Task_name[ 4 ] = rtems_build_name( 'T', 'A', '4', ' ' );
status = rtems_task_create(
Task_name[ 1 ],
4,
RTEMS_MINIMUM_STACK_SIZE * 2,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 1 ]
);
directive_failed( status, "rtems_task_create of TA1" );
status = rtems_task_create(
Task_name[ 2 ],
4,
RTEMS_MINIMUM_STACK_SIZE * 2,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 2 ]
);
directive_failed( status, "rtems_task_create of TA2" );
status = rtems_task_create(
Task_name[ 3 ],
250,
RTEMS_MINIMUM_STACK_SIZE * 2,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 3 ]
);
directive_failed( status, "rtems_task_create of TA3" );
status = rtems_task_create(
Task_name[ 4 ],
254,
RTEMS_MINIMUM_STACK_SIZE * 2,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 4 ]
);
directive_failed( status, "rtems_task_create of TA4" );
status = rtems_task_start( Task_id[ 1 ], Task_1, 0 );
directive_failed( status, "rtems_task_start of TA1" );
status = rtems_task_start( Task_id[ 2 ], Task_2, 0 );
directive_failed( status, "rtems_task_start of TA2" );
status = rtems_task_start( Task_id[ 3 ], Task_3, 0 );
directive_failed( status, "rtems_task_start of TA3" );
status = rtems_task_start( Task_id[ 4 ], Task_4, 0 );
directive_failed( status, "rtems_task_start of TA4" );
status = rtems_task_restart( Task_id[ 3 ], 0 );
directive_failed( status, "rtems_task_restart of TA3" );
status = rtems_task_set_note( Task_id[ 1 ], RTEMS_NOTEPAD_8, 4 );
directive_failed( status, "task_set_node of TA1" );
printf( "INIT - rtems_task_set_note - set TA1's RTEMS_NOTEPAD_8 " );
puts ( "to TA1's priority: 04" );
status = rtems_task_set_note( Task_id[ 2 ], RTEMS_NOTEPAD_8, 4 );
directive_failed( status, "task_set_node of TA2" );
printf( "INIT - rtems_task_set_note - set TA2's RTEMS_NOTEPAD_8 " );
puts ( "to TA2's priority: 04");
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
}

View File

@@ -1,36 +0,0 @@
#
# $Id$
#
# 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.
#
This file describes the directives and concepts tested by this test set.
test set name: test7
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return,
t_delete, t_setreg, t_getreg, t_setpri, t_suspend
concepts:
a. Verifies that tasks can communicate with each other via the
t_setreg and t_getreg directives.
b. Verifies that the highest priority task is dispatched to execute.
c. Verifies setting the priority of both a ready and a blocked task.
d. Verifies the deletion of ready and blocked tasks.
e. Verifies the tcreate user extension.
f. Verifies the tstart user extension.
g. Verifies the tdelete user extension.

View File

@@ -1,33 +0,0 @@
*** TEST 7 ***
TASK_CREATE - TA1 - created.
TASK_CREATE - TA2 - created.
TASK_CREATE - TA3 - created.
TASK_CREATE - TA4 - created.
TASK_START - TA1 - started.
TASK_START - TA2 - started.
TASK_START - TA3 - started.
TASK_START - TA4 - started.
TASK_RESTART - TA3 - restarted.
INIT - rtems_task_set_note - set TA1's RTEMS_NOTEPAD_8 to TA1's priority: 04
INIT - rtems_task_set_note - set TA2's RTEMS_NOTEPAD_8 to TA2's priority: 04
<pause>
TA1 - rtems_task_set_priority - get initial priority of self: 04
TA1 - rtems_task_get_note - get RTEMS_NOTEPAD_8 - current priority: 04
TA1 - rtems_task_set_note - set TA2's RTEMS_NOTEPAD_8: 03
TA1 - rtems_task_set_priority - set TA2's priority: 03
TA2 - rtems_task_get_note - get RTEMS_NOTEPAD_8 - current priority: 03
TA2 - rtems_task_set_note - set TA1's RTEMS_NOTEPAD_8: 02
TA2 - rtems_task_set_priority - set TA1's priority: 02
TA1 - rtems_task_get_note - get RTEMS_NOTEPAD_8 - current priority: 02
TA1 - rtems_task_set_note - set TA2's RTEMS_NOTEPAD_8: 01
TA1 - rtems_task_set_priority - set TA2's priority: 01
TA2 - rtems_task_get_note - get RTEMS_NOTEPAD_8 - current priority: 01
TA2 - rtems_task_suspend - suspend TA1
TA2 - rtems_task_set_priority - set priority of TA1 ( blocked )
TASK_DELETE - TA2 deleting TA1
TASK_DELETE - TA2 deleting TA3
TASK_DELETE - TA2 deleting TA2
TA4 - exitting task
RTEMS_TASK_EXITTED - extension invoked for TA4
*** END OF TEST 7 ***
TASK_DELETE - TA4 deleting TA4 <---- may not appear

View File

@@ -1,87 +0,0 @@
/* system.h
*
* This include file contains information that is included in every
* function in the test set.
*
* 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 <tmacros.h>
/* functions */
rtems_task Init(
rtems_task_argument argument
);
rtems_task Task_1(
rtems_task_argument argument
);
rtems_task Task_2(
rtems_task_argument argument
);
rtems_task Task_3(
rtems_task_argument argument
);
rtems_task Task_4(
rtems_task_argument argument
);
rtems_boolean Task_create_extension(
rtems_tcb *unused,
rtems_tcb *created_task
);
rtems_extension Task_delete_extension(
rtems_tcb *running_task,
rtems_tcb *deleted_task
);
rtems_extension Task_restart_extension(
rtems_tcb *unused,
rtems_tcb *restarted_task
);
rtems_extension Task_start_extension(
rtems_tcb *unused,
rtems_tcb *started_task
);
rtems_extension Task_exit_extension(
rtems_tcb *running_task
);
/* configuration information */
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_USER_EXTENSIONS 1
#define CONFIGURE_TICKS_PER_TIMESLICE 100
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
#define CONFIGURE_EXTRA_TASK_STACKS (4 * RTEMS_MINIMUM_STACK_SIZE)
#define CONFIGURE_MAXIMUM_TASKS 5
#include <confdefs.h>
/* global variables */
TEST_EXTERN rtems_id Task_id[ 5 ]; /* array of task ids */
TEST_EXTERN rtems_name Task_name[ 5 ]; /* array of task names */
TEST_EXTERN rtems_id Extension_id[ 4 ];
TEST_EXTERN rtems_name Extension_name[ 4 ]; /* array of task names */
/* end of include file */

View File

@@ -1,84 +0,0 @@
/* Task_1
*
* This routine serves as a test task. It verifies intertask communication
* using task notepads and verifies the the user extensions (tcreate, etc).
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_1(
rtems_task_argument argument
)
{
rtems_status_code status;
rtems_task_priority the_priority;
rtems_task_priority previous_priority;
rtems_test_pause();
status = rtems_task_set_priority(
RTEMS_SELF,
RTEMS_CURRENT_PRIORITY,
&the_priority
);
directive_failed( status, "rtems_task_set_priority" );
printf(
"TA1 - rtems_task_set_priority - get initial priority of self: %02d\n",
the_priority
);
while( FOREVER ) {
status = rtems_task_get_note( RTEMS_SELF, RTEMS_NOTEPAD_8, &the_priority );
directive_failed( status, "rtems_task_get_note" );
printf(
"TA1 - rtems_task_get_note - get RTEMS_NOTEPAD_8 - current priority: %02d\n",
the_priority
);
if ( --the_priority == 0 ) {
puts( "TA1 - rtems_task_suspend - suspend TA2" );
status = rtems_task_suspend( Task_id[ 2 ] );
directive_failed( status, "rtems_task_suspend" );
puts( "TA1 - rtems_task_set_priority - set priority of TA2 ( blocked )" );
status = rtems_task_set_priority( Task_id[ 2 ], 5, &previous_priority );
directive_failed( status, "rtems_task_set_priority" );
status = rtems_task_delete( Task_id[ 2 ] );
directive_failed( status, "rtems_task_delete of TA2" );
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
}
printf( "TA1 - rtems_task_set_note - set TA2's RTEMS_NOTEPAD_8: %02d\n",
the_priority
);
status = rtems_task_set_note( Task_id[ 2 ], RTEMS_NOTEPAD_8, the_priority );
directive_failed( status, "rtems_task_set_note" );
printf( "TA1 - rtems_task_set_priority - set TA2's priority: %02d\n",
the_priority
);
status = rtems_task_set_priority(
Task_id[ 2 ],
the_priority,
&previous_priority
);
directive_failed( status, "rtems_task_set_priority" );
}
}

View File

@@ -1,77 +0,0 @@
/* Task_2
*
* This routine serves as a test task. Plays with priorities to verify
* that the highest priority task is always executed.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_2(
rtems_task_argument argument
)
{
rtems_status_code status;
rtems_task_priority the_priority;
rtems_task_priority previous_priority;
while( FOREVER ) {
status = rtems_task_get_note( RTEMS_SELF, RTEMS_NOTEPAD_8, &the_priority );
directive_failed( status, "rtems_task_get_note" );
printf(
"TA2 - rtems_task_get_note - get RTEMS_NOTEPAD_8 - current priority: %02d\n",
the_priority
);
if ( --the_priority == 0 ) {
puts( "TA2 - rtems_task_suspend - suspend TA1" );
status = rtems_task_suspend( Task_id[ 1 ] );
directive_failed( status, "rtems_task_suspend" );
puts( "TA2 - rtems_task_set_priority - set priority of TA1 ( blocked )" );
status = rtems_task_set_priority( Task_id[ 1 ], 5, &previous_priority );
directive_failed( status, "rtems_task_set_priority" );
status = rtems_task_delete( Task_id[ 1 ] ); /* TA1 is blocked */
directive_failed( status, "rtems_task_delete of TA1" );
status = rtems_task_delete( Task_id[ 3 ] ); /* TA3 is ready */
directive_failed( status, "rtems_task_delete of TA3" );
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of SELD" );
} else {
printf( "TA2 - rtems_task_set_note - set TA1's RTEMS_NOTEPAD_8: %02d\n",
the_priority
);
status = rtems_task_set_note(Task_id[ 1 ], RTEMS_NOTEPAD_8, the_priority);
directive_failed( status, "rtems_task_set_note" );
printf( "TA2 - rtems_task_set_priority - set TA1's priority: %02d\n",
the_priority
);
status = rtems_task_set_priority(
Task_id[ 1 ],
the_priority,
&previous_priority
);
directive_failed( status, "rtems_task_set_priority" );
}
}
}

View File

@@ -1,33 +0,0 @@
/* Task_3
*
* This routine serves as a low priority test task that should never
* execute.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_3(
rtems_task_argument argument
)
{
rtems_status_code status;
while( FOREVER ) {
status = rtems_task_wake_after( RTEMS_YIELD_PROCESSOR );
directive_failed( status, "rtems_task_wake_after" );
}
}

View File

@@ -1,29 +0,0 @@
/* Task_4
*
* This routine serves as a low priority test task that should exit
* a soon as it runs to test the taskexitted user extension.
* execute.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_4(
rtems_task_argument argument
)
{
puts( "TA4 - exitting task" );
}

View File

@@ -1,32 +0,0 @@
/* Task_exit_extension
*
* This routine is the task exitted user extension.
*
* 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 "system.h"
rtems_extension Task_exit_extension(
rtems_tcb *running_task
)
{
if ( task_number( running_task->Object.id ) > 0 ) {
puts_nocr( "RTEMS_TASK_EXITTED - extension invoked for " );
put_name( Task_name[ task_number( running_task->Object.id ) ], TRUE );
}
puts("*** END OF TEST 7 ***" );
rtems_test_exit( 0 );
}

View File

@@ -1,34 +0,0 @@
/* Task_create_extension
*
* This routine is the tcreate user extension.
*
* Input parameters:
* unused - pointer to currently running TCB
* created_task - pointer to new TCB being created
*
* 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 "system.h"
rtems_boolean Task_create_extension(
rtems_tcb *unused,
rtems_tcb *created_task
)
{
if ( task_number( created_task->Object.id ) > 0 ) {
puts_nocr( "TASK_CREATE - " );
put_name( Task_name[ task_number( created_task->Object.id ) ], FALSE );
puts( " - created." );
}
return TRUE;
}

View File

@@ -1,36 +0,0 @@
/* Task_delete_extension
*
* This routine is the delete user extension.
*
* Input parameters:
* running_task - pointer to running TCB
* deleted_task - pointer to TCB deleted
*
* 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 "system.h"
rtems_extension Task_delete_extension(
rtems_tcb *running_task,
rtems_tcb *deleted_task
)
{
if ( task_number( running_task->Object.id ) > 0 ) {
puts_nocr( "TASK_DELETE - " );
put_name( Task_name[ task_number( running_task->Object.id ) ], FALSE );
}
if ( task_number( deleted_task->Object.id ) > 0 ) {
puts_nocr( " deleting " );
put_name( Task_name[ task_number( deleted_task->Object.id ) ], TRUE );
}
}

View File

@@ -1,33 +0,0 @@
/* Task_restart_extension
*
* This routine is the trestart user extension.
*
* Input parameters:
* unused - pointer to currently running TCB
* restarted_task - pointer to new TCB being started
*
* 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 "system.h"
void Task_restart_extension(
rtems_tcb *unused,
rtems_tcb *restarted_task
)
{
if ( task_number( restarted_task->Object.id ) > 0 ) {
puts_nocr( "TASK_RESTART - " );
put_name( Task_name[ task_number( restarted_task->Object.id ) ], FALSE );
puts( " - restarted." );
}
}

View File

@@ -1,33 +0,0 @@
/* Task_start_extension
*
* This routine is the tstart user extension.
*
* Input parameters:
* unused - pointer to currently running TCB
* started_task - pointer to new TCB being started
*
* 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 "system.h"
rtems_extension Task_start_extension(
rtems_tcb *unused,
rtems_tcb *started_task
)
{
if ( task_number( started_task->Object.id ) > 0 ) {
puts_nocr( "TASK_START - " );
put_name( Task_name[ task_number( started_task->Object.id ) ], FALSE );
puts( " - started." );
}
}

View File

@@ -1,2 +0,0 @@
Makefile
Makefile.in

View File

@@ -1,38 +0,0 @@
##
## $Id$
##
TEST = sp08
MANAGERS = io
C_FILES = init.c task1.c
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
H_FILES = system.h
noinst_HEADERS = $(H_FILES)
DOCTYPES = scn doc
DOCS = $(DOCTYPES:%=$(TEST).%)
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
PRINT_SRCS = $(DOCS)
PGM = ${ARCH}/$(TEST).exe
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../automake/compile.am
include $(top_srcdir)/../automake/leaf.am
include $(top_srcdir)/sptests.am
${PGM}: $(OBJS) $(LINK_FILES)
$(make-exe)
all-local: $(ARCH) $(TMPINSTALL_FILES)
EXTRA_DIST = $(C_FILES) $(DOCS)
include $(top_srcdir)/../automake/local.am

View File

@@ -1,52 +0,0 @@
/* Init
*
* This routine is the initialization task for this test program.
* It is a user initialization task and has the responsibility for creating
* and starting the tasks that make up the test. If the time of day
* clock is required for the test, it should also be set to a known
* value by this function.
*
* Input parameters:
* argument - task argument
*
* 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$
*/
#define TEST_INIT
#include "system.h"
rtems_task Init(
rtems_task_argument argument
)
{
rtems_status_code status;
puts( "\n\n*** TEST 8 ***" );
Task_name[ 1 ] = rtems_build_name( 'T', 'A', '1', ' ' );
status = rtems_task_create(
Task_name[ 1 ],
1,
RTEMS_MINIMUM_STACK_SIZE * 2,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 1 ]
);
directive_failed( status, "rtems_task_create of TA1" );
status = rtems_task_start( Task_id[ 1 ], Task_1, 0 );
directive_failed( status, "rtems_task_start of TA1" );
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
}

View File

@@ -1,25 +0,0 @@
#
# $Id$
#
# 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.
#
This file describes the directives and concepts tested by this test set.
test set name: test8
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return,
t_mode
concepts:
a. Verifies every mode change possible.
b. Verifies the fatal error handler.

View File

@@ -1,22 +0,0 @@
*** TEST 8 ***
TA1 - rtems_task_mode - RTEMS_ASR - previous mode: 00000000
TA1 - rtems_task_mode - RTEMS_NO_ASR - previous mode: 00000000
TA1 - rtems_task_mode - RTEMS_NO_ASR - previous mode: 00000400
TA1 - rtems_task_mode - RTEMS_ASR - previous mode: 00000400
TA1 - rtems_task_mode - RTEMS_NO_TIMESLICE - previous mode: 00000000
TA1 - rtems_task_mode - RTEMS_TIMESLICE - previous mode: 00000000
TA1 - rtems_task_mode - RTEMS_TIMESLICE - previous mode: 00000200
TA1 - rtems_task_mode - RTEMS_NO_TIMESLICE - previous mode: 00000200
TA1 - rtems_task_mode - RTEMS_PREEMPT - previous mode: 00000000
TA1 - rtems_task_mode - RTEMS_NO_PREEMPT - previous mode: 00000000
TA1 - rtems_task_mode - RTEMS_NO_PREEMPT - previous mode: 00000100
TA1 - rtems_task_mode - RTEMS_PREEMPT - previous mode: 00000100
TA1 - rtems_task_mode - RTEMS_INTERRUPT_LEVEL( 3 ) - previous mode: 00000000
TA1 - rtems_task_mode - RTEMS_INTERRUPT_LEVEL( 5 ) - previous mode: 00000003
TA1 - rtems_task_mode - set all modes - previous mode: 00000005
TA1 - rtems_task_mode - set all modes - previous mode: 00000703
TA1 - rtems_task_mode - clear all modes - previous mode: 00000703
TA1 - rtems_task_mode - get current mode - previous mode: 00000000
*** END OF TEST 8 ***
NOTE: The interrupt level lines will be different on CPUs with few levels.

View File

@@ -1,50 +0,0 @@
/* system.h
*
* This include file contains information that is included in every
* function in the test set.
*
* 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 <tmacros.h>
/* functions */
rtems_task Init(
rtems_task_argument argument
);
rtems_task Task_1(
rtems_task_argument argument
);
#define put_mode( _comment, _output_mode ) \
printf( "%s %08x\n", _comment, _output_mode );
/* configuration information */
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_TICKS_PER_TIMESLICE 100
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
#define CONFIGURE_EXTRA_TASK_STACKS (1 * RTEMS_MINIMUM_STACK_SIZE)
#define CONFIGURE_MAXIMUM_TASKS 2
#include <confdefs.h>
/* global variables */
TEST_EXTERN rtems_id Task_id[ 4 ]; /* array of task ids */
TEST_EXTERN rtems_name Task_name[ 4 ]; /* array of task names */
/* end of include file */

View File

@@ -1,255 +0,0 @@
/* Task_1
*
* This routine serves as a test task. It verifies all combinations of
* task mode changes.
*
* Input parameters:
* argument - task argument
*
* 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 "system.h"
rtems_task Task_1(
rtems_task_argument argument
)
{
rtems_mode previous_mode;
rtems_status_code status;
/* BEGINNING OF RTEMS_ASR */
status = rtems_task_mode( RTEMS_ASR, RTEMS_ASR_MASK, &previous_mode );
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_ASR - previous mode: ",
previous_mode
);
status = rtems_task_mode(
RTEMS_NO_ASR,
RTEMS_ASR_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_NO_ASR - previous mode: ",
previous_mode
);
status = rtems_task_mode(
RTEMS_NO_ASR,
RTEMS_ASR_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_NO_ASR - previous mode: ",
previous_mode
);
status = rtems_task_mode(
RTEMS_ASR,
RTEMS_ASR_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_ASR - previous mode: ",
previous_mode
);
/* END OF RTEMS_ASR */
/* BEGINNING OF RTEMS_TIMESLICE */
status = rtems_task_mode(
RTEMS_NO_TIMESLICE,
RTEMS_TIMESLICE_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_NO_TIMESLICE - previous mode: ",
previous_mode
);
status = rtems_task_mode(
RTEMS_TIMESLICE,
RTEMS_TIMESLICE_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_TIMESLICE - previous mode: ",
previous_mode
);
status = rtems_task_mode(
RTEMS_TIMESLICE,
RTEMS_TIMESLICE_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_TIMESLICE - previous mode: ",
previous_mode
);
status = rtems_task_mode(
RTEMS_NO_TIMESLICE,
RTEMS_TIMESLICE_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_NO_TIMESLICE - previous mode: ",
previous_mode
);
/* END OF RTEMS_TIMESLICE */
/* BEGINNING OF RTEMS_PREEMPT */
status = rtems_task_mode(
RTEMS_PREEMPT,
RTEMS_PREEMPT_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_PREEMPT - previous mode: ",
previous_mode
);
status = rtems_task_mode(
RTEMS_NO_PREEMPT,
RTEMS_PREEMPT_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_NO_PREEMPT - previous mode: ",
previous_mode
);
status = rtems_task_mode(
RTEMS_NO_PREEMPT,
RTEMS_PREEMPT_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_NO_PREEMPT - previous mode: ",
previous_mode
);
status = rtems_task_mode(
RTEMS_PREEMPT,
RTEMS_PREEMPT_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_PREEMPT - previous mode: ",
previous_mode
);
/* END OF RTEMS_PREEMPT */
/* BEGINNING OF RTEMS_INTERRUPT_LEVEL */
status = rtems_task_mode(
RTEMS_INTERRUPT_LEVEL(3),
RTEMS_INTERRUPT_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_INTERRUPT_LEVEL( 3 ) - previous mode: ",
previous_mode
);
status = rtems_task_mode(
RTEMS_INTERRUPT_LEVEL(5),
RTEMS_INTERRUPT_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - RTEMS_INTERRUPT_LEVEL( 5 ) - previous mode: ",
previous_mode
);
/* END OF RTEMS_INTERRUPT_LEVEL */
/* BEGINNING OF COMBINATIONS */
status = rtems_task_mode(
RTEMS_INTERRUPT_LEVEL(3) | RTEMS_NO_ASR |
RTEMS_TIMESLICE | RTEMS_NO_PREEMPT,
RTEMS_INTERRUPT_MASK | RTEMS_ASR_MASK |
RTEMS_TIMESLICE_MASK | RTEMS_PREEMPT_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - set all modes - previous mode: ",
previous_mode
);
status = rtems_task_mode(
RTEMS_INTERRUPT_LEVEL(3) | RTEMS_NO_ASR |
RTEMS_TIMESLICE | RTEMS_NO_PREEMPT,
RTEMS_INTERRUPT_MASK | RTEMS_ASR_MASK |
RTEMS_TIMESLICE_MASK | RTEMS_PREEMPT_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - set all modes - previous mode: ",
previous_mode
);
status = rtems_task_mode(
RTEMS_INTERRUPT_LEVEL(0) | RTEMS_ASR | RTEMS_NO_TIMESLICE | RTEMS_PREEMPT,
RTEMS_INTERRUPT_MASK | RTEMS_ASR_MASK |
RTEMS_TIMESLICE_MASK | RTEMS_PREEMPT_MASK,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - clear all modes - previous mode: ",
previous_mode
);
/* END OF COMBINATIONS */
/* BEGINNING OF CURRENT MODE */
status = rtems_task_mode(
RTEMS_CURRENT_MODE,
RTEMS_CURRENT_MODE,
&previous_mode
);
directive_failed( status, "rtems_task_mode" );
put_mode(
"TA1 - rtems_task_mode - get current mode - previous mode: ",
previous_mode
);
/* END OF CURRENT MODE */
puts( "*** END OF TEST 8 ***" );
rtems_test_exit( 0 );
}

View File

@@ -1,2 +0,0 @@
Makefile
Makefile.in

View File

@@ -1,42 +0,0 @@
##
## $Id$
##
TEST = sp09
MANAGERS = io message dual_ported_memory event multi_processor region \
semaphore signal rate_monotonic timer partition
C_FILES = init.c delay.c isr.c screen01.c screen02.c screen03.c screen04.c \
screen05.c screen06.c screen07.c screen08.c screen09.c screen10.c \
screen11.c screen12.c screen13.c screen14.c task1.c task2.c task3.c \
task4.c
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
H_FILES = system.h
noinst_HEADERS = $(H_FILES)
DOCTYPES = scn doc
DOCS = $(DOCTYPES:%=$(TEST).%)
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
PRINT_SRCS = $(DOCS)
PGM = ${ARCH}/$(TEST).exe
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../automake/compile.am
include $(top_srcdir)/../automake/leaf.am
include $(top_srcdir)/sptests.am
${PGM}: $(OBJS) $(LINK_FILES)
$(make-exe)
all-local: $(ARCH) $(TMPINSTALL_FILES)
EXTRA_DIST = $(C_FILES) $(DOCS)
include $(top_srcdir)/../automake/local.am

View File

@@ -1,27 +0,0 @@
/* Delayed_routine
*
* This routine is used as the timer routine for Timer Manager tests.
*
* Input parameters:
* ignored - this parameter is ignored
*
* 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 "system.h"
rtems_timer_service_routine Delayed_routine(
rtems_id ignored_id,
void *ignored_address
)
{
}

View File

@@ -1,119 +0,0 @@
/* Init
*
* This routine is the initialization task for this test program.
* It is a user initialization task and has the responsibility for creating
* and starting the tasks that make up the test. If the time of day
* clock is required for the test, it should also be set to a known
* value by this function.
*
* Input parameters:
* argument - task argument
*
* 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$
*/
#define TEST_INIT
#include "system.h"
rtems_task Init(
rtems_task_argument argument
)
{
rtems_status_code status;
puts( "\n\n*** TEST 9 ***" );
Task_name[ 1 ] = rtems_build_name( 'T', 'A', '1', ' ' );
Task_name[ 2 ] = rtems_build_name( 'T', 'A', '2', ' ' );
Task_name[ 3 ] = rtems_build_name( 'T', 'A', '3', ' ' );
Task_name[ 4 ] = rtems_build_name( 'T', 'A', '4', ' ' );
Task_name[ 5 ] = rtems_build_name( 'T', 'A', '5', ' ' );
Task_name[ 6 ] = rtems_build_name( 'T', 'A', '6', ' ' );
Task_name[ 7 ] = rtems_build_name( 'T', 'A', '7', ' ' );
Task_name[ 8 ] = rtems_build_name( 'T', 'A', '8', ' ' );
Task_name[ 9 ] = rtems_build_name( 'T', 'A', '9', ' ' );
Task_name[ 10 ] = rtems_build_name( 'T', 'A', 'A', ' ' );
Timer_name[ 1 ] = rtems_build_name( 'T', 'M', '1', ' ' );
Semaphore_name[ 1 ] = rtems_build_name( 'S', 'M', '1', ' ' );
Semaphore_name[ 2 ] = rtems_build_name( 'S', 'M', '2', ' ' );
Semaphore_name[ 3 ] = rtems_build_name( 'S', 'M', '3', ' ' );
Queue_name[ 1 ] = rtems_build_name( 'M', 'Q', '1', ' ' );
Queue_name[ 2 ] = rtems_build_name( 'M', 'Q', '2', ' ' );
Partition_name[ 1 ] = rtems_build_name( 'P', 'T', '1', ' ' );
Region_name[ 1 ] = rtems_build_name( 'R', 'N', '1', ' ' );
Port_name[ 1 ] = rtems_build_name( 'D', 'P', '1', ' ' );
Period_name[ 1 ] = rtems_build_name( 'T', 'M', '1', ' ' );
#if 0
status = rtems_task_create(
Task_name[1],
4,
10,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 1 ]
);
fatal_directive_status(
status,
RTEMS_INVALID_SIZE,
"rtems_task_create with illegal stack size"
);
puts( "INIT - rtems_task_create - RTEMS_INVALID_SIZE" );
#endif
puts( "INIT - rtems_task_create - RTEMS_INVALID_SIZE -- NOT CHECKED" );
status = rtems_task_create(
Task_name[1],
0,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 1 ]
);
fatal_directive_status(
status,
RTEMS_INVALID_PRIORITY,
"rtems_task_create with illegal priority"
);
puts( "INIT - rtems_task_create - RTEMS_INVALID_PRIORITY" );
status = rtems_task_create(
Task_name[ 1 ],
4,
RTEMS_MINIMUM_STACK_SIZE * 3,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 1 ]
);
directive_failed( status, "rtems_task_create of TA1" );
status = rtems_task_restart( Task_id[ 1 ], 0 );
fatal_directive_status(
status,
RTEMS_INCORRECT_STATE,
"rtems_task_restart of DORMANT task"
);
puts( "INIT - rtems_task_restart - RTEMS_INCORRECT_STATE" );
status = rtems_task_start( Task_id[ 1 ], Task_1, 0 );
directive_failed( status, "rtems_task_start of TA1" );
status = rtems_task_delete( RTEMS_SELF );
directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
}

View File

@@ -1,26 +0,0 @@
/* Service_routine
*
* This routine is used as the timer routine for Interrupt Manager tests.
*
* Input parameters:
* ignored - this parameter is ignored
*
* 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 "system.h"
rtems_isr Service_routine(
rtems_vector_number ignored
)
{
}

View File

@@ -1,179 +0,0 @@
/* Screen1
*
* This routine generates error screen 1 for test 9.
*
* 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 "system.h"
void Screen1()
{
rtems_unsigned32 notepad_value;
rtems_id self_id;
rtems_task_priority previous_priority;
rtems_status_code status;
status = rtems_task_delete( 100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_task_delete with illegal id"
);
puts( "TA1 - rtems_task_delete - RTEMS_INVALID_ID" );
status = rtems_task_get_note( RTEMS_SELF, 100, &notepad_value );
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_task_get_note with illegal notepad"
);
puts( "TA1 - rtems_task_get_note - RTEMS_INVALID_NUMBER" );
status = rtems_task_get_note( 100, RTEMS_NOTEPAD_LAST, &notepad_value );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_task_get_note with illegal id"
);
puts( "TA1 - rtems_task_get_note - RTEMS_INVALID_ID" );
status = rtems_task_ident( RTEMS_SELF, RTEMS_SEARCH_ALL_NODES, &self_id );
directive_failed( status, "rtems_task_ident of self" );
if ( self_id != Task_id[ 1 ] ) {
puts( "ERROR - rtems_task_ident - incorrect ID returned!" );
}
puts( "TA1 - rtems_task_ident - current task RTEMS_SUCCESSFUL" );
status = rtems_task_ident( 100, RTEMS_SEARCH_ALL_NODES, &Junk_id );
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_task_ident with illegal name (local)"
);
puts( "TA1 - rtems_task_ident - global RTEMS_INVALID_NAME" );
status = rtems_task_ident( 100, 1, &Junk_id );
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_task_ident with illegal name (global)"
);
puts( "TA1 - rtems_task_ident - local RTEMS_INVALID_NAME" );
/*
* This one case is different if MP is enabled/disabled.
*/
status = rtems_task_ident( 100, 2, &Junk_id );
#if defined(RTEMS_MULTIPROCESSING)
fatal_directive_status(
status,
RTEMS_INVALID_NODE,
"rtems_task_ident with illegal node"
);
#else
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_task_ident with illegal node"
);
#endif
puts( "TA1 - rtems_task_ident - RTEMS_INVALID_NODE" );
status = rtems_task_restart( 100, 0 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_task_restart with illegal id"
);
puts( "TA1 - rtems_task_restart - RTEMS_INVALID_ID" );
status = rtems_task_resume( 100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_task_resume with illegal id"
);
puts( "TA1 - rtems_task_resume - RTEMS_INVALID_ID" );
status = rtems_task_resume( RTEMS_SELF );
fatal_directive_status(
status,
RTEMS_INCORRECT_STATE,
"rtems_task_resume of ready task"
);
puts( "TA1 - rtems_task_resume - RTEMS_INCORRECT_STATE" );
status = rtems_task_set_priority( RTEMS_SELF, 512, &previous_priority );
fatal_directive_status(
status,
RTEMS_INVALID_PRIORITY,
"rtems_task_set_priority with illegal priority"
);
puts( "TA1 - rtems_task_set_priority - RTEMS_INVALID_PRIORITY" );
status = rtems_task_set_priority( 100, 8, &previous_priority );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_task_set_priority with illegal id"
);
puts( "TA1 - rtems_task_set_priority - RTEMS_INVALID_ID" );
status = rtems_task_set_note(
RTEMS_SELF,
RTEMS_NOTEPAD_LAST+10,
notepad_value
);
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_task_set_note with illegal notepad"
);
puts( "TA1 - rtems_task_set_note - RTEMS_INVALID_NUMBER" );
status = rtems_task_set_note( 100, RTEMS_NOTEPAD_LAST, notepad_value );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_task_set_note with illegal id"
);
puts( "TA1 - rtems_task_set_note - RTEMS_INVALID_ID" );
status = rtems_task_start( 100, Task_1, 0 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_task_start with illegal id"
);
puts( "TA1 - rtems_task_start - RTEMS_INVALID_ID" );
status = rtems_task_start( 0, Task_1, 0 );
fatal_directive_status(
status,
RTEMS_INCORRECT_STATE,
"rtems_task_start of ready task"
);
puts( "TA1 - rtems_task_start - RTEMS_INCORRECT_STATE" );
status = rtems_task_suspend( 100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_task_suspend with illegal id"
);
puts( "TA1 - rtems_task_suspend - RTEMS_INVALID_ID" );
}

View File

@@ -1,191 +0,0 @@
/* Screen2
*
* This routine generates error screen 2 for test 9.
*
* 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 "system.h"
void Screen2()
{
rtems_time_of_day time;
rtems_status_code status;
/* errors before clock is set */
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
if ( status == RTEMS_SUCCESSFUL ) {
puts(
"TA1 - rtems_clock_get - RTEMS_NOT_DEFINED -- DID BSP SET THE TIME OF DAY?"
);
} else {
fatal_directive_status(
status,
RTEMS_NOT_DEFINED,
"rtems_clock_get before clock is set"
);
puts( "TA1 - rtems_clock_get - RTEMS_NOT_DEFINED" );
}
status = rtems_task_wake_when( &time );
if ( status == RTEMS_SUCCESSFUL ) {
puts(
"TA1 - rtems_task_wake_when - RTEMS_NOT_DEFINED -- DID BSP SET THE TIME OF DAY?"
);
} else {
fatal_directive_status(
status,
RTEMS_NOT_DEFINED,
"rtems_task_wake_when before clock is set"
);
puts( "TA1 - rtems_task_wake_when - RTEMS_NOT_DEFINED" );
}
status = rtems_timer_fire_when( 0, &time, Delayed_routine, NULL );
if ( status == RTEMS_SUCCESSFUL ) {
puts(
"TA1 - timer_wake_when - RTEMS_NOT_DEFINED -- DID BSP SET THE TIME OF DAY?"
);
} else {
fatal_directive_status(
status,
RTEMS_NOT_DEFINED,
"task_fire_when before clock is set"
);
puts( "TA1 - rtems_timer_fire_when - RTEMS_NOT_DEFINED" );
}
build_time( &time, 2, 5, 1987, 8, 30, 45, 0 );
print_time( "TA1 - rtems_clock_set - ", &time, "" );
status = rtems_clock_set( &time );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_clock_set with invalid year"
);
puts( " - RTEMS_INVALID_CLOCK" );
build_time( &time, 15, 5, 1988, 8, 30, 45, 0 );
print_time( "TA1 - rtems_clock_set - ", &time, "" );
status = rtems_clock_set( &time );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_clock_set with invalid month"
);
puts( " - RTEMS_INVALID_CLOCK" );
build_time( &time, 2, 32, 1988, 8, 30, 45, 0 );
print_time( "TA1 - rtems_clock_set - ", &time, "" );
status = rtems_clock_set( &time );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_clock_set with invalid day"
);
puts( " - RTEMS_INVALID_CLOCK" );
build_time( &time, 2, 5, 1988, 25, 30, 45, 0 );
print_time( "TA1 - rtems_clock_set - ", &time, "" );
status = rtems_clock_set( &time );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_clock_set with invalid hour"
);
puts( " - RTEMS_INVALID_CLOCK" );
build_time( &time, 2, 5, 1988, 8, 61, 45, 0 );
print_time( "TA1 - rtems_clock_set - ", &time, "" );
status = rtems_clock_set( &time );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_clock_set with invalid minute"
);
puts( " - RTEMS_INVALID_CLOCK" );
build_time( &time, 2, 5, 1988, 8, 30, 61, 0 );
print_time( "TA1 - rtems_clock_set - ", &time, "" );
status = rtems_clock_set( &time );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_clock_set with invalid second"
);
puts( " - RTEMS_INVALID_CLOCK" );
build_time( &time, 2, 5, 1988, 8, 30, 45, TICKS_PER_SECOND + 1 );
print_time( "TA1 - rtems_clock_set - ", &time, "" );
status = rtems_clock_set( &time );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_clock_set with invalid ticks per second"
);
puts( " - RTEMS_INVALID_CLOCK" );
build_time( &time, 2, 5, 1988, 8, 30, 45, 0 );
print_time( "TA1 - rtems_clock_set - ", &time, "" );
status = rtems_clock_set( &time );
directive_failed( status, "rtems_clock_set successful" );
puts( " - RTEMS_SUCCESSFUL" );
/* rtems_task_wake_when */
build_time( &time, 2, 5, 1988, 8, 30, 48, TICKS_PER_SECOND + 1 );
time.second += 3;
puts( "TA1 - rtems_task_wake_when - TICKINVALID - sleep about 3 seconds" );
status = rtems_task_wake_when( &time );
directive_failed(
status,
"rtems_task_wake_when with invalid ticks per second"
);
puts( "TA1 - rtems_task_wake_when - TICKINVALID - woke up RTEMS_SUCCESSFUL" );
build_time( &time, 2, 5, 1961, 8, 30, 48, 0 );
print_time( "TA1 - rtems_task_wake_when - ", &time, "" );
status = rtems_task_wake_when( &time );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_task_wake_when with invalid year"
);
puts( " - RTEMS_INVALID_CLOCK" );
build_time( &time, 2, 5, 1988, 25, 30, 48, 0 );
print_time( "TA1 - rtems_task_wake_when - ", &time, "" );
status = rtems_task_wake_when( &time );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_task_wake_when with invalid hour"
);
puts( " - RTEMS_INVALID_CLOCK" );
rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
print_time( "TA1 - current time - ", &time, "\n" );
time.month = 1;
print_time( "TA1 - rtems_task_wake_when - ", &time, "" );
status = rtems_task_wake_when( &time );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_task_wake_when before current time"
);
puts( " - RTEMS_INVALID_CLOCK" );
}

View File

@@ -1,217 +0,0 @@
/* Screen3
*
* This routine generates error screen 3 for test 9.
*
* 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 "system.h"
void Screen3()
{
rtems_name task_name;
rtems_status_code status;
task_name = 1;
status = rtems_task_create(
0,
1,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_task_create with illegal name"
);
puts( "TA1 - rtems_task_create - RTEMS_INVALID_NAME" );
/*
* If the bsp provides its own stack allocator, then
* skip the test that tries to allocate a stack that is too big.
*/
if (rtems_cpu_configuration_get_stack_allocate_hook()) {
puts( "TA1 - rtems_task_create - stack size - RTEMS_UNSATISFIED -- SKIPPED" );
} else {
status = rtems_task_create(
task_name,
1,
rtems_configuration_get_work_space_size(),
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_UNSATISFIED,
"rtems_task_create with a stack size larger than the workspace"
);
puts( "TA1 - rtems_task_create - stack size - RTEMS_UNSATISFIED" );
}
status = rtems_task_create(
Task_name[ 2 ],
4,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 2 ]
);
directive_failed( status, "rtems_task_create of TA2" );
puts( "TA1 - rtems_task_create - TA2 created - RTEMS_SUCCESSFUL" );
status = rtems_task_suspend( Task_id[ 2 ] );
directive_failed( status, "rtems_task_suspend of TA2" );
puts( "TA1 - rtems_task_suspend - suspend TA2 - RTEMS_SUCCESSFUL" );
status = rtems_task_suspend( Task_id[ 2 ] );
fatal_directive_status(
status,
RTEMS_ALREADY_SUSPENDED,
"rtems_task_suspend of suspended TA2"
);
puts( "TA1 - rtems_task_suspend - suspend TA2 - RTEMS_ALREADY_SUSPENDED" );
status = rtems_task_resume( Task_id[ 2 ] );
directive_failed( status, "rtems_task_resume of TA2" );
puts( "TA1 - rtems_task_resume - TA2 resumed - RTEMS_SUCCESSFUL" );
status = rtems_task_create(
Task_name[ 3 ],
4,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 3 ]
);
directive_failed( status, "rtems_task_create of TA3" );
puts( "TA1 - rtems_task_create - TA3 created - RTEMS_SUCCESSFUL" );
status = rtems_task_create(
Task_name[ 4 ],
4,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 4 ]
);
directive_failed( status, "rtems_task_create of TA4" );
puts( "TA1 - rtems_task_create - 4 created - RTEMS_SUCCESSFUL" );
status = rtems_task_create(
Task_name[ 5 ],
4,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 5 ]
);
directive_failed( status, "rtems_task_create of TA5" );
puts( "TA1 - rtems_task_create - 5 created - RTEMS_SUCCESSFUL" );
status = rtems_task_create(
Task_name[ 6 ],
4,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 6 ]
);
directive_failed( status, "rtems_task_create of TA6" );
puts( "TA1 - rtems_task_create - 6 created - RTEMS_SUCCESSFUL" );
status = rtems_task_create(
Task_name[ 7 ],
4,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 7 ]
);
directive_failed( status, "rtems_task_create of TA7" );
puts( "TA1 - rtems_task_create - 7 created - RTEMS_SUCCESSFUL" );
status = rtems_task_create(
Task_name[ 8 ],
4,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 8 ]
);
directive_failed( status, "rtems_task_create of TA8" );
puts( "TA1 - rtems_task_create - 8 created - RTEMS_SUCCESSFUL" );
status = rtems_task_create(
Task_name[ 9 ],
4,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 9 ]
);
directive_failed( status, "rtems_task_create of TA9" );
puts( "TA1 - rtems_task_create - 9 created - RTEMS_SUCCESSFUL" );
status = rtems_task_create(
Task_name[ 10 ],
4,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Task_id[ 10 ]
);
directive_failed( status, "rtems_task_create of TA10" );
puts( "TA1 - rtems_task_create - 10 created - RTEMS_SUCCESSFUL" );
status = rtems_task_create(
task_name,
4,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_TOO_MANY,
"rtems_task_create for too many tasks"
);
puts( "TA1 - rtems_task_create - 11 - RTEMS_TOO_MANY" );
/*
* The check for an object being global is only made if
* multiprocessing is enabled.
*/
#if defined(RTEMS_MULTIPROCESSING)
status = rtems_task_create(
task_name,
4,
RTEMS_MINIMUM_STACK_SIZE,
RTEMS_DEFAULT_MODES,
RTEMS_GLOBAL,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_MP_NOT_CONFIGURED,
"rtems_task_create of global task in a single cpu system"
);
#endif
puts( "TA1 - rtems_task_create - RTEMS_MP_NOT_CONFIGURED" );
}

View File

@@ -1,84 +0,0 @@
/* Screen4
*
* This routine generates error screen 4 for test 9.
*
* 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 "system.h"
void Screen4()
{
rtems_event_set event_out;
rtems_time_of_day time;
rtems_status_code status;
status = rtems_event_receive(
RTEMS_EVENT_16,
RTEMS_NO_WAIT,
RTEMS_NO_TIMEOUT,
&event_out
);
fatal_directive_status(
status,
RTEMS_UNSATISFIED,
"rtems_event_receive unsatisfied (ALL)"
);
puts( "TA1 - rtems_event_receive - RTEMS_UNSATISFIED ( all conditions )" );
status = rtems_event_receive(
RTEMS_EVENT_16,
RTEMS_EVENT_ANY | RTEMS_NO_WAIT,
RTEMS_NO_TIMEOUT,
&event_out
);
fatal_directive_status(
status,
RTEMS_UNSATISFIED,
"rtems_event_receive unsatisfied (ANY)"
);
puts( "TA1 - rtems_event_receive - RTEMS_UNSATISFIED ( any condition )" );
puts( "TA1 - rtems_event_receive - timeout in 3 seconds" );
status = rtems_event_receive(
RTEMS_EVENT_16,
RTEMS_DEFAULT_OPTIONS,
3 * TICKS_PER_SECOND,
&event_out
);
fatal_directive_status(
status,
RTEMS_TIMEOUT,
"rtems_event_receive"
);
puts( "TA1 - rtems_event_receive - woke up with RTEMS_TIMEOUT" );
status = rtems_event_send( 100, RTEMS_EVENT_16 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_event_send with illegal id"
);
puts( "TA1 - rtems_event_send - RTEMS_INVALID_ID" );
puts( "TA1 - rtems_task_wake_after - sleep 1 second - RTEMS_SUCCESSFUL" );
status = rtems_task_wake_after( TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after" );
build_time( &time, 2, 5, 1988, 8, 30, 45, 0 );
print_time( "TA1 - rtems_clock_set - ", &time, "" );
status = rtems_clock_set( &time );
directive_failed( status, "rtems_clock_set" );
puts( " - RTEMS_SUCCESSFUL" );
}

View File

@@ -1,170 +0,0 @@
/* Screen5
*
* This routine generates error screen 5 for test 9.
*
* 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 "system.h"
void Screen5()
{
rtems_status_code status;
status = rtems_semaphore_create(
0,
1,
RTEMS_DEFAULT_ATTRIBUTES,
RTEMS_NO_PRIORITY,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_semaphore_create with illegal name"
);
puts( "TA1 - rtems_semaphore_create - RTEMS_INVALID_NAME" );
status = rtems_semaphore_create(
Semaphore_name[ 1 ],
1,
RTEMS_DEFAULT_ATTRIBUTES,
RTEMS_NO_PRIORITY,
&Semaphore_id[ 1 ]
);
directive_failed( status, "rtems_semaphore_create" );
puts( "TA1 - rtems_semaphore_create - 1 - RTEMS_SUCCESSFUL" );
status = rtems_semaphore_create(
Semaphore_name[ 2 ],
1,
RTEMS_BINARY_SEMAPHORE | RTEMS_PRIORITY | RTEMS_INHERIT_PRIORITY,
RTEMS_NO_PRIORITY,
&Semaphore_id[ 2 ]
);
directive_failed( status, "rtems_semaphore_create" );
puts( "TA1 - rtems_semaphore_create - 2 - RTEMS_SUCCESSFUL" );
do {
status = rtems_semaphore_create(
Semaphore_name[ 3 ],
1,
RTEMS_DEFAULT_ATTRIBUTES,
RTEMS_NO_PRIORITY,
&Junk_id
);
} while (status == RTEMS_SUCCESSFUL);
fatal_directive_status(
status,
RTEMS_TOO_MANY,
"rtems_semaphore_create of too many"
);
puts( "TA1 - rtems_semaphore_create - 3 - RTEMS_TOO_MANY" );
status = rtems_semaphore_create(
Semaphore_name[ 1 ],
1,
RTEMS_INHERIT_PRIORITY | RTEMS_BINARY_SEMAPHORE | RTEMS_FIFO,
RTEMS_NO_PRIORITY,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_NOT_DEFINED,
"rtems_semaphore_create of RTEMS_FIFO RTEMS_INHERIT_PRIORITY"
);
puts( "TA1 - rtems_semaphore_create - RTEMS_NOT_DEFINED" );
status = rtems_semaphore_create(
Semaphore_name[ 1 ],
1,
RTEMS_INHERIT_PRIORITY | RTEMS_COUNTING_SEMAPHORE | RTEMS_PRIORITY,
RTEMS_NO_PRIORITY,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_NOT_DEFINED,
"rtems_semaphore_create of RTEMS_COUNTING_SEMAPHORE RTEMS_INHERIT_PRIORITY"
);
puts( "TA1 - rtems_semaphore_create - RTEMS_NOT_DEFINED" );
status = rtems_semaphore_create(
Semaphore_name[ 1 ],
2,
RTEMS_BINARY_SEMAPHORE,
RTEMS_NO_PRIORITY,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_semaphore_create of binary semaphore with count > 1"
);
puts( "TA1 - rtems_semaphore_create - RTEMS_INVALID_NUMBER" );
/*
* The check for an object being global is only made if
* multiprocessing is enabled.
*/
#if defined(RTEMS_MULTIPROCESSING)
status = rtems_semaphore_create(
Semaphore_name[ 3 ],
1,
RTEMS_GLOBAL,
RTEMS_NO_PRIORITY,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_MP_NOT_CONFIGURED,
"rtems_semaphore_create of mp not configured"
);
#endif
puts( "TA1 - rtems_semaphore_create - RTEMS_MP_NOT_CONFIGURED" );
status = rtems_semaphore_delete( 100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_semaphore_delete with illegal id"
);
puts( "TA1 - rtems_semaphore_delete - unknown RTEMS_INVALID_ID" );
status = rtems_semaphore_delete( 0x010100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_semaphore_delete with local illegal id"
);
puts( "TA1 - rtems_semaphore_delete - local RTEMS_INVALID_ID" );
status = rtems_semaphore_ident( 100, RTEMS_SEARCH_ALL_NODES, &Junk_id );
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_semaphore_ident will illegal name (local)"
);
puts( "TA1 - rtems_semaphore_ident - global RTEMS_INVALID_NAME" );
status = rtems_semaphore_ident( 100, 1, &Junk_id );
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_semaphore_ident will illegal name (global)"
);
puts( "TA1 - rtems_semaphore_ident - local RTEMS_INVALID_NAME" );
}

View File

@@ -1,124 +0,0 @@
/* Screen6
*
* This routine generates error screen 6 for test 9.
*
* 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 "system.h"
void Screen6()
{
rtems_status_code status;
status = rtems_semaphore_obtain(
100,
RTEMS_DEFAULT_OPTIONS,
RTEMS_NO_TIMEOUT
);
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_semaphore_obtain with illegal id"
);
puts( "TA1 - rtems_semaphore_obtain - RTEMS_INVALID_ID" );
status = rtems_semaphore_obtain(
Semaphore_id[ 1 ],
RTEMS_DEFAULT_OPTIONS,
RTEMS_NO_TIMEOUT
);
directive_failed( status, "rtems_semaphore_obtain successful" );
puts( "TA1 - rtems_semaphore_obtain - got sem 1 - RTEMS_SUCCESSFUL" );
status = rtems_semaphore_obtain(
Semaphore_id[ 1 ],
RTEMS_NO_WAIT,
RTEMS_NO_TIMEOUT
);
fatal_directive_status(
status,
RTEMS_UNSATISFIED,
"rtems_semaphore_obtain not available"
);
puts( "TA1 - rtems_semaphore_obtain - RTEMS_UNSATISFIED" );
puts( "TA1 - rtems_semaphore_obtain - timeout in 3 seconds" );
status = rtems_semaphore_obtain(
Semaphore_id[ 1 ],
RTEMS_DEFAULT_OPTIONS,
3 * TICKS_PER_SECOND
);
fatal_directive_status(
status,
RTEMS_TIMEOUT,
"rtems_semaphore_obtain timeout"
);
puts( "TA1 - rtems_semaphore_obtain - woke up with RTEMS_TIMEOUT" );
status = rtems_semaphore_release( Semaphore_id[ 2 ] );
fatal_directive_status(
status,
RTEMS_NOT_OWNER_OF_RESOURCE,
"rtems_semaphore_release and not owner"
);
puts( "TA1 - rtems_semaphore_release - RTEMS_NOT_OWNER_OF_RESOURCE" );
status = rtems_semaphore_release( 100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_semaphore_release with illegal id"
);
puts( "TA1 - rtems_semaphore_release - RTEMS_INVALID_ID" );
puts( "TA1 - rtems_task_start - start TA2 - RTEMS_SUCCESSFUL" );
status = rtems_task_start( Task_id[ 2 ], Task_2, 0 );
directive_failed( status, "rtems_task_start of TA2" );
puts( "TA1 - rtems_task_wake_after - yield processor - RTEMS_SUCCESSFUL" );
status = rtems_task_wake_after( RTEMS_YIELD_PROCESSOR );
directive_failed( status, "rtems_task_wake_after (yield)" );
puts( "TA1 - rtems_semaphore_delete - delete sem 1 - RTEMS_SUCCESSFUL" );
status = rtems_semaphore_delete( Semaphore_id[ 1 ] );
directive_failed( status, "rtems_semaphore_delete of SM1" );
puts( "TA1 - rtems_semaphore_obtain - binary semaphore" );
status = rtems_semaphore_obtain(
Semaphore_id[ 2 ],
RTEMS_DEFAULT_OPTIONS,
RTEMS_NO_TIMEOUT
);
directive_failed( status, "rtems_semaphore_obtain");
puts( "TA1 - rtems_semaphore_delete - delete sem 2 - RTEMS_RESOURCE_IN_USE" );
status = rtems_semaphore_delete( Semaphore_id[ 2 ] );
fatal_directive_status(
status,
RTEMS_RESOURCE_IN_USE,
"rtems_semaphore_delete of SM2"
);
puts( "TA1 - rtems_task_wake_after - yield processor - RTEMS_SUCCESSFUL" );
status = rtems_task_wake_after( RTEMS_YIELD_PROCESSOR );
directive_failed( status, "rtems_task_wake_after (yield)" );
status = rtems_task_delete( Task_id[ 2 ] );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_task_delete after the task has been deleted"
);
}

View File

@@ -1,208 +0,0 @@
/* Screen7
*
* This routine generates error screen 7 for test 9.
*
* 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 "system.h"
#define MESSAGE_SIZE (sizeof(long) * 4)
void Screen7()
{
long buffer[ 4 ];
rtems_unsigned32 size;
rtems_unsigned32 count;
rtems_status_code status;
status = rtems_message_queue_broadcast( 100, buffer, MESSAGE_SIZE, &count );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_message_queue_broadcast with illegal id"
);
puts( "TA1 - rtems_message_queue_broadcast - RTEMS_INVALID_ID" );
status = rtems_message_queue_create(
0,
3,
MESSAGE_SIZE,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_message_queue_create with illegal name"
);
puts( "TA1 - rtems_message_queue_create - Q 1 - RTEMS_INVALID_NAME" );
/*
* The check for an object being global is only made if
* multiprocessing is enabled.
*/
#if defined(RTEMS_MULTIPROCESSING)
status = rtems_message_queue_create(
Queue_name[ 1 ],
1,
MESSAGE_SIZE,
RTEMS_GLOBAL,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_MP_NOT_CONFIGURED,
"rtems_message_queue_create of mp not configured"
);
#endif
puts( "TA1 - rtems_message_queue_create - Q 1 - RTEMS_MP_NOT_CONFIGURED" );
status = rtems_message_queue_create(
Queue_name[ 1 ],
2,
MESSAGE_SIZE,
RTEMS_DEFAULT_ATTRIBUTES,
&Queue_id[ 1 ]
);
directive_failed( status, "rtems_message_queue_create successful" );
puts(
"TA1 - rtems_message_queue_create - Q 1 - 2 DEEP - RTEMS_SUCCESSFUL"
);
status = rtems_message_queue_create(
Queue_name[ 2 ],
1,
MESSAGE_SIZE,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_TOO_MANY,
"rtems_message_queue_create of too many"
);
puts( "TA1 - rtems_message_queue_create - Q 2 - RTEMS_TOO_MANY" );
status = rtems_message_queue_delete( 100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_message_queue_create with illegal id"
);
puts( "TA1 - rtems_message_queue_delete - unknown RTEMS_INVALID_ID" );
status = rtems_message_queue_delete( 0x10100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_message_queue_delete with local illegal id"
);
puts( "TA1 - rtems_message_queue_delete - local RTEMS_INVALID_ID" );
status = rtems_message_queue_ident( 100, RTEMS_SEARCH_ALL_NODES, &Junk_id );
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_message_queue_ident with illegal name"
);
puts( "TA1 - rtems_message_queue_ident - RTEMS_INVALID_NAME" );
status = rtems_message_queue_get_number_pending( 100, &count );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_message_queue_get_number_pending with illegal id"
);
puts( "TA1 - rtems_message_queue_get_number_pending - RTEMS_INVALID_ID" );
status = rtems_message_queue_flush( 100, &count );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_message_queue_flush with illegal id"
);
puts( "TA1 - rtems_message_queue_flush - RTEMS_INVALID_ID" );
status = rtems_message_queue_receive(
100,
(long (*)[4]) buffer,
&size,
RTEMS_DEFAULT_OPTIONS,
0
);
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_message_queue_receive wit illegal id"
);
puts( "TA1 - rtems_message_queue_receive - RTEMS_INVALID_ID" );
status = rtems_message_queue_receive(
Queue_id[ 1 ],
(long (*)[4]) buffer,
&size,
RTEMS_NO_WAIT,
RTEMS_NO_TIMEOUT
);
fatal_directive_status(
status,
RTEMS_UNSATISFIED,
"rtems_message_queue_receive unsatisfied"
);
puts( "TA1 - rtems_message_queue_receive - Q 1 - RTEMS_UNSATISFIED" );
puts( "TA1 - rtems_message_queue_receive - Q 1 - timeout in 3 seconds" );
status = rtems_message_queue_receive(
Queue_id[ 1 ],
(long (*)[4]) buffer,
&size,
RTEMS_DEFAULT_OPTIONS,
3 * TICKS_PER_SECOND
);
fatal_directive_status(
status,
RTEMS_TIMEOUT,
"rtems_message_queue_receive 3 second timeout"
);
puts(
"TA1 - rtems_message_queue_receive - Q 1 - woke up with RTEMS_TIMEOUT"
);
status = rtems_message_queue_send( 100, buffer, MESSAGE_SIZE );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_message_queue_send with illegal id"
);
puts( "TA1 - rtems_message_queue_send - RTEMS_INVALID_ID" );
status = rtems_message_queue_send( Queue_id[ 1 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
puts( "TA1 - rtems_message_queue_send - BUFFER 1 TO Q 1 - RTEMS_SUCCESSFUL" );
status = rtems_message_queue_send( Queue_id[ 1 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
puts( "TA1 - rtems_message_queue_send - BUFFER 2 TO Q 1 - RTEMS_SUCCESSFUL" );
status = rtems_message_queue_send( Queue_id[ 1 ], buffer, MESSAGE_SIZE );
fatal_directive_status(
status,
RTEMS_TOO_MANY,
"rtems_message_queue_send too many to a limited queue"
);
puts( "TA1 - rtems_message_queue_send - BUFFER 3 TO Q 1 - RTEMS_TOO_MANY" );
}

View File

@@ -1,129 +0,0 @@
/* Screen8
*
* This routine generates error screen 8 for test 9.
*
* 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 "system.h"
#define MESSAGE_SIZE (sizeof(long) * 4)
void Screen8()
{
long buffer[ 4 ];
rtems_status_code status;
status = rtems_message_queue_delete( Queue_id[ 1 ] );
directive_failed( status, "rtems_message_queue_delete successful" );
puts( "TA1 - rtems_message_queue_delete - Q 1 - RTEMS_SUCCESSFUL" );
status = rtems_message_queue_create(
Queue_name[ 1 ],
2,
MESSAGE_SIZE,
RTEMS_DEFAULT_ATTRIBUTES,
&Queue_id[ 1 ]
);
directive_failed( status, "rtems_message_queue_create successful" );
puts(
"TA1 - rtems_message_queue_create - Q 1 - 2 DEEP - RTEMS_SUCCESSFUL"
);
status = rtems_message_queue_send( Queue_id[ 1 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send successful" );
puts( "TA1 - rtems_message_queue_send - BUFFER 1 TO Q 1 - RTEMS_SUCCESSFUL" );
status = rtems_message_queue_send( Queue_id[ 1 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send successful" );
puts( "TA1 - rtems_message_queue_send - BUFFER 2 TO Q 1 - RTEMS_SUCCESSFUL" );
status = rtems_message_queue_send( Queue_id[ 1 ], buffer, MESSAGE_SIZE );
fatal_directive_status(
status,
RTEMS_TOO_MANY,
"rtems_message_queue_send too many to limited queue"
);
puts( "TA1 - rtems_message_queue_send - BUFFER 3 TO Q 1 - RTEMS_TOO_MANY" );
status = rtems_message_queue_delete( Queue_id[ 1 ] );
directive_failed( status, "rtems_message_queue_delete successful" );
puts( "TA1 - rtems_message_queue_delete - Q 1 - RTEMS_SUCCESSFUL" );
status = rtems_message_queue_create(
Queue_name[ 1 ],
3,
MESSAGE_SIZE,
RTEMS_DEFAULT_ATTRIBUTES,
&Queue_id[ 1 ]
);
directive_failed( status, "rtems_message_queue_create successful" );
puts(
"TA1 - rtems_message_queue_create - Q 1 - 3 DEEP - RTEMS_SUCCESSFUL"
);
status = rtems_message_queue_send( Queue_id[ 1 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send successful" );
puts( "TA1 - rtems_message_queue_send - BUFFER 1 TO Q 1 - RTEMS_SUCCESSFUL" );
status = rtems_message_queue_send( Queue_id[ 1 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send successful" );
puts( "TA1 - rtems_message_queue_send - BUFFER 2 TO Q 1 - RTEMS_SUCCESSFUL" );
status = rtems_message_queue_send( Queue_id[ 1 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send successful" );
puts( "TA1 - rtems_message_queue_send - BUFFER 3 TO Q 1 - RTEMS_SUCCESSFUL" );
status = rtems_message_queue_send( Queue_id[ 1 ], buffer, MESSAGE_SIZE );
fatal_directive_status(
status,
RTEMS_TOO_MANY,
"rtems_message_queue_send too many to limited queue"
);
puts(
"TA1 - rtems_message_queue_send - BUFFER 4 TO Q 1 - RTEMS_TOO_MANY"
);
status = rtems_message_queue_delete( Queue_id[ 1 ] );
directive_failed( status, "rtems_message_queue_delete successful" );
puts( "TA1 - rtems_message_queue_delete - Q 1 - RTEMS_SUCCESSFUL" );
status = rtems_message_queue_create(
Queue_name[ 1 ],
3,
MESSAGE_SIZE,
RTEMS_DEFAULT_ATTRIBUTES,
&Queue_id[ 1 ]
);
directive_failed( status, "rtems_message_queue_create successful" );
puts(
"TA1 - rtems_message_queue_create - Q 1 - 3 DEEP - RTEMS_SUCCESSFUL"
);
puts( "TA1 - rtems_task_start - start TA3 - RTEMS_SUCCESSFUL" );
status = rtems_task_start( Task_id[ 3 ], Task_3, 0 );
directive_failed( status, "rtems_task_start of TA3" );
puts( "TA1 - rtems_task_wake_after - yield processor - RTEMS_SUCCESSFUL" );
status = rtems_task_wake_after( RTEMS_YIELD_PROCESSOR );
directive_failed( status, "rtems_task_wake_after (yield)" );
puts( "TA1 - rtems_message_queue_delete - delete Q 1 - RTEMS_SUCCESSFUL" );
status = rtems_message_queue_delete( Queue_id[ 1 ] );
directive_failed( status, "rtems_message_queue_delete successful" );
puts( "TA1 - rtems_task_wake_after - yield processor - RTEMS_SUCCESSFUL" );
status = rtems_task_wake_after( RTEMS_YIELD_PROCESSOR );
directive_failed( status, "rtems_task_wake_after (yield)" );
}

View File

@@ -1,163 +0,0 @@
/* Screen9
*
* This routine generates error screen 9 for test 9.
*
* 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 "system.h"
void Screen9()
{
void *converted;
rtems_status_code status;
rtems_isr_entry old_service_routine;
status = rtems_interrupt_catch(
Service_routine,
ISR_INTERRUPT_MAXIMUM_VECTOR_NUMBER + 10,
&old_service_routine
);
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_interrupt_catch with invalid vector"
);
puts( "TA1 - rtems_interrupt_catch - RTEMS_INVALID_NUMBER" );
#if defined(_C3x) || defined(_C4x)
puts( "TA1 - rtems_interrupt_catch - bad handler RTEMS_INVALID_ADDRESS -- SKIPPED" );
#else
status = rtems_interrupt_catch( NULL, 3, &old_service_routine );
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_interrupt_catch with invalid handler"
);
puts( "TA1 - rtems_interrupt_catch - bad handler RTEMS_INVALID_ADDRESS" );
#endif
#if defined(_C3x) || defined(_C4x)
puts( "TA1 - rtems_interrupt_catch - old isr RTEMS_INVALID_ADDRESS - SKIPPED" );
#else
status = rtems_interrupt_catch( Service_routine, 3, NULL );
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_interrupt_catch with invalid old isr pointer"
);
puts( "TA1 - rtems_interrupt_catch - old isr RTEMS_INVALID_ADDRESS" );
#endif
status = rtems_signal_send( 100, RTEMS_SIGNAL_1 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_signal_send with illegal id"
);
puts( "TA1 - rtems_signal_send - RTEMS_INVALID_ID" );
status = rtems_signal_send( RTEMS_SELF, RTEMS_SIGNAL_16 );
fatal_directive_status(
status,
RTEMS_NOT_DEFINED,
"rtems_signal_send with no handler"
);
puts( "TA1 - rtems_signal_send - RTEMS_NOT_DEFINED" );
status = rtems_port_create(
0,
Internal_port_area,
External_port_area,
sizeof( Internal_port_area ),
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_port_create with illegal name"
);
puts( "TA1 - rtems_port_create - RTEMS_INVALID_NAME" );
#if defined(_C3x) || defined(_C4x)
puts( "TA1 - rtems_port_create - RTEMS_INVALID_ADDRESS - SKIPPED" );
#else
status = rtems_port_create(
Port_name[ 1 ],
&((char *)Internal_port_area)[ 1 ],
External_port_area,
sizeof( Internal_port_area ),
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_port_create with illegal address"
);
puts( "TA1 - rtems_port_create - RTEMS_INVALID_ADDRESS" );
#endif
status = rtems_port_create(
Port_name[ 1 ],
Internal_port_area,
External_port_area,
sizeof( Internal_port_area ),
&Junk_id
);
fatal_directive_status(
status,
RTEMS_TOO_MANY,
"rtems_port_create of too many"
);
puts( "TA1 - rtems_port_create - RTEMS_TOO_MANY" );
status = rtems_port_delete( 0 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_port_delete with illegal id"
);
puts( "TA1 - rtems_port_delete - RTEMS_INVALID_ID" );
status = rtems_port_ident( 0, &Junk_id );
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_port_ident with illegal name"
);
puts( "TA1 - rtems_port_ident - RTEMS_INVALID_NAME" );
status = rtems_port_external_to_internal(
100,
Internal_port_area,
&converted
);
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_port_external_to_internal with illegal id"
);
puts( "TA1 - rtems_port_external_to_internal - RTEMS_INVALID_ID" );
status = rtems_port_internal_to_external(
100,
Internal_port_area,
&converted
);
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_port_internal_to_external with illegal id"
);
puts( "TA1 - rtems_port_internal_to_external - RTEMS_INVALID_ID" );
}

View File

@@ -1,163 +0,0 @@
/* Screen10
*
* This routine generates error screen 10 for test 9.
*
* 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 "system.h"
void Screen10()
{
rtems_status_code status;
status = rtems_rate_monotonic_create( 0, &Junk_id );
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_rate_monotonic_create with illegal name"
);
puts( "TA1 - rtems_rate_monotonic_create - RTEMS_INVALID_NAME" );
status = rtems_rate_monotonic_create( Period_name[ 1 ], &Period_id[ 1 ] );
directive_failed( status, "rtems_rate_monotonic_create successful" );
puts( "TA1 - rtems_rate_monotonic_create - RTEMS_SUCCESSFUL" );
status = rtems_rate_monotonic_create( Period_name[ 1 ], &Junk_id );
fatal_directive_status(
status,
RTEMS_TOO_MANY,
"rtems_rate_monotonic_create of too many"
);
puts( "TA1 - rtems_rate_monotonic_create - RTEMS_TOO_MANY" );
status = rtems_rate_monotonic_ident( 0, &Junk_id );
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_rate_monotonic_ident with illegal name"
);
puts( "TA1 - rtems_rate_monotonic_ident - RTEMS_INVALID_NAME" );
status = rtems_rate_monotonic_period( 100, 5 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_rate_monotonic_period with illegal id"
);
puts( "TA1 - rtems_rate_monotonic_period - unknown RTEMS_INVALID_ID" );
status = rtems_rate_monotonic_period( 0x10100, 5 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_rate_monotonic_period with illegal id"
);
puts( "TA1 - rtems_rate_monotonic_period - local RTEMS_INVALID_ID" );
status = rtems_rate_monotonic_period( Period_id[ 1 ], RTEMS_PERIOD_STATUS );
fatal_directive_status(
status,
RTEMS_NOT_DEFINED,
"rtems_rate_monotonic_period status not defined"
);
puts(
"TA1 - rtems_rate_monotonic_period(RTEMS_PERIOD_STATUS) - RTEMS_NOT_DEFINED"
);
status = rtems_rate_monotonic_period( Period_id[ 1 ], 100 );
directive_failed( status, "rtems_rate_monotonic_period successful" );
puts( "TA1 - rtems_rate_monotonic_period - 100 ticks - RTEMS_SUCCESSFUL" );
status = rtems_rate_monotonic_period( Period_id[ 1 ], RTEMS_PERIOD_STATUS );
directive_failed( status, "rtems_rate_monotonic_period status" );
puts(
"TA1 - rtems_rate_monotonic_period(RTEMS_PERIOD_STATUS) - RTEMS_SUCCESSFUL"
);
while ( FOREVER ) {
status = rtems_rate_monotonic_period(Period_id[ 1 ], RTEMS_PERIOD_STATUS);
if ( status == RTEMS_TIMEOUT ) break;
directive_failed(
status,
"rtems_rate_monotonic_period waiting for timeout"
);
}
puts(
"TA1 - rtems_rate_monotonic_period(RTEMS_PERIOD_STATUS) - RTEMS_TIMEOUT"
);
status = rtems_rate_monotonic_cancel( 100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_rate_monotonic_cancel with illegal id"
);
puts( "TA1 - rtems_rate_monotonic_cancel - unknown RTEMS_INVALID_ID" );
status = rtems_rate_monotonic_cancel( 0x10100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_rate_monotonic_cancel will illegal id"
);
puts( "TA1 - rtems_rate_monotonic_cancel - local RTEMS_INVALID_ID" );
status = rtems_rate_monotonic_cancel( Period_id[ 1 ] );
directive_failed( status, "rtems_rate_monotonic_cancel" );
puts( "TA1 - rtems_rate_monotonic_cancel - RTEMS_SUCCESSFUL" );
status = rtems_rate_monotonic_period( Period_id[ 1 ], 5 );
directive_failed( status, "rtems_rate_monotonic_period restart" );
status = rtems_task_wake_after( 1 * TICKS_PER_SECOND );
directive_failed( status, "rtems_task_wake_after" );
status = rtems_rate_monotonic_period( Period_id[ 1 ], 5 );
fatal_directive_status(
status,
RTEMS_TIMEOUT,
"rtems_rate_monotonic_period"
);
puts( "TA1 - rtems_rate_monotonic_period - 5 ticks - RTEMS_TIMEOUT" );
status = rtems_task_start( Task_id[ 4 ], Task_4, 0 );
directive_failed( status, "rtems_task_start of TA4" );
puts( "TA1 - yielding to TA4" );
status = rtems_task_wake_after( RTEMS_YIELD_PROCESSOR );
status = rtems_rate_monotonic_delete( 100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_rate_monotonic_delete with illegal id"
);
puts( "TA1 - rtems_rate_monotonic_delete - unknown RTEMS_INVALID_ID" );
status = rtems_rate_monotonic_delete( 0x10100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_rate_monotonic_delete with illegal id"
);
puts( "TA1 - rtems_rate_monotonic_delete - local RTEMS_INVALID_ID" );
status = rtems_rate_monotonic_delete( Period_id[ 1 ] );
directive_failed( status, "rtems_rate_monotonic_delete" );
puts( "TA1 - rtems_rate_monotonic_delete - RTEMS_SUCCESSFUL" );
}

View File

@@ -1,264 +0,0 @@
/* Screen11
*
* This routine generates error screen 11 for test 9.
*
* 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 "system.h"
void Screen11()
{
void *buffer_address_1;
void *buffer_address_2;
void *buffer_address_3;
rtems_status_code status;
status = rtems_partition_create(
0,
Partition_good_area,
128,
40,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_partition_create with illegal name"
);
puts( "TA1 - rtems_partition_create - RTEMS_INVALID_NAME" );
status = rtems_partition_create(
Partition_name[ 1 ],
Partition_good_area,
0,
80,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_SIZE,
"rtems_partition_create with illegal length"
);
puts( "TA1 - rtems_partition_create - length - RTEMS_INVALID_SIZE" );
status = rtems_partition_create(
Partition_name[ 1 ],
Partition_good_area,
128,
0,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_SIZE,
"rtems_partition_create with illegal buffer size"
);
puts( "TA1 - rtems_partition_create - buffer size - RTEMS_INVALID_SIZE" );
status = rtems_partition_create(
Partition_name[ 1 ],
Partition_good_area,
128,
256,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_SIZE,
"rtems_partition_create with buffer_size > length"
);
puts(
"TA1 - rtems_partition_create - length < buffer size - RTEMS_INVALID_SIZE"
);
/*
* The check for an object being global is only made if
* multiprocessing is enabled.
*/
#if defined(RTEMS_MULTIPROCESSING)
status = rtems_partition_create(
Partition_name[ 1 ],
Partition_good_area,
128,
64,
RTEMS_GLOBAL,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_MP_NOT_CONFIGURED,
"rtems_partition_create of global"
);
#endif
puts( "TA1 - rtems_partition_create - RTEMS_MP_NOT_CONFIGURED" );
#if defined(_C3x) || defined(_C4x)
puts( "TA1 - rtems_partition_create - RTEMS_INVALID_ADDRESS - SKIPPED" );
#else
status = rtems_partition_create(
Partition_name[ 1 ],
Partition_bad_area,
128,
64,
RTEMS_GLOBAL,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_partition_create with bad address"
);
puts( "TA1 - rtems_partition_create - RTEMS_INVALID_ADDRESS" );
#endif
#if defined(_C3x) || defined(_C4x)
puts( "TA1 - rtems_partition_create - RTEMS_INVALID_SIZE - SKIPPED" );
#else
status = rtems_partition_create(
Partition_name[ 1 ],
Partition_good_area,
128,
34,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_SIZE,
"rtems_partition_create with unaligned buffer_size"
);
puts( "TA1 - rtems_partition_create - RTEMS_INVALID_SIZE" );
#endif
status = rtems_partition_delete( 100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_partition_delete with illegal id"
);
puts( "TA1 - rtems_partition_delete - unknown RTEMS_INVALID_ID" );
status = rtems_partition_delete( 0x10100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_partition_delete with illegal id"
);
puts( "TA1 - rtems_partition_delete - local RTEMS_INVALID_ID" );
status = rtems_partition_get_buffer( 100, &buffer_address_1 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_partition_get_buffer with illegal id"
);
puts( "TA1 - rtems_partition_get_buffer - RTEMS_INVALID_ID" );
status = rtems_partition_ident( 0, RTEMS_SEARCH_ALL_NODES, &Junk_id );
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_partition_ident with illegal name"
);
puts( "TA1 - rtems_partition_ident - RTEMS_INVALID_NAME" );
status = rtems_partition_return_buffer( 100, buffer_address_1 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_partition_return_buffer with illegal id"
);
puts( "TA1 - rtems_partition_return_buffer - RTEMS_INVALID_ID" );
status = rtems_partition_create(
Partition_name[ 1 ],
Partition_good_area,
128,
64,
RTEMS_DEFAULT_ATTRIBUTES,
&Partition_id[ 1 ]
);
directive_failed( status, "rtems_partition_create" );
puts( "TA1 - rtems_partition_create - RTEMS_SUCCESSFUL" );
status = rtems_partition_create(
Partition_name[ 1 ],
Partition_good_area,
128,
32,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_TOO_MANY,
"rtems_partition_create of too many"
);
puts( "TA1 - rtems_partition_create - RTEMS_TOO_MANY" );
status = rtems_partition_get_buffer( Partition_id[ 1 ], &buffer_address_1 );
directive_failed( status, "rtems_partition_get_buffer");
puts( "TA1 - rtems_partition_get_buffer - RTEMS_SUCCESSFUL" );
status = rtems_partition_get_buffer( Partition_id[ 1 ], &buffer_address_2 );
directive_failed( status, "rtems_partition_get_buffer" );
puts( "TA1 - rtems_partition_get_buffer - RTEMS_SUCCESSFUL" );
status = rtems_partition_get_buffer( Partition_id[ 1 ], &buffer_address_3 );
fatal_directive_status(
status,
RTEMS_UNSATISFIED,
"rtems_partition_get_buffer unsatisfied"
);
puts( "TA1 - rtems_partition_get_buffer - RTEMS_UNSATISFIED" );
status = rtems_partition_delete( Partition_id[ 1 ] );
fatal_directive_status(
status,
RTEMS_RESOURCE_IN_USE,
"rtems_partition_delete with buffers in use"
);
puts( "TA1 - rtems_partition_delete - RTEMS_RESOURCE_IN_USE" );
status = rtems_partition_return_buffer(
Partition_id[ 1 ],
Region_good_area /* NOTE: Region Memory */
);
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_partition_return_buffer with buffer address out of partition"
);
puts(
"TA1 - rtems_partition_return_buffer - RTEMS_INVALID_ADDRESS - out of range"
);
status = rtems_partition_return_buffer(
Partition_id[ 1 ],
&Partition_good_area[ 7 ]
);
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_partition_return_buffer with buffer address not on boundary"
);
puts_nocr( "TA1 - rtems_partition_return_buffer - " );
puts ( "RTEMS_INVALID_ADDRESS - not on boundary");
}

View File

@@ -1,344 +0,0 @@
/* Screen12
*
* This routine generates error screen 12 for test 9.
*
* 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 "system.h"
void Screen12()
{
void *segment_address_1;
void *segment_address_2;
void *segment_address_3;
rtems_unsigned32 offset;
rtems_unsigned32 good_front_flag;
rtems_unsigned32 good_back_flag;
rtems_status_code status;
status = rtems_region_create(
0,
Region_good_area,
0x40,
32,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_region_create with illegal name"
);
puts( "TA1 - rtems_region_create - RTEMS_INVALID_NAME" );
#if defined(_C3x) || defined(_C4x)
puts( "TA1 - rtems_region_create - RTEMS_INVALID_ADDRESS - SKIPPED" );
#else
status = rtems_region_create(
Region_name[ 1 ],
Region_bad_area,
0x40,
32,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_region_create with illegal address"
);
puts( "TA1 - rtems_region_create - RTEMS_INVALID_ADDRESS" );
#endif
#if defined(_C3x) || defined(_C4x)
puts( "TA1 - rtems_region_create - RTEMS_INVALID_SIZE - SKIPPED" );
#else
status = rtems_region_create(
Region_name[ 1 ],
Region_good_area,
0x40,
34,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_INVALID_SIZE,
"rtems_region_create with illegal size"
);
puts( "TA1 - rtems_region_create - RTEMS_INVALID_SIZE" );
#endif
status = rtems_region_create(
Region_name[ 1 ],
&Region_good_area[ REGION_START_OFFSET ],
REGION_LENGTH,
0x40,
RTEMS_DEFAULT_ATTRIBUTES,
&Region_id[ 1 ]
);
directive_failed( status, "rtems_region_create" );
puts( "TA1 - rtems_region_create - RTEMS_SUCCESSFUL" );
status = rtems_region_create(
Region_name[ 1 ],
Region_good_area,
REGION_LENGTH,
0x40,
RTEMS_DEFAULT_ATTRIBUTES,
&Junk_id
);
fatal_directive_status(
status,
RTEMS_TOO_MANY,
"rtems_region_create of too many"
);
puts( "TA1 - rtems_region_create - RTEMS_TOO_MANY" );
status = rtems_region_delete( 100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_region_delete with illegal id"
);
puts( "TA1 - rtems_region_delete - unknown RTEMS_INVALID_ID" );
status = rtems_region_delete( 0x10100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_region_delete with illegal id"
);
puts( "TA1 - rtems_region_delete - local RTEMS_INVALID_ID" );
status = rtems_region_ident( 0, &Junk_id );
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_region_ident with illegal name"
);
puts( "TA1 - rtems_region_ident - RTEMS_INVALID_NAME" );
status = rtems_region_get_segment(
100,
0x40,
RTEMS_DEFAULT_OPTIONS,
RTEMS_NO_TIMEOUT,
&segment_address_1
);
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_region_get_segment with illegal id"
);
puts( "TA1 - rtems_region_get_segment - RTEMS_INVALID_ID" );
status = rtems_region_get_segment(
Region_id[ 1 ],
sizeof( Region_good_area ) * 2,
RTEMS_DEFAULT_OPTIONS,
RTEMS_NO_TIMEOUT,
&segment_address_1
);
fatal_directive_status(
status,
RTEMS_INVALID_SIZE,
"rtems_region_get_segment with illegal size"
);
puts( "TA1 - rtems_region_get_segment - RTEMS_INVALID_SIZE" );
status = rtems_region_get_segment(
Region_id[ 1 ],
384,
RTEMS_DEFAULT_OPTIONS,
RTEMS_NO_TIMEOUT,
&segment_address_1
);
directive_failed( status, "rtems_region_get_segment" );
puts( "TA1 - rtems_region_get_segment - RTEMS_SUCCESSFUL" );
status = rtems_region_get_segment(
Region_id[ 1 ],
REGION_LENGTH / 2,
RTEMS_NO_WAIT,
RTEMS_NO_TIMEOUT,
&segment_address_2
);
fatal_directive_status(
status,
RTEMS_UNSATISFIED,
"rtems_region_get_segment unsatisfied"
);
puts( "TA1 - rtems_region_get_segment - RTEMS_UNSATISFIED" );
puts( "TA1 - rtems_region_get_segment - timeout in 3 seconds" );
status = rtems_region_get_segment(
Region_id[ 1 ],
128,
RTEMS_DEFAULT_OPTIONS,
3 * TICKS_PER_SECOND,
&segment_address_3
);
fatal_directive_status(
status,
RTEMS_TIMEOUT,
"rtems_region_get_segment timeout"
);
puts( "TA1 - rtems_region_get_segment - woke up with RTEMS_TIMEOUT" );
status = rtems_region_delete( Region_id[ 1 ] );
fatal_directive_status(
status,
RTEMS_RESOURCE_IN_USE,
"rtems_region_delete with buffers in use"
);
puts( "TA1 - rtems_region_delete - RTEMS_RESOURCE_IN_USE" );
status = rtems_region_return_segment( 100, segment_address_1 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_region_return_segment with illegal id"
);
puts( "TA1 - rtems_region_return_segment - RTEMS_INVALID_ID" );
status = rtems_region_return_segment( Region_id[ 1 ], Region_good_area );
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_region_return_segment with illegal segment"
);
puts( "TA1 - rtems_region_return_segment - RTEMS_INVALID_ADDRESS" );
/*
* The following generate internal heap errors. Thus this code
* is subject to change if the heap code changes.
*/
puts( "TA1 - rtems_debug_disable - RTEMS_DEBUG_REGION" );
rtems_debug_disable( RTEMS_DEBUG_REGION );
#if 0
offset = (segment_address_1 - (void *)Region_good_area) / 4;
/* bad FRONT_FLAG error */
good_front_flag = Region_good_area[ offset - 1 ];
Region_good_area[ offset - 1 ] = good_front_flag + 2;
status = rtems_region_return_segment( Region_id[ 1 ], segment_address_1 );
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_region_return_segment with back_flag != front_flag"
);
puts( "TA1 - rtems_region_return_segment - RTEMS_INVALID_ADDRESS" );
Region_good_area[ offset - 1 ] = good_front_flag;
/* bad FRONT_FLAG error */
good_back_flag = Region_good_area[ offset - 2 ];
Region_good_area[ offset - 2 ] = 1024;
status = rtems_region_return_segment( Region_id[ 1 ], segment_address_1 );
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_region_return_segment with back_flag != front_flag"
);
puts( "TA1 - rtems_region_return_segment - RTEMS_INVALID_ADDRESS" );
Region_good_area[ offset - 2 ] = good_back_flag;
#else
offset = 0;
good_front_flag = 0;
good_back_flag = 0;
puts( "TA1 - rtems_region_return_segment - RTEMS_INVALID_ADDRESS - SKIPPED" );
puts( "TA1 - rtems_region_return_segment - RTEMS_INVALID_ADDRESS - SKIPPED" );
#endif
puts( "TA1 - rtems_debug_enable - RTEMS_DEBUG_REGION" );
rtems_debug_enable( RTEMS_DEBUG_REGION );
status = rtems_region_extend(
100,
Region_good_area,
128
);
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_region_extend with illegal id"
);
puts( "TA1 - rtems_region_extend - RTEMS_INVALID_ID" );
status = rtems_region_extend(
Region_id[ 1 ],
&Region_good_area[ REGION_START_OFFSET + 16 ],
128
);
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_region_extend with illegal starting address"
);
puts( "TA1 - rtems_region_extend - within heap - RTEMS_INVALID_ADDRESS" );
status = rtems_region_extend(
Region_id[ 1 ],
Region_bad_area,
128
);
fatal_directive_status(
status,
RTEMS_NOT_IMPLEMENTED,
"rtems_region_extend with unsupported starting address"
);
puts(
"TA1 - rtems_region_extend - non-contiguous lower - RTEMS_NOT_IMPLEMENTED"
);
status = rtems_region_extend(
Region_id[ 1 ],
&Region_good_area[ REGION_START_OFFSET - REGION_LENGTH ],
128
);
fatal_directive_status(
status,
RTEMS_NOT_IMPLEMENTED,
"rtems_region_extend with unsupported starting address"
);
puts(
"TA1 - rtems_region_extend - contiguous lower - RTEMS_NOT_IMPLEMENTED"
);
status = rtems_region_extend(
Region_id[ 1 ],
&Region_good_area[ REGION_START_OFFSET + REGION_LENGTH + 16 ],
128
);
fatal_directive_status(
status,
RTEMS_NOT_IMPLEMENTED,
"rtems_region_extend with unsupported starting address"
);
puts(
"TA1 - rtems_region_extend - non-contiguous higher - RTEMS_NOT_IMPLEMENTED"
);
}

View File

@@ -1,113 +0,0 @@
/* Screen13
*
* This routine generates error screen 13 for test 9.
*
* 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 "system.h"
void Screen13()
{
rtems_time_of_day time;
rtems_status_code status;
status = rtems_io_close( 0xffff, 0x0000, NULL);
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_io_close with bad major number"
);
puts( "TA1 - rtems_io_close - RTEMS_INVALID_NUMBER" );
status = rtems_io_control( 0xffff, 0x00000, NULL);
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_io_close with bad major number"
);
puts( "TA1 - rtems_io_control - RTEMS_INVALID_NUMBER" );
status = rtems_io_initialize( 0xffff, 0x00000, NULL);
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_io_initialize with bad major number"
);
puts( "TA1 - rtems_io_initialize - RTEMS_INVALID_NUMBER" );
status = rtems_io_open( 0xffff, 0x00000, NULL);
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_io_open with bad major number"
);
puts( "TA1 - rtems_io_open - RTEMS_INVALID_NUMBER" );
status = rtems_io_read( 0xffff, 0x00000, NULL);
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_io_read with bad major number"
);
puts( "TA1 - rtems_io_read - RTEMS_INVALID_NUMBER" );
status = rtems_io_write( 0xffff, 0x0ffff, NULL);
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_io_write with bad major number"
);
puts( "TA1 - rtems_io_write - RTEMS_INVALID_NUMBER" );
build_time( &time, 12, 31, 2000, 23, 59, 59, 0 );
status = rtems_clock_set( &time );
directive_failed( status, "rtems_clock_set" );
print_time( "TA1 - rtems_clock_set - ", &time, " - RTEMS_SUCCESSFUL\n" );
status = rtems_task_wake_after( 1 * TICKS_PER_SECOND );
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed( status, "rtems_clock_set" );
print_time( "TA1 - rtems_clock_get - ", &time, " - RTEMS_SUCCESSFUL\n" );
build_time( &time, 12, 31, 1999, 23, 59, 59, 0 );
status = rtems_clock_set( &time );
directive_failed( status, "rtems_clock_set" );
print_time( "TA1 - rtems_clock_set - ", &time, " - RTEMS_SUCCESSFUL\n" );
status = rtems_task_wake_after( 1 * TICKS_PER_SECOND );
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed( status, "rtems_clock_set" );
print_time( "TA1 - rtems_clock_get - ", &time, " - RTEMS_SUCCESSFUL\n" );
build_time( &time, 12, 31, 2100, 23, 59, 59, 0 );
status = rtems_clock_set( &time );
directive_failed( status, "rtems_clock_set" );
print_time( "TA1 - rtems_clock_set - ", &time, " - RTEMS_SUCCESSFUL\n" );
status = rtems_task_wake_after( 1 * TICKS_PER_SECOND );
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed( status, "rtems_clock_set" );
print_time( "TA1 - rtems_clock_get - ", &time, " - RTEMS_SUCCESSFUL\n" );
build_time( &time, 12, 31, 2099, 23, 59, 59, 0 );
status = rtems_clock_set( &time );
directive_failed( status, "rtems_clock_set" );
print_time( "TA1 - rtems_clock_set - ", &time, " - RTEMS_SUCCESSFUL\n" );
status = rtems_task_wake_after( 1 * TICKS_PER_SECOND );
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed( status, "rtems_clock_set" );
print_time( "TA1 - rtems_clock_get - ", &time, " - RTEMS_SUCCESSFUL\n" );
build_time( &time, 12, 31, 1991, 23, 59, 59, 0 );
status = rtems_clock_set( &time );
directive_failed( status, "rtems_clock_set" );
print_time( "TA1 - rtems_clock_set - ", &time, " - RTEMS_SUCCESSFUL\n" );
status = rtems_task_wake_after( 1 * TICKS_PER_SECOND );
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed( status, "rtems_clock_set" );
print_time( "TA1 - rtems_clock_get - ", &time, " - RTEMS_SUCCESSFUL\n" );
}

View File

@@ -1,245 +0,0 @@
/* Screen14
*
* This routine generates error screen 14 for test 9.
*
* 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 "system.h"
void Screen14()
{
rtems_status_code status;
rtems_time_of_day time;
status = rtems_timer_create( 0, &Junk_id );
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_timer_create with illegal name"
);
puts( "TA1 - rtems_timer_create - RTEMS_INVALID_NAME" );
status = rtems_timer_create( Timer_name[ 1 ], &Timer_id[ 1 ] );
directive_failed( status, "rtems_timer_create" );
puts( "TA1 - rtems_timer_create - 1 - RTEMS_SUCCESSFUL" );
status = rtems_timer_create( 2, &Junk_id );
fatal_directive_status(
status,
RTEMS_TOO_MANY,
"rtems_timer_create for too many"
);
puts( "TA1 - rtems_timer_create - 2 - RTEMS_TOO_MANY" );
status = rtems_timer_delete( 100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_timer_delete with illegal id"
);
puts( "TA1 - rtems_timer_delete - local RTEMS_INVALID_ID" );
status = rtems_timer_delete( 0x010100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_timer_delete with illegal id"
);
puts( "TA1 - rtems_timer_delete - global RTEMS_INVALID_ID" );
status = rtems_timer_ident( 0, &Junk_id );
fatal_directive_status(
status,
RTEMS_INVALID_NAME,
"rtems_timer_ident with illegal name"
);
puts( "TA1 - rtems_timer_ident - RTEMS_INVALID_NAME" );
status = rtems_timer_cancel( 0x010100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_timer_cancel with illegal id"
);
puts( "TA1 - rtems_timer_cancel - RTEMS_INVALID_ID" );
status = rtems_timer_reset( 0x010100 );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_timer_reset with illegal id"
);
puts( "TA1 - rtems_timer_reset - RTEMS_INVALID_ID" );
status = rtems_timer_reset( Timer_id[ 1 ] );
fatal_directive_status(
status,
RTEMS_NOT_DEFINED,
"rtems_timer_reset before initiated"
);
puts( "TA1 - rtems_timer_reset - RTEMS_NOT_DEFINED" );
status = rtems_timer_fire_after(
0x010100,
5 * TICKS_PER_SECOND,
Delayed_routine,
NULL
);
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_timer_fire_after illegal id"
);
puts( "TA1 - rtems_timer_fire_after - RTEMS_INVALID_ID" );
build_time( &time, 12, 31, 1994, 9, 0, 0, 0 );
status = rtems_timer_fire_when( 0x010100, &time, Delayed_routine, NULL );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_timer_fire_when with illegal id"
);
puts( "TA1 - rtems_timer_fire_when - RTEMS_INVALID_ID" );
status = rtems_timer_fire_after( Timer_id[ 1 ], 0, Delayed_routine, NULL );
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_timer_fire_after with 0 ticks"
);
puts( "TA1 - rtems_timer_fire_after - RTEMS_INVALID_NUMBER" );
build_time( &time, 2, 5, 1987, 8, 30, 45, 0 );
status = rtems_timer_fire_when( Timer_id[ 1 ], &time, Delayed_routine, NULL );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_timer_fire_when with illegal time"
);
print_time(
"TA1 - rtems_timer_fire_when - ",
&time,
" - RTEMS_INVALID_CLOCK\n"
);
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed( status, "rtems_clock_set" );
print_time( "TA1 - rtems_clock_get - ", &time, "\n" );
build_time( &time, 2, 5, 1990, 8, 30, 45, 0 );
status = rtems_timer_fire_when( Timer_id[ 1 ], &time, Delayed_routine, NULL );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_timer_fire_when before current time"
);
print_time(
"TA1 - rtems_timer_fire_when - ",
&time,
" - before RTEMS_INVALID_CLOCK\n"
);
/* timer server interface routines */
status = rtems_timer_server_fire_after( 0, 5, NULL, NULL );
fatal_directive_status(
status,
RTEMS_INCORRECT_STATE,
"rtems_timer_server_fire_after incorrect state"
);
puts( "TA1 - rtems_timer_server_fire_after - RTEMS_INCORRECT_STATE" );
status = rtems_timer_server_fire_when( 0, &time, NULL, NULL );
fatal_directive_status(
status,
RTEMS_INCORRECT_STATE,
"rtems_timer_server_fire_when incorrect state"
);
puts( "TA1 - rtems_timer_server_fire_when - RTEMS_INCORRECT_STATE" );
status =
rtems_timer_initiate_server( 0, 0, 0 );
fatal_directive_status(
status,
RTEMS_INVALID_PRIORITY,
"rtems_timer_initiate_server invalid priority"
);
puts( "TA1 - rtems_timer_initiate_server - RTEMS_INVALID_PRIORITY" );
status =
rtems_timer_initiate_server( RTEMS_TIMER_SERVER_DEFAULT_PRIORITY, 0, 0 );
directive_failed( status, "rtems_timer_initiate_server" );
puts( "TA1 - rtems_timer_initiate_server" );
status = rtems_timer_server_fire_after(
0x010100,
5 * TICKS_PER_SECOND,
Delayed_routine,
NULL
);
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_timer_server_fire_after illegal id"
);
puts( "TA1 - rtems_timer_server_fire_after - RTEMS_INVALID_ID" );
build_time( &time, 12, 31, 1994, 9, 0, 0, 0 );
status = rtems_timer_server_fire_when( 0x010100, &time, Delayed_routine, NULL );
fatal_directive_status(
status,
RTEMS_INVALID_ID,
"rtems_timer_server_fire_when with illegal id"
);
puts( "TA1 - rtems_timer_server_fire_when - RTEMS_INVALID_ID" );
status = rtems_timer_server_fire_after( Timer_id[ 1 ], 0, Delayed_routine, NULL );
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_timer_server_fire_after with 0 ticks"
);
puts( "TA1 - rtems_timer_server_fire_after - RTEMS_INVALID_NUMBER" );
build_time( &time, 2, 5, 1987, 8, 30, 45, 0 );
status = rtems_timer_server_fire_when( Timer_id[ 1 ], &time, Delayed_routine, NULL );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_timer_server_fire_when with illegal time"
);
print_time(
"TA1 - rtems_timer_server_fire_when - ",
&time,
" - RTEMS_INVALID_CLOCK\n"
);
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed( status, "rtems_clock_set" );
print_time( "TA1 - rtems_clock_get - ", &time, "\n" );
build_time( &time, 2, 5, 1990, 8, 30, 45, 0 );
status = rtems_timer_server_fire_when( Timer_id[ 1 ], &time, Delayed_routine, NULL );
fatal_directive_status(
status,
RTEMS_INVALID_CLOCK,
"rtems_timer_server_fire_when before current time"
);
print_time(
"TA1 - rtems_timer_server_fire_when - ",
&time,
" - before RTEMS_INVALID_CLOCK\n"
);
}

View File

@@ -1,35 +0,0 @@
#
# $Id$
#
# 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.
#
This file describes the directives and concepts tested by this test set.
test set name: test9
directives:
ex_init, ex_start, tm_tick, i_return,
t_create,t_delete, t_getreg, t_ident, t_restart, t_resume, t_setpri,
t_setreg, t_start, t_suspend, tm_delete, tm_get,
tm_set, tm_wkafter, tm_wkwhen, ev_receive, ev_send, sm_create, sm_delete,
sm_ident, sm_p, sm_v, q_broadcast, q_create, q_delete, q_ident, q_receive,
q_send, q_urgent, as_catch, as_send, as_return, rn_create, rn_delete,
rn_getseg, rn_ident, rn_retseg, pt_create, pt_delete, pt_getbug, pt_ident,
pt_retbuf, de_close, de_cntrl, de_init, de_open, de_read, de_write
concepts:
a. Verifies all error codes returned by the executive in single
processor configurations.
b. Verifies error conditions in the following kernel routines or macros:
_Ck_date_time, _Expired, _Q_submit, _Get_mnodes, _Get_node,
_Free_mem, _Get_mem, _Valid_block, _Set_tcb, _Set_resource,
_In_range, _On_boundary

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