Definitions used to configure the program start-up. More...
#define | OS_INCLUDE_STARTUP_INIT_MULTIPLE_RAM_SECTIONS |
Initialise multiple RAM sections. | |
#define | OS_BOOL_STARTUP_GUARD_CHECKS (true) |
Enable guard checks for .bss and .data sections. | |
#define | OS_INCLUDE_STARTUP_INIT_FP |
Always initialise the hardware FPU. | |
#define | OS_USE_SEMIHOSTING_SYSCALLS |
Make the application a fully semihosted application. | |
#define | OS_INTEGER_SEMIHOSTING_MAX_OPEN_FILES (20) |
Define the maximum number of semihosting open files. | |
#define | OS_INCLUDE_STANDARD_POSIX_FUNCTIONS |
Include definitions for the standard POSIX system calls. | |
#define | OS_INCLUDE_NEWLIB_POSIX_FUNCTIONS |
Include definitions for the newlib system calls. | |
#define | OS_DISABLE_CORTEXM_SET_MSP_VIA_VTOR |
Disable setting MSP during startup. | |
Definitions used to configure the program start-up.
#define OS_BOOL_STARTUP_GUARD_CHECKS (true) |
Enable guard checks for .bss and .data sections.
Sometimes mistakes in the liner script prevent the .bss area to be initialised to zero, and/or the .data area to be fully initialised with content from flash.
To validate that the start-up properly initialised these areas, some guard words are defined at the begin/end of the .bss and .data areas, and are explicitly checked.
Definition at line 512 of file os-app-config.h.
#define OS_DISABLE_CORTEXM_SET_MSP_VIA_VTOR |
Disable setting MSP during startup.
On Cortex-M, during startup, the MSP register is set to the stack pointer available in the first word pointed by VTOR. Some platforms run custom firmware (like Nordic's soft radio) that take control of VTOR and set it to a location which does point to the valid interrupt stack. It is perfectly acceptable to not reset MSP, and leave it to the location where it reached before switching to PSP, just that some stack space is wasted.
Definition at line 580 of file os-app-config.h.
#define OS_INCLUDE_NEWLIB_POSIX_FUNCTIONS |
Include definitions for the newlib system calls.
Definition at line 566 of file os-app-config.h.
#define OS_INCLUDE_STANDARD_POSIX_FUNCTIONS |
Include definitions for the standard POSIX system calls.
Definition at line 559 of file os-app-config.h.
#define OS_INCLUDE_STARTUP_INIT_FP |
Always initialise the hardware FPU.
Definition at line 517 of file os-app-config.h.
#define OS_INCLUDE_STARTUP_INIT_MULTIPLE_RAM_SECTIONS |
Initialise multiple RAM sections.
Definition at line 496 of file os-app-config.h.
#define OS_INTEGER_SEMIHOSTING_MAX_OPEN_FILES (20) |
Define the maximum number of semihosting open files.
The implementation of the semihosting file support requires an array of open files, to keep track of the host files.
To simplify the implementation and avoid dynamic allocations, a static array is used. This option defines the size of this array.
Definition at line 552 of file os-app-config.h.
#define OS_USE_SEMIHOSTING_SYSCALLS |
Make the application a fully semihosted application.
When writing test applications it is necessary to use some of the resources available from the host system (STDOUT/STDERR, file system, time, exit code, etc).
This requires the entire behaviour of the system calls to be changed and most calls to be forwarded to the host. The application is transformed into a 'fully semihosted' application.
One major difference from a regular embedded application is that a fully semihosted test application does not run in an endless loop, but terminates, and the test result must be passed back to the host system, via the exit code and optionally via a detailed status file.
Definition at line 537 of file os-app-config.h.