summaryrefslogtreecommitdiffstats
path: root/cpukit (follow)
Commit message (Collapse)AuthorAgeFilesLines
* score: Add thread queue for self-contained objectsSebastian Huber2015-07-303-0/+55
|
* score: Use a plain ticket lock for thread locksSebastian Huber2015-07-309-45/+149
| | | | | | This enables external libraries to use thread locks since they are independent of the actual RTEMS build configuration, e.g. profiling enabled or disabled.
* score: Add potpourri lock statisticsSebastian Huber2015-07-303-0/+14
| | | | | | | These SMP lock statistics are used for all lock objects that lack a storage space for the statistics. Examples are lock objects used in external libraries which are independent of the actual RTEMS build configuration.
* score: Provide struct _Thread_queue_HeadsSebastian Huber2015-07-301-1/+7
| | | | | Use a leading underscore in the structure name to allow forward declarations in standard header files provided by Newlib and GCC.
* score: Rename struct Thread_ControlSebastian Huber2015-07-303-7/+10
| | | | | Add a leading underscore to the structure name to allow forward declarations in standard header files provided by Newlib and GCC.
* tftpDriver: close() false errorMichael Davidsaver2015-07-291-1/+3
| | | | closes #2376.
* score: Rename _POSIX_Absolute_timeout_to_ticks()Sebastian Huber2015-07-2898-238/+101
| | | | | | Rename _POSIX_Absolute_timeout_to_ticks() to _TOD_Absolute_timeout_to_ticks() and move it to the score directory. Delete empty <rtems/posix/time.h>.
* m68k: Include proper header fileSebastian Huber2015-07-241-3/+3
|
* score: Add commentSebastian Huber2015-07-241-0/+5
|
* monitor: Sort alphabeticallySebastian Huber2015-07-241-15/+15
|
* monitor: Add current CPU of threadSebastian Huber2015-07-242-2/+7
|
* monitor: Print the wait queue to ease debuggingSebastian Huber2015-07-242-18/+21
|
* monitor: Print addresses like identifiersSebastian Huber2015-07-242-3/+3
| | | | This avoids the "0x0xabc" output and is more compact.
* monitor: Remove notepad supportSebastian Huber2015-07-243-41/+1
|
* arm: Include proper header fileSebastian Huber2015-07-231-3/+3
|
* i2c: Fix return status of i2c dev read/writeSebastian Huber2015-07-231-6/+10
|
* score: Move wait flag update to tq extractSebastian Huber2015-07-233-15/+34
| | | | | | This makes it possible to use _Thread_queue_Extract_locked() for barrier operations which extract all threads on the queue in one critical section.
* score: Introduce Thread_queue_HeadsSebastian Huber2015-07-2322-124/+313
| | | | | | | | | | | | | Move the storage for the thread queue heads to the threads. Each thread provides a set of thread queue heads allocated from a dedicated memory pool. In case a thread blocks on a queue, then it lends its heads to the queue. In case the thread unblocks, then it takes a free set of threads from the queue. Since a thread can block on at most one queue this works. This mechanism is used in FreeBSD. The motivation for this change is to reduce the memory demands of the synchronization objects. On a 32-bit uni-processor configuration the Thread_queue_Control size is now 8 bytes, compared to 64 bytes in RTEMS 4.10 (other changes reduced the size as well).
* score: Introduce Thread_queue_QueueSebastian Huber2015-07-2319-160/+232
| | | | | | Separate the thread queue heads and lock from the operations. This enables the support for light weight objects which only support one queuing discipline.
* sparc64/rtems/score/cpu.h: Delete dead declarationJoel Sherrill2015-07-161-16/+0
|
* powerpc: Do not use the ATB for e500 multilibSebastian Huber2015-07-151-1/+1
| | | | | | The e500v1 has no support for the ATB. Update #2369.
* powerpc: Fix _CPU_Counter_read()Nick Withers2015-07-151-1/+1
| | | | | | The mftb is not available on Book E processors. Use SPR 268 instead. Close #2369.
* libcsupport: Workaround for GCC 5.1 and laterSebastian Huber2015-07-152-2/+7
| | | | | Disable an optimization which would lead to a recursive calloc() call in calloc().
* libnetworking: Send the hostname if set in the network configuration.Chris Johns2015-07-141-2/+16
| | | | | This allows a suitably configured DHCP server with DDNS to enter the name into the DNS table making it addressiable via it's host name.
* score: Simplify _Thread_Lock_set()Sebastian Huber2015-07-131-11/+56
| | | | | Exploit the fact that the current thread lock must be the default thread lock and interrupts are disabled if we call _Thread_Lock_set().
* score: TypoSebastian Huber2015-07-131-2/+2
|
* libmisc: Use SMP application by default on SMPSebastian Huber2015-07-081-0/+4
|
* powerpc: Add BUCSR register definesSebastian Huber2015-07-081-0/+2
|
* score: Simplify _SMP_ticket_lock_Release()Sebastian Huber2015-07-012-12/+13
| | | | | Add a SMP lock statistics pointer to SMP_lock_Stats_context and drop the SMP lock statistics parameter from _SMP_ticket_lock_Release().
* score: Accept NULL pointer in _Freechain_Put()Sebastian Huber2015-07-012-2/+5
| | | | With this a _Freechain_Put( _Freechain_Get() ) works always.
* score: Freechain handler API changesSebastian Huber2015-07-014-81/+85
| | | | | Replace the extend function with an allocator since this fits better to the current use case.
* score: Hide SMP lock profiling impl if disabledSebastian Huber2015-06-264-82/+131
| | | | The problem is that empty structures have a different size in C and C++.
* libmisc: Simplify <rtems/stackchk.h>Sebastian Huber2015-06-262-1/+2
| | | | | Drop the <rtems/score/percpu.h> include since this file exposes a lot of implementation details.
* score: Simplify <rtems/score/scheduler.h>Sebastian Huber2015-06-262-4/+5
| | | | | Drop the <rtems/score/percpu.h> include since this file exposes a lot of implementation details.
* score: Simplify <rtems/system.h>Sebastian Huber2015-06-2612-7/+12
| | | | | Drop the <rtems/score/percpu.h> include since this file exposes a lot of implementation details.
* score: Fix extern "C" in <rtems/score/heap.h>Sebastian Huber2015-06-251-2/+1
|
* score: Simplify <rtems/score/thread.h>Sebastian Huber2015-06-255-44/+44
| | | | | | Avoid Thread_Control typedef in <rtems/score/percpu.h>. This helps to get rid of the <rtems/score/percpu.h> include in <rtems/score/thread.h> which exposes a lot of implementation details.
* score: Move default _ISR_Is_in_progress()Sebastian Huber2015-06-253-35/+53
|
* score: Move SMP CPU_USE_DEFERRED_FP_SWITCH checkSebastian Huber2015-06-252-4/+4
|
* score: Assert proper node sizeSebastian Huber2015-06-241-3/+4
|
* rtems: Add rtems_interrupt_local_disable|enable()Sebastian Huber2015-06-222-2/+45
| | | | | | | | Add rtems_interrupt_local_disable|enable() as suggested by Pavel Pisa to emphasize that interrupts are only disabled on the current processor. Do not define the rtems_interrupt_disable|enable|flash() macros and functions on SMP configurations since they don't ensure system wide mutual exclusion.
* nfsclient: Use an interrupt lockSebastian Huber2015-06-191-21/+29
|
* arm: Implement _CPU_ISR_Get_level() for ARMv7-MSebastian Huber2015-06-151-3/+3
|
* Remove use ticks for statistics configure option.Joel Sherrill2015-06-1518-394/+147
| | | | | | | | | | This was obsolete and broken based upon recent time keeping changes. Thie build option was previously enabled by adding USE_TICKS_FOR_STATISTICS=1 to the configure command line. This propagated into the code as preprocessor conditionals using the __RTEMS_USE_TICKS_FOR_STATISTICS__ conditional.
* score: Add _Watchdog_Preinitialize()Sebastian Huber2015-06-137-5/+28
| | | | | | Add an assert to ensure that the watchdog is the proper state for a _Watchdog_Initialize(). This helps to detect invalid initializations which may lead to a corrupt watchdog chain.
* score: Delete unused state WATCHDOG_REMOVE_ITSebastian Huber2015-06-135-26/+4
|
* rtems: Do not switch off the FP attributeSebastian Huber2015-06-111-4/+0
| | | | This is necessary after commit 335e5caa9a9e0f28acf94fe4c2871017fcd71794.
* Revert "timecounter: No _Timecounter_Tick_simple() for SMP"Sebastian Huber2015-06-111-6/+0
| | | | | | | | | This reverts commit 46ae1d7a2b49b8f973dd6ba44fbbd38383798524. The _Timecounter_Tick_simple() function actually doesn't switch to the next timehand, so it is all right to use the simple timecounter approach even on SMP configurations. The use of simple timecounters is not recommended however since they impose a performance penalty.
* timecounter: No _Timecounter_Tick_simple() for SMPSebastian Huber2015-06-091-0/+6
|
* cpukit/rtems: Fix doc for rtems_clock_get_ticks_per_secondGedare Bloom2015-06-091-1/+1
| | | | closes #2357.