Message ID | 20200521231406.171674-1-marex@denx.de |
---|---|
State | New |
Headers | show |
Series | ARM: imx: soc: Add reset for non-DM case | expand |
diff --git a/arch/arm/mach-imx/mx7/soc.c b/arch/arm/mach-imx/mx7/soc.c index 798fe74a3d..e7c71dfe8e 100644 --- a/arch/arm/mach-imx/mx7/soc.c +++ b/arch/arm/mach-imx/mx7/soc.c @@ -18,6 +18,7 @@ #include <env.h> #include <imx_thermal.h> #include <fsl_sec.h> +#include <fsl_wdog.h> #include <asm/setup.h> #include <linux/delay.h> @@ -419,3 +420,15 @@ void reset_misc(void) #endif } +#if !CONFIG_IS_ENABLED(SYSRESET) +void reset_cpu(ulong addr) +{ + struct watchdog_regs *wdog = (struct watchdog_regs *)WDOG1_BASE_ADDR; + + /* Clear WDA to trigger WDOG_B immediately */ + writew(SET_WCR_WT(1) | WCR_WDT | WCR_WDE | WCR_SRS, &wdog->wcr); + + while (1) + ; +} +#endif
This is another in series of patches which remove ad-hoc reset_cpu() hacks from board files. This one is for iMX7, so implement default reset_cpu() there to prevent it from showing up in board files. Signed-off-by: Marek Vasut <marex at denx.de> Cc: Fabio Estevam <festevam at gmail.com> Cc: NXP i.MX U-Boot Team <uboot-imx at nxp.com> Cc: Peng Fan <peng.fan at nxp.com> Cc: Stefano Babic <sbabic at denx.de> --- arch/arm/mach-imx/mx7/soc.c | 13 +++++++++++++ 1 file changed, 13 insertions(+)