diff options
author | Sekhar Nori <nsekhar@ti.com> | 2014-02-26 10:29:43 +0530 |
---|---|---|
committer | Sekhar Nori <nsekhar@ti.com> | 2014-03-06 19:08:29 +0530 |
commit | 1233090cf6d8a75c8dca3b37e65a6e12f79502af (patch) | |
tree | bea49d5fd8c84fc8d00f1358a7ef72af46c12e65 /arch/arm/mach-davinci/dm646x.c | |
parent | f26a9968e2eedb3cb7eb46c2d1fbe09f3b8fcf15 (diff) |
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/dm646x.c')
-rw-r--r-- | arch/arm/mach-davinci/dm646x.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/arm/mach-davinci/dm646x.c b/arch/arm/mach-davinci/dm646x.c index 81768dd4709..332d00d24dc 100644 --- a/arch/arm/mach-davinci/dm646x.c +++ b/arch/arm/mach-davinci/dm646x.c @@ -955,12 +955,18 @@ void __init dm646x_init(void) static int __init dm646x_init_devices(void) { + int ret = 0; + if (!cpu_is_davinci_dm646x()) return 0; platform_device_register(&dm646x_mdio_device); platform_device_register(&dm646x_emac_device); - return 0; + ret = davinci_init_wdt(); + if (ret) + pr_warn("%s: watchdog init failed: %d\n", __func__, ret); + + return ret; } postcore_initcall(dm646x_init_devices); |