Message ID | 1349195816-2225-12-git-send-email-arnd@arndb.de |
---|---|
State | Accepted |
Commit | e7215fb33acfba65f0a83a2cf3c58c529e042078 |
Headers | show |
diff --git a/arch/arm/mach-mv78xx0/common.c b/arch/arm/mach-mv78xx0/common.c index 3057f7d..e251ebc 100644 --- a/arch/arm/mach-mv78xx0/common.c +++ b/arch/arm/mach-mv78xx0/common.c @@ -341,7 +341,7 @@ void __init mv78xx0_init_early(void) orion_time_set_base(TIMER_VIRT_BASE); } -static void mv78xx0_timer_init(void) +static void __init_refok mv78xx0_timer_init(void) { orion_time_init(BRIDGE_VIRT_BASE, BRIDGE_INT_TIMER1_CLR, IRQ_MV78XX0_TIMER_1, get_tclk());
The sys_timer init function is only called at __init time, so it's safe to mark mv78xx0_timer_init as __init_refok, which allows us to call orion_time_init without getting a link time warning. Without this patch, building mv78xx0_defconfig results in: WARNING: vmlinux.o(.text+0x15470): Section mismatch in reference from the function mv78xx0_timer_init() to the function .init.text:orion_time_init() The function mv78xx0_timer_init() references the function __init orion_time_init(). This is often because mv78xx0_timer_init lacks a __init annotation or the annotation of orion_time_init is wrong. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Jason Cooper <jason@lakedaemon.net> Cc: Andrew Lunn <andrew@lunn.ch> --- arch/arm/mach-mv78xx0/common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)