summaryrefslogtreecommitdiff
path: root/arch/arm/mach-davinci/devices.c
diff options
context:
space:
mode:
authorSekhar Nori <nsekhar@ti.com>2014-02-26 08:59:43 +0400
committerSekhar Nori <nsekhar@ti.com>2014-03-06 17:38:29 +0400
commit1233090cf6d8a75c8dca3b37e65a6e12f79502af (patch)
treebea49d5fd8c84fc8d00f1358a7ef72af46c12e65 /arch/arm/mach-davinci/devices.c
parentf26a9968e2eedb3cb7eb46c2d1fbe09f3b8fcf15 (diff)
downloadlinux-1233090cf6d8a75c8dca3b37e65a6e12f79502af.tar.xz
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/devices.c')
-rw-r--r--arch/arm/mach-davinci/devices.c17
1 files changed, 2 insertions, 15 deletions
diff --git a/arch/arm/mach-davinci/devices.c b/arch/arm/mach-davinci/devices.c
index 5cf9a027dcc6..6257aa452568 100644
--- a/arch/arm/mach-davinci/devices.c
+++ b/arch/arm/mach-davinci/devices.c
@@ -313,9 +313,9 @@ void davinci_restart(enum reboot_mode mode, const char *cmd)
davinci_watchdog_reset(&davinci_wdt_device);
}
-static void davinci_init_wdt(void)
+int davinci_init_wdt(void)
{
- platform_device_register(&davinci_wdt_device);
+ return platform_device_register(&davinci_wdt_device);
}
static struct platform_device davinci_gpio_device = {
@@ -348,16 +348,3 @@ struct davinci_timer_instance davinci_timer_instance[2] = {
},
};
-/*-------------------------------------------------------------------------*/
-
-static int __init davinci_init_devices(void)
-{
- /* please keep these calls, and their implementations above,
- * in alphabetical order so they're easier to sort through.
- */
- davinci_init_wdt();
-
- return 0;
-}
-arch_initcall(davinci_init_devices);
-