Combined BM-Lite SDK and examples for Raspberry Pi and nRF52840 MCU into one project
103 lines
2.1 KiB
Plaintext
103 lines
2.1 KiB
Plaintext
/* Linker script to configure memory regions. */
|
|
|
|
SEARCH_DIR(.)
|
|
GROUP(-lgcc -lc -lnosys)
|
|
|
|
MEMORY
|
|
{
|
|
FLASH (rx) : ORIGIN = 0x0, LENGTH = 0x80000
|
|
FLASH_STORAGE (rx) : ORIGIN = 0x80000, LENGTH = 0x80000
|
|
RAM (rwx) : ORIGIN = 0x20000000, LENGTH = 0x40000
|
|
}
|
|
|
|
GROUP (
|
|
libc_nano.a
|
|
libm.a
|
|
libgcc.a
|
|
)
|
|
|
|
/* The stack size used by the application. NOTE: you need to adjust according to your application. */
|
|
__stack_size__ = DEFINED(__stack_size__) ? __stack_size__ : 0x3000;
|
|
_eheap = ORIGIN(RAM) + LENGTH(RAM) - 4;
|
|
|
|
_fs_storage_start = ORIGIN(FLASH_STORAGE);
|
|
_fs_storage_size = LENGTH(FLASH_STORAGE);
|
|
|
|
|
|
SECTIONS
|
|
{
|
|
.fs_data :
|
|
{
|
|
PROVIDE(__start_fs_data = .);
|
|
KEEP(*(.fs_data))
|
|
PROVIDE(__stop_fs_data = .);
|
|
} > RAM
|
|
} INSERT AFTER .data;
|
|
|
|
SECTIONS
|
|
{
|
|
.pwr_mgmt_data :
|
|
{
|
|
PROVIDE(__start_pwr_mgmt_data = .);
|
|
KEEP(*(SORT(.pwr_mgmt_data*)))
|
|
PROVIDE(__stop_pwr_mgmt_data = .);
|
|
} > FLASH
|
|
|
|
.rodata.host_cmd_handlers : ALIGN(4)
|
|
{
|
|
__host_cmd_handlers_start = .;
|
|
KEEP(*(.host_cmd_handlers)) /* Host command handlers section */
|
|
__host_cmd_handlers_end = .;
|
|
} >FLASH
|
|
|
|
} INSERT AFTER .text
|
|
|
|
SECTIONS
|
|
{
|
|
. = ALIGN(4);
|
|
.mem_section_dummy_ram :
|
|
{
|
|
}
|
|
.log_dynamic_data :
|
|
{
|
|
PROVIDE(__start_log_dynamic_data = .);
|
|
KEEP(*(SORT(.log_dynamic_data*)))
|
|
PROVIDE(__stop_log_dynamic_data = .);
|
|
} > RAM
|
|
.log_filter_data :
|
|
{
|
|
PROVIDE(__start_log_filter_data = .);
|
|
KEEP(*(SORT(.log_filter_data*)))
|
|
PROVIDE(__stop_log_filter_data = .);
|
|
} > RAM
|
|
|
|
} INSERT AFTER .data;
|
|
|
|
SECTIONS
|
|
{
|
|
.mem_section_dummy_rom :
|
|
{
|
|
}
|
|
.log_const_data :
|
|
{
|
|
PROVIDE(__start_log_const_data = .);
|
|
KEEP(*(SORT(.log_const_data*)))
|
|
PROVIDE(__stop_log_const_data = .);
|
|
} > FLASH
|
|
.log_backends :
|
|
{
|
|
PROVIDE(__start_log_backends = .);
|
|
KEEP(*(SORT(.log_backends*)))
|
|
PROVIDE(__stop_log_backends = .);
|
|
} > FLASH
|
|
.nrf_balloc :
|
|
{
|
|
PROVIDE(__start_nrf_balloc = .);
|
|
KEEP(*(.nrf_balloc))
|
|
PROVIDE(__stop_nrf_balloc = .);
|
|
} > FLASH
|
|
|
|
} INSERT AFTER .text
|
|
|
|
INCLUDE "nrf52_common.ld"
|