* Makefile.am, configure.ac, spwatchdog/system.h,
spwkspace/Makefile.am, spwkspace/init.c: Add shell of test for
printk. These will help coverage. Simplify spwkspace.
* spprintk/.cvsignore, spprintk/Makefile.am, spprintk/init.c,
spprintk/spprintk.scn: New files.
* spwkspace/system.h: Removed.
* Makefile.am, configure.ac: New test to exercise rtems_workspace_XXX
methods.
* spwkspace/.cvsignore, spwkspace/Makefile.am, spwkspace/init.c,
spwkspace/spwkspace.scn, spwkspace/system.h: New files.
PR 1388/cpukit
* sp09/screen05.c, sp09/screen09.c, sp09/sp09.scn: Classic Semaphores
allow both priority inherit and ceiling attributes to be set on
semaphore create. These attributes are mutually exclusive and this
should be an error.
* Makefile.am, configure.ac: Add sp48 which tests that configuring for
unlimited objects when configured for a unified workspace works as
expected.
* sp48/.cvsignore, sp48/Makefile.am, sp48/init.c, sp48/sp48.doc,
sp48/sp48.scn: New files.
* Makefile.am, configure.ac: Add new test to test Watchdog display
helper routines. These reach into the SuperCore.
* spwatchdog/.cvsignore, spwatchdog/Makefile.am, spwatchdog/delay.c,
spwatchdog/init.c, spwatchdog/prtime.c, spwatchdog/spwatchdog.scn,
spwatchdog/system.h, spwatchdog/task1.c: New files.
* sp09/screen05.c, sp09/screen07.c, sp09/screen10.c, sp09/screen11.c,
sp09/screen12.c, sp09/screen14.c: Use rtems_build_id rather than
hard-coded hex numbers for bad object Ids.
* sp15/system.h, sp19/system.h: Array of task names should be of type
rtems_name not rtems_id. Similarly array of task ids should be
rtems_id not rtems_name.
* Makefile.am, configure.ac, spfatal06/testcase.h,
spfatal07/testcase.h, spfatal08/testcase.h, spfatal09/testcase.h,
spsize/size.c: Eliminate pointers to API configuration tables in the
main configuration table. Reference the main configuration table and
the API configuration tables directly using the confdefs.h version
rather than obtaining a pointer to it. This eliminated some
variables, a potential fatal error, some unnecessary default
configuration structures. Overall, about a 4.5% reduction in the code
size for minimum and hello on the SPARC.
* spfatal10/.cvsignore, spfatal10/Makefile.am, spfatal10/spfatal10.scn,
spfatal10/testcase.h: Removed.
* sp07/init.c, sp12/init.c, sp12/pridrv.c, sp12/pritask.c,
sp12/system.h, sp16/system.h, sp25/system.h, sp26/task1.c,
sp28/init.c, sp29/init.c, sp35/priinv.c, sp42/init.c: Run all tests
successfully with maxixum number of priorities as 16 instead of 256.
This was done by temporarily modifying the score priority.h maximum.
This allowed testing of all API code to ensure that it worked
properly with a reduced number of priorities. Most modifications were
to switch from hard-coded maximum to using the API provided methods
to determine maximum number of priority levels.
PR 1348/cpukit
* Makefile.am, configure.ac: Add test of special case of resetting cpu
usage information while a period is running.
* sp46/.cvsignore, sp46/Makefile.am, sp46/init.c, sp46/sp46.doc,
sp46/sp46.scn: New files.
PR 1347/cpukit
* Makefile.am, configure.ac, sp30/resume.c, sp30/task1.c, sp31/delay.c:
Rework Timer Server to ensure that the context allows for blocking,
allocating memory, and acquiring semaphores and mutexes.
* sp45/.cvsignore, sp45/Makefile.am, sp45/sp45.doc, sp45/sp45.scn:
New files.
* sp09/screen07.c: Use INT_MAX as number of messages so always
properly sized and no overflow on constant.
* sp09/screen10.c: Delay so on targets with simulator idle clock
tick driver this will work.
* sp09/screen11.c, sp09/system.h: Move badly aligned objects to odd
byte boundaries rather than two byte boundaries.
* sp09/screen03.c, sp09/screen14.c: Skip tests which try to
allocate more memory than size_t holds on m32c.
* sp09/screen01.c, sp09/screen12.c, sp25/system.h, sp25/task1.c,
sp28/init.c, sp39/init.c, sp41/init.c, spfatal01/testcase.h,
spfatal08/testcase.h: Change size_t to ssize_t on all Heap, Workspace
and Region calls. On 16-bit architectures, size_t can be 16-bits
which would limit sizes to 64K. Also address constants which
overflowed on 16-bit integer targets.
* 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.