2024-06-10 18:04:29 +01:00
|
|
|
/**
|
|
|
|
|
* @file stm32wb55_linker.h
|
|
|
|
|
*
|
|
|
|
|
* Linker defined symbols. Used in various part of firmware to understand
|
|
|
|
|
* hardware boundaries.
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
|
extern "C" {
|
2025-02-21 05:04:02 +04:00
|
|
|
typedef const char linker_symbol_t;
|
|
|
|
|
#else
|
|
|
|
|
typedef const void linker_symbol_t;
|
2024-06-10 18:04:29 +01:00
|
|
|
#endif
|
|
|
|
|
|
2025-02-21 05:04:02 +04:00
|
|
|
extern linker_symbol_t _stack_end; /**< end of stack */
|
|
|
|
|
extern linker_symbol_t _stack_size; /**< stack size */
|
2024-06-10 18:04:29 +01:00
|
|
|
|
2025-02-21 05:04:02 +04:00
|
|
|
extern linker_symbol_t _sidata; /**< data initial value start */
|
|
|
|
|
extern linker_symbol_t _sdata; /**< data start */
|
|
|
|
|
extern linker_symbol_t _edata; /**< data end */
|
2024-06-10 18:04:29 +01:00
|
|
|
|
2025-02-21 05:04:02 +04:00
|
|
|
extern linker_symbol_t _sbss; /**< bss start */
|
|
|
|
|
extern linker_symbol_t _ebss; /**< bss end */
|
2024-06-10 18:04:29 +01:00
|
|
|
|
2025-02-21 05:04:02 +04:00
|
|
|
extern linker_symbol_t _sMB_MEM2; /**< RAM2a start */
|
|
|
|
|
extern linker_symbol_t _eMB_MEM2; /**< RAM2a end */
|
2024-06-10 18:04:29 +01:00
|
|
|
|
2025-02-21 05:04:02 +04:00
|
|
|
extern linker_symbol_t __heap_start__; /**< RAM1 Heap start */
|
|
|
|
|
extern linker_symbol_t __heap_end__; /**< RAM1 Heap end */
|
2024-06-10 18:04:29 +01:00
|
|
|
|
2025-02-21 05:04:02 +04:00
|
|
|
extern linker_symbol_t __free_flash_start__; /**< Free Flash space start */
|
2024-06-10 18:04:29 +01:00
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
|
}
|
|
|
|
|
#endif
|