summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-davinci/dm644x.c
diff options
context:
space:
mode:
authorSekhar Nori <nsekhar@ti.com>2014-02-26 10:29:43 +0530
committerSekhar Nori <nsekhar@ti.com>2014-03-06 19:08:29 +0530
commit1233090cf6d8a75c8dca3b37e65a6e12f79502af (patch)
treebea49d5fd8c84fc8d00f1358a7ef72af46c12e65 /arch/arm/mach-davinci/dm644x.c
parentf26a9968e2eedb3cb7eb46c2d1fbe09f3b8fcf15 (diff)
downloadlinux-1233090cf6d8a75c8dca3b37e65a6e12f79502af.tar.bz2
ARM: davinci: da8xx: fix multiple watchdog device registration
Fix multiple watchdog device registration on da8xx devices due to davinci_init_devices blindly registering watchdog device. Fix this by getting rid of the initcall and instead registering watchdog for each soc. Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Diffstat (limited to 'arch/arm/mach-davinci/dm644x.c')
-rw-r--r--arch/arm/mach-davinci/dm644x.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/arm/mach-davinci/dm644x.c b/arch/arm/mach-davinci/dm644x.c
index 5c3e0be95ef3..5debffba4b24 100644
--- a/arch/arm/mach-davinci/dm644x.c
+++ b/arch/arm/mach-davinci/dm644x.c
@@ -964,6 +964,8 @@ int __init dm644x_init_video(struct vpfe_config *vpfe_cfg,
static int __init dm644x_init_devices(void)
{
+ int ret = 0;
+
if (!cpu_is_davinci_dm644x())
return 0;
@@ -972,6 +974,10 @@ static int __init dm644x_init_devices(void)
platform_device_register(&dm644x_mdio_device);
platform_device_register(&dm644x_emac_device);
- return 0;
+ ret = davinci_init_wdt();
+ if (ret)
+ pr_warn("%s: watchdog init failed: %d\n", __func__, ret);
+
+ return ret;
}
postcore_initcall(dm644x_init_devices);