m68k/mvme16x: rtc - Don't use module_init in non-modular code
authorPaul Gortmaker <paul.gortmaker@windriver.com>
Thu, 16 Jan 2014 22:15:14 +0000 (17:15 -0500)
committerGeert Uytterhoeven <geert@linux-m68k.org>
Sun, 11 Jan 2015 10:38:41 +0000 (11:38 +0100)
The rtc.o is built for obj-y, i.e. always built in.  It will
never be modular, so using module_init as an alias for __initcall
can be somewhat misleading.

Fix this up now, so that we can relocate module_init from
init.h into module.h in the future.  If we don't do this, we'd
have to add module.h to obviously non-modular code, and that
would be a worse thing.

Note that direct use of __initcall is discouraged, vs. one
of the priority categorized subgroups.  As __initcall gets
mapped onto device_initcall, our use of device_initcall
directly in this change means that the runtime impact is
zero -- it will remain at level 6 in initcall ordering.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
arch/m68k/mvme16x/rtc.c

index 6ef7a81..1755e2f 100644 (file)
@@ -161,4 +161,4 @@ static int __init rtc_MK48T08_init(void)
        printk(KERN_INFO "MK48T08 Real Time Clock Driver v%s\n", RTC_VERSION);
        return misc_register(&rtc_dev);
 }
-module_init(rtc_MK48T08_init);
+device_initcall(rtc_MK48T08_init);