summaryrefslogtreecommitdiffstats
path: root/cpukit/include/rtems/confdefs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Change filesystem utime_h handler to utimens_hRyan Long2021-05-281-2/+2
| | | | | | | Also updated licenses. Closes #4400 Updates #3899
* sysinit: Do not open console when just referencing reentrancy structure.Joel Sherrill2021-05-251-0/+21
| | | | | | | | | This change eliminates a system initialization dependentcy which resulted in an application without a file system or console referencing errno being forced to include the code to open(/dev/console), close(), atexit(), and the unmount infrastructure. Closes #4439.
* score: Fix task stack initializationSebastian Huber2021-03-271-3/+18
| | | | | | | | | Do not adjust the stack area begin address since this may confuse the stack allocator and result in failed stack frees. Account for the alignment overhead in the stack space size estimate. Check that the stack size is in the expected interval.
* CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZESebastian Huber2021-03-051-0/+5
| | | | | Ensure that CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZE meets the task storage alignment requirement.
* config: Adjust stack allocator initializationSebastian Huber2021-02-241-1/+1
| | | | | | | 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.
* config: Fix invalid static assertions in CSebastian Huber2020-12-122-31/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | Expressions in static assertions must be integral constant expressions. In integral constant expressions the use of address constant expressions is not allowed. In static initializers the address constant expressions are allowed. Introduce a new macro _CONFIGURE_ASSERT_NOT_NULL() which leads to a compile time error if the second parameter is NULL. It generates error messages like this if for example #define CONFIGURE_INIT_TASK_ENTRY_POINT NULL is provided by the application: cpukit/include/rtems/confdefs/inittask.h:51:26: error: size of unnamed array is negative 51 | ( _type ) sizeof( int[ ( _value ) != NULL ? 1 : -1 ] ) ) | ^ cpukit/include/rtems/confdefs/inittask.h:170:3: note: in expansion of macro '_CONFIGURE_ASSERT_NOT_NULL' 170 | _CONFIGURE_ASSERT_NOT_NULL( | ^~~~~~~~~~~~~~~~~~~~~~~~~~ This fix relates to CID 1470570 (PARSE_ERROR). Update #4181.
* config: Canonicalize @defgroup and @file commentsSebastian Huber2020-12-0222-44/+66
| | | | | | | 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.
* config: Check CONFIGURE_INIT_TASK_STACK_SIZESebastian Huber2020-11-261-0/+2
|
* config: CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZESebastian Huber2020-11-261-9/+49
| | | | | | | | | | 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.
* Avoid INTERNAL_ERROR_RTEMS_INIT_TASK_ENTRY_IS_NULLSebastian Huber2020-11-261-0/+21
| | | | | | | Replace a runtime check with a compile time assertion. This makes the INTERNAL_ERROR_RTEMS_INIT_TASK_ENTRY_IS_NULL obsolete. Update #4181.
* config: Clarify the use of pragmasSebastian Huber2020-11-261-1/+9
|
* config: Initialize task stack allocator on demandSebastian Huber2020-11-191-8/+11
| | | | | Register a custom task stack allocator initialization handler only if necessary.
* config: Simplify task stack allocator initSebastian Huber2020-11-191-0/+18
| | | | | Replace runtime checks with compile time assertions. This makes the INTERNAL_ERROR_BAD_STACK_HOOK obsolete.
* confdefs: Add extern C guards to libpci.hJan Sommer2020-10-301-0/+8
|
* Decouple the C Program Heap initializationSebastian Huber2020-10-011-0/+3
| | | | | | | Before this patch RTEMS_Malloc_Initialize() had a fixed dependency on _Workspace_Area. Introduce _Workspace_Malloc_initializer to have this dependency only if CONFIGURE_UNIFIED_WORK_AREAS is defined by the application configuration.
* score: Simplify CORE_message_queue_BufferSebastian Huber2020-09-281-1/+1
| | | | | | | | | | Merge CORE_message_queue_Buffer structure into CORE_message_queue_Buffer_control. Use a zero-length array for the actual message buffer. This reduces the structure size on all targets. Update #4007.
* rtems: Add rtems_task_construct()Sebastian Huber2020-09-172-1/+11
| | | | | | | | | | | | | | | | | In contrast to rtems_task_create() this function constructs a task with a user-provided task storage area. The new directive uses a configuration structure instead of individual parameters. Add RTEMS_TASK_STORAGE_SIZE() to calculate the recommended size of a task storage area based on the task attributes and the size dedicated to the task stack and thread-local storage. This macro may allow future extensions without breaking the API. Add application configuration option CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE to adjust RTEMS Workspace size estimate. Update #3959.
* CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZESebastian Huber2020-09-171-0/+7
| | | | | | | | | | | 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.
* score: Add _Stack_Allocator_do_initialize()Sebastian Huber2020-08-311-0/+6
| | | | | | | | Do the stack allocator initialization and sanity check only if a user-provided stack allocator was configured. This avoids a dependency of _Thread_Handler_initialization() on the stack allocator. Update #3959.
* config: Provide file descriptors only if necessarySebastian Huber2020-08-311-9/+15
| | | | | | | | | | | | Only provide the file descriptor array if CONFIGURE_MAXIMUM_FILE_DESCRIPTORS > 0. If someone configured CONFIGURE_MAXIMUM_FILE_DESCRIPTORS == 0 and the appplication uses something which requires a file descriptor, then a linker error will show up. An alternative would be to add a zero-length array rtems_libio_iops[ 0 ] to librtemscpu.a which would be used in this case. Conditionally include some header files.
* config: Conditionally include headerSebastian Huber2020-08-211-1/+4
|
* confdefs: Fix cyclic dependencySebastian Huber2020-08-212-12/+8
| | | | Close #4061.
* config: Fix typoSebastian Huber2020-04-141-1/+1
| | | | Update #3875.
* config: Fix _ISR_Stack_area_endSebastian Huber2020-04-081-6/+9
| | | | | | | | | | | | | | In the previous implementation, the _ISR_Stack_area_begin and _ISR_Stack_area_end symbols were in different sections. If they do not have the same alignment, then the following linker directive could separate them: *(SORT_BY_ALIGNMENT (SORT_BY_NAME (.rtemsstack*))) Do not use different sections and instead define _ISR_Stack_area_end directly. Update #3799.
* Revert "score: Fix _ISR_Stack_area_end"Sebastian Huber2020-04-051-0/+5
| | | | | This reverts commit 8e80876bdd54e36fb668eee655eec1dd588daf13 which broke several architectures.
* score: Fix _ISR_Stack_area_endSebastian Huber2020-04-031-5/+0
| | | | | | | | | | The _ISR_Stack_area_begin and _ISR_Stack_area_end symbols are in different sections. They must have the same alignment, otherwise the following linker directive could separate them: *(SORT_BY_ALIGNMENT (SORT_BY_NAME (.rtemsstack*))) Update #3799.
* config: Remove filesystem entry config optionsSebastian Huber2020-04-031-56/+14
| | | | | | | | | | | | | | | | | | | | Remove the following undocumented configuration options: * CONFIGURE_FILESYSTEM_ENTRY_DOSFS * CONFIGURE_FILESYSTEM_ENTRY_FTPFS * CONFIGURE_FILESYSTEM_ENTRY_IMFS * CONFIGURE_FILESYSTEM_ENTRY_JFFS2 * CONFIGURE_FILESYSTEM_ENTRY_NFS * CONFIGURE_FILESYSTEM_ENTRY_RFS * CONFIGURE_FILESYSTEM_ENTRY_TFTPFS Update #3836.
* config: Remove CONFIGURE_FILESYSTEM_DEVFSSebastian Huber2020-03-311-9/+0
| | | | | | | | This filesystem no longer exists. Remove unused RTEMS_FILESYSTEM_TYPE_DEVFS. Update #3894.
* config: Remove BSP_DEFAULT_UNIFIED_WORK_AREASSebastian Huber2020-03-311-1/+0
| | | | | Do not undefine this unused BSP configuration option. This is a follow up of commit 92b33b8d09377feb14eb5a831ce242047c58d02b.
* conf: Improve evaluation of event recording optsSebastian Huber2020-03-231-22/+46
| | | | | | | Check for configuration errors earlier. Allow fatal dumps without the other extensions. Add some warnings. Update #3904.
* record: Add rtems_record_dump()Sebastian Huber2020-03-181-1/+17
| | | | | | | | | Add rtems_record_dump_base64() and rtems_record_dump_base64_zlib(). Add CONFIGURE_RECORD_FATAL_DUMP_BASE64 and CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB configuration options. Update #3904.
* imfs: Replace devfs with an IMFS specializationSebastian Huber2020-03-093-65/+42
| | | | | | | | | | | | | | | | Add a simplified path evaluation function IMFS_eval_path_devfs() for a device only IMFS configuration. The code size can be further reduced by the application if it disables the support for legacy IO drivers via: #define CONFIGURE_IMFS_DISABLE_MKNOD #define CONFIGURE_IMFS_DISABLE_MKNOD_DEVICE Obsolete CONFIGURE_MAXIMUM_DEVICES. Remove BSP_MAXIMUM_DEVICES. Update #3894. Update #3898.
* imfs: Constify imfs_memfile_bytes_per_blockSebastian Huber2020-03-091-1/+1
| | | | | | | | The CONFIGURE_IMFS_MEMFILE_BYTES_PER_BLOCK value is validated by <rtems/confdefs/libio.h>. Changing this value during runtime could lead to memory corruption. Update #3894.
* config: Remove <rtems/btimer.h> includeSebastian Huber2020-03-041-4/+0
| | | | | | | The use of CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER does not define anything, so remove the <rtems/btimer.h> include. Update #3875.
* config: Initialize IO drivers on demandSebastian Huber2020-02-261-0/+29
|
* config: Resurrect NULL_DRIVER_TABLE_ENTRYSebastian Huber2020-02-251-1/+3
| | | | | | | This define may be used by application configurations for the CONFIGURE_APPLICATION_EXTRA_DRIVERS definition. Update #3875.
* config: Add <rtems/confdefs/wkspace.h>Sebastian Huber2020-02-251-0/+182
| | | | | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Change licence of <rtems/confdefs.h> to BSD-2-Clause according to file history. Update #3053. Close #3875.
* config: Add <rtems/confdefs/objectsposix.h>Sebastian Huber2020-02-251-0/+197
| | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.
* config: Add <rtems/confdefs/wkspacesupport.h>Sebastian Huber2020-02-251-0/+64
| | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.
* config: Add <rtems/confdefs/objectsclassic.h>Sebastian Huber2020-02-251-0/+127
| | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.
* config: Add <rtems/confdefs/threads.h>Sebastian Huber2020-02-251-0/+234
| | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.
* config: Add <rtems/confdefs/unlimited.h>Sebastian Huber2020-02-251-0/+143
| | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.
* config: Add <rtems/confdefs/iodrivers.h>Sebastian Huber2020-02-251-0/+166
| | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.
* config: Add <rtems/confdefs/console.h>Sebastian Huber2020-02-251-0/+85
| | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.
* config: Add <rtems/confdefs/initthread.h>Sebastian Huber2020-02-251-0/+97
| | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.
* config: Add <rtems/confdefs/inittask.h>Sebastian Huber2020-02-251-0/+131
| | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.
* config: Add <rtems/confdefs/extensions.h>Sebastian Huber2020-02-251-0/+158
| | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.
* config: Add <rtems/confdefs/newlib.h>Sebastian Huber2020-02-251-0/+72
| | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.
* config: Add <rtems/confdefs/clock.h>Sebastian Huber2020-02-251-0/+109
| | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.
* config: Add <rtems/confdefs/mcpi.h>Sebastian Huber2020-02-251-0/+147
| | | | | | | | Remove all comments and copyrightable content from the moved content. Use BSD-2-Clause license for new file. Update #3053. Update #3875.