summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* aclocal/check-bsps.m4: Do not rely on bsp_specs to find BSP familiesJoel Sherrill2017-11-271-3/+3
| | | | Updates #3520.
* bootstrap: Remove reference to bsp_specs in determining BSP directoriesJoel Sherrill2017-11-271-1/+1
| | | | Updates #3520.
* gumstix/bsp_specs: Correct permissionsJoel Sherrill2017-11-271-0/+0
|
* ampolish3: Remove reference to bsp_specs in commentJoel Sherrill2017-11-271-1/+1
| | | | Updates #3520.
* powerpc/ss555/startup/linkcmds: Remove obsolete reference to bsp_specsJoel Sherrill2017-11-271-4/+0
| | | | Updates #3520.
* libbsp/*/*/configure.ac: Remove references to bsp_specs in AC_CONFIG_SRCDIRJoel Sherrill2017-11-2783-83/+83
| | | | Updates #3250.
* bsps: Provide <tm27.h> in each BSPSebastian Huber2017-11-27141-92/+144
| | | | | | | | | Since the <tm27.h> is highly BSP-dependent and used only by the tm27 test program we must provide this header file for each BSP. Without the preinstall build target each header file must have a unique source header file. Update #3254.
* Move Ada includesSebastian Huber2017-11-2744-41/+206
| | | | Update #3254.
* bsps: Remove empty tm27.h variantsSebastian Huber2017-11-2713-239/+8
| | | | Update #3254.
* Remove coverhd.hSebastian Huber2017-11-24266-2758/+125
| | | | | | | This header file contained timing overhead values which are hard to maintain. Update #3254.
* libtests/malloctest: Fix 64-bit targetsSebastian Huber2017-11-241-4/+6
| | | | Update #3082.
* libtests/stringto01: Fix 64-bit targetsSebastian Huber2017-11-241-2/+2
| | | | Update #3082.
* sptests/splinkersets01: Fix 64-bit targetsSebastian Huber2017-11-241-4/+16
| | | | Update #3082.
* ada/sp04: Fix clock getSebastian Huber2017-11-241-1/+1
| | | | Update #2676.
* tests: Use exponential backoff in locked_vprintf()Sebastian Huber2017-11-221-3/+19
| | | | | Without the exponential backoff a livelock was observed on a QorIQ P2020 with test SMP 5.
* bsp/qoriq: Implement bsp_reset()Sebastian Huber2017-11-221-5/+37
|
* bsps: Add BSP_VERBOSE_FATAL_EXTENSIONSebastian Huber2017-11-222-2/+25
| | | | | | | | Add BSP_VERBOSE_FATAL_EXTENSION to RTEMS_BSP_CLEANUP_OPTIONS to optionally print the RTEMS version, the fatal source and the fatal code in the shared bsp_fatal_extension(). Close #3248.
* bsps: Simplify RTEMS_BSP_CLEANUP_OPTIONSSebastian Huber2017-11-22118-102/+130
| | | | | | | | | Remove BSP-specific defaults for RTEMS_BSP_CLEANUP_OPTIONS to simplify the BSP configuration and documentation. Change defaults to: BSP_PRESS_KEY_FOR_RESET=0 BSP_RESET_BOARD_AT_EXIT=1 BSP_PRINT_EXCEPTION_CONTEXT=1
* powerpc: Remove _BSP_Fatal_error()Sebastian Huber2017-11-2223-274/+13
| | | | | | | BSPs can use the bsp_fatal_extension() to provide BSP-specific fatal error handling. There is no need for a _BSP_Fatal_error(). Close #3246.
* powerpc: Replace BSP_panic() with rtems_panic()Sebastian Huber2017-11-2247-192/+43
| | | | | | | | Due to a new rtems_panic() implementation, it is possible to replace the PowerPC-specific BSP_panic() with rtems_panic(). Remove BSP_panic() implementations. Close #3245.
* sapi: New implementation of rtems_panic()Sebastian Huber2017-11-227-34/+58
| | | | | | | | | | | | The previous rtems_panic() implementation was quite heavy weight. It depended on _exit() which calls the global destructors. It used fprintf(stderr, ...) for output which depends on an initialized console device and the complex fprintf(). Introduce a new fatal source RTEMS_FATAL_SOURCE_PANIC for rtems_panic() and output via vprintk(). Update #3244.
* INTERNAL_ERROR_POSIX_INIT_THREAD_ENTRY_IS_NULLSebastian Huber2017-11-223-9/+3
| | | | | | Delete superfluous INTERNAL_ERROR_POSIX_INIT_THREAD_ENTRY_IS_NULL. Update #3243.
* score: Simplify global constructionSebastian Huber2017-11-2213-122/+192
| | | | Update #3243.
* bsps: Add default getentropy() implementationSebastian Huber2017-11-222-0/+2
| | | | | Update #3239. Close #3249.
* Fix comments for object lookup error to RTEMS status mapMartin Erik Werner2017-11-211-3/+3
| | | | | | | | | | | | | | | | | | Based on correlation with the enum for object lookup errors in cpukit/score/include/rtems/score/objectimpl.h: typedef enum { OBJECTS_NAME_OR_ID_LOOKUP_SUCCESSFUL, OBJECTS_INVALID_NAME, OBJECTS_INVALID_ADDRESS, OBJECTS_INVALID_ID, OBJECTS_INVALID_NODE } Objects_Name_or_id_lookup_errors; update the comments regarding the object lookup error to status map to match. Signed-off-by: Martin Erik Werner <martin.werner@aacmicrotec.com>
* leon, gr1553rt: adding SMP protectionDaniel Hellstrom2017-11-211-113/+69
| | | | | | | | | Add device spin-lock around internal data structures. Since the driver provides a low-level C API accessing the descriptors the application still needs to implement part of the SMP synchonization needed between Interrupt handler and tasks. Close #2355.
* posix: _POSIX_Threads_Get_sched_param_sporadic()Sebastian Huber2017-11-213-9/+4
| | | | | | Remove api parameter to simplify the calling functions. Update #2514.
* score: Optimize scheduler priority updatesSebastian Huber2017-11-2028-870/+495
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Thread priority changes may append or prepend the thread to its priority group on the scheduler ready queue. Previously, a separate priority value and a prepend-it flag in the scheduler node were used to propagate a priority change to the scheduler. Now, use an append-it bit in the priority control and reduce the plain priority value to 63 bits. This change leads to a significant code size reduction (about 25%) of the SMP schedulers. The negligible increase of the standard priority scheduler is due to some additional shift operations (SCHEDULER_PRIORITY_MAP() and SCHEDULER_PRIORITY_UNMAP()). Before: text filename 136 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleblock.o 464 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimplechangepriority.o 24 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimple.o 108 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleschedule.o 292 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleunblock.o 264 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleyield.o text filename 280 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityblock.o 488 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerprioritychangepriority.o 200 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriority.o 164 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityschedule.o 328 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityunblock.o 200 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityyield.o text filename 24112 arm-rtems5/c/imx7/cpukit/score/src/libscore_a-scheduleredfsmp.o text filename 37204 sparc-rtems5/c/gr740/cpukit/score/src/libscore_a-scheduleredfsmp.o text filename 42236 powerpc-rtems5/c/qoriq_e6500_32/cpukit/score/src/libscore_a-scheduleredfsmp.o After: text filename 136 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleblock.o 272 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimplechangepriority.o 24 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimple.o 108 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleschedule.o 292 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleunblock.o 264 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleyield.o text filename 280 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityblock.o 488 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerprioritychangepriority.o 208 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriority.o 164 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityschedule.o 332 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityunblock.o 200 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityyield.o text filename 18860 arm-rtems5/c/imx7/cpukit/score/src/libscore_a-scheduleredfsmp.o text filename 28520 sparc-rtems5/c/gr740/cpukit/score/src/libscore_a-scheduleredfsmp.o text filename 32664 powerpc-rtems5/c/qoriq_e6500_32/cpukit/score/src/libscore_a-scheduleredfsmp.o
* bsps/powerpc: Fix PPC_EXC_CONFIG_USE_FIXED_HANDLERSebastian Huber2017-11-204-12/+17
| | | | | | For the SPE support we must store the upper half of r3 as well. Update #3085.
* bsps: Use a state in default getentropy()Sebastian Huber2017-11-201-25/+40
| | | | | | | | | Use the boot time to initialize the state. Use the state, the current CPU counter and a very simple pseudo random number generator for getentropy(). At least, this enables to pass the test "GETENTROPY 1" on ERC32. Update #3239.
* bsp/atsam: Add timing for RAM mt48lc16m16a2p-6a.Christian Mauderer2017-11-172-0/+58
|
* bsp/atsam: Improve SDRAM initialization.Christian Mauderer2017-11-171-0/+20
| | | | | According to the manual, MR has to be read back and a memory barrier has to be added after MR is written during SDRAM initialization.
* bsp/atsam: Move clock and SDRAM init to SRAM.Christian Mauderer2017-11-179-22/+95
| | | | | | If necessary, the BSP can now have it's clock and SDRAM initialization in the SRAM instead of the SDRAM. This allows to change the clock frequency during the startup of an SDRAM application.
* bsp/atsam: Make clock application configurable.Christian Mauderer2017-11-1714-24/+156
|
* bsp/atsam: Add getentropy().Christian Mauderer2017-11-172-1/+62
| | | | Update #3239.
* getentropy: Add test.Christian Mauderer2017-11-176-0/+142
| | | | Update #3239.
* getentropy: Add cpu counter based implementation.Christian Mauderer2017-11-1782-1/+137
| | | | Update #3239.
* cpukit: Add _arc4random_getentropy_fail.Christian Mauderer2017-11-175-4/+28
| | | | | | | Add a default implementation of _arc4random_getentropy_fail with an internal error. Update #3239.
* score: Adjust _Scheduler_EDF_SMP_Insert_ready()Sebastian Huber2017-11-172-7/+5
| | | | | Use only one parameter to compute the next generation. Use index 0 for LIFO ordering, and index 1 for FIFO ordering.
* sptests/spversion01: Simplify configurationSebastian Huber2017-11-171-9/+2
| | | | Update #3199.
* psx05: Remove CONFIGURE_DISABLE_SMP_CONFIGURATIONSebastian Huber2017-11-161-2/+0
| | | | Update #3020.
* score: Fix priority ceiling updatesSebastian Huber2017-11-163-3/+64
| | | | | | | | | | | | We must not clear the priority updates in _Thread_queue_Extract_locked() since this function is used by the priority ceiling surrender operations after the ceiling priority handover from the previous owner to the new owner. This is especially important in SMP configurations. Move the _Thread_queue_Context_clear_priority_updates() invocation to the callers. Close #3237.
* score: Fix _Thread_queue_Flush_critical()Sebastian Huber2017-11-162-37/+84
| | | | | | | | | The thread queue extract operations performed by the _Thread_queue_Flush_critical() may result in a priority change of the thread queue owner. Carry out the scheduler priority update operation. This is especially important in SMP configurations. Close #3236.
* rtems: rtems_semaphore_flush() with prio inheritSebastian Huber2017-11-162-13/+53
| | | | | | | | | The _Semaphore_Get_operations() must return the proper operations for priority inheritance semaphores. Add a test case for rtems_semaphore_flush() with priority inheritance. Close #3235.
* score: Check thread resource count in timer serverSebastian Huber2017-11-161-1/+7
| | | | | | | The watchdog routines invoked by the timer server may use mutexes for synchronization. Ensure that the resource count of the timer server is zero after each watchdog routine invocation. This helps to detect broken watchdog routines.
* libio: Add assert to rtems_libio_iop_drop()Sebastian Huber2017-11-151-0/+23
| | | | | | | This assert helps to detect an invalid reference counting in RTEMS_DEBUG configurations. Update #3132.
* dl01, dl02, dl05: Fix unresolved printf symbolSebastian Huber2017-11-154-11/+18
| | | | | | | | The link time wrap of printf leads to unresolved symbols in the loadable modules. This resulted in infinite loops and test timeouts. Use rtems_printf() for output. Update #3199.
* leon, grspw_router: Clear only error bits defined by clear maskJavier Jalle2017-11-142-3/+3
|
* leon, grspw_router: Allow thread safe per-bit managing of pctrl regsJavier Jalle2017-11-142-93/+70
|
* leon, grspw_router: Move register bit defs to headerJavier Jalle2017-11-142-145/+166
|