diff --git a/boards/0xcb_helios.json b/boards/0xcb_helios.json index 5a5ca17..11d16e3 100644 --- a/boards/0xcb_helios.json +++ b/boards/0xcb_helios.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/adafruit_feather.json b/boards/adafruit_feather.json index 9fa4cce..8837f89 100644 --- a/boards/adafruit_feather.json +++ b/boards/adafruit_feather.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/adafruit_feather_dvi.json b/boards/adafruit_feather_dvi.json index b829f7d..f68c823 100644 --- a/boards/adafruit_feather_dvi.json +++ b/boards/adafruit_feather_dvi.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/adafruit_feather_rfm.json b/boards/adafruit_feather_rfm.json index b46e713..a7e9bbe 100644 --- a/boards/adafruit_feather_rfm.json +++ b/boards/adafruit_feather_rfm.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/adafruit_feather_scorpio.json b/boards/adafruit_feather_scorpio.json index 02973e9..c4ac220 100644 --- a/boards/adafruit_feather_scorpio.json +++ b/boards/adafruit_feather_scorpio.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/adafruit_feather_thinkink.json b/boards/adafruit_feather_thinkink.json index 3c5b979..8947c7d 100644 --- a/boards/adafruit_feather_thinkink.json +++ b/boards/adafruit_feather_thinkink.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/adafruit_feather_usb_host.json b/boards/adafruit_feather_usb_host.json index 0651f47..5778786 100644 --- a/boards/adafruit_feather_usb_host.json +++ b/boards/adafruit_feather_usb_host.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/adafruit_itsybitsy.json b/boards/adafruit_itsybitsy.json index bb3e1c0..b70ad59 100644 --- a/boards/adafruit_itsybitsy.json +++ b/boards/adafruit_itsybitsy.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/adafruit_kb2040.json b/boards/adafruit_kb2040.json index 9b9e27c..9c013ba 100644 --- a/boards/adafruit_kb2040.json +++ b/boards/adafruit_kb2040.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/adafruit_macropad2040.json b/boards/adafruit_macropad2040.json index fd21d5a..dc0ec66 100644 --- a/boards/adafruit_macropad2040.json +++ b/boards/adafruit_macropad2040.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/adafruit_qtpy.json b/boards/adafruit_qtpy.json index 74bf84f..c2de2b2 100644 --- a/boards/adafruit_qtpy.json +++ b/boards/adafruit_qtpy.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/adafruit_stemmafriend.json b/boards/adafruit_stemmafriend.json index 5d3b432..2299a53 100644 --- a/boards/adafruit_stemmafriend.json +++ b/boards/adafruit_stemmafriend.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/adafruit_trinkeyrp2040qt.json b/boards/adafruit_trinkeyrp2040qt.json index 3765368..c4c10b4 100644 --- a/boards/adafruit_trinkeyrp2040qt.json +++ b/boards/adafruit_trinkeyrp2040qt.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/arduino_nano_connect.json b/boards/arduino_nano_connect.json index 68e9abb..f06b433 100644 --- a/boards/arduino_nano_connect.json +++ b/boards/arduino_nano_connect.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/bridgetek_idm2040-7a.json b/boards/bridgetek_idm2040-7a.json index 4c04fc4..42edf3d 100644 --- a/boards/bridgetek_idm2040-7a.json +++ b/boards/bridgetek_idm2040-7a.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/challenger_2040_lora.json b/boards/challenger_2040_lora.json index 4636c1d..5d56ca5 100644 --- a/boards/challenger_2040_lora.json +++ b/boards/challenger_2040_lora.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/challenger_2040_lte.json b/boards/challenger_2040_lte.json index e2ce6a4..dd33426 100644 --- a/boards/challenger_2040_lte.json +++ b/boards/challenger_2040_lte.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/challenger_2040_nfc.json b/boards/challenger_2040_nfc.json index 0b1ea74..1eade3d 100644 --- a/boards/challenger_2040_nfc.json +++ b/boards/challenger_2040_nfc.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/challenger_2040_sdrtc.json b/boards/challenger_2040_sdrtc.json index 0f39dc3..5ba1738 100644 --- a/boards/challenger_2040_sdrtc.json +++ b/boards/challenger_2040_sdrtc.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/challenger_2040_subghz.json b/boards/challenger_2040_subghz.json index 43d8e8b..a946eeb 100644 --- a/boards/challenger_2040_subghz.json +++ b/boards/challenger_2040_subghz.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/challenger_2040_uwb.json b/boards/challenger_2040_uwb.json index fb34b6d..784224a 100644 --- a/boards/challenger_2040_uwb.json +++ b/boards/challenger_2040_uwb.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/challenger_2040_wifi.json b/boards/challenger_2040_wifi.json index 6b2bcff..d76961d 100644 --- a/boards/challenger_2040_wifi.json +++ b/boards/challenger_2040_wifi.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/challenger_2040_wifi_ble.json b/boards/challenger_2040_wifi_ble.json index 5d4b829..687ded6 100644 --- a/boards/challenger_2040_wifi_ble.json +++ b/boards/challenger_2040_wifi_ble.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/challenger_nb_2040_wifi.json b/boards/challenger_nb_2040_wifi.json index 3d34647..11595d4 100644 --- a/boards/challenger_nb_2040_wifi.json +++ b/boards/challenger_nb_2040_wifi.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/cytron_maker_nano_rp2040.json b/boards/cytron_maker_nano_rp2040.json index 2ec7fdf..bce9977 100644 --- a/boards/cytron_maker_nano_rp2040.json +++ b/boards/cytron_maker_nano_rp2040.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/cytron_maker_pi_rp2040.json b/boards/cytron_maker_pi_rp2040.json index ccc793d..db57ee5 100644 --- a/boards/cytron_maker_pi_rp2040.json +++ b/boards/cytron_maker_pi_rp2040.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/datanoisetv_picoadk.json b/boards/datanoisetv_picoadk.json index 503763c..a7d0d8f 100644 --- a/boards/datanoisetv_picoadk.json +++ b/boards/datanoisetv_picoadk.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/dfrobot_beetle_rp2040.json b/boards/dfrobot_beetle_rp2040.json index 44bcd65..a7f879f 100644 --- a/boards/dfrobot_beetle_rp2040.json +++ b/boards/dfrobot_beetle_rp2040.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/electroniccats_huntercat_nfc.json b/boards/electroniccats_huntercat_nfc.json index 35ca902..00b210c 100644 --- a/boards/electroniccats_huntercat_nfc.json +++ b/boards/electroniccats_huntercat_nfc.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/extelec_rc2040.json b/boards/extelec_rc2040.json index ca2f3c8..d6e348c 100644 --- a/boards/extelec_rc2040.json +++ b/boards/extelec_rc2040.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/flyboard2040_core.json b/boards/flyboard2040_core.json index de6b228..6f0301c 100644 --- a/boards/flyboard2040_core.json +++ b/boards/flyboard2040_core.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/generic.json b/boards/generic.json index 3c95641..c22a678 100644 --- a/boards/generic.json +++ b/boards/generic.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/ilabs_rpico32.json b/boards/ilabs_rpico32.json index 97bffc0..82dfe28 100644 --- a/boards/ilabs_rpico32.json +++ b/boards/ilabs_rpico32.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/melopero_cookie_rp2040.json b/boards/melopero_cookie_rp2040.json index 5c8701c..d1980d2 100644 --- a/boards/melopero_cookie_rp2040.json +++ b/boards/melopero_cookie_rp2040.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/melopero_shake_rp2040.json b/boards/melopero_shake_rp2040.json index c36111b..0d4eeda 100644 --- a/boards/melopero_shake_rp2040.json +++ b/boards/melopero_shake_rp2040.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/nekosystems_bl2040_mini.json b/boards/nekosystems_bl2040_mini.json index 3fd2807..0b203fe 100644 --- a/boards/nekosystems_bl2040_mini.json +++ b/boards/nekosystems_bl2040_mini.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/nullbits_bit_c_pro.json b/boards/nullbits_bit_c_pro.json index 9367d14..420fae3 100644 --- a/boards/nullbits_bit_c_pro.json +++ b/boards/nullbits_bit_c_pro.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/pico.json b/boards/pico.json index 55fdfa4..b956978 100644 --- a/boards/pico.json +++ b/boards/pico.json @@ -41,6 +41,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/pimoroni_pga2040.json b/boards/pimoroni_pga2040.json index fadcb61..17fc4ab 100644 --- a/boards/pimoroni_pga2040.json +++ b/boards/pimoroni_pga2040.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/rpipico.json b/boards/rpipico.json index 72d6beb..d5be483 100644 --- a/boards/rpipico.json +++ b/boards/rpipico.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/rpipicow.json b/boards/rpipicow.json index 33b4cc8..717deda 100644 --- a/boards/rpipicow.json +++ b/boards/rpipicow.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/seeed_xiao_rp2040.json b/boards/seeed_xiao_rp2040.json index 24eb648..7fba246 100644 --- a/boards/seeed_xiao_rp2040.json +++ b/boards/seeed_xiao_rp2040.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/solderparty_rp2040_stamp.json b/boards/solderparty_rp2040_stamp.json index a459449..ab9d517 100644 --- a/boards/solderparty_rp2040_stamp.json +++ b/boards/solderparty_rp2040_stamp.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/sparkfun_promicrorp2040.json b/boards/sparkfun_promicrorp2040.json index 2052a8b..ea50345 100644 --- a/boards/sparkfun_promicrorp2040.json +++ b/boards/sparkfun_promicrorp2040.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/sparkfun_thingplusrp2040.json b/boards/sparkfun_thingplusrp2040.json index a14c9d6..2e92ae7 100644 --- a/boards/sparkfun_thingplusrp2040.json +++ b/boards/sparkfun_thingplusrp2040.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/upesy_rp2040_devkit.json b/boards/upesy_rp2040_devkit.json index de0d5ce..8fdfb93 100644 --- a/boards/upesy_rp2040_devkit.json +++ b/boards/upesy_rp2040_devkit.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/vccgnd_yd_rp2040.json b/boards/vccgnd_yd_rp2040.json index 019c2f2..7d05b08 100644 --- a/boards/vccgnd_yd_rp2040.json +++ b/boards/vccgnd_yd_rp2040.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/viyalab_mizu.json b/boards/viyalab_mizu.json index c21774c..98cb7df 100644 --- a/boards/viyalab_mizu.json +++ b/boards/viyalab_mizu.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/waveshare_rp2040_lcd_0_96.json b/boards/waveshare_rp2040_lcd_0_96.json index 543f260..5d38d0c 100644 --- a/boards/waveshare_rp2040_lcd_0_96.json +++ b/boards/waveshare_rp2040_lcd_0_96.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/waveshare_rp2040_lcd_1_28.json b/boards/waveshare_rp2040_lcd_1_28.json index b1a68a5..772eb60 100644 --- a/boards/waveshare_rp2040_lcd_1_28.json +++ b/boards/waveshare_rp2040_lcd_1_28.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/waveshare_rp2040_one.json b/boards/waveshare_rp2040_one.json index 7861407..b287e15 100644 --- a/boards/waveshare_rp2040_one.json +++ b/boards/waveshare_rp2040_one.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/waveshare_rp2040_plus_16mb.json b/boards/waveshare_rp2040_plus_16mb.json index c3d93ad..6663f53 100644 --- a/boards/waveshare_rp2040_plus_16mb.json +++ b/boards/waveshare_rp2040_plus_16mb.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/waveshare_rp2040_plus_4mb.json b/boards/waveshare_rp2040_plus_4mb.json index 8414613..cbdbe1d 100644 --- a/boards/waveshare_rp2040_plus_4mb.json +++ b/boards/waveshare_rp2040_plus_4mb.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/waveshare_rp2040_zero.json b/boards/waveshare_rp2040_zero.json index d04692f..f586915 100644 --- a/boards/waveshare_rp2040_zero.json +++ b/boards/waveshare_rp2040_zero.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/wiznet_5100s_evb_pico.json b/boards/wiznet_5100s_evb_pico.json index f86924a..6ec8008 100644 --- a/boards/wiznet_5100s_evb_pico.json +++ b/boards/wiznet_5100s_evb_pico.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/wiznet_5500_evb_pico.json b/boards/wiznet_5500_evb_pico.json index b633f6d..973f18c 100644 --- a/boards/wiznet_5500_evb_pico.json +++ b/boards/wiznet_5500_evb_pico.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/boards/wiznet_wizfi360_evb_pico.json b/boards/wiznet_wizfi360_evb_pico.json index a911556..1c248d5 100644 --- a/boards/wiznet_wizfi360_evb_pico.json +++ b/boards/wiznet_wizfi360_evb_pico.json @@ -42,6 +42,7 @@ "wait_for_upload_port": false, "protocol": "picotool", "protocols": [ + "blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", diff --git a/builder/main.py b/builder/main.py index cd26eda..4534fd6 100644 --- a/builder/main.py +++ b/builder/main.py @@ -381,6 +381,28 @@ if upload_protocol == "mbed": env.VerboseAction(AutodetectPicoDisk, "Looking for upload disk..."), env.VerboseAction(UploadUF2ToDisk, "Uploading $SOURCE") ] + +elif upload_protocol.startswith("blackmagic"): + env.Replace( + UPLOADER="$GDB", + UPLOADERFLAGS=[ + "-nx", + "--batch", + "-ex", "target extended-remote $UPLOAD_PORT", + "-ex", "monitor %s_scan" % + ("jtag" if upload_protocol == "blackmagic-jtag" else "swdp"), + "-ex", "attach 1", + "-ex", "load", + "-ex", "compare-sections", + "-ex", "kill" + ], + UPLOADCMD="$UPLOADER $UPLOADERFLAGS $SOURCE" + ) + upload_source = target_elf + upload_actions = [ + env.VerboseAction(env.AutodetectUploadPort, "Looking for BlackMagic port..."), + env.VerboseAction("$UPLOADCMD", "Uploading $SOURCE") + ] elif upload_protocol == "espota": if not env.subst("$UPLOAD_PORT"): sys.stderr.write( diff --git a/platform.py b/platform.py index f66db00..642ef77 100644 --- a/platform.py +++ b/platform.py @@ -86,11 +86,15 @@ class RaspberrypiPlatform(PlatformBase): if "tools" not in debug: debug["tools"] = {} - for link in ("cmsis-dap", "jlink", "raspberrypi-swd", "picoprobe"): + for link in ("blackmagic", "cmsis-dap", "jlink", "raspberrypi-swd", "picoprobe"): if link not in upload_protocols or link in debug["tools"]: continue - - if link == "jlink": + if link == "blackmagic": + debug["tools"]["blackmagic"] = { + "hwids": [["0x1d50", "0x6018"]], + "require_debug_port": True + } + elif link == "jlink": assert debug.get("jlink_device"), ( "Missed J-Link Device ID for %s" % board.id) debug["tools"][link] = {