diff options
Diffstat (limited to 'plat/st/stm32mp1/bl2_plat_setup.c')
-rw-r--r-- | plat/st/stm32mp1/bl2_plat_setup.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/plat/st/stm32mp1/bl2_plat_setup.c b/plat/st/stm32mp1/bl2_plat_setup.c index 27d298e8d5..75ae372aee 100644 --- a/plat/st/stm32mp1/bl2_plat_setup.c +++ b/plat/st/stm32mp1/bl2_plat_setup.c @@ -17,6 +17,7 @@ #include <drivers/generic_delay_timer.h> #include <drivers/st/bsec.h> #include <drivers/st/stm32_console.h> +#include <drivers/st/stm32_iwdg.h> #include <drivers/st/stm32mp_pmic.h> #include <drivers/st/stm32mp_reset.h> #include <drivers/st/stm32mp1_clk.h> @@ -28,6 +29,7 @@ #include <plat/common/platform.h> #include <stm32mp1_context.h> +#include <stm32mp1_dbgmcu.h> static struct console_stm32 console; @@ -270,12 +272,26 @@ void bl2_el3_plat_arch_setup(void) panic(); } + stm32mp_print_cpuinfo(); + board_model = dt_get_board_model(); if (board_model != NULL) { NOTICE("Model: %s\n", board_model); } + stm32mp_print_boardinfo(); + skip_console_init: + if (stm32_iwdg_init() < 0) { + panic(); + } + + stm32_iwdg_refresh(); + + result = stm32mp1_dbgmcu_freeze_iwdg2(); + if (result != 0) { + INFO("IWDG2 freeze error : %i\n", result); + } if (stm32_save_boot_interface(boot_context->boot_interface_selected, boot_context->boot_interface_instance) != |