summaryrefslogtreecommitdiffstats
path: root/cpukit/score (follow)
Commit message (Collapse)AuthorAgeFilesLines
* score: Fix simple timecounter supportSebastian Huber2016-01-192-10/+33
| | | | Update #2502.
* arm: Honor cache for Cortex-M7 supportSebastian Huber2016-01-151-2/+11
|
* arm: Accept Cortex-M7 multilibSebastian Huber2016-01-151-1/+1
|
* powerpc: Fix alignment for AltiVec multilibsSebastian Huber2016-01-121-2/+6
|
* score: Statically initialize TOD handlerSebastian Huber2016-01-124-34/+18
|
* score: Simplify _Thread_Start()Sebastian Huber2016-01-113-31/+23
|
* score: Introduce Thread_Entry_informationSebastian Huber2016-01-1111-136/+169
| | | | | | | This avoids potential dead code in _Thread_Handler(). It gets rid of the dangerous function pointer casts. Update #2514.
* score: Avoid dead code in global constructionSebastian Huber2016-01-082-18/+2
| | | | Update #2514.
* score: Add fatal errors for NULL entry init tasksSebastian Huber2016-01-081-1/+3
| | | | | | This simplifies the global construction. Update #2514.
* Remove H8300 portJoel Sherrill2016-01-0412-1870/+0
| | | | updates #2452.
* Remove M32R architectureJoel Sherrill2016-01-0415-2070/+1
| | | | updates #2446.
* score: Fix watchdog insertSebastian Huber2016-01-041-4/+12
| | | | | | | | | Under certain conditions a new watchdog was inserted with a wrong and very large delta interval due to a wrong iterator update. Bug was introduced by 1ccbd052910ed16131c74b0d5595c8a94066942d. Close #2507.
* api: Remove deprecated NotepadsAun-Ali Zaidi2015-12-241-3/+3
| | | | | | | | | | | | | | | | | | | | | | | Notepads where a feature of RTEMS' tasks that simply functioned in the same way as POSIX keys or threaded local storage (TLS). They were introduced well before per task variables, which are also deprecated, and were barely used in favor of their POSIX alternatives. In addition to their scarce usage, Notepads took up unnecessary memory. For each task: - 16 32-bit integers were allocated. - A total of 64 bytes per task per thread. This is especially critical in low memory and safety-critical applications. They are also defined as uint32_t, and therefore are not guaranteed to hold a pointer. Lastly, they are not portable solutions for SMP and uniprocessor systems, like POSIX keys and TLS. updates #2493.
* score: Fix watchdog removalSebastian Huber2015-12-211-1/+10
| | | | | | | | | Under certain conditions a new watchdog was inserted with a wrong and very large delta interval due to an incomplete iterator update. Bug was introduced by 1ccbd052910ed16131c74b0d5595c8a94066942d. Close #2501.
* score: Avoid dependency on bcopy()Sebastian Huber2015-12-151-0/+1
|
* score: Initialize thread control to zeroSebastian Huber2015-12-151-44/+9
| | | | This reduces the code size of the thread initialization.
* score: Help GCC to inline a functionSebastian Huber2015-12-141-1/+1
|
* score: Untangle thread actionsSebastian Huber2015-12-113-11/+20
| | | | | | | Remove the thread action handler parameter from _Thread_Action_initialize() and instead set it later in _Thread_Add_post_switch_action(). This avoids a dependency on the thread action handler via the thread initialization.
* Use linker set for system initializationSebastian Huber2015-12-113-0/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* sparc: Simplify _CPU_Get_current_per_CPU_control()Sebastian Huber2015-12-101-1/+1
| | | | | | | Drop the superfluous parenthesis since this confuses the C++ compiler of some GCC versions. See also https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67064
* Add RTEMS linker setsSebastian Huber2015-12-083-0/+101
| | | | Update #2408.
* score: Statically initialize system stateSebastian Huber2015-12-081-14/+0
| | | | Update #2408.
* score: Delete unused API extensionsSebastian Huber2015-12-082-50/+2
| | | | Update #2408.
* score: Statically initialize API extensionsSebastian Huber2015-12-082-17/+1
| | | | Update #2408.
* Remove <rtems/debug.h>Sebastian Huber2015-12-073-96/+1
| | | | Close #2477.
* Require __getreent()Sebastian Huber2015-11-252-42/+0
| | | | | This function is used by Newlib since 2013-07-09 (Git commit 9b51cd8c6b9cdd067d9648a7ab952884019c56a5).
* Fix _Assert() statementSebastian Huber2015-11-251-1/+1
|
* sparc: Fix context switch on SMPDaniel Cederman2015-11-161-0/+3
| | | | | | | | | | | | | | | | We must not load registers (e.g. PSR) from the heir context area before the heir stopped execution. With this patch the write to PSR is divided into two steps. We first update the current window pointer and then we restore the status registers and enable traps. This allows us to move the first write to PSR to be before the write to WIM, as there is now no risk that we get an interrupt where the CWP and WIM would be inconsistent. We only need to make sure that we do not use any of the non-global registers or instructions that affects CWP for three instructions after the write. In the earlier code the non-global %o1 register was used right after the write to PSR, which required the use of three nop:s.
* score: Fix race condition on SMPSebastian Huber2015-11-121-19/+28
| | | | | | We must ensure that the Thread_Control::Wait information update is visible to the target thread before we update its wait flags, otherwise we may return out of date events or a wrong status.
* Fix interrupt epilogue for ARMv7-AR and PowerPCSebastian Huber2015-11-121-0/+27
|
* score: Fix warningSebastian Huber2015-11-041-1/+1
| | | | Close #2454.
* powerpc: Add FSL cache definesSebastian Huber2015-10-281-0/+10
|
* basdefs.h: Add and use RTEMS_PACKEDSebastian Huber2015-10-261-2/+5
|
* basdefs.h: Add and use RTEMS_UNUSEDSebastian Huber2015-10-2611-18/+21
|
* basdefs.h: Add and use RTEMS_DEPRECATEDSebastian Huber2015-10-262-4/+6
|
* basdefs.h: Add RTEMS_PURESebastian Huber2015-10-261-3/+5
|
* basedefs.h: Add and use RTEMS_NO_RETURNSebastian Huber2015-10-2626-34/+36
|
* basedefs.h: Add compiler attributesSebastian Huber2015-10-261-1/+40
|
* epiphany: Delete CPU_UNROLL_ENQUEUE_PRIORITYSebastian Huber2015-10-071-21/+0
|
* SMP: Optimize ticket lock implementationSebastian Huber2015-10-021-1/+1
| | | | | | | | This reverts the relevant part of commit da06fe948c0878057e5f563ebd3dfe40c0f1b0d2. The acquire/release order is superfluous for the next ticket increment. The mutual exclusion is guaranteed by the acquire load from and release store to the next serving atomic variable.
* powerpc: Use wrtee for e6500 multilibSebastian Huber2015-10-021-0/+17
| | | | This reduces the code size.
* SMP: Fix and optimize thread dispatchingSebastian Huber2015-09-285-70/+66
| | | | | | | | According to the C11 and C++11 memory models only a read-modify-write operation guarantees that we read the last value written in modification order. Avoid the sequential consistent thread fence and instead use the inter-processor interrupt to set the thread dispatch necessary indicator.
* SMP: Simplify thread lock operationsSebastian Huber2015-09-281-27/+25
|
* score: Use uintptr_t for atomic pointer operationsSebastian Huber2015-09-262-71/+69
| | | | Do not obfuscate the standard API.
* score: Fix atomic compare exchangeSebastian Huber2015-09-252-5/+21
|
* ARMv7M: Improve exception handler routine and add comments on SP selectionMartin Galvan2015-09-231-11/+21
| | | | | | | | | This patch adds a brief description of how context state is saved into the SP on exception entry, and makes a few changes to _ARMV7M_Exception_default in order to make it a bit more efficient. I also removed the unused 'v7mfsz' input parameter. This should apply over Sudarshan's patch.
* Fix exception handler for supporting FPUSudarshan Rajagopalan2015-09-231-4/+4
|
* score: Fix resource count for self-contained mutexSebastian Huber2015-09-141-2/+3
|
* score: Implement priority boostingSebastian Huber2015-09-047-6/+124
|
* score: Implement SMP-specific priority queueSebastian Huber2015-09-045-13/+124
|