mbed library sources
Fork of mbed-src by
targets/cmsis/TARGET_STM/TARGET_STM32L4/TARGET_NUCLEO_L476RG/TOOLCHAIN_IAR/stm32l476xx.icf@629:1806c2edb763, 2015-09-28 (annotated)
- Committer:
- mbed_official
- Date:
- Mon Sep 28 10:30:09 2015 +0100
- Revision:
- 629:1806c2edb763
- Parent:
- 622:db79ecd649d0
Synchronized with git revision 87e468c302cd3e5d0f840971ca587ba8c50847bf
Full URL: https://github.com/mbedmicro/mbed/commit/87e468c302cd3e5d0f840971ca587ba8c50847bf/
Fixed stack location problem for disco and nucleo boards (STM32L4)
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mbed_official | 622:db79ecd649d0 | 1 | /* [ROM = 1024kb = 0x100000] */ |
mbed_official | 622:db79ecd649d0 | 2 | define symbol __intvec_start__ = 0x08000000; |
mbed_official | 622:db79ecd649d0 | 3 | define symbol __region_ROM_start__ = 0x08000000; |
mbed_official | 622:db79ecd649d0 | 4 | define symbol __region_ROM_end__ = 0x080FFFFF; |
mbed_official | 622:db79ecd649d0 | 5 | |
mbed_official | 629:1806c2edb763 | 6 | /* [RAM = 96kb + 32kb = 0x20000] */ |
mbed_official | 622:db79ecd649d0 | 7 | /* Vector table dynamic copy: Total: 98 vectors = 392 bytes (0x188) to be reserved in RAM */ |
mbed_official | 629:1806c2edb763 | 8 | define symbol __NVIC_start__ = 0x10000000; |
mbed_official | 629:1806c2edb763 | 9 | define symbol __NVIC_end__ = 0x10000187; /* Aligned on 8 bytes (392 = 49 x 8) */ |
mbed_official | 629:1806c2edb763 | 10 | define symbol __region_SRAM2_start__ = 0x10000188; |
mbed_official | 622:db79ecd649d0 | 11 | define symbol __region_SRAM2_end__ = 0x10007FFF; |
mbed_official | 629:1806c2edb763 | 12 | define symbol __region_SRAM1_start__ = 0x20000000; |
mbed_official | 629:1806c2edb763 | 13 | define symbol __region_SRAM1_end__ = 0x20017FFF; |
mbed_official | 622:db79ecd649d0 | 14 | |
mbed_official | 622:db79ecd649d0 | 15 | /* Memory regions */ |
mbed_official | 622:db79ecd649d0 | 16 | define memory mem with size = 4G; |
mbed_official | 622:db79ecd649d0 | 17 | define region ROM_region = mem:[from __region_ROM_start__ to __region_ROM_end__]; |
mbed_official | 622:db79ecd649d0 | 18 | define region SRAM2_region = mem:[from __region_SRAM2_start__ to __region_SRAM2_end__]; |
mbed_official | 629:1806c2edb763 | 19 | define region SRAM1_region = mem:[from __region_SRAM1_start__ to __region_SRAM1_end__]; |
mbed_official | 622:db79ecd649d0 | 20 | |
mbed_official | 622:db79ecd649d0 | 21 | /* Stack 1/8 and Heap 1/4 of RAM */ |
mbed_official | 622:db79ecd649d0 | 22 | define symbol __size_cstack__ = 0x4000; |
mbed_official | 622:db79ecd649d0 | 23 | define symbol __size_heap__ = 0x8000; |
mbed_official | 622:db79ecd649d0 | 24 | define block CSTACK with alignment = 8, size = __size_cstack__ { }; |
mbed_official | 622:db79ecd649d0 | 25 | define block HEAP with alignment = 8, size = __size_heap__ { }; |
mbed_official | 622:db79ecd649d0 | 26 | define block STACKHEAP with fixed order { block HEAP, block CSTACK }; |
mbed_official | 622:db79ecd649d0 | 27 | |
mbed_official | 622:db79ecd649d0 | 28 | initialize by copy with packing = zeros { readwrite }; |
mbed_official | 622:db79ecd649d0 | 29 | do not initialize { section .noinit }; |
mbed_official | 622:db79ecd649d0 | 30 | |
mbed_official | 622:db79ecd649d0 | 31 | place at address mem:__intvec_start__ { readonly section .intvec }; |
mbed_official | 622:db79ecd649d0 | 32 | |
mbed_official | 622:db79ecd649d0 | 33 | place in ROM_region { readonly }; |
mbed_official | 629:1806c2edb763 | 34 | place in SRAM2_region { readwrite, block STACKHEAP }; |
mbed_official | 629:1806c2edb763 | 35 | place in SRAM1_region { }; |