53 #ifndef _RTEMS_CONFIG_H 54 #define _RTEMS_CONFIG_H 70 #if defined(RTEMS_MULTIPROCESSING) 72 #include <rtems/score/mpci.h> 109 #define rtems_configuration_get_stack_allocator_avoids_work_space() \ 110 _Stack_Allocator_avoids_workspace 120 #define RTEMS_UNLIMITED_OBJECTS OBJECTS_UNLIMITED_OBJECTS 139 #define rtems_configuration_get_do_zero_of_workspace() _Memory_Zero_before_use 148 #define rtems_configuration_get_idle_task() _Thread_Idle_body 157 #define rtems_configuration_get_idle_task_stack_size() _Thread_Idle_stack_size 166 #define rtems_configuration_get_interrupt_stack_size() \ 167 ((size_t) _ISR_Stack_size) 194 #define rtems_configuration_get_maximum_processors() \ 195 _SMP_Processor_configured_maximum 205 #define rtems_configuration_get_microseconds_per_tick() \ 206 _Watchdog_Microseconds_per_tick 216 #define rtems_configuration_get_milliseconds_per_tick() \ 217 (_Watchdog_Microseconds_per_tick / 1000) 227 #define rtems_configuration_get_nanoseconds_per_tick() \ 228 _Watchdog_Nanoseconds_per_tick 238 #define rtems_configuration_get_number_of_initial_extensions() \ 239 ((uint32_t) _User_extensions_Initial_count) 248 #define rtems_configuration_get_stack_allocate_hook() _Stack_Allocator_allocate 257 #define rtems_configuration_get_stack_allocate_init_hook() \ 258 _Stack_Allocator_initialize 267 #define rtems_configuration_get_stack_free_hook() _Stack_Allocator_free 277 #define rtems_configuration_get_ticks_per_timeslice() \ 278 _Watchdog_Ticks_per_timeslice 288 #define rtems_configuration_get_unified_work_area() _Workspace_Is_unified 298 #define rtems_configuration_get_user_extension_table() \ 299 _User_extensions_Initial_extensions 309 #if defined(RTEMS_MULTIPROCESSING) 310 #define rtems_configuration_get_user_multiprocessing_table() \ 311 ( &_MPCI_Configuration ) 313 #define rtems_configuration_get_user_multiprocessing_table() NULL 333 #define rtems_configuration_get_work_space_size() \ 335 (rtems_configuration_get_stack_allocator_avoids_work_space() ? \ 336 0 : rtems_configuration_get_stack_space_size())) 346 #define RTEMS_HAS_HARDWARE_FP CPU_HARDWARE_FP 360 #define rtems_resource_is_unlimited( _resource ) \ 361 _Objects_Is_unlimited(_resource) 375 #define rtems_resource_maximum_per_allocation( _resource ) \ 376 _Objects_Maximum_per_allocation(_resource) 390 #define rtems_resource_unlimited( _resource ) \ 391 ((_resource) | RTEMS_UNLIMITED_OBJECTS) Stack_Allocator_initialize rtems_stack_allocate_init_hook
Thread stack allocator initialization handlers shall have this type.
Constants defined by the application configuration for the idle threads.
This header file defines types provided by the Classic API.
User Extension Handler Data Structures.
uint32_t rtems_configuration_get_maximum_extensions(void)
Returns the maximum number of Classic API User Extensions which are configured for this application...
Data Related to the Management of Processor Interrupt Levels.
Constants and Structures Associated with the Object Handler.
This header file defines parts of the application configuration information API.
Stack_Allocator_allocate rtems_stack_allocate_hook
Thread stack allocator allocate handlers shall have this type.
SuperCore SMP Support API.
Stack_Allocator_free rtems_stack_free_hook
Thread stack allocator free handlers shall have this type.
uintptr_t rtems_configuration_get_stack_space_size(void)
Returns the thread stack space size in bytes of configured for this application.
SPARC CPU Department Source.
const char * rtems_get_version_string(void)
Returns the pointer to the RTEMS version string.
void(* Stack_Allocator_initialize)(size_t stack_space_size)
The stack allocator initialization handler.
Constants for the watchdog ticks.
void(* Stack_Allocator_free)(void *addr)
Stack allocator free handler.
Constants for the idle threads.
Information About the Thread Stack Handler.
const char * rtems_get_copyright_notice(void)
Returns the pointer to the RTEMS copyright notice.
void *(* Stack_Allocator_allocate)(size_t stack_size)
Stack allocator allocate handler.