summaryrefslogtreecommitdiffstats
path: root/cpukit (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* config: Add <rtems/confdefs/obsolete.h>Sebastian Huber2020-02-254-166/+238
| | | | | | | | | Unify handling of obsolete configuration options. Remove comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.
* config: Remove _Configure_Max_Objects()Sebastian Huber2020-02-251-10/+3
| | | | | | | Use rtems_resource_maximum_per_allocation() directly. The use of _Configure_Zero_or_one() was superfluous. Update #3875.
* config: Improve _Configure_From_workspace()Sebastian Huber2020-02-251-1/+1
| | | | | | | | | Commit 4c09f4b3fefc7ba5c5868a97ad00c1ee14a06677 changed the cast from size_t to ssize_t to try to fix an workspace issue on 16-bit architectures. This change was reverted by commit 7ff6115b8b913d848b8fe76daf72ca0b4bbf2548 for the workspace but not _Configure_From_workspace(). Change the cast to uintptr_t to be in line with the Heap Handler.
* config: Remove CONFIGURE_DISABLE_SMP_CONFIGURATIONSebastian Huber2020-02-253-45/+0
| | | | | | | | | | The CONFIGURE_DISABLE_SMP_CONFIGURATION configuration option and rtems_configuration_is_smp_enabled() were added during the SMP support development cycle as a workaround to fix some testsuite failures in SMP configurations. All use cases were replaced with tests for specific conditions. The configuration option and test macro were undocumented. Close #3876.
* rtems: Change timer server task mode settingSebastian Huber2020-02-251-5/+7
| | | | | | Use the non-preempt mode only in uni-processor configurations. Update #3876.
* score: _Scheduler_Is_non_preempt_mode_supported()Sebastian Huber2020-02-255-4/+52
| | | | | | | | If the non-preempt mode for threads is supported depends on the scheduler implementation. Add _Scheduler_Is_non_preempt_mode_supported() to indicate this. Update #3876.
* config: CONFIGURE_INIT_TASK_INITIAL_MODESSebastian Huber2020-02-251-1/+1
| | | | | | | | | | Determine the default for CONFIGURE_INIT_TASK_INITIAL_MODES depeding on whether RTEMS_SMP is defined or not. In the tests, use CONFIGURE_INIT_TASK_INITIAL_MODES to explicitly request RTEMS_NO_PREEMPT mode if necessary. Update #3876.
* score: Add _SMP_Need_inter_processor_interrupts()Sebastian Huber2020-02-254-3/+19
| | | | | | | Test for the proper system condition instead of using the rtems_configuration_is_smp_enabled() workaround. Update #3876.
* libio: Add POSIX user environment pointer to TCBSebastian Huber2020-02-2510-58/+82
| | | | | | | | | | 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.
* config: Add _SMP_Is_enabledSebastian Huber2020-02-254-40/+20
| | | | | | | | | | Move the is SMP enabled configuration constant out of the configuration table. Since this was the last configuration constant in rtems_configuration_table, remove this type. Update #3875.
* config: Add _SMP_Processor_configure_maximumSebastian Huber2020-02-253-16/+23
| | | | | | | Move the processor maximum configuration constant out of the configuration table. Update #3875.
* config: Add _Workspace_Is_unifiedSebastian Huber2020-02-255-14/+48
| | | | | | | | | Move the unified workspace configuration constant out of the configuration table. Provide a default definition of the unified workspace constant. Update #3875.
* config: Add _Workspace_SizeSebastian Huber2020-02-254-7/+71
| | | | | | | Move the workspace size configuration constant out of the configuration table. Update #3875.
* config: Add _Thread_Idle_bodySebastian Huber2020-02-256-12/+55
| | | | | | | | | Move the idle thread body configuration constant out of the configuration table. Provide a default definition of the idle thread body constant. Update #3875.
* config: Add _Thread_Idle_stack_sizeSebastian Huber2020-02-255-10/+74
| | | | | | | | | | Move the idle thread stack size configuration constant out of the configuration table. Add THREAD_IDLE_STACK_SIZE_DEFAULT and use it to provide a default definition of the idle thread stack size constant. Update #3875.
* config: Add _Watchdog_Ticks_per_timesliceSebastian Huber2020-02-255-9/+58
| | | | | | | | | | Move the ticks per timeslice configuration constant out of the configuration table. Add WATCHDOG_TICKS_PER_TIMESLICE_DEFAULT and use it to provide a default definition of the watchdog ticks per timeslice constant. Update #3875.
* config: Add _Watchdog_Microseconds_per_tickSebastian Huber2020-02-253-15/+20
| | | | | | | | | | Move the microseconds per tick configuration constant out of the configuration table. Add WATCHDOG_MICROSECONDS_PER_TICK_DEFAULT and use it to provide a default definition of the watchdog ticks constants. Update #3875.
* config: Remove CONFIGURE_POSIX_HAS_OWN_INIT_THREAD_TABLESebastian Huber2020-02-257-145/+69
| | | | | | | | | | | | | | | | | | | The CONFIGURE_HAS_OWN_INIT_TASK_TABLE and CONFIGURE_POSIX_HAS_OWN_INIT_THREAD_TABLE are the last *_HAS_OWN_* configuration options. These two options are probably unused, see also: * https://lists.rtems.org/pipermail/users/2019-April/033129.html * https://lists.rtems.org/pipermail/users/2019-April/033130.html Removing them simplifies the configuration. If there is a real user need which shows up after the removal, we can resurrect them on demand. Using CONFIGURE_POSIX_HAS_OWN_INIT_THREAD_TABLE would have required the use of the undocumented CONFIGURE_POSIX_INIT_THREAD_TABLE_NAME and CONFIGURE_POSIX_INIT_THREAD_TABLE_SIZE configuration options. Update #3874.
* config: Bring back RTEMS 4.11 configuration tableSebastian Huber2020-02-252-0/+79
| | | | | This improves API backward compatibility of RTEMS 5.1 to previous versions.
* rtems: Simplify _RTEMS_tasks_Initialize_user_task()Sebastian Huber2020-02-251-3/+2
| | | | | Due to the system initialization order, the _Thread_Global_constructor must be 0 in this function.
* config: Simplify initialization task configSebastian Huber2020-02-2510-142/+148
| | | | | | | | | | With the removal of the CONFIGURE_HAS_OWN_INIT_TASK_TABLE configuration option at most one Classic API user initialization task can be configured. Provide an RTEMS API configuration table for backward compatibility. Update #3873.
* config: Remove CONFIGURE_HAS_OWN_INIT_TASK_TABLESebastian Huber2020-02-251-17/+6
| | | | | | | | | | | | | | | | | | | The CONFIGURE_HAS_OWN_INIT_TASK_TABLE and CONFIGURE_POSIX_HAS_OWN_INIT_THREAD_TABLE are the last *_HAS_OWN_* configuration options. These two options are probably unused, see also: * https://lists.rtems.org/pipermail/users/2019-April/033129.html * https://lists.rtems.org/pipermail/users/2019-April/033130.html Removing them simplifies the configuration. If there is a real user need which shows up after the removal, we can resurrect them on demand. Using CONFIGURE_HAS_OWN_INIT_TASK_TABLE would have required the use of the undocumented CONFIGURE_INIT_TASK_TABLE and CONFIGURE_INIT_TASK_TABLE_SIZE configuration options. Update #3873.
* config: Remove unused declaration and definesSebastian Huber2020-02-171-22/+0
| | | | Update #3875.
* posix: Remove <rtems/posix/ptimer.h>Sebastian Huber2020-02-173-90/+0
| | | | | This file contained duplicate prototypes for standard POSIX functions declared in <time.h>.
* monitor: Use proper API for all config constantsSebastian Huber2020-02-171-7/+4
|
* config: Remove unused configuration constantSebastian Huber2020-02-172-11/+0
|
* Remove rtems_configuration_get_posix_api_configuration()Sebastian Huber2020-02-171-3/+0
| | | | | | | The corresponding data structure not longer exists. This function was not tested and documented. Close #3871.
* score: Clean up wkspace.cSebastian Huber2020-02-171-39/+3
| | | | | | | Remove DEBUG_WORKSPACE support. There are better ways to trace the application. See Tracing chapter in the RTEMS User Manual. Remove superfluous includes. Change format.
* score: Remove unused _Workspace_Allocate_aligned()Sebastian Huber2020-02-172-16/+0
|
* objectdata.h, objectimpl.h: Change structure member from free to deallocateJoel Sherrill2020-02-142-3/+3
| | | | | | | | Without this change, rtems-libbsd does not compile. A macro turns free into bsd_free. Also the use of a standard library element as a program identifier is a violation of a MISRA rule. Turns out that was a good rule. :)
* score: Simplify _Thread_Initialize()Sebastian Huber2020-02-124-10/+84
| | | | | | | | Allocate new thread queue heads during objects information extend. This removes an error case and the last dependency on the workspace in _Thread_Initialize(). Update #3835.
* score: Add _Objects_Allocate_with_extend()Sebastian Huber2020-02-122-26/+42
| | | | Update #3835.
* score: Add _Objects_Activate_unlimited()Sebastian Huber2020-02-122-12/+31
| | | | Update #3835.
* score: Add _Freechain_Extend()Sebastian Huber2020-02-122-8/+43
| | | | Update #3835.
* score: Add _Freechain_Pop()Sebastian Huber2020-02-121-0/+12
| | | | Update #3835.
* score: Add _Freechain_Is_empty()Sebastian Huber2020-02-121-0/+12
| | | | Update #3835.
* score: _Objects_Extend_information()Sebastian Huber2020-02-122-16/+10
| | | | | | | Return block index in _Objects_Extend_information(). This allows to customize the objects information extend. Update #3835.
* score: Inline _Objects_Namespace_remove_u32()Sebastian Huber2020-02-122-26/+21
| | | | | | This function is simple enough to be inlined. Update #3835.
* score: Split up objects freeSebastian Huber2020-02-126-53/+146
| | | | | | | | Split up the different objects free methods into separate functions. This helps to avoid a dependency on the workspace in case no objects or a static set of objects is configured. Update #3835.
* score: Split up objects allocationSebastian Huber2020-02-128-95/+289
| | | | | | | | | | | Split up the different objects allocation methods into separate functions. This helps to avoid a dependency on the workspace in case no objects or a static set of objects is configured. Change license to BSD-2-Clause according to file histories. Update #3053. Update #3835.
* score: Add _Objects_Free_objects_block()Sebastian Huber2020-02-122-39/+64
| | | | | | | This is a preparation to allow a customization of the objects information extend. Update #3835.
* score: Statically allocate idle/MPCI stacksSebastian Huber2020-02-126-33/+46
| | | | | | | Place idle and MPCI stacks into extra linker sections. This can be optionally used by applications to control the placement of the stacks. Update #3835.
* score: Move thread stack allocationSebastian Huber2020-02-127-54/+83
| | | | | | Move thread stack allocation to caller side of _Thread_Initialize(). Update #3835.
* score: Add _Stack_Extend_size()Sebastian Huber2020-02-122-10/+30
| | | | Update #3835.
* score: Add Thread_ConfigurationSebastian Huber2020-02-126-153/+170
| | | | | | | | | Add the Thread_Configuration structure to reduce the parameter count of _Thread_Initialize(). This makes it easier to add more parameters in the future. It simplifies the code generation since most architectures do not have that many registers available for function parameters. Update #3835.
* score: Split stack allocator configurationSebastian Huber2020-02-125-81/+139
| | | | | | This allows the linker garbage collection to perform its work. Update #3835.
* score: Simplify TLS area allocationSebastian Huber2020-02-1211-88/+161
| | | | | | Use the stack area to allocate the TLS area. Update #3835.
* score: Simplify FP context allocationSebastian Huber2020-02-126-76/+46
| | | | | | | | | | | Use the stack area to allocate the FP context. This considerably simplifies the application configuration since the task count no longer influences the configured work space size. With this change the stack space size is overestimated since an FP context for each thread is accounted. Memory constraint applications can use the stack size for fine tuning. Update #3835.
* score: Remove _Stack_Ensure_minimum() callSebastian Huber2020-02-121-2/+1
| | | | | | This call is superfluous since _Thread_Initialize() will do this also. Update #3835.
* score: Simplify thread stack freeSebastian Huber2020-02-126-59/+32
| | | | Update #3835.