summaryrefslogtreecommitdiffstats
path: root/testsuites/sptests/spsysinit01 (follow)
Commit message (Collapse)AuthorAgeFilesLines
* posix: Add self-contained pthread spinlockSebastian Huber2016-11-231-17/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Turn pthread_spinlock_t into a self-contained object. On uni-processor configurations, interrupts are disabled in the lock/trylock operations and the previous interrupt status is restored in the corresponding unlock operations. On SMP configurations, a ticket lock is a acquired and released in addition. The self-contained pthread_spinlock_t object is defined by Newlib in <sys/_pthreadtypes.h>. typedef struct { struct _Ticket_lock_Control _lock; __uint32_t _interrupt_state; } pthread_spinlock_t; This implementation is simple and efficient. However, this test case of the Linux Test Project would fail due to call of printf() and sleep() during spin lock ownership: https://github.com/linux-test-project/ltp/blob/master/testcases/open_posix_testsuite/conformance/interfaces/pthread_spin_lock/1-2.c There is only limited support for profiling on SMP configurations. Delete CORE spinlock implementation. Update #2674.
* score: Refine system initialization orderSebastian Huber2016-06-201-0/+36
|
* sptests/spsysinit01: Move begin of test messageSebastian Huber2016-06-201-2/+7
|
* cpukit, testsuite: Add rtems_printf and rtems_printer support.Chris Johns2016-05-251-3/+5
| | | | | | | | | | | | | | | | | | | This change adds rtems_printf and related functions and wraps the RTEMS print plugin support into a user API. All references to the plugin are removed and replaced with the rtems_printer interface. Printk and related functions are made to return a valid number of characters formatted and output. The function attribute to check printf functions has been added to rtems_printf and printk. No changes to remove warrnings are part of this patch set. The testsuite has been moved over to the rtems_printer. The testsuite has a mix of rtems_printer access and direct print control via the tmacros.h header file. The support for begink/endk has been removed as it served no purpose and only confused the code base. The testsuite has not been refactored to use rtems_printf. This is future work.
* sptests/spsysinit01: Fix warningSebastian Huber2016-04-211-2/+2
|
* score: Use ISR lock for IO driver registrationSebastian Huber2016-03-141-0/+1
| | | | | | Create implementation header file. Update #2555.
* sptests/spsysinit01: Fix for RTEMS_DEBUGSebastian Huber2016-03-011-0/+8
| | | | Update #2408.
* Use linker set for POSIX User Threads initSebastian Huber2016-02-031-0/+31
| | | | Update #2408.
* Use linker set for Classic User Tasks initSebastian Huber2016-02-031-0/+14
| | | | Update #2408.
* Use linker set for MPCI initializationSebastian Huber2016-02-031-13/+0
| | | | Update #2408.
* Use linker set for libio initializationSebastian Huber2016-02-031-14/+24
| | | | Update #2408.
* Use linker set for root file system initializationSebastian Huber2016-02-031-0/+24
| | | | Update #2408.
* Optional POSIX Keys initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional CPU Set Handler initializationSebastian Huber2016-02-031-0/+13
| | | | Update #2408.
* Optional POSIX Spinlock initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional POSIX RWLock initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional POSIX Barrier initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional POSIX Timer initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional POSIX Semaphore initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional POSIX Message Queue initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional POSIX Mutex initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional POSIX Condition Variable initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional POSIX Cleanup initializationSebastian Huber2016-02-031-0/+26
| | | | Update #2408.
* Optional POSIX Threads initializationSebastian Huber2016-02-031-0/+21
| | | | Update #2408.
* Optional POSIX Signals initializationSebastian Huber2016-02-031-0/+36
| | | | Update #2408.
* Optional Classic Barrier initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional Classic Rate Monotonic initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional Classic Dual-Ported Memory initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional Classic Region initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional Classic Partition initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional Classic Semaphore initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional Classic Message Queue initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional Classic Event initializationSebastian Huber2016-02-031-0/+13
| | | | Update #2408.
* Optional Classic Signal initializationSebastian Huber2016-02-031-0/+13
| | | | Update #2408.
* Optional Classic Timer initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional Classic Tasks initializationSebastian Huber2016-02-031-0/+15
| | | | Update #2408.
* Optional Extensions initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* Optional Initial Extensions initializationSebastian Huber2016-02-031-0/+17
| | | | Update #2408.
* score: Create idle threads via linker setSebastian Huber2016-02-031-20/+56
| | | | | | This allows a more fine grained rtems_initialize_data_structures(). Update #2408.
* Use linker set for system initializationSebastian Huber2015-12-114-0/+210
Make rtems_initialize_data_structures(), rtems_initialize_before_drivers() and rtems_initialize_device_drivers() static. Rename rtems_initialize_start_multitasking() to rtems_initialize_executive() and call the registered system initialization handlers in this function. Add system initialization API available via #include <rtems/sysinit.h>. Update the documentation accordingly. This is no functional change, only the method to call the existing initialization routines changes. Instead of direct function calls a table of function pointers contained in the new RTEMS system initialization linker set is used. This table looks like this (the actual addresses depend on the target). nm *.exe | grep _Linker | sort 0201a2d0 D _Linker_set__Sysinit_begin 0201a2d0 D _Linker_set__Sysinit_bsp_work_area_initialize 0201a2d4 D _Linker_set__Sysinit_bsp_start 0201a2d8 D _Linker_set__Sysinit_rtems_initialize_data_structures 0201a2dc D _Linker_set__Sysinit_bsp_libc_init 0201a2e0 D _Linker_set__Sysinit_rtems_initialize_before_drivers 0201a2e4 D _Linker_set__Sysinit_bsp_predriver_hook 0201a2e8 D _Linker_set__Sysinit_rtems_initialize_device_drivers 0201a2ec D _Linker_set__Sysinit_bsp_postdriver_hook 0201a2f0 D _Linker_set__Sysinit_end Add test sptests/spsysinit01. Update #2408.