Skip to content

Commit 65746b2

Browse files
committed
system(L5): update STM32L5xx CMSIS Drivers to v1.0.6
Included in STM32CubeL5 FW v1.5.1 Signed-off-by: Frederic Pillon <[email protected]>
1 parent 61e6f6b commit 65746b2

22 files changed

+157
-98
lines changed

Diff for: system/Drivers/CMSIS/Device/ST/STM32L5xx/Include/stm32l552xx.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -16066,7 +16066,7 @@ typedef struct
1606616066
/****************** Bit definition for SYSCFG_CSLCKR register ***************/
1606716067
#define SYSCFG_CSLCKR_LOCKSVTAIRCR_Pos (0U)
1606816068
#define SYSCFG_CSLCKR_LOCKSVTAIRCR_Msk (0x1UL << SYSCFG_CSLCKR_LOCKSVTAIRCR_Pos)/*!< 0x00000001 */
16069-
#define SYSCFG_CSLCKR_LOCKSVTAIRCR SYSCFG_CSLCKR_LOCKSVTAIRCR_Msk /*!< Disable changes to the secure vectror table address, handling of system faults */
16069+
#define SYSCFG_CSLCKR_LOCKSVTAIRCR SYSCFG_CSLCKR_LOCKSVTAIRCR_Msk /*!< Disable changes to the secure vector table address, handling of system faults */
1607016070
#define SYSCFG_CSLCKR_LOCKSMPU_Pos (1U)
1607116071
#define SYSCFG_CSLCKR_LOCKSMPU_Msk (0x1UL << SYSCFG_CSLCKR_LOCKSMPU_Pos) /*!< 0x00000002 */
1607216072
#define SYSCFG_CSLCKR_LOCKSMPU SYSCFG_CSLCKR_LOCKSMPU_Msk /*!< Disable changes to the secure MPU registers writes by SW or debug agent */

Diff for: system/Drivers/CMSIS/Device/ST/STM32L5xx/Include/stm32l562xx.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -16805,7 +16805,7 @@ typedef struct
1680516805
/****************** Bit definition for SYSCFG_CSLCKR register ***************/
1680616806
#define SYSCFG_CSLCKR_LOCKSVTAIRCR_Pos (0U)
1680716807
#define SYSCFG_CSLCKR_LOCKSVTAIRCR_Msk (0x1UL << SYSCFG_CSLCKR_LOCKSVTAIRCR_Pos)/*!< 0x00000001 */
16808-
#define SYSCFG_CSLCKR_LOCKSVTAIRCR SYSCFG_CSLCKR_LOCKSVTAIRCR_Msk /*!< Disable changes to the secure vectror table address, handling of system faults */
16808+
#define SYSCFG_CSLCKR_LOCKSVTAIRCR SYSCFG_CSLCKR_LOCKSVTAIRCR_Msk /*!< Disable changes to the secure vector table address, handling of system faults */
1680916809
#define SYSCFG_CSLCKR_LOCKSMPU_Pos (1U)
1681016810
#define SYSCFG_CSLCKR_LOCKSMPU_Msk (0x1UL << SYSCFG_CSLCKR_LOCKSMPU_Pos) /*!< 0x00000002 */
1681116811
#define SYSCFG_CSLCKR_LOCKSMPU SYSCFG_CSLCKR_LOCKSMPU_Msk /*!< Disable changes to the secure MPU registers writes by SW or debug agent */

Diff for: system/Drivers/CMSIS/Device/ST/STM32L5xx/Include/stm32l5xx.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@
7878
*/
7979
#define __STM32L5_CMSIS_VERSION_MAIN (0x01U) /*!< [31:24] main version */
8080
#define __STM32L5_CMSIS_VERSION_SUB1 (0x00U) /*!< [23:16] sub1 version */
81-
#define __STM32L5_CMSIS_VERSION_SUB2 (0x05U) /*!< [15:8] sub2 version */
81+
#define __STM32L5_CMSIS_VERSION_SUB2 (0x06U) /*!< [15:8] sub2 version */
8282
#define __STM32L5_CMSIS_VERSION_RC (0x00U) /*!< [7:0] release candidate */
8383
#define __STM32L5_CMSIS_VERSION ((__STM32L5_CMSIS_VERSION_MAIN << 24U)\
8484
|(__STM32L5_CMSIS_VERSION_SUB1 << 16U)\

Diff for: system/Drivers/CMSIS/Device/ST/STM32L5xx/Release_Notes.html

+46-17
Original file line numberDiff line numberDiff line change
@@ -43,20 +43,49 @@ <h1 id="purpose">Purpose</h1>
4343
<div class="col-sm-12 col-lg-8">
4444
<h1 id="update-history">Update History</h1>
4545
<div class="collapse">
46-
<input type="checkbox" id="collapse-section6" checked aria-hidden="true"> <label for="collapse-section6" aria-hidden="true"><strong>V1.0.5 / 04-November-2022</strong></label>
46+
<input type="checkbox" id="collapse-section7" checked aria-hidden="true"> <label for="collapse-section7" aria-hidden="true"><strong>V1.0.6 / 09-February-2024</strong></label>
4747
<div>
4848
<h2 id="main-changes">Main Changes</h2>
4949
<p><strong>Maintenance release</strong></p>
5050
<h2 id="contents">Contents</h2>
5151
<ul>
52+
<li>Fix the location of .size directive in STM32CubeIDE’s startup code to allow proper size information of vector table.</li>
53+
<li>Add the READONLY tag to sections containing lookup tables to avoid GCC12 linker warnings if a segment is marked RWX.</li>
54+
</ul>
55+
<h2 id="notes">Notes</h2>
56+
<p>Reminder:</p>
57+
<ul>
58+
<li>When TrustZone is enabled in the system (Flash option bit TZEN=1)
59+
<ul>
60+
<li>template device partition_stm32l552xx.h or partition_stm32l562xx.h file must be copied and optionally updated in user application secure project to configure the system (SAU, interrupts, core).</li>
61+
<li>default Security Attribute Unit (SAU) configuration in the partition_stm32l552xx.h and partition_stm32l562xx.h:
62+
<ul>
63+
<li>SAU region 0: 0x0C03E000-0x0C03FFFF (Secure, Non-Secure Callable)</li>
64+
<li>SAU region 1: 0x08040000-0x0807FFFF (Non-Secure FLASH Bank2 (256 Kbytes))</li>
65+
<li>SAU region 2: 0x20018000-0x2003FFFF (Non-Secure RAM (2nd half SRAM1 + SRAM2 (160 Kbytes)))</li>
66+
<li>SAU region 3: 0x40000000-0x4FFFFFFF (Non-Secure Peripheral mapped memory)</li>
67+
<li>SAU region 4: 0x60000000-0x9FFFFFFF (Non-Secure external memories)</li>
68+
<li>SAU region 5: 0x0BF90000-0x0BFA8FFF (Non-Secure System memory)</li>
69+
</ul></li>
70+
</ul></li>
71+
</ul>
72+
</div>
73+
</div>
74+
<div class="collapse">
75+
<input type="checkbox" id="collapse-section6" aria-hidden="true"> <label for="collapse-section6" aria-hidden="true"><strong>V1.0.5 / 04-November-2022</strong></label>
76+
<div>
77+
<h2 id="main-changes-1">Main Changes</h2>
78+
<p><strong>Maintenance release</strong></p>
79+
<h2 id="contents-1">Contents</h2>
80+
<ul>
5281
<li>General updates to fix known defects and implementation enhancements.</li>
5382
<li>All source files: update disclaimer to add reference to the new license agreement.</li>
5483
<li>Add new atomic register access macros in stm32l5xx.h file.</li>
5584
<li>Update to fix compilation error “-Werror=undef” with ARMCC version.</li>
5685
<li>Add missing parameter after <span class="citation" data-cites="param">@param</span> in order to fix warning in generated documentation</li>
5786
<li>Change addresses of ROM symbols in <em><em>sram</em></em>.icf template files to code region alias in order to increase performance while running code from SRAM</li>
5887
</ul>
59-
<h2 id="notes">Notes</h2>
88+
<h2 id="notes-1">Notes</h2>
6089
<p>Reminder:</p>
6190
<ul>
6291
<li>When TrustZone is enabled in the system (Flash option bit TZEN=1)
@@ -78,9 +107,9 @@ <h2 id="notes">Notes</h2>
78107
<div class="collapse">
79108
<input type="checkbox" id="collapse-section5" aria-hidden="true"> <label for="collapse-section5" aria-hidden="true"><strong>V1.0.4 / 10-February-2021</strong></label>
80109
<div>
81-
<h2 id="main-changes-1">Main Changes</h2>
110+
<h2 id="main-changes-2">Main Changes</h2>
82111
<p><strong>Maintenance release</strong></p>
83-
<h2 id="contents-1">Contents</h2>
112+
<h2 id="contents-2">Contents</h2>
84113
<p>Maintenance release of STM32L5xx CMSIS Device drivers to support <strong>STM32L552xx and STM32L562xx</strong> devices</p>
85114
<ul>
86115
<li>stm32l552xx.h and stm32l562xx.h updates
@@ -89,7 +118,7 @@ <h2 id="contents-1">Contents</h2>
89118
<li>Fix I2C4_EV_IRQn and I2C4_ER_IRQn order in IRQn_Type</li>
90119
</ul></li>
91120
</ul>
92-
<h2 id="notes-1">Notes</h2>
121+
<h2 id="notes-2">Notes</h2>
93122
<p>Reminder:</p>
94123
<ul>
95124
<li>When TrustZone is enabled in the system (Flash option bit TZEN=1)
@@ -111,9 +140,9 @@ <h2 id="notes-1">Notes</h2>
111140
<div class="collapse">
112141
<input type="checkbox" id="collapse-section4" aria-hidden="true"> <label for="collapse-section4" aria-hidden="true"><strong>V1.0.3 / 26-June-2020</strong></label>
113142
<div>
114-
<h2 id="main-changes-2">Main Changes</h2>
143+
<h2 id="main-changes-3">Main Changes</h2>
115144
<p><strong>Fourth release</strong></p>
116-
<h2 id="contents-2">Contents</h2>
145+
<h2 id="contents-3">Contents</h2>
117146
<p>Fourth release of STM32L5xx CMSIS Device drivers to support <strong>STM32L552xx and STM32L562xx</strong> devices</p>
118147
<ul>
119148
<li>stm32l552xx.h and stm32l562xx.h updates
@@ -129,7 +158,7 @@ <h2 id="contents-2">Contents</h2>
129158
<li>Add README.md and License.md files for GitHub publication</li>
130159
<li>Misspelled words corrections in driver descriptions</li>
131160
</ul>
132-
<h2 id="notes-2">Notes</h2>
161+
<h2 id="notes-3">Notes</h2>
133162
<p>Reminder:</p>
134163
<ul>
135164
<li>When TrustZone is enabled in the system (Flash option bit TZEN=1)
@@ -151,9 +180,9 @@ <h2 id="notes-2">Notes</h2>
151180
<div class="collapse">
152181
<input type="checkbox" id="collapse-section3" aria-hidden="true"> <label for="collapse-section3" aria-hidden="true"><strong>V1.0.2 / 12-February-2020</strong></label>
153182
<div>
154-
<h2 id="main-changes-3">Main Changes</h2>
183+
<h2 id="main-changes-4">Main Changes</h2>
155184
<p><strong>Third release</strong></p>
156-
<h2 id="contents-3">Contents</h2>
185+
<h2 id="contents-4">Contents</h2>
157186
<p>Third official release of STM32L5xx CMSIS Device drivers to support <strong>STM32L552xx and STM32L562xx</strong> devices</p>
158187
<ul>
159188
<li>stm32l552xx.h and stm32l562xx.h updates
@@ -163,7 +192,7 @@ <h2 id="contents-3">Contents</h2>
163192
<li>Align DBGMCU_APB2FZR register and bits definitions with RM0438</li>
164193
</ul></li>
165194
</ul>
166-
<h2 id="notes-3">Notes</h2>
195+
<h2 id="notes-4">Notes</h2>
167196
<p>Reminder:</p>
168197
<ul>
169198
<li>When TrustZone is enabled in the system (Flash option bit TZEN=1)
@@ -185,17 +214,17 @@ <h2 id="notes-3">Notes</h2>
185214
<div class="collapse">
186215
<input type="checkbox" id="collapse-section2" unchecked aria-hidden="true"> <label for="collapse-section2" aria-hidden="true"><strong>V1.0.1 / 22-January-2020</strong></label>
187216
<div>
188-
<h2 id="main-changes-4">Main Changes</h2>
217+
<h2 id="main-changes-5">Main Changes</h2>
189218
<p><strong>Second release</strong></p>
190-
<h2 id="contents-4">Contents</h2>
219+
<h2 id="contents-5">Contents</h2>
191220
<p>Second official release of STM32L5xx CMSIS Device drivers to support <strong>STM32L552xx and STM32L562xx</strong> devices</p>
192221
<ul>
193222
<li>Templates system_stm32l5xx.c, system_stm32l5xx_s.c and system_stm32l5xx_ns.c
194223
<ul>
195224
<li>Add vector table relocation capability with conditional USER_VECT_TAB_ADDRESS</li>
196225
</ul></li>
197226
</ul>
198-
<h2 id="notes-4">Notes</h2>
227+
<h2 id="notes-5">Notes</h2>
199228
<p>Reminder:</p>
200229
<ul>
201230
<li>When TrustZone is enabled in the system (Flash option bit TZEN=1)
@@ -217,9 +246,9 @@ <h2 id="notes-4">Notes</h2>
217246
<div class="collapse">
218247
<input type="checkbox" id="collapse-section1" unchecked aria-hidden="true"> <label for="collapse-section1" aria-hidden="true"><strong>V1.0.0 / 13-December-2019</strong></label>
219248
<div>
220-
<h2 id="main-changes-5">Main Changes</h2>
249+
<h2 id="main-changes-6">Main Changes</h2>
221250
<p><strong>First release</strong></p>
222-
<h2 id="contents-5">Contents</h2>
251+
<h2 id="contents-6">Contents</h2>
223252
<p>First official release of STM32L5xx CMSIS Device drivers to support <strong>STM32L552xx and STM32L562xx</strong> devices</p>
224253
<ul>
225254
<li>Templates
@@ -237,7 +266,7 @@ <h2 id="contents-5">Contents</h2>
237266
<li>Linker files for 256 and 512 Kbytes Flash device configurations</li>
238267
</ul></li>
239268
</ul>
240-
<h2 id="notes-5">Notes</h2>
269+
<h2 id="notes-6">Notes</h2>
241270
<p>When TrustZone is enabled in the system (Flash option bit TZEN=1), template device partition_stm32l552xx.h or partition_stm32l562xx.h file must be copied and optionally updated in user application secure project to configure the system (SAU, interrupts, core)</p>
242271
</div>
243272
</div>

Diff for: system/Drivers/CMSIS/Device/ST/STM32L5xx/Source/Templates/gcc/linker/STM32L552xC_FLASH.ld

+7-5
Original file line numberDiff line numberDiff line change
@@ -87,21 +87,23 @@ SECTIONS
8787
. = ALIGN(8);
8888
} >ROM
8989

90-
.ARM.extab : {
90+
.ARM.extab (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
91+
{
9192
. = ALIGN(8);
9293
*(.ARM.extab* .gnu.linkonce.armextab.*)
9394
. = ALIGN(8);
9495
} >ROM
9596

96-
.ARM : {
97+
.ARM (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
98+
{
9799
. = ALIGN(8);
98100
__exidx_start = .;
99101
*(.ARM.exidx*)
100102
__exidx_end = .;
101103
. = ALIGN(8);
102104
} >ROM
103105

104-
.preinit_array :
106+
.preinit_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
105107
{
106108
. = ALIGN(8);
107109
PROVIDE_HIDDEN (__preinit_array_start = .);
@@ -110,7 +112,7 @@ SECTIONS
110112
. = ALIGN(8);
111113
} >ROM
112114

113-
.init_array :
115+
.init_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
114116
{
115117
. = ALIGN(8);
116118
PROVIDE_HIDDEN (__init_array_start = .);
@@ -120,7 +122,7 @@ SECTIONS
120122
. = ALIGN(8);
121123
} >ROM
122124

123-
.fini_array :
125+
.fini_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
124126
{
125127
. = ALIGN(8);
126128
PROVIDE_HIDDEN (__fini_array_start = .);

Diff for: system/Drivers/CMSIS/Device/ST/STM32L5xx/Source/Templates/gcc/linker/STM32L552xC_FLASH_ns.ld

+7-5
Original file line numberDiff line numberDiff line change
@@ -86,21 +86,23 @@ SECTIONS
8686
. = ALIGN(8);
8787
} >ROM
8888

89-
.ARM.extab : {
89+
.ARM.extab (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
90+
{
9091
. = ALIGN(8);
9192
*(.ARM.extab* .gnu.linkonce.armextab.*)
9293
. = ALIGN(8);
9394
} >ROM
9495

95-
.ARM : {
96+
.ARM (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
97+
{
9698
. = ALIGN(8);
9799
__exidx_start = .;
98100
*(.ARM.exidx*)
99101
__exidx_end = .;
100102
. = ALIGN(8);
101103
} >ROM
102104

103-
.preinit_array :
105+
.preinit_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
104106
{
105107
. = ALIGN(8);
106108
PROVIDE_HIDDEN (__preinit_array_start = .);
@@ -109,7 +111,7 @@ SECTIONS
109111
. = ALIGN(8);
110112
} >ROM
111113

112-
.init_array :
114+
.init_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
113115
{
114116
. = ALIGN(8);
115117
PROVIDE_HIDDEN (__init_array_start = .);
@@ -119,7 +121,7 @@ SECTIONS
119121
. = ALIGN(8);
120122
} >ROM
121123

122-
.fini_array :
124+
.fini_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
123125
{
124126
. = ALIGN(8);
125127
PROVIDE_HIDDEN (__fini_array_start = .);

Diff for: system/Drivers/CMSIS/Device/ST/STM32L5xx/Source/Templates/gcc/linker/STM32L552xC_FLASH_s.ld

+7-5
Original file line numberDiff line numberDiff line change
@@ -88,21 +88,23 @@ SECTIONS
8888
. = ALIGN(8);
8989
} >ROM
9090

91-
.ARM.extab : {
91+
.ARM.extab (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
92+
{
9293
. = ALIGN(8);
9394
*(.ARM.extab* .gnu.linkonce.armextab.*)
9495
. = ALIGN(8);
9596
} >ROM
9697

97-
.ARM : {
98+
.ARM (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
99+
{
98100
. = ALIGN(8);
99101
__exidx_start = .;
100102
*(.ARM.exidx*)
101103
__exidx_end = .;
102104
. = ALIGN(8);
103105
} >ROM
104106

105-
.preinit_array :
107+
.preinit_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
106108
{
107109
. = ALIGN(8);
108110
PROVIDE_HIDDEN (__preinit_array_start = .);
@@ -111,7 +113,7 @@ SECTIONS
111113
. = ALIGN(8);
112114
} >ROM
113115

114-
.init_array :
116+
.init_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
115117
{
116118
. = ALIGN(8);
117119
PROVIDE_HIDDEN (__init_array_start = .);
@@ -121,7 +123,7 @@ SECTIONS
121123
. = ALIGN(8);
122124
} >ROM
123125

124-
.fini_array :
126+
.fini_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
125127
{
126128
. = ALIGN(8);
127129
PROVIDE_HIDDEN (__fini_array_start = .);

Diff for: system/Drivers/CMSIS/Device/ST/STM32L5xx/Source/Templates/gcc/linker/STM32L552xE_FLASH.ld

+7-5
Original file line numberDiff line numberDiff line change
@@ -87,21 +87,23 @@ SECTIONS
8787
. = ALIGN(8);
8888
} >ROM
8989

90-
.ARM.extab : {
90+
.ARM.extab (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
91+
{
9192
. = ALIGN(8);
9293
*(.ARM.extab* .gnu.linkonce.armextab.*)
9394
. = ALIGN(8);
9495
} >ROM
9596

96-
.ARM : {
97+
.ARM (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
98+
{
9799
. = ALIGN(8);
98100
__exidx_start = .;
99101
*(.ARM.exidx*)
100102
__exidx_end = .;
101103
. = ALIGN(8);
102104
} >ROM
103105

104-
.preinit_array :
106+
.preinit_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
105107
{
106108
. = ALIGN(8);
107109
PROVIDE_HIDDEN (__preinit_array_start = .);
@@ -110,7 +112,7 @@ SECTIONS
110112
. = ALIGN(8);
111113
} >ROM
112114

113-
.init_array :
115+
.init_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
114116
{
115117
. = ALIGN(8);
116118
PROVIDE_HIDDEN (__init_array_start = .);
@@ -120,7 +122,7 @@ SECTIONS
120122
. = ALIGN(8);
121123
} >ROM
122124

123-
.fini_array :
125+
.fini_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
124126
{
125127
. = ALIGN(8);
126128
PROVIDE_HIDDEN (__fini_array_start = .);

0 commit comments

Comments
 (0)