summaryrefslogtreecommitdiffstats
path: root/cpukit/sapi/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-10-13cpukit: Remove unused includesKinsey Moore1-1/+0
2023-08-02build: Optionally use a VERSION fileSebastian Huber1-4/+4
Define the RTEMS version in the wscript. Optionally use a VERSION file to change the default values of the wscript. Allow the command line option --rtems-version to override __RTEMS_MAJOR__. Remove support for command line configurable options (--rtems-option). Rename internal define RTEMS_VERSION_VC_KEY to RTEMS_VERSION_CONTROL_KEY.
2023-07-26rtems: Add files to Doxygen groupsSebastian Huber2-1/+10
Provide basic Doxygen comments. Update #3706. Update #3707.
2023-05-20Update company nameSebastian Huber23-23/+23
The embedded brains GmbH & Co. KG is the legal successor of embedded brains GmbH.
2022-10-14score: INTERNAL_ERROR_IDLE_THREAD_STACK_TOO_SMALLSebastian Huber1-1/+2
Ensure that the IDLE storage allocator did allocate a suffiently large area. Update #3835. Update #4524.
2022-10-14config: Add CONFIGURE_IDLE_TASK_STORAGE_SIZESebastian Huber1-1/+2
By default, allocate the IDLE task storage areas from the RTEMS Workspace. This avoids having to estimate the thread-local storage size in the default configuration. Add the application configuration option CONFIGURE_IDLE_TASK_STORAGE_SIZE to request a static allocation of the task storage area for IDLE tasks. Update #3835. Update #4524.
2022-10-14score: INTERNAL_ERROR_IDLE_THREAD_CREATE_FAILEDSebastian Huber1-1/+2
Add the INTERNAL_ERROR_IDLE_THREAD_CREATE_FAILED fatal error in case the creation of an idle thread fails. This may happen due to a failing create extension provided by the application.
2022-03-10cpukit/: Scripted embedded brains header file clean upJoel Sherrill15-90/+0
Updates #4625.
2022-02-28sapi/src/*.c: Change license to BSD-2Joel Sherrill33-99/+726
Updates #3053.
2021-07-26rtems: Add RTEMS_FATAL_SOURCE_SPURIOUS_INTERRUPTSebastian Huber1-1/+2
Add RTEMS_FATAL_SOURCE_SPURIOUS_INTERRUPT as the fatal source for spurious interrupts. Use the interrupt vector number of the spurious interrupt for the fatal code. Update #3269.
2021-06-10score: Add PER_CPU_DATA_NEED_INITIALIZATION()Sebastian Huber1-13/+0
Make the initialization of the per-CPU data optional. Change license to BSD-2-Clause according to file history and re-licensing agreement. Update #3053.
2021-04-20Remove superfluous <rtems/score/wkspace.h> includesSebastian Huber1-1/+0
2021-02-26Add system initialization step for target hashSebastian Huber1-1/+9
Update #4267.
2021-02-25rtems: Add rtems_get_build_label()Sebastian Huber1-0/+50
Update #4269.
2021-02-24config: Adjust stack allocator initializationSebastian Huber1-1/+10
Use the right system initialization step for the stack allocator initialization. Do the stack allocator initialization before the workspace initialization so that _Memory_Allocate() can be used to get memory for the allocator.
2021-02-24score: Remove _Objects_Open()Sebastian Huber1-4/+2
Use the type safe _Objects_Open_u32() instead. Return the object identifier to enforce a common usage pattern.
2021-01-27Update copyright notice to 2021Sebastian Huber1-1/+1
2021-01-26cpucounter: Increase conversion accuracySebastian Huber1-3/+4
The maximum frequency is UINT32_MAX. Converted to a uint64_t variable it can be shifted by 32. The addition does not overflow since bin_per_s - 1 is UINT32_MAX.
2020-12-02sapi: Canonicalize @defgroup and @file commentsSebastian Huber39-69/+208
Adjust group identifier and names to be in line with a common pattern. Use common phrases for the group and file brief descriptions. Update #3706.
2020-12-02rtems: Canonicalize implementation Doxygen groupsSebastian Huber1-1/+1
Rename Classic API top-level group from Classic to RTEMSImplClassic. Use RTEMSImplClassic as a prefix for the subgroups. Change the group names to be in line with the API group names. Use common phrases for the group brief descriptions. Update #3706.
2020-12-02rtems: Simplify includes in version.cSebastian Huber1-1/+1
2020-12-02posix: Delete unused _POSIX_Fatal_error()Sebastian Huber1-179/+0
2020-11-26config: CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZESebastian Huber1-1/+2
In order to better support applications which use the new rtems_task_construct() directive add the CONFIGURE_INIT_TASK_CONSTURCT_STORAGE_SIZE configuration option. If this option is specified, then the Classic API initialization task is constructed with rtems_task_construct(). Update #4181.
2020-09-18rtems: Move from <rtems.h> to <rtems/config.h>Sebastian Huber2-2/+2
Move configuration related declarations and definitions to <rtems/config.h>. The goal is to make <rtems.h> an include only header file.
2020-09-17CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZESebastian Huber1-2/+3
Add this application configuration option. This configuration option can be used to reserve space for the dynamic linking of modules with thread-local storage objects. Add RTEMS_TASK_STORAGE_ALIGNMENT to define the minium alignment of a thread-local storage size. Update #4074.
2020-08-31rtems: Add _RTEMS_Name_to_id()Sebastian Huber1-21/+31
Simplify object name to identifier directives. Using _RTEMS_Name_to_id() to implement the directives enables a tail call optimization. Change license to BSD-2-Clause according to file history. Update #3053.
2020-07-14rtems: Move declartion of _RTEMS_versionSebastian Huber1-2/+1
Close #3978.
2020-05-06score: Update _Copyright_NoticeSebastian Huber1-3/+2
Add the _Copyright_Notice to a special linker set to prevent a garbage collection of this item.
2020-05-06rtems: Deprecate _Copyright_NoticeSebastian Huber1-0/+2
Close #3973.
2020-05-06rtems: Add rtems_get_copyright_notice()Sebastian Huber1-0/+46
Update #3973.
2020-05-06rtems: Deprecate use of _RTEMS_versionSebastian Huber1-0/+2
Close #3970.
2020-04-28doxygen: Switch @brief and @ingroupSebastian Huber1-1/+2
This order change fixes the Latex documentation build via Doxygen.
2020-04-17sapi: Add param check to rtems_extension_create()Sebastian Huber1-4/+10
Check that the extensions table is not NULL. Change format. Update #3953.
2020-04-16Canonicalize config.h includeSebastian Huber36-41/+41
Use the following variant which was already used by most source files: #ifdef HAVE_CONFIG_H #include "config.h" #endif
2020-02-26config: Initialize IO drivers on demandSebastian Huber2-13/+45
2020-02-25libio: Add POSIX user environment pointer to TCBSebastian Huber1-1/+9
The IO library used a POSIX key to store an optional POSIX user environment pointer. This pulled in the POSIX keys support in every application configuration. Add a user environment pointer to the thread control block (TCB) instead. Applications which do not need the POSIX user environment will just get an overhead of one pointer per thread. Close #3882.
2020-02-06sysinit: Add RTEMS_SYSINIT_ZERO_MEMORYSebastian Huber1-1/+9
Use a dedicate system initialization step to zero the memory used for the workspace and C program heap. This avoids dead code in case CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY is not configured.
2020-02-04config: Add CONFIGURE_VERBOSE_SYSTEM_INITIALIZATIONSebastian Huber1-0/+557
Update #3861.
2020-02-04Use RTEMS_SYSINIT_ORDER_LAST_BUT_5Sebastian Huber1-1/+1
Use RTEMS_SYSINIT_ORDER_LAST_BUT_5 instead of RTEMS_SYSINIT_ORDER_LAST to allow applications and support functions to place system initialization handlers behind the standard handlers. Update #3838.
2020-02-04bsps: Rework work area initializationSebastian Huber1-0/+13
The work area initialization was done by the BSP through bsp_work_area_initialize(). This approach predated the system initialization through the system initialization linker set. The workspace and C program heap were unconditionally initialized. The aim is to support RTEMS application configurations which do not need the workspace and C program heap. In these configurations, the workspace and C prgram heap should not get initialized. Change all bsp_work_area_initialize() to implement _Memory_Get() instead. Move the dirty memory, sbrk(), per-CPU data, workspace, and malloc() heap initialization into separate system initialization steps. This makes it also easier to test the individual initialization steps. This change adds a dependency to _Heap_Extend() to all BSPs. This dependency will be removed in a follow up change. Update #3838.
2019-11-05rtems-5: Improve heap fatal error informationsebastian.huber1-2/+3
Update #3806.
2019-09-09rtems: Make rtems_version_control_key() saferSebastian Huber1-1/+1
Return the empty string instead of a NULL pointer if no version key is available.
2019-04-09rtems: Add rtems_scheduler_get_processor_maximum()Sebastian Huber1-1/+1
Add rtems_scheduler_get_processor_maximum() as a replacement for rtems_get_processor_count(). The rtems_get_processor_count() is a bit orphaned. Adopt it by the Scheduler Manager. The count is also misleading, since the processor set may have gaps and the actual count of online processors may be less than the value returned by rtems_get_processor_count(). Update #3732.
2019-04-04doxygen: Rename Score* groups in RTEMSScore*Sebastian Huber1-1/+1
Update #3706
2019-04-04doxygen: Added Version to API->ClassicAndreas Dachsberger1-1/+1
Update #3706.
2019-03-14Remove superfluous <rtems/system.h> includesSebastian Huber4-4/+0
2018-12-18score: Fix per-CPU data allocationSebastian Huber1-2/+3
Allocate the per-CPU data for secondary processors directly from the heap areas before heap initialization and not via _Workspace_Allocate_aligned(). This avoids dependency on the workspace allocator. It fixes also a problem on some platforms (e.g. QorIQ) where at this early point in the system initialization the top of the RAM is used by low-level startup code on secondary processors (boot pages). Update #3507.
2018-12-14score: Static Objects_Information initializationSebastian Huber2-33/+43
Statically allocate the objects information together with the initial set of objects either via <rtems/confdefs.h>. Provide default object informations with zero objects via librtemscpu.a. This greatly simplifies the workspace size estimate. RTEMS applications which do not use the unlimited objects option are easier to debug since all objects reside now in statically allocated objects of the right types. Close #3621.
2018-12-14rtems: Use object information to get config maxSebastian Huber2-1/+103
Use functions instead of macros. Add missing rtems_configuration_get_maximum_*() functions. Update #3621.
2018-12-07score: Remove Objects_Information::is_stringSebastian Huber1-2/+1
Use Objects_Information::name_length to store this information. Update #3621.