The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

mbed 2

This is the mbed 2 library. If you'd like to learn about Mbed OS please see the mbed-os docs.

Revision:
172:65be27845400
Parent:
171:3a7713b1edbc
--- a/TARGET_SDT64B/TOOLCHAIN_GCC_ARM/MK64FN1M0xxx12.ld	Thu Nov 08 11:45:42 2018 +0000
+++ b/TARGET_SDT64B/TOOLCHAIN_GCC_ARM/MK64FN1M0xxx12.ld	Wed Feb 20 20:53:29 2019 +0000
@@ -53,12 +53,6 @@
 
 __ram_vector_table__ = 1;
 
-/* With the RTOS in use, this does not affect the main stack size. The size of
- * the stack where main runs is determined via the RTOS. */
-__stack_size__ = 0x400;
-
-__heap_size__ = 0x6000;
-
 #if !defined(MBED_APP_START)
   #define MBED_APP_START 0
 #endif
@@ -67,9 +61,20 @@
   #define MBED_APP_SIZE 0x100000
 #endif
 
+#if !defined(MBED_BOOT_STACK_SIZE)
+    #define MBED_BOOT_STACK_SIZE 0x400
+#endif
+
+/* With the RTOS in use, this does not affect the main stack size. The size of
+ * the stack where main runs is determined via the RTOS. */
+__stack_size__ = MBED_BOOT_STACK_SIZE;
+
+__heap_size__ = 0x6000;
+
 HEAP_SIZE  = DEFINED(__heap_size__)  ? __heap_size__  : 0x0400;
 STACK_SIZE = DEFINED(__stack_size__) ? __stack_size__ : 0x0400;
 M_VECTOR_RAM_SIZE = DEFINED(__ram_vector_table__) ? 0x0400 : 0x0;
+M_CRASH_DATA_RAM_SIZE = 0x100;
 
 /* Specify the memory areas */
 MEMORY
@@ -196,6 +201,18 @@
     . = ALIGN(8);
     __interrupts_ram_end__ = .; /* Define a global symbol at data end */
   } > m_data
+  
+  .crash_data_ram :
+  {
+    . = ALIGN(8);
+    __CRASH_DATA_RAM__ = .;
+    __CRASH_DATA_RAM_START__ = .; /* Create a global symbol at data start */
+    KEEP(*(.keep.crash_data_ram))
+    *(.m_crash_data_ram)     /* This is a user defined section */
+    . += M_CRASH_DATA_RAM_SIZE;
+    . = ALIGN(8);
+    __CRASH_DATA_RAM_END__ = .; /* Define a global symbol at data end */
+  } > m_data
 
 
   __VECTOR_RAM = DEFINED(__ram_vector_table__) ? __VECTOR_RAM__ : ORIGIN(m_interrupts);
@@ -259,7 +276,7 @@
     __end__ = .;
     PROVIDE(end = .);
     __HeapBase = .;
-    . += HEAP_SIZE;
+    . = ORIGIN(m_data_2) + LENGTH(m_data_2) - STACK_SIZE;
     __HeapLimit = .;
     __heap_limit = .; /* Add for _sbrk */
   } > m_data_2