File tree Expand file tree Collapse file tree 12 files changed +94
-23
lines changed Expand file tree Collapse file tree 12 files changed +94
-23
lines changed Original file line number Diff line number Diff line change 30
30
**/
31
31
32
32
#include "stm32f7xx.h"
33
+ #include "nvic_addr.h"
33
34
#include "mbed_assert.h"
34
35
35
36
/*!< Uncomment the following line if you need to relocate your vector Table in
@@ -92,7 +93,7 @@ void SystemInit(void)
92
93
#ifdef VECT_TAB_SRAM
93
94
SCB -> VTOR = RAMDTCM_BASE | VECT_TAB_OFFSET ; /* Vector Table Relocation in Internal SRAM */
94
95
#else
95
- SCB -> VTOR = FLASH_BASE | VECT_TAB_OFFSET ; /* Vector Table Relocation in Internal FLASH */
96
+ SCB -> VTOR = NVIC_FLASH_VECTOR_ADDRESS ; /* Vector Table Relocation in Internal FLASH */
96
97
#endif
97
98
98
99
}
Original file line number Diff line number Diff line change
1
+ #! armcc -E
1
2
; Scatter-Loading Description File
2
3
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3
4
; Copyright (c) 2016, STMicroelectronics
27
28
; OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
29
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
29
30
31
+ #if !defined(MBED_APP_START)
32
+ #define MBED_APP_START 0x08000000
33
+ #endif
34
+
35
+ #if !defined(MBED_APP_SIZE)
36
+ #define MBED_APP_SIZE 0x100000
37
+ #endif
38
+
30
39
; STM32F746NG: 1024 KB FLASH (0x100000) + 320 KB SRAM (0x50000)
31
- LR_IROM1 0x08000000 0x100000 { ; load region size_region
40
+ LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
32
41
33
- ER_IROM1 0x08000000 0x100000 { ; load address = execution address
42
+ ER_IROM1 MBED_APP_START MBED_APP_SIZE { ; load address = execution address
34
43
*.o (RESET, +First)
35
44
*(InRoot$$Sections)
36
45
.ANY (+RO)
Original file line number Diff line number Diff line change
1
+ #! armcc -E
1
2
; Scatter-Loading Description File
2
3
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3
4
; Copyright (c) 2016, STMicroelectronics
27
28
; OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
29
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
29
30
31
+ #if !defined(MBED_APP_START)
32
+ #define MBED_APP_START 0x08000000
33
+ #endif
34
+
35
+ #if !defined(MBED_APP_SIZE)
36
+ #define MBED_APP_SIZE 0x100000
37
+ #endif
38
+
30
39
; STM32F746NG: 1024 KB FLASH (0x100000) + 320 KB SRAM (0x50000)
31
- LR_IROM1 0x08000000 0x100000 { ; load region size_region
40
+ LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
32
41
33
- ER_IROM1 0x08000000 0x100000 { ; load address = execution address
42
+ ER_IROM1 MBED_APP_START MBED_APP_SIZE { ; load address = execution address
34
43
*.o (RESET, +First)
35
44
*(InRoot$$Sections)
36
45
.ANY (+RO)
Original file line number Diff line number Diff line change 1
1
/* Linker script to configure memory regions. */
2
+
3
+ #if !defined(MBED_APP_START)
4
+ #define MBED_APP_START 0x08000000
5
+ #endif
6
+
7
+ #if !defined(MBED_APP_SIZE)
8
+ #define MBED_APP_SIZE 1024K
9
+ #endif
10
+
2
11
MEMORY
3
12
{
4
- FLASH (rx) : ORIGIN = 0x08000000 , LENGTH = 1024K
13
+ FLASH (rx) : ORIGIN = MBED_APP_START , LENGTH = MBED_APP_SIZE
5
14
RAM (rwx) : ORIGIN = 0x200001C8, LENGTH = 320K - 0x1C8
6
15
}
7
16
Original file line number Diff line number Diff line change
1
+ if (!isdefinedsymbol(MBED_APP_START)) { define symbol MBED_APP_START = 0x08000000; }
2
+ if (!isdefinedsymbol(MBED_APP_SIZE)) { define symbol MBED_APP_SIZE = 0x100000; }
3
+
1
4
/* [ROM = 1024kb = 0x100000] */
2
- define symbol __intvec_start__ = 0x08000000 ;
3
- define symbol __region_ROM_start__ = 0x08000000 ;
4
- define symbol __region_ROM_end__ = 0x080FFFFF ;
5
+ define symbol __intvec_start__ = MBED_APP_START ;
6
+ define symbol __region_ROM_start__ = MBED_APP_START ;
7
+ define symbol __region_ROM_end__ = MBED_APP_START + MBED_APP_SIZE - 1 ;
5
8
6
9
/* [RAM = 320kb = 0x50000] Vector table dynamic copy: 114 vectors = 456 bytes (0x1C8) to be reserved in RAM */
7
10
define symbol __NVIC_start__ = 0x20000000;
Original file line number Diff line number Diff line change 30
30
**/
31
31
32
32
#include "stm32f7xx.h"
33
+ #include "nvic_addr.h"
33
34
#include "mbed_assert.h"
34
35
35
36
/*!< Uncomment the following line if you need to relocate your vector Table in
@@ -92,7 +93,7 @@ void SystemInit(void)
92
93
#ifdef VECT_TAB_SRAM
93
94
SCB -> VTOR = RAMDTCM_BASE | VECT_TAB_OFFSET ; /* Vector Table Relocation in Internal SRAM */
94
95
#else
95
- SCB -> VTOR = FLASH_BASE | VECT_TAB_OFFSET ; /* Vector Table Relocation in Internal FLASH */
96
+ SCB -> VTOR = NVIC_FLASH_VECTOR_ADDRESS ; /* Vector Table Relocation in Internal FLASH */
96
97
#endif
97
98
98
99
}
Original file line number Diff line number Diff line change
1
+ #! armcc -E
1
2
; Scatter-Loading Description File
2
3
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3
4
; Copyright (c) 2016, STMicroelectronics
27
28
; OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
29
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
29
30
31
+ #if !defined(MBED_APP_START)
32
+ #define MBED_APP_START 0x08000000
33
+ #endif
34
+
35
+ #if !defined(MBED_APP_SIZE)
36
+ #define MBED_APP_SIZE 0x200000
37
+ #endif
38
+
30
39
; STM32F767ZI: 2048 KB FLASH (0x200000) + 512 KB SRAM (0x80000)
31
- LR_IROM1 0x08000000 0x200000 { ; load region size_region
40
+ LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
32
41
33
- ER_IROM1 0x08000000 0x200000 { ; load address = execution address
42
+ ER_IROM1 MBED_APP_START MBED_APP_SIZE { ; load address = execution address
34
43
*.o (RESET, +First)
35
44
*(InRoot$$Sections)
36
45
.ANY (+RO)
Original file line number Diff line number Diff line change
1
+ #! armcc -E
1
2
; Scatter-Loading Description File
2
3
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3
4
; Copyright (c) 2016, STMicroelectronics
27
28
; OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
29
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
29
30
31
+ #if !defined(MBED_APP_START)
32
+ #define MBED_APP_START 0x08000000
33
+ #endif
34
+
35
+ #if !defined(MBED_APP_SIZE)
36
+ #define MBED_APP_SIZE 0x200000
37
+ #endif
38
+
30
39
; STM32F767ZI: 2048 KB FLASH (0x200000) + 512 KB SRAM (0x80000)
31
- LR_IROM1 0x08000000 0x200000 { ; load region size_region
40
+ LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
32
41
33
- ER_IROM1 0x08000000 0x200000 { ; load address = execution address
42
+ ER_IROM1 MBED_APP_START MBED_APP_SIZE { ; load address = execution address
34
43
*.o (RESET, +First)
35
44
*(InRoot$$Sections)
36
45
.ANY (+RO)
Original file line number Diff line number Diff line change 1
1
/* Linker script to configure memory regions. */
2
+
3
+ #if !defined(MBED_APP_START)
4
+ #define MBED_APP_START 0x08000000
5
+ #endif
6
+
7
+ #if !defined(MBED_APP_SIZE)
8
+ #define MBED_APP_SIZE 2048K
9
+ #endif
10
+
2
11
MEMORY
3
12
{
4
- FLASH (rx) : ORIGIN = 0x08000000 , LENGTH = 2048K
13
+ FLASH (rx) : ORIGIN = MBED_APP_START , LENGTH = MBED_APP_SIZE
5
14
RAM (rwx) : ORIGIN = 0x200001F8, LENGTH = 512K - 0x1F8
6
15
}
7
16
Original file line number Diff line number Diff line change
1
+ if (!isdefinedsymbol(MBED_APP_START)) { define symbol MBED_APP_START = 0x08000000; }
2
+ if (!isdefinedsymbol(MBED_APP_SIZE)) { define symbol MBED_APP_SIZE = 0x200000; }
3
+
1
4
/* [ROM = 2048kb = 0x200000] */
2
- define symbol __intvec_start__ = 0x08000000 ;
3
- define symbol __region_ROM_start__ = 0x08000000 ;
4
- define symbol __region_ROM_end__ = 0x081FFFFF ;
5
+ define symbol __intvec_start__ = MBED_APP_START ;
6
+ define symbol __region_ROM_start__ = MBED_APP_START ;
7
+ define symbol __region_ROM_end__ = MBED_APP_START + MBED_APP_SIZE - 1 ;
5
8
6
9
/* [RAM = 512kb = 0x80000] Vector table dynamic copy: 126 vectors = 504 bytes (0x1F8) to be reserved in RAM */
7
10
define symbol __NVIC_start__ = 0x20000000;
You can’t perform that action at this time.
0 commit comments