mbed library sources

Dependents:   Encrypted my_mbed lklk CyaSSL_DTLS_Cellular ... more

Superseded

This library was superseded by mbed-dev - https://os.mbed.com/users/mbed_official/code/mbed-dev/.

Development branch of the mbed library sources. This library is kept in synch with the latest changes from the mbed SDK and it is not guaranteed to work.

If you are looking for a stable and tested release, please import one of the official mbed library releases:

Import librarymbed

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

Files at this revision

API Documentation at this revision

Comitter:
mbed_official
Date:
Mon Jul 21 08:45:07 2014 +0100
Parent:
261:ee1cf08b7bc7
Child:
263:3095fd66fd32
Commit message:
Synchronized with git revision f971aef91393bdb89fd26278bff585cc24ccc30a

Full URL: https://github.com/mbedmicro/mbed/commit/f971aef91393bdb89fd26278bff585cc24ccc30a/

[Nucleo, Discovery] Add default heap size( 1 KB) for Nucleo F401RE, DISCOVERY 407

Changed in this revision

common/InterruptManager.cpp Show annotated file Show diff for this revision Revisions of this file
targets/cmsis/TARGET_STM/TARGET_DISCO_F407VG/TOOLCHAIN_GCC_ARM/startup_stm32f407xx.s Show annotated file Show diff for this revision Revisions of this file
targets/cmsis/TARGET_STM/TARGET_NUCLEO_F401RE/TOOLCHAIN_ARM_MICRO/startup_stm32f401xe.s Show annotated file Show diff for this revision Revisions of this file
targets/cmsis/TARGET_STM/TARGET_NUCLEO_F401RE/TOOLCHAIN_ARM_STD/startup_stm32f401xe.s Show annotated file Show diff for this revision Revisions of this file
targets/cmsis/TARGET_STM/TARGET_NUCLEO_F401RE/TOOLCHAIN_GCC_ARM/startup_STM32F40x.s Show annotated file Show diff for this revision Revisions of this file
targets/cmsis/TARGET_STM/TARGET_NUCLEO_F401RE/TOOLCHAIN_IAR/stm32f401xe.icf Show annotated file Show diff for this revision Revisions of this file
--- a/common/InterruptManager.cpp	Mon Jul 21 07:45:07 2014 +0100
+++ b/common/InterruptManager.cpp	Mon Jul 21 08:45:07 2014 +0100
@@ -7,7 +7,7 @@
 
 typedef void (*pvoidf)(void);
 
-InterruptManager* InterruptManager::_instance = NULL;
+InterruptManager* InterruptManager::_instance = (InterruptManager*)NULL;
 
 InterruptManager* InterruptManager::get() {
     if (NULL == _instance)
@@ -25,7 +25,7 @@
     // is very likely to occur
     if (NULL != _instance) {
         delete _instance;
-        _instance = NULL;
+        _instance = (InterruptManager*)NULL;
     }
 }
 
@@ -68,7 +68,7 @@
     if (_chains[irq_pos]->size() == 1 && NULL != _chains[irq_pos]->get(0)->get_function()) {
         NVIC_SetVector(irq, (uint32_t)_chains[irq_pos]->get(0)->get_function());
         delete _chains[irq_pos];
-        _chains[irq_pos] = NULL;
+        _chains[irq_pos] = (CallChain*) NULL;
     }
     return true;
 }
--- a/targets/cmsis/TARGET_STM/TARGET_DISCO_F407VG/TOOLCHAIN_GCC_ARM/startup_stm32f407xx.s	Mon Jul 21 07:45:07 2014 +0100
+++ b/targets/cmsis/TARGET_STM/TARGET_DISCO_F407VG/TOOLCHAIN_GCC_ARM/startup_stm32f407xx.s	Mon Jul 21 08:45:07 2014 +0100
@@ -72,6 +72,41 @@
  * @param  None
  * @retval : None
 */
+   .section .stack
+    .align 3
+#ifdef __STACK_SIZE
+    .equ    Stack_Size, __STACK_SIZE
+#else
+    .equ    Stack_Size, 0xc00
+#endif
+    .globl    __StackTop
+    .globl    __StackLimit
+__StackLimit:
+    .space    Stack_Size
+    .size __StackLimit, . - __StackLimit
+__StackTop:
+    .size __StackTop, . - __StackTop
+
+    .section .heap
+    .align 3
+#ifdef __HEAP_SIZE
+    .equ    Heap_Size, __HEAP_SIZE
+#else
+    .equ    Heap_Size, 0x400
+#endif
+    .globl    __HeapBase
+    .globl    __HeapLimit
+__HeapBase:
+    .if    Heap_Size
+    .space    Heap_Size
+    .endif
+    .size __HeapBase, . - __HeapBase
+__HeapLimit:
+    .size __HeapLimit, . - __HeapLimit
+
+
+
+
 
     .section  .text.Reset_Handler
   .weak  Reset_Handler
--- a/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F401RE/TOOLCHAIN_ARM_MICRO/startup_stm32f401xe.s	Mon Jul 21 07:45:07 2014 +0100
+++ b/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F401RE/TOOLCHAIN_ARM_MICRO/startup_stm32f401xe.s	Mon Jul 21 08:45:07 2014 +0100
@@ -58,7 +58,7 @@
 ;   <o>  Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
 ; </h>
 
-Heap_Size       EQU     0x00000000
+Heap_Size       EQU     0x00000400
 
                 AREA    HEAP, NOINIT, READWRITE, ALIGN=3
                 EXPORT  __heap_base
--- a/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F401RE/TOOLCHAIN_ARM_STD/startup_stm32f401xe.s	Mon Jul 21 07:45:07 2014 +0100
+++ b/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F401RE/TOOLCHAIN_ARM_STD/startup_stm32f401xe.s	Mon Jul 21 08:45:07 2014 +0100
@@ -39,8 +39,9 @@
 ; 
 ;*******************************************************************************
 
+
 __initial_sp    EQU     0x20018000 ; Top of RAM
-  
+
                 PRESERVE8
                 THUMB
 
--- a/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F401RE/TOOLCHAIN_GCC_ARM/startup_STM32F40x.s	Mon Jul 21 07:45:07 2014 +0100
+++ b/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F401RE/TOOLCHAIN_GCC_ARM/startup_STM32F40x.s	Mon Jul 21 08:45:07 2014 +0100
@@ -52,7 +52,7 @@
 #ifdef __HEAP_SIZE
     .equ    Heap_Size, __HEAP_SIZE
 #else
-    .equ    Heap_Size, 0
+    .equ    Heap_Size, 0x400
 #endif
     .globl    __HeapBase
     .globl    __HeapLimit
--- a/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F401RE/TOOLCHAIN_IAR/stm32f401xe.icf	Mon Jul 21 07:45:07 2014 +0100
+++ b/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F401RE/TOOLCHAIN_IAR/stm32f401xe.icf	Mon Jul 21 08:45:07 2014 +0100
@@ -16,7 +16,7 @@
 
 /* Stack and Heap */
 define symbol __size_cstack__ = 0x400;
-define symbol __size_heap__   = 0x200;
+define symbol __size_heap__   = 0x400;
 define block CSTACK    with alignment = 8, size = __size_cstack__   { };
 define block HEAP      with alignment = 8, size = __size_heap__     { };
 define block STACKHEAP with fixed order { block HEAP, block CSTACK };