summaryrefslogtreecommitdiffstats
path: root/cpukit/include (unfollow)
Commit message (Collapse)AuthorFilesLines
2024-04-09score: Improve C/C++ standard compatibilitySebastian Huber3-379/+439
The processor mask implementation uses flsl() from <strings.h> which is only BSD visible. Move the implementation to a separate header file to hide it from the API level. This fixes build errors with GCC 14.
2024-03-23rtems: Avoid -Wundef warnings in API headerSebastian Huber1-6/+6
2024-03-20Do not define CONFIGURE_TICKS_PER_TIMESLICE to 0Sebastian Huber1-2/+1
Unconditionally make a CONFIGURE_TICKS_PER_TIMESLICE value less than or equal to zero an error. Update #4986.
2024-03-18cpukit: Gate ticks per timeslice configKinsey Moore1-1/+3
Gate CONFIGURE_TICKS_PER_TIMESLICE appropriately behind CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER.
2024-03-14Ensure ticks per timeslice is greater than zeroZack leung1-0/+4
2024-02-16crc: Add a CRC-24Q implementationSebastian Huber1-0/+106
2024-02-16base64: Add decoderMatthew Joyce1-0/+63
2024-02-16base64: Make base64 encoding tables publicSebastian Huber1-0/+10
This makes them reusable. Change the character type to uint8_t.
2024-02-16base64: Move base64 encoding supportSebastian Huber2-62/+125
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.
2024-01-16flashdev.h: Add missing C++ include guardsBernd Moessner1-0/+9
Updates #4981
2024-01-10libio: Clean up usage of rtems_termios_device_modeKinsey Moore1-1/+2
This cleans up outputUsesInterrupts usage with rtems_termios_device_mode enum values. The outputUsesInterrupts member was typed as an int, named as if it were a boolean value, and used as if it were a rtems_termios_device_mode enum. In this patch, values assigned to outputUsesInterrupts have been converted to the corresponding rtems_termios_device_mode enum value, conversions from deviceOutputUsesInterrupts have been made explicit, and uses of rtems_termios_device_mode enum values with deviceOutputUsesInterrupts have been converted to booleans.
2023-11-28libtest: Add T_add_remark()Sebastian Huber1-0/+7
This can be used to report that nested test cases did run in a test case. Update #4971.
2023-11-21score: Fix typo in nameSebastian Huber1-1/+1
2023-11-02score: Fix implicit integer conversion warningsSebastian Huber1-6/+6
2023-11-02imfs: Constify rtems_tarfs_load()Sebastian Huber1-1/+1
Change the public image data type to a void pointer.
2023-10-30cpukit/score: Convert Thread_Life_state to uint32_tKinsey Moore1-40/+40
Thread_Life_state is used as a bitfield, but is declared as an enum. This converts the enum typedef to a uint32_t typedef and associated bit definitions.
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 Huber3-5/+7
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-09-26tests: Add header for RTEMS test printerSebastian Huber2-16/+71
The <rtems/test-info.h> header file is required for every RTEMS test program. Move the RTEMS test printer support to a dedicated header file <rtems/test-printer.h>. This removes an unnecessary dependency to the RTEMS printer support in <rtems/test-info.h>. Tests using the RTEMS Testing Framework no longer depend on the <rtems/printer.h>.
2023-09-15rtems: rtems_configuration_get_interrupt_stack_size()Sebastian Huber2-2/+14
Fix rtems_configuration_get_interrupt_stack_size() for some code models. The _ISR_Stack_size symbol has an arbitrary absolute address and may not be representable in the code model used by the compiler. Update #4953.
2023-09-15score: Fix TLS support for some code modelsSebastian Huber1-53/+67
Store symbols with an arbitrary absolute address such as _TLS_Size, _TLS_Alignment, _TLS_Data_size, and _TLS_BSS_size in an object to avoid issues with some code models. Update #4953.
2023-09-13score: Fix RTEMS_DEFINE_GLOBAL_SYMBOL()Sebastian Huber1-2/+3
The availability of a proper RTEMS_DEFINE_GLOBAL_SYMBOL() implementation depends on __asm__() and thus __GNUC__. Clarify documentation. Update #4953.
2023-08-27libdl: Realloc text memory if there are trampolinesChris Johns2-90/+155
- Add resize to the allocator interface - Rework the trampoline variables in the obj struct to make better sense of what is happening Closes #4944
2023-08-21libdl: Add support to import base image TLS symbolsChris Johns2-5/+29
This change requires an rtems-tools update for symbol generation. Working architectures: - aarch64 - arm - powerpc - sparc No newlib TLS support but checked: - i386 - m69k Updates #4920
2023-08-11Add the Regulator Interface and testJoel Sherrill2-0/+637
Updates #4924. The Regulator is an application support class which is used to deal with the scenario where there is a bursty input source which needs to be metered out to a destination sink. The maximum size of bursts needs to be known and the delivery method must be configured to deliver messages at a rate that allows the traffic to not overflow.
2023-07-28score: Assert scheduler index validitySebastian Huber2-1/+3
Update #4844.
2023-07-28doxygen: Fix group memberships in libtestSebastian Huber2-6/+5
2023-07-28score: Move <rtems/score/gcov.h>Sebastian Huber1-7/+7
Move <rtems/score/gcov.h> to <rtems/test-gcov.h>. These functions do not belong to an super core service.
2023-07-28score: Move formatted I/O functionsSebastian Huber3-144/+119
These functions do not belong to an super core service.
2023-07-27Revert "cpukit/dev/can: Added CAN support"Gedare Bloom3-620/+0
This reverts commit cd91b37dce728b372f164355719a4e601e12e7b3. Closes #4803.
2023-07-26sys: Add files to Doxygen groupSebastian Huber3-3/+21
Canonicalize brief descriptions. Update #3707.
2023-07-26timecounter: Add files to Doxygen groupSebastian Huber6-0/+47
Update #3707.
2023-07-26posix: Add files to Doxygen groupSebastian Huber2-7/+7
Canonicalize brief descriptions. Update #3707.
2023-07-26rtems: Add files to Doxygen groupsSebastian Huber3-31/+131
Provide basic Doxygen comments. Update #3706. Update #3707.
2023-07-26libtest: Place files into a Doxygen groupSebastian Huber2-2/+20
Canonicalize the file headers. Update #3707.
2023-07-25rtems: Improve task entry wordingSebastian Huber1-3/+3
2023-07-24score: Move _IO_Relax() to new <rtems/dev/io.h>Sebastian Huber2-8/+68
This function is not a super core service.
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-07-03Revert accidentally committed "Remove unused _IO_Relax"Joel Sherrill1-0/+8
Sebastian has agreed to move this out of score. I should have removed this patch from my tree but accidentally committed it with another patch.
2023-07-03Remove unused _IO_RelaxJoel Sherrill1-8/+0
The only use was in a test.
2023-06-16pci: Do not use BSP-specific interrupt APISebastian Huber1-13/+4
Update #3269.
2023-06-12score: Remove CPU port atomic operations APISebastian Huber2-1060/+888
Use the C/C++ standard API directly.
2023-06-12score: Remove CPU port specific cpuatomic.hSebastian Huber1-0/+0
All CPU ports used the same <rtems/score/cpustdatomic.h> header file to provide the atomic operations. Remove the header file indirection.
2023-05-31termios: Add <rtems/termiosdevice.h>Sebastian Huber3-242/+304
Add <rtems/termiosdevice.h> which does not depend on <rtems/libio.h> to provide rtems_termios_device_context and rtems_termios_device_handler. For polled serial device drivers, this removes a header file dependency to the full file system support.
2023-05-26score/src/pheap*: Remove unreferenced methodsJoel Sherrill1-69/+0
* _Protected_heap_Get_block_size * _Protected_heap_Iterate * _Protected_heap_Resize_block Closes #4909.
2023-05-24rtems: Document scheduler configuration APISebastian Huber1-159/+453
2023-05-20Update company nameSebastian Huber171-171/+171
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