Skip to content

Commit 98d0569

Browse files
authored
Merge pull request stm32duino#2421 from fpistm/STM32CubeWB_update
chore(wb): update to latest STM32CubeWB v1.20.0
2 parents ec3f793 + f7b5833 commit 98d0569

37 files changed

+382
-204
lines changed

system/Drivers/CMSIS/Device/ST/STM32WBxx/Include/stm32wbxx.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ extern "C" {
6969
*/
7070
#define __STM32WBxx_CMSIS_VERSION_MAIN (0x01U) /*!< [31:24] main version */
7171
#define __STM32WBxx_CMSIS_VERSION_SUB1 (0x0CU) /*!< [23:16] sub1 version */
72-
#define __STM32WBxx_CMSIS_VERSION_SUB2 (0x01U) /*!< [15:8] sub2 version */
72+
#define __STM32WBxx_CMSIS_VERSION_SUB2 (0x02U) /*!< [15:8] sub2 version */
7373
#define __STM32WBxx_CMSIS_VERSION_RC (0x00U) /*!< [7:0] release candidate */
7474
#define __STM32WBxx_CMSIS_DEVICE_VERSION ((__STM32WBxx_CMSIS_VERSION_MAIN << 24)\
7575
|(__STM32WBxx_CMSIS_VERSION_SUB1 << 16)\

system/Drivers/CMSIS/Device/ST/STM32WBxx/README.md

+2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# STM32CubeWB CMSIS Device MCU Component
22

3+
![latest tag](https://img.shields.io/github/v/tag/STMicroelectronics/cmsis_device_wb.svg?color=brightgreen)
4+
35
## Overview
46

57
**STM32Cube** is an STMicroelectronics original initiative to ease the developers life by reducing efforts, time and cost.

system/Drivers/CMSIS/Device/ST/STM32WBxx/Release_Notes.html

+39-26
Original file line numberDiff line numberDiff line change
@@ -90,11 +90,11 @@ <h2 id="stm32wb15xx-stm32wb10xx-and-stm32wb1mxx">STM32WB15xx, STM32WB10xx and ST
9090
<div class="col-sm-12 col-lg-8">
9191
<h1 id="update-history">Update History</h1>
9292
<div class="collapse">
93-
<input type="checkbox" id="collapse-section14" checked aria-hidden="true"> <label for="collapse-section14" aria-hidden="true">V1.12.1 / 07-February-2024</label>
93+
<input type="checkbox" id="collapse-section15" checked aria-hidden="true"> <label for="collapse-section15" aria-hidden="true">V1.12.2/ 05-June-2024</label>
9494
<div>
9595
<h2 id="main-changes">Main Changes</h2>
9696
<ul>
97-
<li>Update declaration of g_pfnVectors size in gcc/startup files</li>
97+
<li>Properly mark sections readonly for GCC</li>
9898
</ul>
9999
<h2 id="supported-devices-and-boards">Supported Devices and boards</h2>
100100
<ul>
@@ -103,15 +103,28 @@ <h2 id="supported-devices-and-boards">Supported Devices and boards</h2>
103103
</div>
104104
</div>
105105
<div class="collapse">
106-
<input type="checkbox" id="collapse-section13" aria-hidden="true"> <label for="collapse-section13" aria-hidden="true">V1.12.0 / 09-November-2022</label>
106+
<input type="checkbox" id="collapse-section14" aria-hidden="true"> <label for="collapse-section14" aria-hidden="true">V1.12.1 / 07-February-2024</label>
107107
<div>
108108
<h2 id="main-changes-1">Main Changes</h2>
109109
<ul>
110+
<li>Update declaration of g_pfnVectors size in gcc/startup files</li>
111+
</ul>
112+
<h2 id="supported-devices-and-boards-1">Supported Devices and boards</h2>
113+
<ul>
114+
<li>STM32WB55xx, STM32WB5Mxx, STM32WB50xx, STM32WB35xx, STM32WB30xx, STM32WB15xx, STM32WB10xx and STM32WB1Mxx devices.</li>
115+
</ul>
116+
</div>
117+
</div>
118+
<div class="collapse">
119+
<input type="checkbox" id="collapse-section13" aria-hidden="true"> <label for="collapse-section13" aria-hidden="true">V1.12.0 / 09-November-2022</label>
120+
<div>
121+
<h2 id="main-changes-2">Main Changes</h2>
122+
<ul>
110123
<li>Fix incorrect USB_BASE and USB_PMAADDR addresses</li>
111124
<li>Fix initialization missing of data in RAM2 memory</li>
112125
<li>Add specific LSE_VALUE for STM32WB5Mxx</li>
113126
</ul>
114-
<h2 id="supported-devices-and-boards-1">Supported Devices and boards</h2>
127+
<h2 id="supported-devices-and-boards-2">Supported Devices and boards</h2>
115128
<ul>
116129
<li>STM32WB55xx, STM32WB5Mxx, STM32WB50xx, STM32WB35xx, STM32WB30xx, STM32WB15xx, STM32WB10xx and STM32WB1Mxx devices.</li>
117130
</ul>
@@ -120,11 +133,11 @@ <h2 id="supported-devices-and-boards-1">Supported Devices and boards</h2>
120133
<div class="collapse">
121134
<input type="checkbox" id="collapse-section12" aria-hidden="true"> <label for="collapse-section12" aria-hidden="true">V1.11.0 / 08-June-2022</label>
122135
<div>
123-
<h2 id="main-changes-2">Main Changes</h2>
136+
<h2 id="main-changes-3">Main Changes</h2>
124137
<ul>
125138
<li>Add support for the upcoming STM32WB1M device</li>
126139
</ul>
127-
<h2 id="supported-devices-and-boards-2">Supported Devices and boards</h2>
140+
<h2 id="supported-devices-and-boards-3">Supported Devices and boards</h2>
128141
<ul>
129142
<li>STM32WB55xx, STM32WB5Mxx, STM32WB50xx, STM32WB35xx, STM32WB30xx, STM32WB15xx, STM32WB10xx and STM32WB1Mxx devices.</li>
130143
</ul>
@@ -133,11 +146,11 @@ <h2 id="supported-devices-and-boards-2">Supported Devices and boards</h2>
133146
<div class="collapse">
134147
<input type="checkbox" id="collapse-section11" aria-hidden="true"> <label for="collapse-section11" aria-hidden="true">V1.10.1 / 25-March-2022</label>
135148
<div>
136-
<h2 id="main-changes-3">Main Changes</h2>
149+
<h2 id="main-changes-4">Main Changes</h2>
137150
<ul>
138151
<li>Align ADC registers naming on Reference Manual (For STM32WB15xx &amp; STM32WB10xx)</li>
139152
</ul>
140-
<h2 id="supported-devices-and-boards-3">Supported Devices and boards</h2>
153+
<h2 id="supported-devices-and-boards-4">Supported Devices and boards</h2>
141154
<ul>
142155
<li>STM32WB55xx, STM32WB5Mxx, STM32WB50xx, STM32WB35xx, STM32WB30xx, STM32WB15xx and STM32WB10xx devices.</li>
143156
</ul>
@@ -146,13 +159,13 @@ <h2 id="supported-devices-and-boards-3">Supported Devices and boards</h2>
146159
<div class="collapse">
147160
<input type="checkbox" id="collapse-section10" aria-hidden="true"> <label for="collapse-section10" aria-hidden="true">V1.10.0 / 12-November-2021</label>
148161
<div>
149-
<h2 id="main-changes-4">Main Changes</h2>
162+
<h2 id="main-changes-5">Main Changes</h2>
150163
<ul>
151164
<li>Update CMSIS devices drivers for all value lines not supporting SMPS</li>
152165
<li>All source files and templates: update disclaimer to add reference to the new license agreement</li>
153166
<li>Correct English spelling typos and remove non UTF-8 characters in comments</li>
154167
</ul>
155-
<h2 id="supported-devices-and-boards-4">Supported Devices and boards</h2>
168+
<h2 id="supported-devices-and-boards-5">Supported Devices and boards</h2>
156169
<ul>
157170
<li>STM32WB55xx, STM32WB5Mxx, STM32WB50xx, STM32WB35xx, STM32WB30xx, STM32WB15xx and STM32WB10xx devices.</li>
158171
</ul>
@@ -161,7 +174,7 @@ <h2 id="supported-devices-and-boards-4">Supported Devices and boards</h2>
161174
<div class="collapse">
162175
<input type="checkbox" id="collapse-section9" aria-hidden="true"> <label for="collapse-section9" aria-hidden="true">V1.9.0 / 24-June-2021</label>
163176
<div>
164-
<h2 id="main-changes-5">Main Changes</h2>
177+
<h2 id="main-changes-6">Main Changes</h2>
165178
<ul>
166179
<li>Add atomic register access services:
167180
<ul>
@@ -175,7 +188,7 @@ <h2 id="main-changes-5">Main Changes</h2>
175188
<li>Add define LSI_STARTUP_TIME used in default IWDG timeout calculation (HAL_IWDG_DEFAULT_TIMEOUT)</li>
176189
<li>Add define FLASH_ECCR_CPUID bits for new macro __HAL_FLASH_ECC_CPUID() macro</li>
177190
</ul>
178-
<h2 id="supported-devices-and-boards-5">Supported Devices and boards</h2>
191+
<h2 id="supported-devices-and-boards-6">Supported Devices and boards</h2>
179192
<ul>
180193
<li>STM32WB55xx, STM32WB5Mxx, STM32WB50xx, STM32WB35xx, STM32WB30xx, STM32WB15xx and STM32WB10xx devices.</li>
181194
</ul>
@@ -184,7 +197,7 @@ <h2 id="supported-devices-and-boards-5">Supported Devices and boards</h2>
184197
<div class="collapse">
185198
<input type="checkbox" id="collapse-section8" aria-hidden="true"> <label for="collapse-section8" aria-hidden="true">V1.8.0 / 09-February-2021</label>
186199
<div>
187-
<h2 id="main-changes-6">Main Changes</h2>
200+
<h2 id="main-changes-7">Main Changes</h2>
188201
<h3 id="add-support-for-stm32wb15xx-and-stm32wb10xx">Add support for STM32WB15xx and STM32WB10xx</h3>
189202
<ul>
190203
<li>Change how to adapt VTOR for user</li>
@@ -195,7 +208,7 @@ <h2 id="development-toolchains-and-compilers">Development Toolchains and Compile
195208
<li>RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.25</li>
196209
<li>System Workbench STM32 (SW4STM32) toolchain V2.7</li>
197210
</ul>
198-
<h2 id="supported-devices-and-boards-6">Supported Devices and boards</h2>
211+
<h2 id="supported-devices-and-boards-7">Supported Devices and boards</h2>
199212
<ul>
200213
<li>STM32WB55xx, STM32WB5Mxx, STM32WB50xx, STM32WB35xx, STM32WB30xx, STM32WB15xx and STM32WB10xx devices.</li>
201214
</ul>
@@ -204,7 +217,7 @@ <h2 id="supported-devices-and-boards-6">Supported Devices and boards</h2>
204217
<div class="collapse">
205218
<input type="checkbox" id="collapse-section7" aria-hidden="true"> <label for="collapse-section7" aria-hidden="true">V1.7.0 / 30-October-2020</label>
206219
<div>
207-
<h2 id="main-changes-7">Main Changes</h2>
220+
<h2 id="main-changes-8">Main Changes</h2>
208221
<h3 id="maintenance-release">Maintenance release</h3>
209222
<p>Maintenance release for <strong>STM32WBxx</strong> devices (stm32wb55xx, stm32wb50xx, stm32wb35xx and stm32wb30xx devices)</p>
210223
<table>
@@ -234,7 +247,7 @@ <h2 id="development-toolchains-and-compilers-1">Development Toolchains and Compi
234247
<li>RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.25</li>
235248
<li>System Workbench STM32 (SW4STM32) toolchain V2.7</li>
236249
</ul>
237-
<h2 id="supported-devices-and-boards-7">Supported Devices and boards</h2>
250+
<h2 id="supported-devices-and-boards-8">Supported Devices and boards</h2>
238251
<ul>
239252
<li>STM32WB55xx, STM32WB5Mxx, STM32WB50xx, STM32WB35xx and STM32WB30xx devices.</li>
240253
</ul>
@@ -243,7 +256,7 @@ <h2 id="supported-devices-and-boards-7">Supported Devices and boards</h2>
243256
<div class="collapse">
244257
<input type="checkbox" id="collapse-section6" aria-hidden="true"> <label for="collapse-section6" aria-hidden="true">v1.6.0 / 05-June-2020</label>
245258
<div>
246-
<h2 id="main-changes-8">Main Changes</h2>
259+
<h2 id="main-changes-9">Main Changes</h2>
247260
<h3 id="maintenance-release-1">Maintenance release</h3>
248261
<p>Maintenance release for <strong>STM32WBxx</strong> devices (stm32wb55xx, stm32wb50xx, stm32wb35xx and stm32wb30xx devices)</p>
249262
<table>
@@ -282,7 +295,7 @@ <h2 id="development-toolchains-and-compilers-2">Development Toolchains and Compi
282295
<li>RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.25</li>
283296
<li>System Workbench STM32 (SW4STM32) toolchain V2.7</li>
284297
</ul>
285-
<h2 id="supported-devices-and-boards-8">Supported Devices and boards</h2>
298+
<h2 id="supported-devices-and-boards-9">Supported Devices and boards</h2>
286299
<ul>
287300
<li>STM32WB55xx, STM32WB5Mxx, STM32WB50xx, STM32WB35xx and STM32WB30xx devices.</li>
288301
</ul>
@@ -291,7 +304,7 @@ <h2 id="supported-devices-and-boards-8">Supported Devices and boards</h2>
291304
<div class="collapse">
292305
<input type="checkbox" id="collapse-section5" aria-hidden="true"> <label for="collapse-section5" aria-hidden="true">V1.4.0 / 12-February-2020</label>
293306
<div>
294-
<h2 id="main-changes-9">Main Changes</h2>
307+
<h2 id="main-changes-10">Main Changes</h2>
295308
<h3 id="introduction-of-stm32wb35xx-stm32wb30xx-and-stm32wb5mxx-product">Introduction of STM32WB35xx, STM32WB30xx and STM32WB5Mxx product</h3>
296309
<p>This release introduce the support of STM32WB5Mxx, STM32WB35xx product and its value line STM32WB30xx.</p>
297310
<p>Added features:</p>
@@ -309,7 +322,7 @@ <h2 id="development-toolchains-and-compilers-3">Development Toolchains and Compi
309322
<li>RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.25</li>
310323
<li>System Workbench STM32 (SW4STM32) toolchain V2.7</li>
311324
</ul>
312-
<h2 id="supported-devices-and-boards-9">Supported Devices and boards</h2>
325+
<h2 id="supported-devices-and-boards-10">Supported Devices and boards</h2>
313326
<ul>
314327
<li>STM32WB55xx, STM32WB5Mxx, STM32WB50xx, STM32WB35xx and STM32WB30xx devices.</li>
315328
</ul>
@@ -318,7 +331,7 @@ <h2 id="supported-devices-and-boards-9">Supported Devices and boards</h2>
318331
<div class="collapse">
319332
<input type="checkbox" id="collapse-section4" aria-hidden="true"> <label for="collapse-section4" aria-hidden="true">V1.3.0 / 11-September-2019</label>
320333
<div>
321-
<h2 id="main-changes-10">Main Changes</h2>
334+
<h2 id="main-changes-11">Main Changes</h2>
322335
<p>Maintenance release for <strong>STM32WBxx</strong> devices (stm32wb55xx and stm32wb50xx devices)</p>
323336
<table>
324337
<thead>
@@ -347,7 +360,7 @@ <h2 id="development-toolchains-and-compilers-4">Development Toolchains and Compi
347360
<li>RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.25</li>
348361
<li>System Workbench STM32 (SW4STM32) toolchain V2.7</li>
349362
</ul>
350-
<h2 id="supported-devices-and-boards-10">Supported Devices and boards</h2>
363+
<h2 id="supported-devices-and-boards-11">Supported Devices and boards</h2>
351364
<ul>
352365
<li>STM32WB55xx, STM32WB50xx devices</li>
353366
</ul>
@@ -356,7 +369,7 @@ <h2 id="supported-devices-and-boards-10">Supported Devices and boards</h2>
356369
<div class="collapse">
357370
<input type="checkbox" id="collapse-section3" aria-hidden="true"> <label for="collapse-section3" aria-hidden="true">V1.2.0 / 26-June-2019</label>
358371
<div>
359-
<h2 id="main-changes-11">Main Changes</h2>
372+
<h2 id="main-changes-12">Main Changes</h2>
360373
<h3 id="introduction-of-stm32wb50xx-device">Introduction of STM32WB50xx device</h3>
361374
<p>First release for STM32WBxx CMSIS introducing <strong>stm32wb50xx</strong> devices.</p>
362375
<h2 id="contents">Contents</h2>
@@ -367,7 +380,7 @@ <h2 id="development-toolchains-and-compilers-5">Development Toolchains and Compi
367380
<li>RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.25</li>
368381
<li>System Workbench STM32 (SW4STM32) toolchain V2.7</li>
369382
</ul>
370-
<h2 id="supported-devices-and-boards-11">Supported Devices and boards</h2>
383+
<h2 id="supported-devices-and-boards-12">Supported Devices and boards</h2>
371384
<ul>
372385
<li>STM32WB55xx and STM32WB50xx devices</li>
373386
</ul>
@@ -376,7 +389,7 @@ <h2 id="supported-devices-and-boards-11">Supported Devices and boards</h2>
376389
<div class="collapse">
377390
<input type="checkbox" id="collapse-section2" aria-hidden="true"> <label for="collapse-section2" aria-hidden="true">V1.1.0 / 05-April-2019</label>
378391
<div>
379-
<h2 id="main-changes-12">Main Changes</h2>
392+
<h2 id="main-changes-13">Main Changes</h2>
380393
<h3 id="maintenance-release-2">Maintenance release</h3>
381394
<p>Maintenance release for <strong>STM32WBxx</strong> devices (stm32wb55xx devices)</p>
382395
<table>
@@ -400,7 +413,7 @@ <h3 id="maintenance-release-2">Maintenance release</h3>
400413
<div class="collapse">
401414
<input type="checkbox" id="collapse-section1" aria-hidden="true"> <label for="collapse-section1" aria-hidden="true">V1.0.0 / 06-February-2019</label>
402415
<div>
403-
<h2 id="main-changes-13">Main Changes</h2>
416+
<h2 id="main-changes-14">Main Changes</h2>
404417
<h3 id="first-release">First release</h3>
405418
<p>Add support of STM32WB55xx.</p>
406419
</div>

system/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/gcc/linker/stm32wb10xx_flash_cm4.ld

+9-5
Original file line numberDiff line numberDiff line change
@@ -86,27 +86,31 @@ SECTIONS
8686
. = ALIGN(4);
8787
} >FLASH
8888

89-
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH
90-
.ARM : {
89+
.ARM.extab (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
90+
{
91+
*(.ARM.extab* .gnu.linkonce.armextab.*)
92+
} >FLASH
93+
.ARM (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
94+
{
9195
__exidx_start = .;
9296
*(.ARM.exidx*)
9397
__exidx_end = .;
9498
} >FLASH
9599

96-
.preinit_array :
100+
.preinit_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
97101
{
98102
PROVIDE_HIDDEN (__preinit_array_start = .);
99103
KEEP (*(.preinit_array*))
100104
PROVIDE_HIDDEN (__preinit_array_end = .);
101105
} >FLASH
102-
.init_array :
106+
.init_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
103107
{
104108
PROVIDE_HIDDEN (__init_array_start = .);
105109
KEEP (*(SORT(.init_array.*)))
106110
KEEP (*(.init_array*))
107111
PROVIDE_HIDDEN (__init_array_end = .);
108112
} >FLASH
109-
.fini_array :
113+
.fini_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
110114
{
111115
PROVIDE_HIDDEN (__fini_array_start = .);
112116
KEEP (*(SORT(.fini_array.*)))

system/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/gcc/linker/stm32wb15xx_flash_cm4.ld

+9-5
Original file line numberDiff line numberDiff line change
@@ -86,27 +86,31 @@ SECTIONS
8686
. = ALIGN(4);
8787
} >FLASH
8888

89-
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH
90-
.ARM : {
89+
.ARM.extab (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
90+
{
91+
*(.ARM.extab* .gnu.linkonce.armextab.*)
92+
} >FLASH
93+
.ARM (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
94+
{
9195
__exidx_start = .;
9296
*(.ARM.exidx*)
9397
__exidx_end = .;
9498
} >FLASH
9599

96-
.preinit_array :
100+
.preinit_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
97101
{
98102
PROVIDE_HIDDEN (__preinit_array_start = .);
99103
KEEP (*(.preinit_array*))
100104
PROVIDE_HIDDEN (__preinit_array_end = .);
101105
} >FLASH
102-
.init_array :
106+
.init_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
103107
{
104108
PROVIDE_HIDDEN (__init_array_start = .);
105109
KEEP (*(SORT(.init_array.*)))
106110
KEEP (*(.init_array*))
107111
PROVIDE_HIDDEN (__init_array_end = .);
108112
} >FLASH
109-
.fini_array :
113+
.fini_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
110114
{
111115
PROVIDE_HIDDEN (__fini_array_start = .);
112116
KEEP (*(SORT(.fini_array.*)))

system/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/gcc/linker/stm32wb1mxx_flash_cm4.ld

+9-5
Original file line numberDiff line numberDiff line change
@@ -86,27 +86,31 @@ SECTIONS
8686
. = ALIGN(4);
8787
} >FLASH
8888

89-
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH
90-
.ARM : {
89+
.ARM.extab (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
90+
{
91+
*(.ARM.extab* .gnu.linkonce.armextab.*)
92+
} >FLASH
93+
.ARM (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
94+
{
9195
__exidx_start = .;
9296
*(.ARM.exidx*)
9397
__exidx_end = .;
9498
} >FLASH
9599

96-
.preinit_array :
100+
.preinit_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
97101
{
98102
PROVIDE_HIDDEN (__preinit_array_start = .);
99103
KEEP (*(.preinit_array*))
100104
PROVIDE_HIDDEN (__preinit_array_end = .);
101105
} >FLASH
102-
.init_array :
106+
.init_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
103107
{
104108
PROVIDE_HIDDEN (__init_array_start = .);
105109
KEEP (*(SORT(.init_array.*)))
106110
KEEP (*(.init_array*))
107111
PROVIDE_HIDDEN (__init_array_end = .);
108112
} >FLASH
109-
.fini_array :
113+
.fini_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
110114
{
111115
PROVIDE_HIDDEN (__fini_array_start = .);
112116
KEEP (*(SORT(.fini_array.*)))

system/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/gcc/linker/stm32wb30xx_flash_cm4.ld

+9-5
Original file line numberDiff line numberDiff line change
@@ -86,27 +86,31 @@ SECTIONS
8686
. = ALIGN(4);
8787
} >FLASH
8888

89-
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH
90-
.ARM : {
89+
.ARM.extab (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
90+
{
91+
*(.ARM.extab* .gnu.linkonce.armextab.*)
92+
} >FLASH
93+
.ARM (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
94+
{
9195
__exidx_start = .;
9296
*(.ARM.exidx*)
9397
__exidx_end = .;
9498
} >FLASH
9599

96-
.preinit_array :
100+
.preinit_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
97101
{
98102
PROVIDE_HIDDEN (__preinit_array_start = .);
99103
KEEP (*(.preinit_array*))
100104
PROVIDE_HIDDEN (__preinit_array_end = .);
101105
} >FLASH
102-
.init_array :
106+
.init_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
103107
{
104108
PROVIDE_HIDDEN (__init_array_start = .);
105109
KEEP (*(SORT(.init_array.*)))
106110
KEEP (*(.init_array*))
107111
PROVIDE_HIDDEN (__init_array_end = .);
108112
} >FLASH
109-
.fini_array :
113+
.fini_array (READONLY) : /* The READONLY keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */
110114
{
111115
PROVIDE_HIDDEN (__fini_array_start = .);
112116
KEEP (*(SORT(.fini_array.*)))

0 commit comments

Comments
 (0)