mirror of https://github.com/ARMmbed/mbed-os.git
				
				
				
			Merge pull request #14277 from hugueskamba/hk_fix_apollo3_heap_stack_location
Apollo3: Fix run time error due to memory mappingpull/14284/head
						commit
						ff307188b7
					
				| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
#! armclang -E --target=arm-arm-none-eabi -x c -mcpu=cortex-m4
 | 
			
		||||
 | 
			
		||||
;
 | 
			
		||||
; Copyright (c) 2019-2020 SparkFun Electronics
 | 
			
		||||
; Copyright (c) 2019-2021 SparkFun Electronics
 | 
			
		||||
; SPDX-License-Identifier: MIT
 | 
			
		||||
;
 | 
			
		||||
; Permission is hereby granted, free of charge, to any person obtaining a copy
 | 
			
		||||
| 
						 | 
				
			
			@ -40,7 +40,18 @@
 | 
			
		|||
#define MBED_RAM0_SIZE  0x100
 | 
			
		||||
#define MBED_RAM1_START (MBED_RAM0_START + MBED_RAM0_SIZE)
 | 
			
		||||
#define MBED_RAM1_SIZE  (MBED_RAM_SIZE - (MBED_RAM0_SIZE))
 | 
			
		||||
; This section does not contain any symbols. It is only used for the linker
 | 
			
		||||
; to calculate the size of the stack sections and assign values to stack
 | 
			
		||||
; symbols later
 | 
			
		||||
#define STACK_DUMMY_START (MBED_RAM1_START + MBED_RAM1_SIZE)
 | 
			
		||||
#define STACK_DUMMY_SIZE 0x8
 | 
			
		||||
#define Stack_Start (STACK_DUMMY_START - STACK_DUMMY_SIZE)
 | 
			
		||||
#define Stack_Size MBED_CONF_TARGET_BOOT_STACK_SIZE
 | 
			
		||||
; The heap dummy section is used to identify the beginning of available dynamic memory.
 | 
			
		||||
#define HEAP_DUMMY_SIZE 0x8
 | 
			
		||||
#define Heap_Start AlignExpr(+0, 16)
 | 
			
		||||
#define Heap_Size (MBED_RAM_SIZE - RAM_FIXED_SIZE + MBED_RAM1_START - AlignExpr(ImageLimit(RW_IRAM1), 16) - HEAP_DUMMY_SIZE)
 | 
			
		||||
 | 
			
		||||
#define RAM_FIXED_SIZE   (MBED_CONF_TARGET_BOOT_STACK_SIZE+MBED_RAM0_SIZE)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -56,8 +67,8 @@ LR_IROM1 MBED_APP_START MBED_APP_SIZE {
 | 
			
		|||
  RW_IRAM1 MBED_RAM1_START MBED_RAM1_SIZE {
 | 
			
		||||
   .ANY (+RW +ZI)
 | 
			
		||||
  }
 | 
			
		||||
  ARM_LIB_HEAP  AlignExpr(+0, 16)  EMPTY  (MBED_RAM_SIZE-RAM_FIXED_SIZE+MBED_RAM1_START-AlignExpr(ImageLimit(RW_IRAM1), 16))  {
 | 
			
		||||
  ARM_LIB_HEAP Heap_Start EMPTY Heap_Size { ; Heap region growing up
 | 
			
		||||
  }
 | 
			
		||||
  ARM_LIB_STACK MBED_RAM1_START+MBED_RAM1_SIZE EMPTY -Stack_Size { ; Stack region growing down
 | 
			
		||||
  ARM_LIB_STACK Stack_Start EMPTY -Stack_Size { ; Stack region growing down
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue