summaryrefslogtreecommitdiffstats
path: root/drivers/clocksource/em_sti.c
diff options
context:
space:
mode:
authorSimon Horman <horms+renesas@verge.net.au>2013-03-05 15:40:42 +0900
committerSimon Horman <horms+renesas@verge.net.au>2013-03-13 02:24:36 +0900
commit09acc3a1e0dee537fcfcd5a6c17a1e9b26586066 (patch)
tree3351752c83059e2b80c1e45a70103e1cff49f1ba /drivers/clocksource/em_sti.c
parentb9773c3f52540ada159dc135c07653be010deee7 (diff)
downloadlinux-stable-09acc3a1e0dee537fcfcd5a6c17a1e9b26586066.tar.gz
linux-stable-09acc3a1e0dee537fcfcd5a6c17a1e9b26586066.tar.bz2
linux-stable-09acc3a1e0dee537fcfcd5a6c17a1e9b26586066.zip
clocksource: em_sti: Set initcall level to subsys
The reason for this is to ensure that STI is probed earlier than with its previous initcall level, module init. This came up as a problem with using CMT as a clock source kzm9g-reference which does not make use of early timers or devices. In that scenario initialisation of SDHI and MMCIF both stall on msleep() calls due to the absence of a initialised clock source. The purpose of this change is to keep the STI code in sync with the CMT code which has been modified in a similar manner.. Boot tested on: kzm9d. Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Diffstat (limited to 'drivers/clocksource/em_sti.c')
-rw-r--r--drivers/clocksource/em_sti.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/clocksource/em_sti.c b/drivers/clocksource/em_sti.c
index e6a553cb73e8..4329a29a5310 100644
--- a/drivers/clocksource/em_sti.c
+++ b/drivers/clocksource/em_sti.c
@@ -399,7 +399,18 @@ static struct platform_driver em_sti_device_driver = {
}
};
-module_platform_driver(em_sti_device_driver);
+static int __init em_sti_init(void)
+{
+ return platform_driver_register(&em_sti_device_driver);
+}
+
+static void __exit em_sti_exit(void)
+{
+ platform_driver_unregister(&em_sti_device_driver);
+}
+
+subsys_initcall(em_sti_init);
+module_exit(em_sti_exit);
MODULE_AUTHOR("Magnus Damm");
MODULE_DESCRIPTION("Renesas Emma Mobile STI Timer Driver");