diff --git a/bsp/nrf5x/nrf52832/board/board.h b/bsp/nrf5x/nrf52832/board/board.h index f80896078074199fdac2d85c2d23d3631d053b19..5357cca29153010d4e5daedf5fed189daa4f4d9a 100644 --- a/bsp/nrf5x/nrf52832/board/board.h +++ b/bsp/nrf5x/nrf52832/board/board.h @@ -17,11 +17,12 @@ extern int Image$$RW_IRAM1$$ZI$$Limit; #pragma section="CSTACK" #define HEAP_BEGIN (__segment_end("CSTACK")) #else -extern int __bss_end; -#define HEAP_BEGIN ((void *)&__bss_end) +extern int __bss_end__; +#define HEAP_BEGIN ((void *)&__bss_end__) #endif -#define HEAP_END (0x20000000 + 64*1024) +#define HEAP_SIZE 16*1024 +#define HEAP_END (HEAP_BEGIN + HEAP_SIZE) void rt_hw_board_init(void); diff --git a/bsp/nrf5x/nrf52832/board/linker_scripts/link.lds b/bsp/nrf5x/nrf52832/board/linker_scripts/link.lds new file mode 100644 index 0000000000000000000000000000000000000000..b1d21b531b50d4974912b2b74c11e32e9d17a35c --- /dev/null +++ b/bsp/nrf5x/nrf52832/board/linker_scripts/link.lds @@ -0,0 +1,16 @@ +/* Linker script to configure memory regions. */ + +SEARCH_DIR(.) +GROUP(-lgcc -lc -lnosys) + +MEMORY +{ + FLASH (rx) : ORIGIN = 0x00000000, LENGTH = 0x80000 + RAM (rwx) : ORIGIN = 0x20000000, LENGTH = 0x10000 + CODE_RAM (rwx) : ORIGIN = 0x800000, LENGTH = 0x10000 +} + +INCLUDE "packages/nrfx-v2.1.0/mdk/nrf_common.ld" + + + diff --git a/bsp/nrf5x/nrf52832/rtconfig.py b/bsp/nrf5x/nrf52832/rtconfig.py index c1c60225582d2e27110dc2a2b75407d1c15d4c7c..219d20d30357a3e8d68cc886b979fb2bc063aa74 100644 --- a/bsp/nrf5x/nrf52832/rtconfig.py +++ b/bsp/nrf5x/nrf52832/rtconfig.py @@ -43,7 +43,7 @@ if PLATFORM == 'gcc': DEVICE = ' -mcpu=cortex-m4 -mthumb -ffunction-sections -fdata-sections' CFLAGS = DEVICE AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp' - LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rtthread-nrf52832.map,-cref,-u,Reset_Handler -T board/linker_scripts/link.lds' + LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rtthread.map,-cref,-u,Reset_Handler -T board/linker_scripts/link.lds' CPATH = '' LPATH = ''