Skip to content

Commit d8e19cf

Browse files
committed
fix(programmer): properly define programmer interface
Fixes #2415 Signed-off-by: Frederic Pillon <frederic.pillon@st.com>
1 parent 74255d5 commit d8e19cf

File tree

3 files changed

+64
-47
lines changed

3 files changed

+64
-47
lines changed

boards.txt

Lines changed: 36 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ Nucleo_144.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build
2323
Nucleo_144.build.flash_offset=0x0
2424
Nucleo_144.upload.maximum_size=0
2525
Nucleo_144.upload.maximum_data_size=0
26-
Nucleo_144.programmer.default=stlink
26+
Nucleo_144.programmer.default=stlink_swd
2727
Nucleo_144.vid.0=0x0483
2828
Nucleo_144.pid.0=0x5740
2929
Nucleo_144.vid.1=0x0483
@@ -395,7 +395,7 @@ Nucleo_64.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.
395395
Nucleo_64.build.flash_offset=0x0
396396
Nucleo_64.upload.maximum_size=0
397397
Nucleo_64.upload.maximum_data_size=0
398-
Nucleo_64.programmer.default=stlink
398+
Nucleo_64.programmer.default=stlink_swd
399399
Nucleo_64.vid.0=0x0483
400400
Nucleo_64.pid.0=0x5740
401401
# STlink V1/V2.1/V3
@@ -875,7 +875,7 @@ Nucleo_32.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.
875875
Nucleo_32.build.flash_offset=0x0
876876
Nucleo_32.upload.maximum_size=0
877877
Nucleo_32.upload.maximum_data_size=0
878-
Nucleo_32.programmer.default=stlink
878+
Nucleo_32.programmer.default=stlink_swd
879879
Nucleo_32.vid.0=0x0483
880880
Nucleo_32.pid.0=0x5740
881881
# STlink V1/V2.1/V3
@@ -1038,7 +1038,7 @@ Disco.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.xSer
10381038
Disco.build.flash_offset=0x0
10391039
Disco.upload.maximum_size=0
10401040
Disco.upload.maximum_data_size=0
1041-
Disco.programmer.default=stlink
1041+
Disco.programmer.default=stlink_swd
10421042
Disco.vid.0=0x0483
10431043
Disco.pid.0=0x5740
10441044
# STlink V1/V2.1/V3
@@ -1359,7 +1359,7 @@ Eval.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.xSeri
13591359
Eval.build.flash_offset=0x0
13601360
Eval.upload.maximum_size=0
13611361
Eval.upload.maximum_data_size=0
1362-
Eval.programmer.default=stlink
1362+
Eval.programmer.default=stlink_swd
13631363
Eval.vid.0=0x0483
13641364
Eval.pid.0=0x5740
13651365
# STlink V1/V2.1/V3
@@ -1425,7 +1425,7 @@ STM32MP1.name=STM32MP1 series coprocessor
14251425
STM32MP1.build.flash_offset=0x0
14261426
STM32MP1.upload.maximum_size=0
14271427
STM32MP1.upload.maximum_data_size=0
1428-
STM32MP1.programmer.default=stlink
1428+
STM32MP1.programmer.default=stlink_swd
14291429
STM32MP1.vid.0=0x0483
14301430
STM32MP1.pid.0=0x5740
14311431

@@ -1474,7 +1474,7 @@ GenC0.build.st_extra_flags=-D{build.product_line} {build.xSerial} -D__CORTEX_SC=
14741474
GenC0.build.flash_offset=0x0
14751475
GenC0.upload.maximum_size=0
14761476
GenC0.upload.maximum_data_size=0
1477-
GenC0.programmer.default=stlink
1477+
GenC0.programmer.default=stlink_swd
14781478
GenC0.debug.server.openocd.scripts.2=target/stm32c0x.cfg
14791479
GenC0.vid.0=0x0483
14801480
GenC0.pid.0=0x5740
@@ -1619,7 +1619,7 @@ GenF0.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.xSer
16191619
GenF0.build.flash_offset=0x0
16201620
GenF0.upload.maximum_size=0
16211621
GenF0.upload.maximum_data_size=0
1622-
GenF0.programmer.default=stlink
1622+
GenF0.programmer.default=stlink_swd
16231623
GenF0.debug.server.openocd.scripts.2=target/stm32f0x.cfg
16241624
GenF0.vid.0=0x0483
16251625
GenF0.pid.0=0x5740
@@ -2528,7 +2528,7 @@ GenF1.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.xSer
25282528
GenF1.build.flash_offset=0x0
25292529
GenF1.upload.maximum_size=0
25302530
GenF1.upload.maximum_data_size=0
2531-
GenF1.programmer.default=stlink
2531+
GenF1.programmer.default=stlink_swd
25322532
GenF1.debug.server.openocd.scripts.2=target/stm32f1x.cfg
25332533
GenF1.vid.0=0x0483
25342534
GenF1.pid.0=0x5740
@@ -3373,7 +3373,7 @@ GenF2.build.series=STM32F2xx
33733373
GenF2.build.flash_offset=0x0
33743374
GenF2.upload.maximum_size=0
33753375
GenF2.upload.maximum_data_size=0
3376-
GenF2.programmer.default=stlink
3376+
GenF2.programmer.default=stlink_swd
33773377
GenF2.debug.server.openocd.scripts.2=target/stm32f2x.cfg
33783378
GenF2.vid.0=0x0483
33793379
GenF2.pid.0=0x5740
@@ -3832,7 +3832,7 @@ GenF3.build.series=STM32F3xx
38323832
GenF3.build.flash_offset=0x0
38333833
GenF3.upload.maximum_size=0
38343834
GenF3.upload.maximum_data_size=0
3835-
GenF3.programmer.default=stlink
3835+
GenF3.programmer.default=stlink_swd
38363836
GenF3.debug.server.openocd.scripts.2=target/stm32f3x.cfg
38373837
GenF3.vid.0=0x0483
38383838
GenF3.pid.0=0x5740
@@ -4288,7 +4288,7 @@ GenF4.build.series=STM32F4xx
42884288
GenF4.build.flash_offset=0x0
42894289
GenF4.upload.maximum_size=0
42904290
GenF4.upload.maximum_data_size=0
4291-
GenF4.programmer.default=stlink
4291+
GenF4.programmer.default=stlink_swd
42924292
GenF4.debug.server.openocd.scripts.2=target/stm32f4x.cfg
42934293
GenF4.vid.0=0x0483
42944294
GenF4.pid.0=0x5740
@@ -5304,7 +5304,7 @@ GenF7.build.series=STM32F7xx
53045304
GenF7.build.flash_offset=0x0
53055305
GenF7.upload.maximum_size=0
53065306
GenF7.upload.maximum_data_size=0
5307-
GenF7.programmer.default=stlink
5307+
GenF7.programmer.default=stlink_swd
53085308
GenF7.debug.server.openocd.scripts.2=target/stm32f7x.cfg
53095309
GenF7.vid.0=0x0483
53105310
GenF7.pid.0=0x5740
@@ -5832,7 +5832,7 @@ GenG0.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.xSer
58325832
GenG0.build.flash_offset=0x0
58335833
GenG0.upload.maximum_size=0
58345834
GenG0.upload.maximum_data_size=0
5835-
GenG0.programmer.default=stlink
5835+
GenG0.programmer.default=stlink_swd
58365836
GenG0.debug.server.openocd.scripts.2=target/stm32g0x.cfg
58375837
GenG0.vid.0=0x0483
58385838
GenG0.pid.0=0x5740
@@ -7246,7 +7246,7 @@ GenG4.build.series=STM32G4xx
72467246
GenG4.build.flash_offset=0x0
72477247
GenG4.upload.maximum_size=0
72487248
GenG4.upload.maximum_data_size=0
7249-
GenG4.programmer.default=stlink
7249+
GenG4.programmer.default=stlink_swd
72507250
GenG4.debug.server.openocd.scripts.2=target/stm32g4x.cfg
72517251
GenG4.vid.0=0x0483
72527252
GenG4.pid.0=0x5740
@@ -8415,7 +8415,7 @@ GenH5.build.series=STM32H5xx
84158415
GenH5.build.flash_offset=0x0
84168416
GenH5.upload.maximum_size=0
84178417
GenH5.upload.maximum_data_size=0
8418-
GenH5.programmer.default=stlink
8418+
GenH5.programmer.default=stlink_swd
84198419
# Current openocd version does not support H5
84208420
# GenH5.debug.server.openocd.scripts.2=target/stm32h5x.cfg
84218421
GenH5.vid.0=0x0483
@@ -8505,7 +8505,7 @@ GenH7.build.mcu=cortex-m7
85058505
GenH7.build.flash_offset=0x0
85068506
GenH7.upload.maximum_size=0
85078507
GenH7.upload.maximum_data_size=0
8508-
GenH7.programmer.default=stlink
8508+
GenH7.programmer.default=stlink_swd
85098509
GenH7.debug.server.openocd.scripts.2=target/stm32h7x.cfg
85108510
GenH7.vid.0=0x0483
85118511
GenH7.pid.0=0x5740
@@ -9140,7 +9140,7 @@ GenL0.build.series=STM32L0xx
91409140
GenL0.build.flash_offset=0x0
91419141
GenL0.upload.maximum_size=0
91429142
GenL0.upload.maximum_data_size=0
9143-
GenL0.programmer.default=stlink
9143+
GenL0.programmer.default=stlink_swd
91449144
GenL0.debug.server.openocd.scripts.2=target/stm32l0x.cfg
91459145
GenL0.vid.0=0x0483
91469146
GenL0.pid.0=0x5740
@@ -10423,7 +10423,7 @@ GenL1.build.series=STM32L1xx
1042310423
GenL1.build.flash_offset=0x0
1042410424
GenL1.upload.maximum_size=0
1042510425
GenL1.upload.maximum_data_size=0
10426-
GenL1.programmer.default=stlink
10426+
GenL1.programmer.default=stlink_swd
1042710427
GenL1.debug.server.openocd.scripts.2=target/stm32l1x.cfg
1042810428
GenL1.vid.0=0x0483
1042910429
GenL1.pid.0=0x5740
@@ -10746,7 +10746,7 @@ GenL4.build.series=STM32L4xx
1074610746
GenL4.build.flash_offset=0x0
1074710747
GenL4.upload.maximum_size=0
1074810748
GenL4.upload.maximum_data_size=0
10749-
GenL4.programmer.default=stlink
10749+
GenL4.programmer.default=stlink_swd
1075010750
GenL4.debug.server.openocd.scripts.2=target/stm32l4x.cfg
1075110751
GenL4.vid.0=0x0483
1075210752
GenL4.pid.0=0x5740
@@ -11511,7 +11511,7 @@ GenL5.build.series=STM32L5xx
1151111511
GenL5.build.flash_offset=0x0
1151211512
GenL5.upload.maximum_size=0
1151311513
GenL5.upload.maximum_data_size=0
11514-
GenL5.programmer.default=stlink
11514+
GenL5.programmer.default=stlink_swd
1151511515
GenL5.debug.server.openocd.scripts.2=target/stm32l5x.cfg
1151611516
GenL5.vid.0=0x0483
1151711517
GenL5.pid.0=0x5740
@@ -11573,7 +11573,7 @@ GenU5.build.series=STM32U5xx
1157311573
GenU5.build.flash_offset=0x0
1157411574
GenU5.upload.maximum_size=0
1157511575
GenU5.upload.maximum_data_size=0
11576-
GenU5.programmer.default=stlink
11576+
GenU5.programmer.default=stlink_swd
1157711577
GenU5.debug.server.openocd.scripts.2=target/stm32u5x.cfg
1157811578
GenU5.vid.0=0x0483
1157911579
GenU5.pid.0=0x5740
@@ -11698,7 +11698,7 @@ GenWB.build.series=STM32WBxx
1169811698
GenWB.build.flash_offset=0x0
1169911699
GenWB.upload.maximum_size=0
1170011700
GenWB.upload.maximum_data_size=0
11701-
GenWB.programmer.default=stlink
11701+
GenWB.programmer.default=stlink_swd
1170211702
GenWB.debug.server.openocd.scripts.2=target/stm32wbx.cfg
1170311703
GenWB.vid.0=0x0483
1170411704
GenWB.pid.0=0x5740
@@ -11805,7 +11805,7 @@ GenWBA.build.series=STM32WBAxx
1180511805
GenWBA.build.flash_offset=0x0
1180611806
GenWBA.upload.maximum_size=0
1180711807
GenWBA.upload.maximum_data_size=0
11808-
GenWBA.programmer.default=stlink
11808+
GenWBA.programmer.default=stlink_swd
1180911809
GenWBA.debug.server.openocd.scripts.2=target/stm32wbax.cfg
1181011810
GenWBA.vid.0=0x0483
1181111811
GenWBA.pid.0=0x5740
@@ -11853,7 +11853,7 @@ GenWL.build.series=STM32WLxx
1185311853
GenWL.build.flash_offset=0x0
1185411854
GenWL.upload.maximum_size=0
1185511855
GenWL.upload.maximum_data_size=0
11856-
GenWL.programmer.default=stlink
11856+
GenWL.programmer.default=stlink_swd
1185711857
GenWL.debug.server.openocd.scripts.2=target/stm32wlx.cfg
1185811858
GenWL.vid.0=0x0483
1185911859
GenWL.pid.0=0x5740
@@ -12030,7 +12030,7 @@ GenWL.menu.upload_method.dfuMethod.upload.tool=stm32CubeProg
1203012030
3dprinter.build.flash_offset=0x0
1203112031
3dprinter.upload.maximum_size=0
1203212032
3dprinter.upload.maximum_data_size=0
12033-
3dprinter.programmer.default=stlink
12033+
3dprinter.programmer.default=stlink_swd
1203412034
3dprinter.vid.0=0x0483
1203512035
3dprinter.pid.0=0x5740
1203612036

@@ -12262,7 +12262,7 @@ Blues.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.xSer
1226212262
Blues.build.flash_offset=0x0
1226312263
Blues.upload.maximum_size=0
1226412264
Blues.upload.maximum_data_size=0
12265-
Blues.programmer.default=stlink
12265+
Blues.programmer.default=stlink_swd
1226612266
Blues.vid.0=0x30A4
1226712267

1226812268
# Swan R5 board
@@ -12325,7 +12325,7 @@ Elecgator.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.
1232512325
Elecgator.build.flash_offset=0x0
1232612326
Elecgator.upload.maximum_size=0
1232712327
Elecgator.upload.maximum_data_size=0
12328-
Elecgator.programmer.default=stlink
12328+
Elecgator.programmer.default=stlink_swd
1232912329
Elecgator.vid.0=0x0483
1233012330
Elecgator.pid.0=0x5740
1233112331

@@ -12367,7 +12367,7 @@ ESC_board.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.
1236712367
ESC_board.build.flash_offset=0x0
1236812368
ESC_board.upload.maximum_size=0
1236912369
ESC_board.upload.maximum_data_size=0
12370-
ESC_board.programmer.default=stlink
12370+
ESC_board.programmer.default=stlink_swd
1237112371
ESC_board.vid.0=0x0483
1237212372
ESC_board.pid.0=0x5740
1237312373

@@ -12425,7 +12425,7 @@ Garatronic.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build
1242512425
Garatronic.build.flash_offset=0x0
1242612426
Garatronic.upload.maximum_size=0
1242712427
Garatronic.upload.maximum_data_size=0
12428-
Garatronic.programmer.default=stlink
12428+
Garatronic.programmer.default=stlink_swd
1242912429
Garatronic.vid.0=0x0483
1243012430
Garatronic.pid.0=0x5740
1243112431

@@ -12505,7 +12505,7 @@ GenFlight.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.
1250512505
GenFlight.build.flash_offset=0x0
1250612506
GenFlight.upload.maximum_size=0
1250712507
GenFlight.upload.maximum_data_size=0
12508-
GenFlight.programmer.default=stlink
12508+
GenFlight.programmer.default=stlink_swd
1250912509
GenFlight.vid.0=0x0483
1251012510
GenFlight.pid.0=0x5740
1251112511

@@ -12605,7 +12605,7 @@ IotContinuum.build.st_extra_flags=-D{build.product_line} {build.xSerial}
1260512605
IotContinuum.build.flash_offset=0x0
1260612606
IotContinuum.upload.maximum_size=0
1260712607
IotContinuum.upload.maximum_data_size=0
12608-
IotContinuum.programmer.default=stlink
12608+
IotContinuum.programmer.default=stlink_swd
1260912609
IotContinuum.vid.0=0x0483
1261012610
IotContinuum.pid.0=0x5740
1261112611

@@ -12651,7 +12651,7 @@ LoRa.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.xSeri
1265112651
LoRa.build.flash_offset=0x0
1265212652
LoRa.upload.maximum_size=0
1265312653
LoRa.upload.maximum_data_size=0
12654-
LoRa.programmer.default=stlink
12654+
LoRa.programmer.default=stlink_swd
1265512655
LoRa.vid.0=0x0483
1265612656
LoRa.pid.0=0x5740
1265712657

@@ -12807,7 +12807,7 @@ Midatronics.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {buil
1280712807
Midatronics.build.flash_offset=0x0
1280812808
Midatronics.upload.maximum_size=0
1280912809
Midatronics.upload.maximum_data_size=0
12810-
Midatronics.programmer.default=stlink
12810+
Midatronics.programmer.default=stlink_swd
1281112811
Midatronics.vid.0=0x0483
1281212812
Midatronics.pid.0=0x5740
1281312813

@@ -12858,7 +12858,7 @@ SparkFun.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.x
1285812858
SparkFun.build.flash_offset=0x0
1285912859
SparkFun.upload.maximum_size=0
1286012860
SparkFun.upload.maximum_data_size=0
12861-
SparkFun.programmer.default=stlink
12861+
SparkFun.programmer.default=stlink_swd
1286212862
SparkFun.vid.0=0x0483
1286312863
SparkFun.pid.0=0x5740
1286412864

@@ -12922,7 +12922,7 @@ ELV_Modular_System.build.board=ELV_Modular_System
1292212922
ELV_Modular_System.build.variant_h=variant_{build.board}.h
1292312923
ELV_Modular_System.upload.maximum_size=0
1292412924
ELV_Modular_System.upload.maximum_data_size=0
12925-
ELV_Modular_System.programmer.default=stlink
12925+
ELV_Modular_System.programmer.default=stlink_swd
1292612926
ELV_Modular_System.vid.0=0x0483
1292712927
ELV_Modular_System.pid.0=0x5740
1292812928

platform.txt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,9 @@ tools.stm32CubeProg.cmd=stm32CubeProg.sh
203203
tools.stm32CubeProg.upload.params.verbose=
204204
tools.stm32CubeProg.upload.params.quiet=
205205
tools.stm32CubeProg.upload.pattern="{busybox}" sh "{path}/{cmd}" -i {upload.protocol} -f "{build.path}/{build.project_name}.bin" -o {build.flash_offset} {upload.options}
206+
tools.stm32CubeProg.program.params.verbose=
207+
tools.stm32CubeProg.program.params.quiet=
208+
tools.stm32CubeProg.program.pattern="{busybox}" sh "{path}/{cmd}" -i {program.protocol} -f "{build.path}/{build.project_name}.bin" -o {build.flash_offset} {program.extra_params}
206209

207210
# blackmagic upload for generic STM32
208211
tools.bmp_upload.cmd=arm-none-eabi-gdb
@@ -245,5 +248,5 @@ debug.server=openocd
245248
debug.server.openocd.path={openocd_dir}/bin/openocd
246249
debug.server.openocd.scripts_dir={openocd_dir}/openocd/scripts
247250
# Common config
248-
debug.server.openocd.scripts.0=interface/{programmer.protocol}.cfg
249-
debug.server.openocd.scripts.1={programmer.transport_script}
251+
debug.server.openocd.scripts.0=interface/stlink.cfg
252+
debug.server.openocd.scripts.1={runtime.platform.path}/debugger/select_hla.cfg

programmers.txt

Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,23 @@
1-
stlink.name=STMicroelectronics ST-LINK
2-
stlink.communication=USB
3-
stlink.protocol=
4-
stlink.program.protocol=
5-
stlink.program.tool=openocd
6-
stlink.program.tool.default=openocd
7-
stlink.program.extra_params=
8-
stlink.programmer.protocol=stlink
9-
stlink.programmer.transport_script={runtime.platform.path}/debugger/select_hla.cfg
1+
stlink_swd.name=STMicroelectronics ST-LINK (swd)
2+
stlink_swd.communication=USB
3+
stlink_swd.protocol=swd
4+
stlink_swd.program.protocol=swd
5+
stlink_swd.program.tool=stm32CubeProg
6+
stlink_swd.program.tool.default=stm32CubeProg
7+
stlink_swd.program.extra_params=
8+
9+
stlink_serial.name=STMicroelectronics ST-LINK (serial)
10+
stlink_serial.communication=USB
11+
stlink_serial.protocol=serial
12+
stlink_serial.program.protocol=serial
13+
stlink_serial.program.tool=stm32CubeProg
14+
stlink_serial.program.tool.default=stm32CubeProg
15+
stlink_serial.program.extra_params=-c {serial.port.file}
16+
17+
stlink_dfu.name=STMicroelectronics ST-LINK (dfu)
18+
stlink_dfu.communication=USB
19+
stlink_dfu.protocol=dfu
20+
stlink_dfu.program.protocol=dfu
21+
stlink_dfu.program.tool=stm32CubeProg
22+
stlink_dfu.program.tool.default=stm32CubeProg
23+
stlink_dfu.program.extra_params=-v {upload.vid} -p {upload.pid}

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy