diff options
-rw-r--r-- | arch/arm/mach-socfpga/include/mach/system_manager_s10.h | 2 | ||||
-rw-r--r-- | arch/arm/mach-socfpga/spl_s10.c | 3 |
2 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/mach-socfpga/include/mach/system_manager_s10.h b/arch/arm/mach-socfpga/include/mach/system_manager_s10.h index 94ea995308..81b5665fc9 100644 --- a/arch/arm/mach-socfpga/include/mach/system_manager_s10.h +++ b/arch/arm/mach-socfpga/include/mach/system_manager_s10.h @@ -171,4 +171,6 @@ struct socfpga_system_manager { #define SYSMGR_DMAPERIPH_ALL_NS 0xFFFFFFFF +#define SYSMGR_WDDBG_PAUSE_ALL_CPU 0x0F0F0F0F + #endif /* _SYSTEM_MANAGER_S10_ */ diff --git a/arch/arm/mach-socfpga/spl_s10.c b/arch/arm/mach-socfpga/spl_s10.c index db4962e6b0..3346444026 100644 --- a/arch/arm/mach-socfpga/spl_s10.c +++ b/arch/arm/mach-socfpga/spl_s10.c @@ -54,6 +54,9 @@ void board_init_f(ulong dummy) const struct cm_config *cm_default_cfg = cm_get_default_config(); #ifdef CONFIG_HW_WATCHDOG + /* Ensure watchdog is paused when debugging is happening */ + writel(SYSMGR_WDDBG_PAUSE_ALL_CPU, &sysmgr_regs->wddbg); + /* Enable watchdog before initializing the HW */ socfpga_per_reset(SOCFPGA_RESET(L4WD0), 1); socfpga_per_reset(SOCFPGA_RESET(L4WD0), 0); |