37#ifndef _RTEMS_CONFDEFS_EXTENSIONS_H
38#define _RTEMS_CONFDEFS_EXTENSIONS_H
40#ifndef __CONFIGURATION_TEMPLATE_h
41#error "Do not include this file directly, use <rtems/confdefs.h> instead"
51#ifndef CONFIGURE_MAXIMUM_USER_EXTENSIONS
52 #define CONFIGURE_MAXIMUM_USER_EXTENSIONS 0
55#if CONFIGURE_MAXIMUM_USER_EXTENSIONS > 0
59#ifdef _CONFIGURE_ENABLE_NEWLIB_REENTRANCY
63#if CONFIGURE_RECORD_PER_PROCESSOR_ITEMS > 0
64 #if (CONFIGURE_RECORD_PER_PROCESSOR_ITEMS & (CONFIGURE_RECORD_PER_PROCESSOR_ITEMS - 1)) != 0
65 #error "CONFIGURE_RECORD_PER_PROCESSOR_ITEMS must be a power of two"
68 #if CONFIGURE_RECORD_PER_PROCESSOR_ITEMS < 16
69 #error "CONFIGURE_RECORD_PER_PROCESSOR_ITEMS must be at least 16"
72 #if defined(CONFIGURE_RECORD_EXTENSIONS_ENABLED) \
73 || defined(CONFIGURE_RECORD_FATAL_DUMP_BASE64) \
74 || defined(CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB)
75 #define _CONFIGURE_RECORD_NEED_EXTENSION
79 #include <rtems/record.h>
81 #ifdef CONFIGURE_RECORD_EXTENSIONS_ENABLED
82 #warning "CONFIGURE_RECORD_EXTENSIONS_ENABLED defined without CONFIGURE_RECORD_PER_PROCESSOR_ITEMS"
84 #ifdef CONFIGURE_RECORD_FATAL_DUMP_BASE64
85 #warning "CONFIGURE_RECORD_FATAL_DUMP_BASE64 defined without CONFIGURE_RECORD_PER_PROCESSOR_ITEMS"
87 #ifdef CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB
88 #warning "CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB defined without CONFIGURE_RECORD_PER_PROCESSOR_ITEMS"
92#ifdef CONFIGURE_STACK_CHECKER_ENABLED
96#ifdef CONFIGURE_EXCEPTION_TO_SIGNAL_MAPPING
104#if defined(_CONFIGURE_RECORD_NEED_EXTENSION) \
105 || defined(_CONFIGURE_ENABLE_NEWLIB_REENTRANCY) \
106 || defined(CONFIGURE_STACK_CHECKER_ENABLED) \
107 || defined(CONFIGURE_INITIAL_EXTENSIONS) \
108 || defined(BSP_INITIAL_EXTENSION)
110 #ifdef CONFIGURE_EXCEPTION_TO_SIGNAL_MAPPING
113 #ifdef _CONFIGURE_RECORD_NEED_EXTENSION
115 #ifdef CONFIGURE_RECORD_EXTENSIONS_ENABLED
116 _Record_Thread_create,
117 _Record_Thread_start,
118 _Record_Thread_restart,
119 _Record_Thread_delete,
120 _Record_Thread_switch,
121 _Record_Thread_begin,
122 _Record_Thread_exitted,
126 #ifdef CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB
127 _Record_Fatal_dump_base64_zlib,
128 #elif defined(CONFIGURE_RECORD_FATAL_DUMP_BASE64)
129 _Record_Fatal_dump_base64,
133 #ifdef CONFIGURE_RECORD_EXTENSIONS_ENABLED
134 _Record_Thread_terminate
140 #ifdef _CONFIGURE_ENABLE_NEWLIB_REENTRANCY
141 RTEMS_NEWLIB_EXTENSION,
143 #ifdef CONFIGURE_STACK_CHECKER_ENABLED
146 #ifdef CONFIGURE_INITIAL_EXTENSIONS
149 #if !defined(CONFIGURE_DISABLE_BSP_SETTINGS) && \
150 defined(BSP_INITIAL_EXTENSION)
151 BSP_INITIAL_EXTENSION
164 RTEMS_SYSINIT_INITIAL_EXTENSIONS,
165 RTEMS_SYSINIT_ORDER_MIDDLE
169#if CONFIGURE_MAXIMUM_USER_EXTENSIONS > 0
173#if CONFIGURE_RECORD_PER_PROCESSOR_ITEMS > 0
177 } Record_Configured_control;
179 static Record_Configured_control _Record_Controls[ _CONFIGURE_MAXIMUM_PROCESSORS ];
183 &_Record_Controls[ 0 ].Control
188 RTEMS_SYSINIT_RECORD,
189 RTEMS_SYSINIT_ORDER_MIDDLE
192 #ifdef CONFIGURE_RECORD_INTERRUPTS_ENABLED
194 _Record_Interrupt_initialize,
196 RTEMS_SYSINIT_ORDER_MIDDLE
201#ifdef CONFIGURE_VERBOSE_SYSTEM_INITIALIZATION
204 RTEMS_SYSINIT_RECORD,
205 RTEMS_SYSINIT_ORDER_LAST
This header file evaluates configuration options related to the per-CPU configuration.
This header file evaluates configuration options related to the BSP configuration.
This header file provides the interfaces for mapping exceptions to signsls.
void _Exception_Raise_signal(Internal_errors_Source source, bool always_set_to_false, Internal_errors_t code)
Handle an exception frame for the purpose of mapping signals.
Definition: exceptionmapping.c:61
This header file provides data structures used by the implementation and the Application Configuratio...
#define RTEMS_ARRAY_SIZE(_array)
Gets the element count of the array.
Definition: basedefs.h:244
#define RTEMS_SYSINIT_ITEM(handler, module, order)
Creates the system initialization item associated with the handler, module, and order.
Definition: sysinit.h:204
#define CONFIGURE_MAXIMUM_USER_EXTENSIONS
This configuration option is an integer define.
Definition: appl-config.h:835
#define CONFIGURE_RECORD_PER_PROCESSOR_ITEMS
This configuration option is an integer define.
Definition: appl-config.h:1895
#define CONFIGURE_INITIAL_EXTENSIONS
This configuration option is an initializer define.
Definition: appl-config.h:2780
#define EXTENSION_INFORMATION_DEFINE(max)
Macro to define the objects information for the Classic Extensions objects.
Definition: extensiondata.h:74
void _Sysinit_Verbose(void)
Enables a verbose system initialization.
Definition: sysinitverbose.c:154
User_extensions_Switch_control _User_extensions_Initial_switch_controls[]
A spare switch control for each initial user extension.
void _User_extensions_Handler_initialization(void)
Initializes the user extensions handler.
Definition: userext.c:44
const size_t _User_extensions_Initial_count
The count of initial user extensions.
const User_extensions_Table _User_extensions_Initial_extensions[]
The table of initial user extensions.
#define NULL
Requests a GPIO pin group configuration.
Definition: xil_types.h:54
#define RTEMS_STACK_CHECKER_EXTENSION
Stack Checker Extension Set Definition.
Definition: stackchk.h:214
Standard C Library Support.
This header file evaluates configuration options related to the Newlib C Library configuration.
Stack Checker Information.
Manages the switch callouts.
Definition: userextdata.h:61
User extension table.
Definition: userext.h:253
This header file provides the API of the System Initialization Support.
This header file provides interfaces of the User Extensions Handler which are only used by the implem...