Hi,
I have purchased an ST Nucleo H563ZI board with an STM32H563ZIT6 (Silicon Rev Z) CPU, I would like to use this with OpenOCD. I poked the board scripts and target scripts around a little but I'm having issues, as per the following debug log below. The main error is: ``` Debug: 182 3351 target.c:2634 target_read_u32(): address: 0xe000ed00 failed ``` That is the address of the CPUID, I can read the CPUID from that address using the STCubeProgrammer just fine, it is as follows: ``` 0xE000ED00 0x14, 0xD2, 0x0F, 0x41. ``` I created and amended a few files to do this, they are in my repo here, see this commit. https://sourceforge.net/u/dominicc/openocd/ci/2ace05f8374aa4066b71ba3cf723db d476767816/ Note that the H5 has an M33 core and appears to use a similar flash peripheral found in the l5 which may also need updating, note that at this point I am just trying to get debugging working, not flashing. I'm no expert on the OpenCD internals, though I did walk the code to see if I can find the issue but am unable to see the 'retval' of the following methods: cortex_m_examine target_read_u32 target_read_memory cortex_m_read_memory (via target->type->read_memory) mem_ap_read_buf mem_ap_read cortex_m_examine is reading the CPU here: ``` /* Read from Device Identification Registers */ retval = target_read_u32(target, CPUID, &cpuid); if (retval != ERROR_OK) return retval; ``` Any assistance on fixing this, most welcomed. Also, is anyone else working on this? I have hardware here and can test code, however I'm unable to compile OpenCD - I use Cygwin on Windows - I spend about an hour trying to get it to compile but gave up due to all the script files having the wrong line endings and playing whack-a-mole with script errors wasn't fun. Using WSL or a Linux machine is not a long-term option as I need to run Windows binaries from my Windows IDEs. Windows IDEs cannot run ELF files, only PE files (as far as I'm aware). Note, I recommend that all repos that openocd uses as git submodules and openocd itself uses .gitattributes that correctly specify the line endings for script files. E.g. ``` $ cat .gitattributes # linux script files *.sh text eol=lf ``` Log below: ``` D:/Programs/OpenOCD/active\bin\openocd.exe -d4 -s D:\Users\Hydra\Documents\dev\projects\rustcontrol\rustcontrol\crates\boards\ support\openocd -f board/st_nucleo_h563zi.cfg -f rtt-stm32h5.cfg Open On-Chip Debugger 0.12.0 (2023-01-14-23:37) Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html User : 3 3 options.c:52 configuration_output_handler(): debug_level: 4 User : 4 5 options.c:52 configuration_output_handler(): Debug: 5 7 configuration.c:33 add_script_search_dir(): adding D:\Users\Hydra\Doc uments\dev\projects\rustcontrol\rustcontrol\crates\boards\support\openocd Debug: 6 12 options.c:233 add_default_dirs(): bindir=/usr/bin Debug: 7 14 options.c:234 add_default_dirs(): pkgdatadir=/usr/share/openocd Debug: 8 16 options.c:235 add_default_dirs(): exepath=D:/Programs/OpenOCD/active /bin Debug: 9 19 options.c:236 add_default_dirs(): bin2data=../share/openocd Debug: 10 22 configuration.c:33 add_script_search_dir(): adding D:/Users/Hydra/A ppData/Roaming/OpenOCD Debug: 11 26 configuration.c:33 add_script_search_dir(): adding D:/Programs/Open OCD/active/bin/../share/openocd/site Debug: 12 29 configuration.c:33 add_script_search_dir(): adding D:/Programs/Open OCD/active/bin/../share/openocd/scripts Debug: 13 33 command.c:155 script_debug(): command - ocd_find board/st_nucleo_h5 63zi.cfg Debug: 14 36 configuration.c:88 find_file(): found D:/Programs/OpenOCD/active/bi n/../share/openocd/scripts/board/st_nucleo_h563zi.cfg Debug: 15 41 command.c:155 script_debug(): command - ocd_find interface/stlink.c fg Debug: 16 44 configuration.c:88 find_file(): found D:/Programs/OpenOCD/active/bi n/../share/openocd/scripts/interface/stlink.cfg Debug: 17 49 command.c:155 script_debug(): command - adapter driver hla Debug: 18 51 command.c:155 script_debug(): command - hla_layout stlink Debug: 19 54 hla_interface.c:230 hl_interface_handle_layout_command(): hl_interf ace_handle_layout_command Debug: 20 57 command.c:155 script_debug(): command - hla_device_desc ST-LINK Debug: 21 59 hla_interface.c:217 hl_interface_handle_device_desc_command(): hl_i nterface_handle_device_desc_command Debug: 22 63 command.c:155 script_debug(): command - hla_vid_pid 0x0483 0x3744 0 x0483 0x3748 0x0483 0x374b 0x0483 0x374d 0x0483 0x374e 0x0483 0x374f 0x0483 0x37 52 0x0483 0x3753 0x0483 0x3754 Debug: 23 70 command.c:155 script_debug(): command - transport select hla_swd Debug: 24 72 hla_transport.c:191 hl_swd_transport_select(): hl_swd_transport_sel ect Debug: 25 75 command.c:155 script_debug(): command - ocd_find target/stm32h5x.cf g Debug: 26 78 configuration.c:88 find_file(): found D:/Programs/OpenOCD/active/bi n/../share/openocd/scripts/target/stm32h5x.cfg Debug: 27 82 command.c:155 script_debug(): command - ocd_find target/swj-dp.tcl Debug: 28 84 configuration.c:88 find_file(): found D:/Programs/OpenOCD/active/bi n/../share/openocd/scripts/target/swj-dp.tcl Debug: 29 88 command.c:155 script_debug(): command - transport select Debug: 30 90 command.c:155 script_debug(): command - ocd_find mem_helper.tcl Debug: 31 93 configuration.c:88 find_file(): found D:/Programs/OpenOCD/active/bi n/../share/openocd/scripts/mem_helper.tcl Debug: 32 97 command.c:155 script_debug(): command - add_usage_text mrw address Debug: 33 99 command.c:155 script_debug(): command - add_help_text mrw Returns v alue of word in memory. Debug: 34 103 command.c:155 script_debug(): command - add_usage_text mrh address Debug: 35 105 command.c:155 script_debug(): command - add_help_text mrh Returns value of halfword in memory. Debug: 36 108 command.c:155 script_debug(): command - add_usage_text mrb address Debug: 37 111 command.c:155 script_debug(): command - add_help_text mrb Returns value of byte in memory. Debug: 38 115 command.c:155 script_debug(): command - add_usage_text mmw address setbits clearbits Debug: 39 118 command.c:155 script_debug(): command - add_help_text mmw Modify w ord in memory. new_val = (old_val & ~clearbits) | setbits; Debug: 40 121 command.c:155 script_debug(): command - ocd_find target/stm32x5x_c ommon.cfg Debug: 41 124 configuration.c:88 find_file(): found D:/Programs/OpenOCD/active/b in/../share/openocd/scripts/target/stm32x5x_common.cfg Debug: 42 128 command.c:155 script_debug(): command - transport select Debug: 43 131 command.c:155 script_debug(): command - expr [ string first "jtag " $_TRANSPORT ] != -1 Debug: 44 134 command.c:155 script_debug(): command - transport select Debug: 45 136 command.c:155 script_debug(): command - expr [ string first "jtag " $_TRANSPORT ] != -1 Debug: 46 139 command.c:155 script_debug(): command - transport select Debug: 47 141 command.c:155 script_debug(): command - expr [ string first "swd" $_TRANSPORT ] != -1 Debug: 48 144 command.c:155 script_debug(): command - swd newdap stm32h5x cpu -i rlen 4 -ircapture 0x1 -irmask 0xf -expected-id 0x6BA02477 Debug: 49 148 hla_tcl.c:102 jim_hl_newtap_cmd(): Creating New Tap, Chip: stm32h5 x, Tap: cpu, Dotted: stm32h5x.cpu, 8 params Debug: 50 152 hla_tcl.c:112 jim_hl_newtap_cmd(): Processing option: -irlen Debug: 51 155 hla_tcl.c:112 jim_hl_newtap_cmd(): Processing option: -ircapture Debug: 52 158 hla_tcl.c:112 jim_hl_newtap_cmd(): Processing option: -irmask Debug: 53 160 hla_tcl.c:112 jim_hl_newtap_cmd(): Processing option: -expected-id Debug: 54 162 core.c:1478 jtag_tap_init(): Created Tap: stm32h5x.cpu @ abs posit ion 0, irlen 0, capture: 0x0 mask: 0x0 Debug: 55 166 command.c:155 script_debug(): command - dap create stm32h5x.dap -c hain-position stm32h5x.cpu Debug: 56 169 command.c:155 script_debug(): command - transport select Debug: 57 172 command.c:155 script_debug(): command - expr [ string first "jtag " $_TRANSPORT ] != -1 Debug: 58 175 command.c:155 script_debug(): command - target create stm32h5x.cpu cortex_m -endian little -dap stm32h5x.dap Info : 59 178 target.c:6205 target_create(): The selected transport took over lo w-level target control. The results might differ compared to plain JTAG/SWD Debug: 60 183 hla_target.c:193 adapter_target_create(): adapter_target_create Debug: 61 185 hla_target.c:163 adapter_init_arch_info(): adapter_init_arch_info Debug: 62 187 command.c:289 register_command(): command 'rtt' is already registe red Debug: 63 189 command.c:289 register_command(): command 'tpiu' is already regist ered Debug: 64 192 command.c:155 script_debug(): command - stm32h5x.cpu configure -wo rk-area-phys 0x20000000 -work-area-size 0x10000 -work-area-backup 0 Debug: 65 196 target.c:2199 target_free_all_working_areas_restore(): freeing all working areas Debug: 66 199 target.c:2199 target_free_all_working_areas_restore(): freeing all working areas Debug: 67 202 target.c:2199 target_free_all_working_areas_restore(): freeing all working areas Debug: 68 205 command.c:155 script_debug(): command - flash bank stm32h5x.flash_ ns stm32l4x 0x08000000 0 0 0 stm32h5x.cpu Debug: 69 209 tcl.c:1305 handle_flash_bank_command(): 'stm32l4x' driver usage fi eld missing Debug: 70 211 command.c:155 script_debug(): command - flash bank stm32h5x.otp st m32l4x 0x0BFA0000 0 0 0 stm32h5x.cpu Debug: 71 215 command.c:289 register_command(): command 'stm32l4x' is already re gistered Debug: 72 217 command.c:289 register_command(): command 'stm32l4x lock' is alrea dy registered Debug: 73 220 command.c:289 register_command(): command 'stm32l4x unlock' is alr eady registered Debug: 74 224 command.c:289 register_command(): command 'stm32l4x mass_erase' is already registered Debug: 75 226 command.c:289 register_command(): command 'stm32l4x option_read' i s already registered Debug: 76 229 command.c:289 register_command(): command 'stm32l4x option_write' is already registered Debug: 77 232 command.c:289 register_command(): command 'stm32l4x trustzone' is already registered Debug: 78 235 command.c:289 register_command(): command 'stm32l4x wrp_info' is a lready registered Debug: 79 237 command.c:289 register_command(): command 'stm32l4x option_load' i s already registered Debug: 80 241 command.c:289 register_command(): command 'stm32l4x otp' is alread y registered Debug: 81 243 tcl.c:1305 handle_flash_bank_command(): 'stm32l4x' driver usage fi eld missing Debug: 82 246 command.c:155 script_debug(): command - adapter speed 500 Debug: 83 248 adapter.c:251 adapter_config_khz(): handle adapter khz Debug: 84 250 adapter.c:215 adapter_khz_to_speed(): convert khz to adapter speci fic speed value Debug: 85 253 adapter.c:215 adapter_khz_to_speed(): convert khz to adapter speci fic speed value Debug: 86 256 command.c:155 script_debug(): command - adapter srst delay 100 Debug: 87 258 command.c:155 script_debug(): command - transport select Debug: 88 260 command.c:155 script_debug(): command - expr [ string first "jtag " $_TRANSPORT ] != -1 Debug: 89 263 command.c:155 script_debug(): command - reset_config srst_nogate Debug: 90 265 command.c:155 script_debug(): command - transport select Debug: 91 267 command.c:155 script_debug(): command - expr [ string first "hla" $_TRANSPORT ] != -1 Debug: 92 270 command.c:155 script_debug(): command - echo Warn : The selected a dapter does not support debugging this device in secure mode User : 93 274 command.c:685 handle_echo(): Warn : The selected adapter does not support debugging this device in secure mode Debug: 94 278 command.c:155 script_debug(): command - stm32h5x.cpu configure -ev ent reset-start # Reset clock is MSI (4 MHz) adapter speed 480 Debug: 95 282 command.c:155 script_debug(): command - stm32h5x.cpu configure -ev ent examine-end # DBGMCU_CR |= DBG_STANDBY | DBG_STOP mmw 0xE0044004 0x00000006 0 # Stop watchdog counters during halt # DBGMCU_APB1_FZ |= DBG_IWDG_STOP | DBG_WWDG_STOP mmw 0xE0044008 0x00001800 0 Debug: 96 290 command.c:155 script_debug(): command - stm32h5x.cpu configure -ev ent halted set secure [stm32x5x_is_secure] if {$secure} { set secure_str "Secure" stm32x5x_ahb_ap_secure_access } else { set secure_str "Non-Secure" stm32x5x_ahb_ap_non_secure_access } # print the secure state only when it changes set _TARGETNAME [target current] global $_TARGETNAME.secure if {![info exists $_TARGETNAME.secure] || $secure != [set $_TARGETNAME.s ecure]} { echo "CPU in $secure_str state" # update saved security state set $_TARGETNAME.secure $secure } Debug: 97 307 command.c:155 script_debug(): command - stm32h5x.cpu configure -ev ent gdb-flash-erase-start set use_secure_workarea 0 # check if FLASH_OPTR.TZEN is enabled set FLASH_OPTR [mrw 0x40022040] if {[expr {$FLASH_OPTR & 0x80000000}] == 0} { echo "TZEN option bit disabled" stm32x5x_ahb_ap_non_secure_access } else { stm32x5x_ahb_ap_secure_access echo "TZEN option bit enabled" # check if FLASH_OPTR.RDP is not Level 0.5 if {[expr {$FLASH_OPTR & 0xFF}] != 0x55} { set use_secure_workarea 1 } } set _TARGETNAME [target current] set workarea_addr [$_TARGETNAME cget -work-area-phys] echo "workarea_addr $workarea_addr" if {$use_secure_workarea} { set workarea_addr [expr {$workarea_addr | 0x10000000}] } else { set workarea_addr [expr {$workarea_addr & ~0x10000000}] } $_TARGETNAME configure -work-area-phys $workarea_addr Debug: 98 328 command.c:155 script_debug(): command - tpiu create stm32h5x.tpiuError during pretty printers setup: Undefined info command: "pretty-printer". Try "help info". Some features and performance optimizations will not be available. -dap stm32h5x.dap -ap-num 0 -baseaddr 0xE0040000 Debug: 99 333 command.c:155 script_debug(): command - stm32h5x.tpiu configure -e vent pre-enable _proc_pre_enable_stm32h5x.tpiu stm32h5x.cpu Debug: 100 335 command.c:155 script_debug(): command - stm32h5x.cpu configure -e vent reset-init stm32h5x_clock_config # Boost JTAG frequency adapter speed 4000 Debug: 101 339 command.c:155 script_debug(): command - reset_config srst_only User : 102 341 options.c:52 configuration_output_handler(): srst_only separate s rst_nogate srst_open_drain connect_deassert_srst User : 103 345 options.c:52 configuration_output_handler(): Debug: 104 347 command.c:155 script_debug(): command - ocd_find rtt-stm32h5.cfg Debug: 105 350 configuration.c:88 find_file(): found D:\Users\Hydra\Documents\de v\projects\rustcontrol\rustcontrol\crates\boards\support\openocd/rtt-stm32h5 .cfg Info : 106 355 server.c:298 add_service(): Listening on port 6666 for tcl connec tions Info : 107 357 server.c:298 add_service(): Listening on port 4444 for telnet con nections Debug: 108 359 command.c:155 script_debug(): command - init Debug: 109 361 command.c:155 script_debug(): command - target init Debug: 110 363 command.c:155 script_debug(): command - target names Debug: 111 365 command.c:155 script_debug(): command - stm32h5x.cpu cget -event gdb-flash-erase-start Debug: 112 368 command.c:155 script_debug(): command - stm32h5x.cpu cget -event gdb-flash-write-end Debug: 113 370 command.c:155 script_debug(): command - stm32h5x.cpu configure -e vent gdb-flash-write-end reset halt Debug: 114 373 command.c:155 script_debug(): command - stm32h5x.cpu cget -event gdb-attach Debug: 115 376 command.c:155 script_debug(): command - stm32h5x.cpu configure -e vent gdb-attach halt 1000 Debug: 116 378 target.c:1657 handle_target_init_command(): Initializing targets. .. Debug: 117 380 hla_target.c:183 adapter_init_target(): adapter_init_target Debug: 118 382 semihosting_common.c:109 semihosting_common_init(): Debug: 119 384 hla_interface.c:111 hl_interface_init(): hl_interface_init Debug: 120 386 hla_layout.c:84 hl_layout_init(): hl_layout_init Debug: 121 388 adapter.c:215 adapter_khz_to_speed(): convert khz to adapter spec ific speed value Debug: 122 392 adapter.c:219 adapter_khz_to_speed(): have adapter set up Debug: 123 395 adapter.c:215 adapter_khz_to_speed(): convert khz to adapter spec ific speed value Debug: 124 398 adapter.c:219 adapter_khz_to_speed(): have adapter set up Info : 125 400 adapter.c:179 adapter_init(): clock speed 500 kHz Debug: 126 401 openocd.c:134 handle_init_command(): Debug Adapter init complete Debug: 127 404 command.c:155 script_debug(): command - transport init Debug: 128 406 transport.c:219 handle_transport_init(): handle_transport_init Debug: 129 408 hla_transport.c:143 hl_transport_init(): hl_transport_init Debug: 130 410 hla_transport.c:160 hl_transport_init(): current transport hla_sw d Debug: 131 413 hla_interface.c:44 hl_interface_open(): hl_interface_open Debug: 132 415 hla_layout.c:29 hl_layout_open(): hl_layout_open Debug: 133 417 stlink_usb.c:3693 stlink_open(): stlink_open Debug: 134 419 stlink_usb.c:3707 stlink_open(): transport: 4 vid: 0x0483 pid: 0x 3744 serial: Debug: 135 421 stlink_usb.c:3707 stlink_open(): transport: 4 vid: 0x0483 pid: 0x 3748 serial: Debug: 136 424 stlink_usb.c:3707 stlink_open(): transport: 4 vid: 0x0483 pid: 0x 374b serial: Debug: 137 427 stlink_usb.c:3707 stlink_open(): transport: 4 vid: 0x0483 pid: 0x 374d serial: Debug: 138 429 stlink_usb.c:3707 stlink_open(): transport: 4 vid: 0x0483 pid: 0x 374e serial: Debug: 139 432 stlink_usb.c:3707 stlink_open(): transport: 4 vid: 0x0483 pid: 0x 374f serial: Debug: 140 435 stlink_usb.c:3707 stlink_open(): transport: 4 vid: 0x0483 pid: 0x 3752 serial: Debug: 141 437 stlink_usb.c:3707 stlink_open(): transport: 4 vid: 0x0483 pid: 0x 3753 serial: Debug: 142 440 stlink_usb.c:3707 stlink_open(): transport: 4 vid: 0x0483 pid: 0x 3754 serial: Info : 143 3055 stlink_usb.c:1438 stlink_usb_version(): STLINK V3J10M3 (API v3) VID:PID 0483:374E Debug: 144 3058 stlink_usb.c:1659 stlink_usb_exit_mode(): MODE: 0x01 Info : 145 3061 stlink_usb.c:1470 stlink_usb_check_voltage(): Target voltage: 3. 310456 Debug: 146 3063 stlink_usb.c:1727 stlink_usb_init_mode(): MODE: 0x01 Debug: 147 3065 stlink_usb.c:3093 stlink_dump_speed_map(): Supported clock speed s are: Debug: 148 3067 stlink_usb.c:3096 stlink_dump_speed_map(): 24000 kHz Debug: 149 3070 stlink_usb.c:3096 stlink_dump_speed_map(): 8000 kHz Debug: 150 3071 stlink_usb.c:3096 stlink_dump_speed_map(): 3300 kHz Debug: 151 3073 stlink_usb.c:3096 stlink_dump_speed_map(): 1000 kHz Debug: 152 3074 stlink_usb.c:3096 stlink_dump_speed_map(): 200 kHz Debug: 153 3076 stlink_usb.c:3096 stlink_dump_speed_map(): 50 kHz Debug: 154 3078 stlink_usb.c:3096 stlink_dump_speed_map(): 5 kHz Debug: 155 3083 stlink_usb.c:1787 stlink_usb_init_mode(): MODE: 0x02 Debug: 156 3085 stlink_usb.c:3871 stlink_usb_init_access_port(): init ap_num = 0 Debug: 157 3088 stlink_usb.c:4088 stlink_usb_open_ap(): AP 0 enabled Debug: 158 3091 stlink_usb.c:1118 stlink_usb_error_check(): STLINK_SWD_AP_WDATA_ ERROR Debug: 159 3093 stlink_usb.c:3781 stlink_open(): Using TAR autoincrement: 1024 Debug: 160 3095 core.c:640 adapter_system_reset(): SRST line released Debug: 161 3111 log.c:416 gdb_timeout_warning(): keep_alive() was not invoked in the 1000 ms timelimit (3111 ms). This may cause trouble with GDB connections. Debug: 162 3250 hla_interface.c:69 hl_interface_init_target(): hl_interface_init _target Debug: 163 3253 stlink_usb.c:2020 stlink_usb_idcode(): IDCODE: 0x6BA02477 Debug: 164 3255 command.c:155 script_debug(): command - dap init Debug: 165 3257 arm_dap.c:97 dap_init_all(): Initializing all DAPs ... Debug: 166 3259 openocd.c:151 handle_init_command(): Examining targets... Debug: 167 3261 target.c:1845 target_call_event_callbacks(): target event 19 (ex amine-start) for core stm32h5x.cpu Debug: 168 3264 hla_target.c:602 adapter_read_memory(): adapter_read_memory 0xe0 00ed00 4 1 Debug: 169 3267 stlink_usb.c:1118 stlink_usb_error_check(): STLINK_SWD_AP_WDATA_ ERROR Debug: 170 3269 target.c:2634 target_read_u32(): address: 0xe000ed00 failed Debug: 171 3271 target.c:1845 target_call_event_callbacks(): target event 20 (ex amine-fail) for core stm32h5x.cpu Warn : 172 3273 target.c:802 target_examine(): target stm32h5x.cpu examination f ailed Debug: 173 3276 openocd.c:153 handle_init_command(): target examination failed Debug: 174 3278 command.c:155 script_debug(): command - flash init Debug: 175 3279 tcl.c:1375 handle_flash_init_command(): Initializing flash devic es... Debug: 176 3282 command.c:155 script_debug(): command - nand init Debug: 177 3284 tcl.c:487 handle_nand_init_command(): Initializing NAND devices. .. Debug: 178 3286 command.c:155 script_debug(): command - pld init Debug: 179 3287 pld.c:194 handle_pld_init_command(): Initializing PLDs... Debug: 180 3289 command.c:155 script_debug(): command - tpiu init Info : 181 3291 gdb_server.c:3791 gdb_target_start(): starting gdb server for st m32h5x.cpu on 3333 Info : 182 3294 server.c:298 add_service(): Listening on port 3333 for gdb conne ctions Info : 183 3636 server.c:90 add_connection(): accepting 'gdb' connection on tcp/ 3333 Debug: 184 3639 breakpoints.c:363 breakpoint_clear_target_internal(): Delete all breakpoints for target: stm32h5x.cpu Debug: 185 3642 breakpoints.c:543 watchpoint_clear_target(): Delete all watchpoi nts for target: stm32h5x.cpu Debug: 186 3645 target.c:1845 target_call_event_callbacks(): target event 22 (gd b-attach) for core stm32h5x.cpu Debug: 187 3649 target.c:5105 target_handle_event(): target(0): stm32h5x.cpu (hl a_target) event: 22 (gdb-attach) action: halt 1000 Debug: 188 3653 command.c:155 script_debug(): command - halt 1000 Debug: 189 3655 target.c:3305 handle_halt_command(): - Error: 190 3656 target.c:590 target_halt(): Target not examined yet Debug: 191 3658 command.c:545 run_command(): Command 'halt' failed with error co de -4 User : 192 3660 target.c:5130 target_handle_event(): Error executing event gdb-a ttach on target stm32h5x.cpu: Error: 193 3663 stm32l4x.c:1698 stm32l4_probe(): Target not examined yet Error: 194 3665 core.c:291 get_flash_bank_by_num(): auto_probe failed Error: 195 3com.jetbrains.cidr.execution.debugger.backend.gdb.GDBDriver$GDBCommandExcep tion: Remote connection closed Debugger disconnected 666 gdb_server.c:1062 gdb_new_connection(): Connect failed. Consider setting up a gdb-attach event for the target to prepare target for GDB connect, or use 'gdb_memory_map disable'. Error: 196 3672 server.c:94 add_connection(): attempted 'gdb' connection rejecte d Process finished with exit code 0 GDB Server stopped, exit code 1 ```