ARM: i.MX system: Add a reset fallback if base address of watchdog is not set
authorAlexander Shiyan <shc_work@mail.ru>
Fri, 13 Jun 2014 07:26:13 +0000 (11:26 +0400)
committerShawn Guo <shawn.guo@freescale.com>
Fri, 18 Jul 2014 08:10:13 +0000 (16:10 +0800)
This patch adds a reset fallback if base address of watchdog is not set.
This is intended for a targets not compatible with imx-21 watchdog,
i.MX1 for example.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
arch/arm/mach-imx/system.c

index 92d11c271222905c2934755161ab10003d133961..d14c33fd6b037b5627eb700777f770a833acd9ab 100644 (file)
@@ -42,6 +42,9 @@ void mxc_restart(enum reboot_mode mode, const char *cmd)
 {
        unsigned int wcr_enable;
 
+       if (!wdog_base)
+               goto reset_fallback;
+
        if (!IS_ERR(wdog_clk))
                clk_enable(wdog_clk);
 
@@ -70,6 +73,7 @@ void mxc_restart(enum reboot_mode mode, const char *cmd)
        /* delay to allow the serial port to show the message */
        mdelay(50);
 
+reset_fallback:
        /* we'll take a jump through zero as a poor second */
        soft_restart(0);
 }