Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | sparc: Increase CPU_STRUCTURE_ALIGNMENT to 32 | Sebastian Huber | 2014-02-13 | 1 | -1/+1 |
| | | | | Recent LEON4 systems use a cache line size of 32 bytes. | ||||
* | sparc: Save/restore only non-volatile context | Sebastian Huber | 2014-02-12 | 2 | -64/+74 |
| | | | | | | | | | | The _CPU_Context_switch() is a normal function call. The following registers are volatile (the caller must assume that the register contents are destroyed by the callee) according to "SYSTEM V APPLICATION BINARY INTERFACE - SPARC Processor Supplement", Third Edition: g1, o0, o1, o2, o3, o4, o5. Drop these registers from the context. Ensure that offset defines match the structure offsets. | ||||
* | score: Format _Thread_Get_maximum_internal_threads | Sebastian Huber | 2014-02-10 | 1 | -3/+2 |
| | |||||
* | score: _CPU_Context_switch_to_first_task_smp() | Sebastian Huber | 2014-02-05 | 6 | -41/+1 |
| | | | | | Delete _CPU_Context_switch_to_first_task_smp() and use _CPU_Context_restore() instead. | ||||
* | Add thread-local storage (TLS) support | Sebastian Huber | 2014-02-04 | 46 | -55/+521 |
| | | | | | Tested and implemented on ARM, m68k, PowerPC and SPARC. Other architectures need more work. | ||||
* | score: Add _Thread_Get_maximum_internal_threads() | Sebastian Huber | 2014-02-04 | 2 | -11/+20 |
| | |||||
* | score: Add _Heap_Size_with_overhead() | Sebastian Huber | 2014-02-04 | 1 | -0/+23 |
| | |||||
* | score: Add _Workspace_Allocate_aligned() | Sebastian Huber | 2014-02-04 | 2 | -0/+16 |
| | |||||
* | arm: Add ARMv7-M SHCSR register bits | Sebastian Huber | 2014-01-10 | 1 | -0/+6 |
| | |||||
* | cpukit/rtems: Add rtems_clock_get_uptime_nanoseconds to the RTEMS API. | Chris Johns | 2013-12-24 | 5 | -3/+84 |
| | | | | | | Add Timestamp support in the score to return a timestamp in nanoseconds. Add a test. Update the RTEMS API documentation. | ||||
* | arm: Fix set by but not used warning | Sebastian Huber | 2013-12-16 | 1 | -1/+2 |
| | |||||
* | no_cpu/cpusmplock.h: Clean up to be compilable | Joel Sherrill | 2013-12-14 | 1 | -0/+4 |
| | |||||
* | arm: Clear reservations | Sebastian Huber | 2013-12-03 | 2 | -1/+2 |
| | | | | | Recent GCC versions use atomic operations based on load/store exclusive in the C++ library. | ||||
* | score: Minor _Thread_Dispatch() optimization | Sebastian Huber | 2013-12-02 | 1 | -2/+1 |
| | | | | | It is not necessary to load the executing thread control again after the context switch since it is an invariant of the executing thread. | ||||
* | nios2: Typos | Sebastian Huber | 2013-11-26 | 1 | -2/+2 |
| | |||||
* | score: Format changes in _Thread_Set_state() | Sebastian Huber | 2013-11-26 | 1 | -8/+8 |
| | |||||
* | score: Simplify _Thread_queue_Dequeue_priority() | Sebastian Huber | 2013-11-26 | 1 | -2/+2 |
| | |||||
* | score: Use local variables for consistency | Sebastian Huber | 2013-11-26 | 1 | -3/+3 |
| | |||||
* | score/rbtree: Remove "unprotected" from API | Sebastian Huber | 2013-11-21 | 11 | -36/+36 |
| | |||||
* | score/rbtree: Delete protected operations | Sebastian Huber | 2013-11-21 | 8 | -299/+9 |
| | | | | | The user of the red-black tree container must now ensure that at most one thread at once can access an instance. | ||||
* | scheduler/EDF: Use unprotected insert and extract | Sebastian Huber | 2013-11-21 | 3 | -4/+4 |
| | | | | | | Interrupts are disabled by the caller _Thread_Change_priority() or _Thread_Set_transient() or directly in the scheduler operation. Thus there is no need to use protected variants. | ||||
* | powerpc: Add r2 to CPU context | Sebastian Huber | 2013-11-18 | 3 | -11/+13 |
| | | | | The r2 may be used for thread-local storage. | ||||
* | powerpc: Do not validate reserved XER bits | Sebastian Huber | 2013-11-18 | 1 | -2/+2 |
| | |||||
* | score: Objects_Information::extract visibility | Sebastian Huber | 2013-11-18 | 1 | -2/+2 |
| | | | | This filed is only used if RTEMS_MULTIPROCESSING is defined. | ||||
* | heapgetinfo: Free all delayed blocks | Sebastian Huber | 2013-11-18 | 1 | -0/+1 |
| | |||||
* | no_cpu/.../cpu.h: Comment improvement | Joel Sherrill | 2013-11-14 | 1 | -0/+5 |
| | |||||
* | mips/.../cpu.h: Comment improvement | Joel Sherrill | 2013-11-14 | 1 | -1/+3 |
| | |||||
* | score: New state STATES_WAITING_FOR_BSD_WAKEUP | Sebastian Huber | 2013-10-31 | 1 | -0/+3 |
| | | | | This state is necessery to implement the SLEEP(9) FreeBSD kernel API. | ||||
* | basedefs.h: Add RTEMS_COMPILER_UNUSED_ATTRIBUTE. | Joel Sherrill | 2013-09-22 | 1 | -0/+11 |
| | |||||
* | arm: Fix inconsistent define usage | Sebastian Huber | 2013-09-06 | 1 | -2/+3 |
| | |||||
* | nios2: Include proper header file | Sebastian Huber | 2013-09-03 | 1 | -1/+1 |
| | |||||
* | score: Use void * for some atomic pointer ops | Sebastian Huber | 2013-09-03 | 2 | -25/+26 |
| | |||||
* | score: Use unsigned long for atomic integers | Sebastian Huber | 2013-09-03 | 2 | -66/+66 |
| | | | | | | | Use unsigned long instead of uint_fast32_t since C11 provides only a ATOMIC_LONG_LOCK_FREE macro constant. This makes it also possible to use properly typed integer literals like 123UL. It is now clear which compatible type should be used for the atomic integer. | ||||
* | smp: Add and use _Assert_Owner_of_giant() | Sebastian Huber | 2013-08-30 | 8 | -19/+62 |
| | | | | | | | | | | | | | | Add and use _ISR_Disable_without_giant() and _ISR_Enable_without_giant() if RTEMS_SMP is defined. On single processor systems the ISR disable/enable was the big hammer which ensured system-wide mutual exclusion. On SMP configurations this no longer works since other processors do not care about disabled interrupts on this processor and continue to execute freely. On SMP in addition to ISR disable/enable an SMP lock must be used. Currently we have only the Giant lock so we can check easily that ISR disable/enable is used only in the right context. | ||||
* | score: Atomic flag changes | Sebastian Huber | 2013-08-28 | 2 | -56/+29 |
| | | | | | | | Delete _Atomic_Init_flag(). Change ATOMIC_INITIALIZER_FLAG into a constant. Rename _Atomic_Clear_flag() to _Atomic_Flag_clear(). Rename _Atomic_Test_set_flag() to _Atomic_Flag_test_and_set(). This is now in line with the C11 schema. | ||||
* | score: Simplify <rtems/score/cpuatomic.h> | WeiY | 2013-08-28 | 17 | -510/+102 |
| | | | | Add proper license and copyright. | ||||
* | score: Use static inline directly | Sebastian Huber | 2013-08-28 | 2 | -43/+43 |
| | | | | This file uses already C11 features. Include proper header file. | ||||
* | add atomic init function | WeiY | 2013-08-28 | 2 | -0/+75 |
| | |||||
* | score: Add SMP support to _Watchdog_Report_chain() | Sebastian Huber | 2013-08-27 | 1 | -1/+3 |
| | |||||
* | score: Add and use CHAIN_INITIALIZER_ONE_NODE(). | Sebastian Huber | 2013-08-27 | 1 | -0/+16 |
| | | | | | | Add and use CHAIN_NODE_INITIALIZER_ONE_NODE_CHAIN(), RTEMS_CHAIN_INITIALIZER_ONE_NODE() and RTEMS_CHAIN_NODE_INITIALIZER_ONE_NODE_CHAIN(). | ||||
* | score: Delete unused function parameter | Sebastian Huber | 2013-08-26 | 5 | -9/+5 |
| | |||||
* | score: PR2140: Fix _Thread_queue_Process_timeout() | Sebastian Huber | 2013-08-26 | 1 | -8/+37 |
| | | | | | | The _Thread_queue_Process_timeout() operation had several race conditions in the event of nested interrupts. Protect the critical sections via disabled interrupts. | ||||
* | score: PR2140: _Thread_queue_Extract() | Sebastian Huber | 2013-08-26 | 4 | -11/+20 |
| | | | | | Return if the executing context performed the extract operation since interrupts may interfere. | ||||
* | smp: Fix warnings | Sebastian Huber | 2013-08-23 | 2 | -2/+0 |
| | |||||
* | score: _Thread_queue_Enqueue_with_handler() | Sebastian Huber | 2013-08-23 | 11 | -21/+34 |
| | | | | | Add thread parameter to _Thread_queue_Enqueue_with_handler() to avoid access to global _Thread_Executing. | ||||
* | arm: Make barrier operations more visible | Sebastian Huber | 2013-08-22 | 1 | -10/+15 |
| | |||||
* | smp: Documentation | Sebastian Huber | 2013-08-21 | 1 | -2/+3 |
| | |||||
* | smp: Delete RTEMS_BSP_SMP_SIGNAL_TO_SELF | Sebastian Huber | 2013-08-21 | 2 | -14/+0 |
| | |||||
* | smp: Disable restart of threads other than self | Sebastian Huber | 2013-08-20 | 1 | -0/+10 |
| | |||||
* | smp: Add Deterministic Priority SMP Scheduler | Sebastian Huber | 2013-08-20 | 6 | -9/+330 |
| |