We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I Am trying to get the Watchdog to generate a warm reset on my HPS Baremetal Application.
My Setup:
Cyclone V custom board
Boot setup; BootRom -> Preloader -> HPS baremetal
Preloader and HPS loaded from QSPI Flash
Preloader in On Chip RAM and HPS in SDRAM
I use the following code to trigger the warm reset from the watchdog:
ALT_STATUS_CODE status = ALT_E_SUCCESS; //status |= alt_wdog_int_clear(ALT_WDOG0); //set to 90 second watchdog timer if (status == ALT_E_SUCCESS) {status = alt_wdog_counter_set(ALT_WDOG1, 0); if (status == ALT_E_SUCCESS) {status = alt_wdog_response_mode_set(ALT_WDOG1, ALT_WDOG_WARM_RESET ); } if (status == ALT_E_SUCCESS) {status = alt_wdog_start(ALT_WDOG1); }
I can see the watchdog count down, then the HPS goes into Hung/Reset state, but does not recover or boot again.
Does anyone know what I am doing wrong. Should the warm reset not trigger the HPS to reload from the application Entry point?