]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/CORTEX_MPU_M33F_Simulator_Keil_GCC/NonSecure/FreeRTOSDemo_ns.sct
Use the linker script variables for MPU setup for Keil Simulator Demo
[freertos] / FreeRTOS / Demo / CORTEX_MPU_M33F_Simulator_Keil_GCC / NonSecure / FreeRTOSDemo_ns.sct
1 ; *************************************************************\r
2 ; *** Scatter-Loading Description File generated by uVision ***\r
3 ; *************************************************************\r
4 \r
5 ; Flash Layout\r
6 ; [ ARMv8-M MPU requires that each region must start on a 32 byte aligned\r
7 ;   address and the size of a region must be a multiple of 32 bytes. ]\r
8 ;\r
9 ;  ---------------------\r
10 ; |   Privileged Code   |\r
11 ;  ---------------------\r
12 ; |    System Calls     |\r
13 ;  ---------------------\r
14 ; |  Unprivileged Code  |\r
15 ;  ---------------------\r
16 \r
17 LR_CODE 0x00200000 ; load region\r
18 {\r
19     ER_IROM_NS_PRIVILEGED +0 ALIGN 32\r
20     {\r
21         *.o(RESET, +First)\r
22         *(InRoot$$Sections) ; All sections that must be in a root region\r
23         *(privileged_functions)\r
24     }\r
25 \r
26     ER_IROM_NS_PRIVILEGED_ALIGN +0 ALIGN 32 EMPTY 0x0\r
27     {\r
28     }\r
29 \r
30     ER_IROM_NS_FREERTOS_SYSTEM_CALLS +0 ALIGN 32\r
31     {\r
32         *(freertos_system_calls)\r
33     }\r
34 \r
35     ER_IROM_NS_FREERTOS_SYSTEM_CALLS_ALIGN +0 ALIGN 32 EMPTY 0x0\r
36     {\r
37     }\r
38 \r
39     ER_IROM_NS_UNPRIVILEGED +0 ALIGN 32\r
40     {\r
41         *(+RO)\r
42     }\r
43 \r
44     ER_IROM_NS_UNPRIVILEGED_ALIGN +0 ALIGN 32 EMPTY 0x0\r
45     {\r
46     }\r
47 }\r
48 \r
49 ; RAM Layout\r
50 ; [ ARMv8-M MPU requires that each region must start on a 32 byte aligned\r
51 ;   address and the size of a region must be a multiple of 32 bytes. ]\r
52 ;\r
53 ;  ---------------------\r
54 ; |   Privileged Data   |\r
55 ;  ---------------------\r
56 ; |  Unprivileged Data  |\r
57 ;  ---------------------\r
58 \r
59 LR_DATA 0x20200000 ; load region\r
60 {\r
61     ER_IRAM_NS_PRIVILEGED 0x20200000 ALIGN 32\r
62     {\r
63         *(privileged_data)\r
64     }\r
65 \r
66     ER_IRAM_NS_PRIVILEGED_ALIGN +0 ALIGN 32 EMPTY 0x0\r
67     {\r
68     }\r
69 \r
70     ER_IRAM_NS_UNPRIVILEGED +0 ALIGN 32\r
71     {\r
72         *(+RW, +ZI)\r
73     }\r
74 \r
75     ER_IRAM_NS_UNPRIVILEGED_ALIGN +0 ALIGN 32 EMPTY 0x0\r
76     {\r
77     }\r
78 }\r