-; *************************************************************\r
-; *** Scatter-Loading Description File generated by uVision ***\r
-; *************************************************************\r
-\r
-; Privileged Code:\r
-; Start : 0x00200000\r
-; End : 0x00208000 - 1\r
-; Size : 32 Kbytes\r
+; NOTE: ARMv8-M MPU requires that each region must start on a 32 byte aligned\r
+; address and the size of a region must be a multiple of 32 bytes.\r
;\r
-; Privileged Data:\r
-; Start : 0x20200000\r
-; End : 0x20201000 - 1\r
-; Size : 4 Kbytes\r
-LR_IROM_NS_PRIVILEGED 0x00200000 0x00008000 ; load region size_region\r
+; Flash Layout\r
+;\r
+; ---------------------\r
+; | Privileged Code |\r
+; ---------------------\r
+; | System Calls |\r
+; ---------------------\r
+; | Unprivileged Code |\r
+; ---------------------\r
+;\r
+; RAM Layout\r
+;\r
+; ---------------------\r
+; | Privileged Data |\r
+; ---------------------\r
+; | Unprivileged Data |\r
+; ---------------------\r
+\r
+LR_APP 0x00200000 ; load region\r
{\r
- ER_IROM_NS_PRIVILEGED +0 ; load address = execution address\r
+ ER_IROM_NS_PRIVILEGED +0 ALIGN 32\r
{\r
*.o(RESET, +First)\r
*(InRoot$$Sections) ; All sections that must be in a root region\r
*(privileged_functions)\r
}\r
\r
- ER_IRAM_NS_PRIVILEGED 0x20200000 0x00001000\r
+ ER_IROM_NS_PRIVILEGED_ALIGN +0 ALIGN 32 EMPTY 0x0\r
{\r
- *(privileged_data)\r
}\r
-}\r
\r
-; FreeRTOS System Calls:\r
-; Start : 0x00208000\r
-; End : 0x00209000 - 1\r
-; Size : 4 Kbytes\r
-LR_IROM_NS_FREERTOS_SYSTEM_CALLS 0x00208000 0x00001000 ; load region size_region\r
-{\r
- ER_IROM_NS_FREERTOS_SYSTEM_CALLS +0 ; load address = execution address\r
+ ER_IROM_NS_FREERTOS_SYSTEM_CALLS +0 ALIGN 32\r
{\r
- *(freertos_system_calls)\r
+ *(freertos_system_calls)\r
}\r
-}\r
\r
-; Unprivileged Code:\r
-; Start : 0x00209000\r
-; End : 0x00400000 - 1\r
-; Size : 2012 Kbytes\r
-;\r
-; Unprivileged Data:\r
-; Start : 0x20201000\r
-; End : 0x20220000 - 1\r
-; Size : 124 Kbytes\r
-LR_IROM_NS_UNPRIVILEGED 0x00209000 0x001F7000 ; load region size_region\r
-{\r
- ER_IROM_NS_UNPRIVILEGED +0 ; load address = execution address\r
+ ER_IROM_NS_FREERTOS_SYSTEM_CALLS_ALIGN +0 ALIGN 32 EMPTY 0x0\r
+ {\r
+ }\r
+\r
+ ER_IROM_NS_UNPRIVILEGED +0 ALIGN 32\r
{\r
- *(+RO)\r
+ *(+RO)\r
}\r
\r
- ER_IRAM_NS_UNPRIVILEGED 0x20201000 0x0001F000\r
+ ER_IROM_NS_UNPRIVILEGED_ALIGN +0 ALIGN 32 EMPTY 0x0\r
+ {\r
+ }\r
+\r
+ ER_IRAM_NS_PRIVILEGED 0x20200000 ALIGN 32\r
+ {\r
+ *(privileged_data)\r
+ }\r
+\r
+ ER_IRAM_NS_PRIVILEGED_ALIGN +0 ALIGN 32 EMPTY 0x0\r
+ {\r
+ }\r
+\r
+ ER_IRAM_NS_UNPRIVILEGED +0 ALIGN 32\r
{\r
*(+RW, +ZI)\r
}\r
+\r
+ ER_IRAM_NS_UNPRIVILEGED_ALIGN +0 ALIGN 32 EMPTY 0x0\r
+ {\r
+ }\r
}\r