Skip to content

Commit 9d4589a

Browse files
authored
Merge branch 'stm32duino:main' into main
2 parents e878c6e + e51044c commit 9d4589a

File tree

686 files changed

+2727
-727
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

686 files changed

+2727
-727
lines changed

CI/update/stm32variant.py

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2153,7 +2153,7 @@ def keyflash(x):
21532153
return x[0]
21542154

21552155

2156-
def group_by_flash(group_base_list, glist, index_mcu_base):
2156+
def group_by_flash(glist, index_mcu_base):
21572157
expanded_dir_list = []
21582158
group_flash_list = []
21592159
new_mcu_dirname = ""
@@ -2205,14 +2205,14 @@ def group_by_flash(group_base_list, glist, index_mcu_base):
22052205
for ppe in key_package_list:
22062206
sub = mcu_PE_regex.search(ppe)
22072207
if not sub:
2208-
print(f"Package of {base_name}, ppe {ppe} info not recognized")
2208+
print(f"Package: {base_name}, ppe: {ppe} not recognized")
22092209
exit(1)
22102210
else:
22112211
package_list.append(sub.group(1))
22122212
# Assert
22132213
if sub.group(2) != "x":
22142214
print(
2215-
f"Package of {base_name}, ppe {ppe} info contains {sub.group(2)} instead of 'x'"
2215+
f"Package: {base_name}, ppe: {ppe} contains {sub.group(2)} instead of 'x'"
22162216
)
22172217
exit(1)
22182218
if sub.group(3):
@@ -2241,7 +2241,7 @@ def group_by_flash(group_base_list, glist, index_mcu_base):
22412241
return new_mcu_dirname
22422242

22432243

2244-
def merge_dir(out_temp_path, group_mcu_dir, mcu_family, periph_xml, variant_exp):
2244+
def merge_dir(out_temp_path, group_mcu_dir, mcu_family_name, periph_xml, variant_exp):
22452245
dirname_list = []
22462246
new_mcu_dirname = ""
22472247
# Working mcu directory
@@ -2250,7 +2250,8 @@ def merge_dir(out_temp_path, group_mcu_dir, mcu_family, periph_xml, variant_exp)
22502250
if len(group_mcu_dir) != 1:
22512251
# Handle mcu name length dynamically
22522252
# Add num for extra information line, #pin and flash
2253-
index_mcu_base = len(mcu_family.name.removeprefix("STM32").removesuffix(nx)) + (
2253+
nx = stm32_dict[mcu_family_name.removeprefix("STM32")]
2254+
index_mcu_base = len(mcu_family_name.removeprefix("STM32").removesuffix(nx)) + (
22542255
3 if len(nx) == 2 else 2
22552256
)
22562257
# Extract only dir name
@@ -2271,14 +2272,14 @@ def merge_dir(out_temp_path, group_mcu_dir, mcu_family, periph_xml, variant_exp)
22712272
new_mcu_dirname += f"{'_' if index != 0 else ''}{glist[0].strip('x')}"
22722273
else:
22732274
# Group using flash info
2274-
gbf = group_by_flash(group_base_list, glist, index_mcu_base)
2275+
gbf = group_by_flash(glist, index_mcu_base)
22752276
new_mcu_dirname += f"{'_' if index != 0 else ''}{gbf}"
22762277
del group_package_list[:]
22772278
del group_flash_list[:]
22782279
del group_base_list[:]
22792280
del dirname_list[:]
22802281

2281-
new_mcu_dir = out_temp_path / mcu_family.name / new_mcu_dirname
2282+
new_mcu_dir = out_temp_path / f"{mcu_family_name}{nx}" / new_mcu_dirname
22822283

22832284
board_entry = ""
22842285
with open(mcu_dir / boards_entry_filename) as fp:
@@ -2371,10 +2372,11 @@ def aggregate_dir():
23712372

23722373
# Compare per family
23732374
for mcu_family_name in aggregate_serie_list:
2374-
mcu_family = out_temp_path / f"{mcu_family_name}{nx}"
2375-
out_family_path = root_dir / "variants" / mcu_family.name
2375+
nx = stm32_dict[mcu_family_name.removeprefix("STM32")]
2376+
mcu_family_path = out_temp_path / f"{mcu_family_name}{nx}"
2377+
out_family_path = root_dir / "variants" / mcu_family_path.name
23762378
# Get all mcu_dir
2377-
mcu_dirs = sorted(mcu_family.glob("*/"))
2379+
mcu_dirs = sorted(mcu_family_path.glob("*/"))
23782380
# Get original directory list of current serie STM32YYxx
23792381
mcu_out_dirs_ori = sorted(out_family_path.glob("*/**"))
23802382
mcu_out_dirs_up = []
@@ -2437,7 +2439,7 @@ def aggregate_dir():
24372439

24382440
# Merge directories name and contents if needed
24392441
mcu_dir = merge_dir(
2440-
out_temp_path, group_mcu_dir, mcu_family, periph_xml, variant_exp
2442+
out_temp_path, group_mcu_dir, mcu_family_name, periph_xml, variant_exp
24412443
)
24422444
# Move to variants/ folder
24432445
out_path = out_family_path / mcu_dir.stem
@@ -2460,15 +2462,15 @@ def aggregate_dir():
24602462
if new_dirs:
24612463
nb_new = len(new_dirs)
24622464
dir_str = "directories" if nb_new > 1 else "directory"
2463-
print(f"\nNew {dir_str} for {mcu_family.name}:\n")
2465+
print(f"\nNew {dir_str} for {mcu_family_path.name}:\n")
24642466
for d in new_dirs:
24652467
print(f" - {d.name}")
24662468
print("\n --> Please, check if it is a new directory or a renamed one.")
24672469
old_dirs = set(mcu_out_dirs_ori) - set(mcu_out_dirs_up)
24682470
if old_dirs:
24692471
nb_old = len(old_dirs)
24702472
dir_str = "Directories" if nb_old > 1 else "Directory"
2471-
print(f"\n{dir_str} not updated for {mcu_family.name}:\n")
2473+
print(f"\n{dir_str} not updated for {mcu_family_path.name}:\n")
24722474
for d in old_dirs:
24732475
# Check if ldsript.ld file exists in the folder
24742476
if not (d / "ldscript.ld").exists():

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
115115
| :green_heart: | STM32H563ZI | [Nucleo H563ZI](https://www.st.com/en/evaluation-tools/nucleo-h563zi.html) | *2.6.0* | |
116116
| :green_heart: | STM32H723ZG | [Nucleo H723ZG](https://www.st.com/en/evaluation-tools/nucleo-h723zg.html) | *2.4.0* | |
117117
| :green_heart: | STM32H743ZI | [Nucleo H743ZI(2)](https://www.st.com/en/evaluation-tools/nucleo-h743zi.html) | *1.5.0* | Nucleo H743ZI2 since 1.6.0 |
118+
| :yellow_heart: | STM32H745ZI-Q | [Nucleo-H745ZI-Q](https://www.st.com/en/evaluation-tools/nucleo-h745zi-q.html) | **2.12.0** | |
118119
| :green_heart: | STM32H753ZI | [Nucleo H753ZI](https://www.st.com/en/evaluation-tools/nucleo-h753zi.html) | *2.7.0* | |
119120
| :green_heart: | STM32H7A3ZITxQ | [NUCLEO-H7A3ZI-Q](https://www.st.com/en/evaluation-tools/nucleo-h7a3zi-q.html) | *2.10.0* | |
120121
| :green_heart: | STM32L496ZG | [Nucleo L496ZG](http://www.st.com/en/evaluation-tools/nucleo-l496zg.html) | *1.3.0* | |
@@ -197,6 +198,7 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
197198
| :green_heart: | STM32F407VG | [STM32F407G-DISC1](http://www.st.com/en/evaluation-tools/stm32f4discovery.html) | *0.1.0* | |
198199
| :yellow_heart: | STM32F411VE | [STM32F411E-DISCO](https://www.st.com/en/evaluation-tools/32f411ediscovery.html) | **2.12.0** | |
199200
| :green_heart: | STM32F413ZH | [32F413HDISCOVERY](https://www.st.com/en/evaluation-tools/32f413hdiscovery.html) | *1.9.0* | |
201+
| :yellow_heart: | STM32F429I | [STM32F429I-DISC1](https://www.st.com/en/evaluation-tools/32f429idiscovery.html) | **2.12.0** | |
200202
| :green_heart: | STM32F746NG | [STM32F746G-DISCOVERY](http://www.st.com/en/evaluation-tools/32f746gdiscovery.html) | *0.1.0* | |
201203
| :green_heart: | STM32G031J6 | [STM32G0316-DISCO](https://www.st.com/en/evaluation-tools/stm32g0316-disco.html) | *1.9.0* | |
202204
| :green_heart: | STM32G431CB | [B-G431B-ESC1](https://www.st.com/en/evaluation-tools/b-g431b-esc1.html) | *2.0.0* | |
@@ -610,6 +612,7 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
610612
| :green_heart: | STM32H743XG<br>STM32H743XI | Generic Board | *2.7.0* | |
611613
| :green_heart: | STM32H743ZG<br>STM32H743ZI | Generic Board | *2.0.0* | |
612614
| :green_heart: | STM32H745XG<br>STM32H745XI | Generic Board | *2.7.0* | |
615+
| :yellow_heart: | STM32H745ZG<br>STM32H745ZI | Generic Board | **2.12.0** | |
613616
| :green_heart: | STM32H747AG<br>STM32H747AI | Generic Board | *2.0.0* | |
614617
| :green_heart: | STM32H747IG<br>STM32H747II | Generic Board | *2.0.0* | |
615618
| :green_heart: | STM32H747XG<br>STM32H747XI | Generic Board | *2.7.0* | |
@@ -626,6 +629,7 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
626629
| :green_heart: | STM32H753XI | Generic Board | *2.7.0* | |
627630
| :green_heart: | STM32H753ZI | Generic Board | *2.0.0* | |
628631
| :green_heart: | STM32H755XI | Generic Board | *2.7.0* | |
632+
| :yellow_heart: | STM32H755ZI | Generic Board | **2.12.0** | |
629633
| :green_heart: | STM32H757AI | Generic Board | *2.0.0* | |
630634
| :green_heart: | STM32H757II | Generic Board | *2.0.0* | |
631635
| :green_heart: | STM32H757XI | Generic Board | *2.7.0* | |

boards.txt

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,24 @@ Nucleo_144.menu.pnum.NUCLEO_H743ZI2.build.variant_h=variant_NUCLEO_H743ZI.h
257257
Nucleo_144.menu.pnum.NUCLEO_H743ZI2.openocd.target=stm32h7x
258258
Nucleo_144.menu.pnum.NUCLEO_H743ZI2.debug.svd_file={runtime.tools.STM32_SVD.path}/svd/STM32H7xx/STM32H743.svd
259259

260+
# NUCLEO_H745ZI_Q board
261+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q=Nucleo H745ZI-Q
262+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.node=NODE_H743ZIQ
263+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.upload.maximum_size=2097152
264+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.upload.maximum_data_size=884736
265+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.mcu=cortex-m7
266+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.fpu=-mfpu=fpv4-sp-d16
267+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.float-abi=-mfloat-abi=hard
268+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.xSerial} -DCORE_CM7
269+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.board=NUCLEO_H745ZI_Q
270+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.series=STM32H7xx
271+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.product_line=STM32H745xx
272+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.variant=STM32H7xx/H745Z(G-I)T_H755ZIT
273+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.variant_h=variant_NUCLEO_H745ZI_Q.h
274+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.openocd.target=stm32h7x
275+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.debug.svd_file={runtime.tools.STM32_SVD.path}/svd/STM32H7xx/STM32H745_CM7.svd
276+
277+
260278
# NUCLEO_H753ZI board
261279
Nucleo_144.menu.pnum.NUCLEO_H753ZI=Nucleo H753ZI
262280
Nucleo_144.menu.pnum.NUCLEO_H753ZI.node=NODE_H753ZI
@@ -1505,6 +1523,22 @@ Disco.menu.pnum.DISCO_F413ZH.build.peripheral_pins=-DCUSTOM_PERIPHERAL_PINS
15051523
Disco.menu.pnum.DISCO_F413ZH.openocd.target=stm32f4x
15061524
Disco.menu.pnum.DISCO_F413ZH.debug.svd_file={runtime.tools.STM32_SVD.path}/svd/STM32F4xx/STM32F413.svd
15071525

1526+
# DISCO_F429ZI board
1527+
Disco.menu.pnum.DISCO_F429ZI= STM32F429ZI-DISCO
1528+
Disco.menu.pnum.DISCO_F429ZI.node=DIS_F429ZI
1529+
Disco.menu.pnum.DISCO_F429ZI.upload.maximum_size=2097152
1530+
Disco.menu.pnum.DISCO_F429ZI.upload.maximum_data_size=196608
1531+
Disco.menu.pnum.DISCO_F429ZI.build.mcu=cortex-m4
1532+
Disco.menu.pnum.DISCO_F429ZI.build.fpu=-mfpu=fpv4-sp-d16
1533+
Disco.menu.pnum.DISCO_F429ZI.build.float-abi=-mfloat-abi=hard
1534+
Disco.menu.pnum.DISCO_F429ZI.build.board=DISCO_F429ZI
1535+
Disco.menu.pnum.DISCO_F429ZI.build.series=STM32F4xx
1536+
Disco.menu.pnum.DISCO_F429ZI.build.product_line=STM32F429xx
1537+
Disco.menu.pnum.DISCO_F429ZI.build.variant=STM32F4xx/F427Z(G-I)T_F429ZET_F429Z(G-I)(T-Y)_F437Z(G-I)T_F439Z(G-I)(T-Y)
1538+
Disco.menu.pnum.DISCO_F429ZI.build.variant_h=variant_DISCO_F429ZI.h
1539+
Disco.menu.pnum.DISCO_F429ZI.openocd.target=stm32f4x
1540+
Disco.menu.pnum.DISCO_F429ZI.debug.svd_file={runtime.tools.STM32_SVD.path}/svd/STM32F4xx/STM32F429.svd
1541+
15081542
# DISCO_F746NG board
15091543
Disco.menu.pnum.DISCO_F746NG=STM32F746G-DISCOVERY
15101544
Disco.menu.pnum.DISCO_F746NG.node=DIS_F746NG
@@ -9840,6 +9874,24 @@ GenH7.menu.pnum.GENERIC_H745XIHX.build.product_line=STM32H745xx
98409874
GenH7.menu.pnum.GENERIC_H745XIHX.build.variant=STM32H7xx/H742X(G-I)H_H743X(G-I)H_H745X(G-I)H_H747X(G-I)H_H750XBH_H753XIH_H755XIH_H757XIH
98419875
GenH7.menu.pnum.GENERIC_H745XIHX.debug.svd_file={runtime.tools.STM32_SVD.path}/svd/STM32H7xx/STM32H745_CM7.svd
98429876

9877+
# Generic H745ZGTx
9878+
GenH7.menu.pnum.GENERIC_H745ZGTX=Generic H745ZGTx
9879+
GenH7.menu.pnum.GENERIC_H745ZGTX.upload.maximum_size=1048576
9880+
GenH7.menu.pnum.GENERIC_H745ZGTX.upload.maximum_data_size=884736
9881+
GenH7.menu.pnum.GENERIC_H745ZGTX.build.board=GENERIC_H745ZGTX
9882+
GenH7.menu.pnum.GENERIC_H745ZGTX.build.product_line=STM32H745xG
9883+
GenH7.menu.pnum.GENERIC_H745ZGTX.build.variant=STM32H7xx/H745Z(G-I)T_H755ZIT
9884+
GenH7.menu.pnum.GENERIC_H745ZGTX.debug.svd_file={runtime.tools.STM32_SVD.path}/svd/STM32H7xx/STM32H745_CM7.svd
9885+
9886+
# Generic H745ZITx
9887+
GenH7.menu.pnum.GENERIC_H745ZITX=Generic H745ZITx
9888+
GenH7.menu.pnum.GENERIC_H745ZITX.upload.maximum_size=2097152
9889+
GenH7.menu.pnum.GENERIC_H745ZITX.upload.maximum_data_size=884736
9890+
GenH7.menu.pnum.GENERIC_H745ZITX.build.board=GENERIC_H745ZITX
9891+
GenH7.menu.pnum.GENERIC_H745ZITX.build.product_line=STM32H745xx
9892+
GenH7.menu.pnum.GENERIC_H745ZITX.build.variant=STM32H7xx/H745Z(G-I)T_H755ZIT
9893+
GenH7.menu.pnum.GENERIC_H745ZITX.debug.svd_file={runtime.tools.STM32_SVD.path}/svd/STM32H7xx/STM32H745_CM7.svd
9894+
98439895
# Generic H747AGIx
98449896
GenH7.menu.pnum.GENERIC_H747AGIX=Generic H747AGIx
98459897
GenH7.menu.pnum.GENERIC_H747AGIX.upload.maximum_size=1048576
@@ -10002,6 +10054,15 @@ GenH7.menu.pnum.GENERIC_H755XIHX.build.product_line=STM32H755xx
1000210054
GenH7.menu.pnum.GENERIC_H755XIHX.build.variant=STM32H7xx/H742X(G-I)H_H743X(G-I)H_H745X(G-I)H_H747X(G-I)H_H750XBH_H753XIH_H755XIH_H757XIH
1000310055
GenH7.menu.pnum.GENERIC_H755XIHX.debug.svd_file={runtime.tools.STM32_SVD.path}/svd/STM32H7xx/STM32H755_CM7.svd
1000410056

10057+
# Generic H755ZITx
10058+
GenH7.menu.pnum.GENERIC_H755ZITX=Generic H755ZITx
10059+
GenH7.menu.pnum.GENERIC_H755ZITX.upload.maximum_size=2097152
10060+
GenH7.menu.pnum.GENERIC_H755ZITX.upload.maximum_data_size=884736
10061+
GenH7.menu.pnum.GENERIC_H755ZITX.build.board=GENERIC_H755ZITX
10062+
GenH7.menu.pnum.GENERIC_H755ZITX.build.product_line=STM32H755xx
10063+
GenH7.menu.pnum.GENERIC_H755ZITX.build.variant=STM32H7xx/H745Z(G-I)T_H755ZIT
10064+
GenH7.menu.pnum.GENERIC_H755ZITX.debug.svd_file={runtime.tools.STM32_SVD.path}/svd/STM32H7xx/STM32H755_CM7.svd
10065+
1000510066
# Generic H757AIIx
1000610067
GenH7.menu.pnum.GENERIC_H757AIIX=Generic H757AIIx
1000710068
GenH7.menu.pnum.GENERIC_H757AIIX.upload.maximum_size=2097152

0 commit comments

Comments
 (0)