summaryrefslogtreecommitdiffstats
path: root/cpukit/include/rtems/rtems (unfollow)
Commit message (Collapse)AuthorFilesLines
2024-01-26cpukit/cache: Report coherent add area failuresKinsey Moore1-1/+6
This alters the API for rtems_cache_coherent_add_area to allow reporting of failures that can occur during the process of adding a new area to the coherent cache heap.
2023-10-23doxygen: Replace and move main pageSebastian Huber1-951/+0
Replace the main page with a high level description of the RTEMS feature set similar to: https://docs.rtems.org/branches/master/user/overview/index.html#features The replaced content can be found in the RTEMS Classic API Guide: https://docs.rtems.org/branches/master/c-user/overview.html https://docs.rtems.org/branches/master/c-user/key_concepts.html Update #3705.
2023-10-20mpci: Hide implementation detailsSebastian Huber1-2/+4
This improves the standard compatibility of API headers. It fixes errors like this if RTEMS_MULTIPROCESSING is enabled: cpukit/include/rtems/score/processormask.h: In function 'uint32_t _Processor_mask_Find_last_set(const Processor_mask*)': cpukit/include/rtems/score/processormask.h:339:21: error: 'flsl' was not declared in this scope 339 | return (uint32_t) __BIT_FLS( CPU_MAXIMUM_PROCESSORS, a ); | ^~~~~~~~~
2023-07-25rtems: Improve task entry wordingSebastian Huber1-3/+3
2023-07-20rtems: Fix typoSebastian Huber1-1/+1
Update #4772.
2023-07-20rtems: Update references to rtems_task_wake_afterKinsey Moore1-8/+13
rtems_task_wake_after takes a parameter in terms of a count of clock ticks and not a measure in a subunit of seconds. This updates documentation to reflect that. This also makes obvious the caveat about the first tick wait not being a whole tick and points the user at a replacement for better accuracy. Updates #4772
2023-05-20Update company nameSebastian Huber29-29/+29
The embedded brains GmbH & Co. KG is the legal successor of embedded brains GmbH.
2023-05-19rtems: Reference types in construct directivesSebastian Huber2-2/+4
2023-05-19rtems: Add constraint to typesSebastian Huber1-0/+42
2023-05-19rtems: Conditionally include MPCI headerSebastian Huber1-1/+1
2023-02-16doxygen: Add Doxygen files to a groupSebastian Huber1-1/+4
Update #3707.
2023-02-14doxygen: Harmonize header file referencesSebastian Huber1-3/+3
2023-02-14doxygen: Use @anchor for appl config optionsSebastian Huber13-99/+103
The application configuration options are documented in "cpukit/doxygen/appl-config.h". Since the application configuration option defines are also present in multiple test program sources, the "#OPTION" references cannot be mapped to a unique definition. Add an anchor for each option and reference it to avoid the issues with the multiple definitions. Update #3994.
2023-01-23rtems: Fix typoMartin Erik Werner1-1/+1
2022-11-08rtems: Fix type in descriptionSebastian Huber1-1/+1
2022-10-04rtems: Clarify application config info APISebastian Huber1-54/+162
Update #3993.
2022-09-30rtems: Fix formatSebastian Huber1-1/+1
2022-09-19Do not use RTEMS_INLINE_ROUTINESebastian Huber17-83/+83
Directly use "static inline" which is available in C99 and later. This brings the RTEMS implementation closer to standard C. Close #3935.
2022-09-08rtems: Include <rtems/score/cpuopts.h>Sebastian Huber2-0/+2
Directly include <rtems/score/cpuopts.h> in header files using CPU build options.
2022-09-05rtems: Add constraints for rtems_clock_tick()Sebastian Huber1-0/+12
2022-09-05Add items to Doxygen groupsSebastian Huber13-17/+43
2022-07-28score: Use priority inheritance for thread joinSebastian Huber1-7/+21
Threads may join the thread termination of another thread using the pthread_join() or rtems_task_delete() directives. The thread cancel operation used a special case priority boosting mechanism implemented by _Thread_Raise_real_priority(). The problem was that this approach * is not transitive, * does not account for priority adjustments of the calling task while waiting for the join, * does not support clustered scheduling, and * does not detect deadlocks. All these problems are fixed by using a priority inheritance thread queue for the join operation. Close #4679.
2022-03-29rtems: Clarify scheduler of created taskSebastian Huber1-3/+3
2022-03-16bsps/irq: Improve affinity set handlingSebastian Huber1-1/+8
Restrict the affinity set to the set of online processors. Make sure the affinity set for an interrupt vector contains at least one online processor. Update #3269.
2022-02-28cpukit/include/rtems/rtems/*.h: Change license to BSD-2Joel Sherrill34-102/+748
Updates #3053.
2021-12-22rtems: Fix Clock Manager parameter descriptionsSebastian Huber1-8/+8
Update #4572.
2021-12-13rtems: Improve ordering in <rtems/rtems/intr.h>Sebastian Huber1-284/+284
Move the data structure definitions closer to the directives which use them.
2021-12-09Avoid ISR_LOCK_MEMBER() since it confuses DoxygenSebastian Huber2-2/+6
If RTEMS_SMP is not defined, then Doxygen adds the comments intended for conditional the lock member to the next member.
2021-12-02rtems: Move all Interrupt Manager stuff to intr.hSebastian Huber1-19/+2270
Since the previous Interrupt Manager Extension API moved to the Interrupt Manager, we can move the interfaces to <rtems/rtems/intr.h> so that they are available via #include <rtems.h>.
2021-12-02rtems: Move scheduler directives to own headerSebastian Huber3-479/+560
Move all rtems_scheduler_* directives to the new header file <rtems/rtems/scheduler.h>. Add a Scheduler Manager API and implementation group.
2021-11-23rtems: Replace "precision" with "resolution"Sebastian Huber1-32/+32
Resolution is the right term for the documented property.
2021-11-23score: Simplify thread wait state handlingSebastian Huber1-3/+0
Remove the THREAD_WAIT_STATE_READY_AGAIN and simply use the initial value to indicate that a thread does not wait on something. Rename THREAD_WAIT_FLAGS_INITIAL to THREAD_WAIT_STATE_READY. This change is necessary so that _Thread_Continue() can be called for threads which never waited on something (for example dormant threads). Update #4546.
2021-11-23rtems: Fix rtems_scheduler_remove_processor()Sebastian Huber1-3/+6
Return an error status for the following error condition in rtems_scheduler_remove_processor(): While an attempt is made to remove a processor from a scheduler, while the processor is the only processor owned by the scheduler, if a thread exists which uses the scheduler as a helping scheduler, then the processor shall not be removed. The reason is that ask for help requests and withdraw node requests are processed asynchronously in any order. An ask for help request carried out on a scheduler without a processor is undefined behaviour. Update error status description. Update #4544.
2021-11-18rtems: Use RTEMS_WHO_AM_I for rtems_task_ident()Sebastian Huber1-1/+2
2021-11-17rtems: Add signal header to implementation groupSebastian Huber2-0/+4
2021-11-15rtems: Add new clock manager directivesSebastian Huber1-0/+592
Update #4527.
2021-11-15score: Introduce CPU budget operationsSebastian Huber1-3/+5
This patch set replaces the CPU budget algorithm enumeration with a set of CPU budget operations which implement a particular CPU budget algorithm. This helps to hide the CPU budget algorithm implementation details from the general thread handling. The CPU budget callouts are turned into CPU budget operations. This slightly reduces the size of the thread control block. All schedulers used the default scheduler tick implementation. The tick scheduler operation is removed and the CPU budget operations are directly used in _Watchdog_Tick() if the executing thread uses a CPU budget algorithm. This is performance improvement for all threads which do not use a CPU budget algorithm (default behaviour).
2021-10-25rtems: rtems_rate_monotonic_get_status()Sebastian Huber1-3/+4
Mention that resetting the processor usage time of tasks has no impact on the period status and statistics. Remove no longer relevant RTEMS_NOT_DEFINED error status. Update #4528.
2021-10-25rtems: Fix rate monotonic statisticsSebastian Huber1-5/+2
The rate monotonic period statistics were affected by rtems_cpu_usage_reset(). The logic to detect and work around a CPU usage reset was broken. The Thread_Contol::cpu_time_used is changed to contain the processor time used throughout the entire lifetime of the thread. The new member Thread_Contol::cpu_time_used_at_last_reset is added to contain the processor time used at the time of the last reset through rtems_cpu_usage_reset(). This decouples the resets of the CPU usage and the rate monotonic period statistics. Update #4528.
2021-10-06rtems: Add ASR implementation to existing groupSebastian Huber1-2/+2
Update #3706.
2021-09-16rtems: Fix message manager documentationSebastian Huber1-2/+2
Correct the description of the ``count`` parameter of rtems_message_queue_flush(). Update #4508.
2021-09-15rtems: Add header files to Doxygen groupsSebastian Huber7-0/+14
2021-09-15rtems: Move Doxygen group definitionSebastian Huber2-10/+8
Move the definition of the top-level Classic API implementation group to an implementation header file.
2021-09-15rtems: Fix message manager documentationSebastian Huber1-8/+10
Remove bogus return status from rtems_message_queue_receive(). Clarify rtems_message_queue_flush(). Update #4508.
2021-09-15rtems: Generate <rtems/rtems/cache.h>Sebastian Huber1-150/+512
Change license to BSD-2-Clause according to file histories and documentation re-licensing agreement. Update #3899. Update #3993. Update #4513.
2021-09-06rtems: Document time of day constraintsSebastian Huber1-4/+13
Update #4338.
2021-08-12rtems: Fix rtems_partition_return_buffer()Sebastian Huber1-5/+10
The rtems_partition_return_buffer() wrongly accepted which were exactly at the buffer area end. Use the buffer area limit address for the range checking. Close #4490.
2021-07-26rtems: Add rtems_interrupt_raise()Sebastian Huber1-37/+125
Add rtems_interrupt_raise_on(). Document the currently not implemented rtems_interrupt_clear(). Remove the not implemented and badly named rtems_interrupt_cause() directive. Update #3269.
2021-07-15rtems: Fix Doxygen commentSebastian Huber1-2/+2
2021-06-17rtems: Fix rtems_task_set_affinity() docsSebastian Huber1-1/+1