Browse Source

[UPD]nrf52840 compatible with gcc compilation

hyhkjiy 4 years ago
parent
commit
50fe26e19c

+ 4 - 3
bsp/nrf5x/nrf52840/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);
 

+ 16 - 0
bsp/nrf5x/nrf52840/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 = 0x0, LENGTH = 0x100000
+  RAM (rwx) :  ORIGIN = 0x20000000, LENGTH = 0x40000
+  CODE_RAM (rwx) : ORIGIN = 0x800000, LENGTH = 0x10000
+}
+
+INCLUDE "packages/nrfx-v2.1.0/mdk/nrf_common.ld"
+
+
+

+ 1 - 1
bsp/nrf5x/nrf52840/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 = ''