Jelajahi Sumber

ARM: i.MX system: Add a reset fallback if base address of watchdog is not set

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>
Alexander Shiyan 11 tahun lalu
induk
melakukan
5a6e1502eb
1 mengubah file dengan 4 tambahan dan 0 penghapusan
  1. 4 0
      arch/arm/mach-imx/system.c

+ 4 - 0
arch/arm/mach-imx/system.c

@@ -42,6 +42,9 @@ void mxc_restart(enum reboot_mode mode, const char *cmd)
 {
 {
 	unsigned int wcr_enable;
 	unsigned int wcr_enable;
 
 
+	if (!wdog_base)
+		goto reset_fallback;
+
 	if (!IS_ERR(wdog_clk))
 	if (!IS_ERR(wdog_clk))
 		clk_enable(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 */
 	/* delay to allow the serial port to show the message */
 	mdelay(50);
 	mdelay(50);
 
 
+reset_fallback:
 	/* we'll take a jump through zero as a poor second */
 	/* we'll take a jump through zero as a poor second */
 	soft_restart(0);
 	soft_restart(0);
 }
 }