* spsize/size.c: Make _System_state_Is_multiprocessing unused when
multiprocessing is not enabled. Saves one more variable from single
processor configuration.
PR 1212/cpukit
* Makefile.am, configure.ac: Time slicing will not happen if the task
mode is changed from a non-timeslicing mode to timeslicing mode if it
is done by the executing thread (e.g. in its task body). This change
includes sp44 to demonstrate the problem and verify the correction.
* sp44/.cvsignore, sp44/Makefile.am, sp44/init.c, sp44/sp44.scn: New files.
* sp28/init.c: Corrections to configuration.
* sp37/init.c: Correctly invoke rtems_interrupt_disable() body.
* spsize/size.c: _ISR_Vector_table only exists on architectures
which use the Simple Vectored Interrupt Model.
* spfatal/fatal.c, spfatal06/testcase.h, spfatal07/testcase.h,
spfatal08/testcase.h, spfatal09/testcase.h, spfatal10/testcase.h:
Refactored and renamed initialization routines to
rtems_initialize_data_structures, rtems_initialize_before_drivers,
rtems_initialize_device_drivers, and
rtems_initialize_start_multitasking. This opened the sequence up so
that bootcard() could provide a more robust and flexible framework
which is easier to explain and understand. This also lays the
groundwork for sharing the division of available memory between the
RTEMS workspace and heap and the C library initialization across all
BSPs.
* sp09/screen01.c, sp09/sp09.scn: Add more bad thread Id cases.
* sp40/init.c, sp40/sp40.scn: Add message to say test is TBD.
* sp41/sp41.scn: Now has content.
* sp43/init.c, sp43/sp43.scn: Enhanced to increase coverage of
Object Services recently added to API.
* Makefile.am, configure.ac, sp02/task1.c, sp24/resume.c,
sp30/resume.c, sp41/init.c, sp42/init.c: Add new Object Services
collection. This changed the name of a few previously public but
undocumented services and added a some new services.
* sp43/.cvsignore, sp43/Makefile.am, sp43/init.c, sp43/sp43.scn,
sp43/system.h: New files.
* sp28/init.c, sp28/sp28.scn, sp29/init.c, sp29/sp29.scn, sp32/init.c,
sp32/sp32.scn, sp33/init.c, sp33/sp33.scn, sp42/init.c: Fix end of
test messages.
* sp34/changepri.c, sp35/priinv.c: Convert the Objects_Name type from a
simple type to a union of an unsigned 32 bit integer and a pointer.
This should help eliminate weird casts between u32 and pointers in
various places. The APIs now have to explicitly call _u32 or _string
versions of helper routines. This should also simplify things and
eliminate the need for ugly casts in some cases.
Add sp42 to exercise thread queue with knowledge of the implementation
so we can exercise all of the normal paths possible.
* Makefile.am, configure.ac: Add sp42.
* sp42/.cvsignore, sp42/init.c, sp42/sp42.scn: New files.
* sp39/init.c: Add case for long timeout on blocking operation.
* Makefile.am, configure.ac: Add new test to exercise thread
queue blokcing synchronization. sp39 and sp41 are very similar.
* sp41/.cvsignore, sp41/Makefile.am, sp41/init.c, sp41/sp41.scn,
sp41/system.h: New files.
* Makefile.am, configure.ac: Add sp40 to test some cases of dynamic
driver registration.
* sp40/.cvsignore, sp40/Makefile.am, sp40/init.c, sp40/sp40.scn,
sp40/system.h: New files.
* sp09/screen07.c, sp09/screen12.c, sp09/screen14.c, sp09/sp09.scn
Add test cases for:
+ message queue create requesting too many message buffers
for the available memory
+ region extend with address inside existing heap
+ timer server initiate too large a stack, create error
* sp12/pritask.c, sp12/sp12.scn: Add test cases for:
+ task set priority while holding resource
* Makefile.am, configure.ac: Add support for proper stacking of
priority inheritance on mutexes as well as enforce proper order of
release.
* sp36/.cvsignore, sp36/Makefile.am, sp36/sp36.doc,
sp36/sp36.scn: New files.
* sp09/screen07.c, sp09/sp09.scn: Add test for
rtems_message_queue_broadcast for bad buffer and count pointers.
* sp30/init.c, sp30/sp30.scn: Add test for initiating timer server
with bad priority or initiating twice.
* sp37/sp37.scn, sp37/system.h: Add test for rtems_clock_tick when
it forces a dispatch.
* sp37/init.c: New file.
* Makefile.am, configure.ac: Add new tests for interrupt disable,
enable, flash, and is in progress. These are normally inlines but
also have bodies for non-C code. This test also exercises the odd
case of calling clock tick from outside an ISR.
* sp37/.cvsignore, sp37/Makefile.am, sp37/sp37.scn, sp37/system.h: New files.
* sp07/init.c, sp07/sp07.scn, sp07/task1.c: Add tests for
using notepad with the current task's ID or SELF
* sp09/screen02.c, sp09/screen04.c, sp09/sp09.scn: Add
test missing test cases for clock_get.
* spsize/size.c: Move interrupt_stack_size field from CPU Table to
Configuration Table. Eliminate CPU Table from all ports. Delete
references to CPU Table in all forms.
* sp07/sp07.scn, sp07/task1.c, sp09/screen01.c, sp09/screen05.c,
sp09/screen07.c, sp09/screen10.c, sp09/screen12.c, sp09/screen14.c,
sp09/sp09.scn, sp25/sp25.scn, sp25/task1.c: Added several test cases
to improve test coverage.