diff --git a/hw/bsp/rp2040/family.c b/hw/bsp/rp2040/family.c index aa9d00c23..5ac104688 100644 --- a/hw/bsp/rp2040/family.c +++ b/hw/bsp/rp2040/family.c @@ -30,6 +30,7 @@ #include "pico/unique_id.h" #include "hardware/gpio.h" #include "hardware/sync.h" +#include "hardware/resets.h" #include "hardware/structs/ioqspi.h" #include "hardware/structs/sio.h" @@ -166,6 +167,12 @@ void board_init(void) #if CFG_TUH_ENABLED // set portfunc to host !!! #endif + +#if !CFG_TUD_ENABLED && !CFG_TUH_ENABLED + // board test exxample, reset usb controller + reset_block(RESETS_RESET_USBCTRL_BITS); + unreset_block_wait(RESETS_RESET_USBCTRL_BITS); +#endif } //--------------------------------------------------------------------+ diff --git a/test/hil/hil_test.py b/test/hil/hil_test.py index 9cb009264..8f8a3aa65 100644 --- a/test/hil/hil_test.py +++ b/test/hil/hil_test.py @@ -115,7 +115,7 @@ def flash_jlink(board, firmware): def flash_openocd(board, firmware): ret = subprocess.run( - f'openocd -c "adapter serial {board["flasher_sn"]}" {board["flasher_args"]} -c "program {firmware} reset exit"', + f'openocd -c "adapter serial {board["flasher_sn"]}" {board["flasher_args"]} -c "program {firmware}" -c "reset init" -c "resume" -c "exit"', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) return ret