@@ -9,4 +9,7 @@
/dts-v1/;
/ {
+ WDT: watchdog@0 {
+ compatible = "fsl,pq1-wdt";
+ };
};
@@ -13,6 +13,8 @@
#include <mpc8xx.h>
#include <fdt_support.h>
#include <asm/io.h>
+#include <dm/uclass.h>
+#include <wdt.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -144,3 +146,17 @@ int board_early_init_f(void)
return 0;
}
+
+int board_early_init_r(void)
+{
+ struct udevice *watchdog_dev = NULL;
+
+ if (uclass_get_device(UCLASS_WDT, 0, &watchdog_dev)) {
+ puts("Cannot find watchdog!\n");
+ } else {
+ puts("Enabling watchdog.\n");
+ wdt_start(watchdog_dev, 0xffff, 0);
+ }
+
+ return 0;
+}
@@ -74,3 +74,5 @@ CONFIG_BOOTCOMMAND="run flashboot"
CONFIG_DM=y
CONFIG_OF_CONTROL=y
CONFIG_DEFAULT_DEVICE_TREE="mcr3000"
+CONFIG_WDT=y
+CONFIG_WDT_MPC8xx=y
@@ -10,6 +10,7 @@
/* High Level Configuration Options */
#define CONFIG_MISC_INIT_R 1 /* Call misc_init_r */
+#define CONFIG_BOARD_EARLY_INIT_R 1
#define CONFIG_EXTRA_ENV_SETTINGS \
"sdram_type=SDRAM\0" \
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr> --- arch/powerpc/dts/mcr3000.dts | 3 +++ board/cssi/MCR3000/MCR3000.c | 16 ++++++++++++++++ configs/MCR3000_defconfig | 2 ++ include/configs/MCR3000.h | 1 + 4 files changed, 22 insertions(+)