| From 54c09889bff6d99c8733eed4a26c9391b177c88b Mon Sep 17 00:00:00 2001 |
| From: Arnd Bergmann <arnd@arndb.de> |
| Date: Mon, 12 Oct 2015 15:46:08 +0200 |
| Subject: ARM: pxa: remove incorrect __init annotation on pxa27x_set_pwrmode |
| |
| From: Arnd Bergmann <arnd@arndb.de> |
| |
| commit 54c09889bff6d99c8733eed4a26c9391b177c88b upstream. |
| |
| The z2 machine calls pxa27x_set_pwrmode() in order to power off |
| the machine, but this function gets discarded early at boot because |
| it is marked __init, as pointed out by kbuild: |
| |
| WARNING: vmlinux.o(.text+0x145c4): Section mismatch in reference from the function z2_power_off() to the function .init.text:pxa27x_set_pwrmode() |
| The function z2_power_off() references |
| the function __init pxa27x_set_pwrmode(). |
| This is often because z2_power_off lacks a __init |
| annotation or the annotation of pxa27x_set_pwrmode is wrong. |
| |
| This removes the __init section modifier to fix rebooting and the |
| build error. |
| |
| Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
| Fixes: ba4a90a6d86a ("ARM: pxa/z2: fix building error of pxa27x_cpu_suspend() no longer available") |
| Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| arch/arm/mach-pxa/include/mach/pxa27x.h | 2 +- |
| arch/arm/mach-pxa/pxa27x.c | 2 +- |
| 2 files changed, 2 insertions(+), 2 deletions(-) |
| |
| --- a/arch/arm/mach-pxa/include/mach/pxa27x.h |
| +++ b/arch/arm/mach-pxa/include/mach/pxa27x.h |
| @@ -19,7 +19,7 @@ |
| #define ARB_CORE_PARK (1<<24) /* Be parked with core when idle */ |
| #define ARB_LOCK_FLAG (1<<23) /* Only Locking masters gain access to the bus */ |
| |
| -extern int __init pxa27x_set_pwrmode(unsigned int mode); |
| +extern int pxa27x_set_pwrmode(unsigned int mode); |
| extern void pxa27x_cpu_pm_enter(suspend_state_t state); |
| |
| #endif /* __MACH_PXA27x_H */ |
| --- a/arch/arm/mach-pxa/pxa27x.c |
| +++ b/arch/arm/mach-pxa/pxa27x.c |
| @@ -251,7 +251,7 @@ static struct clk_lookup pxa27x_clkregs[ |
| */ |
| static unsigned int pwrmode = PWRMODE_SLEEP; |
| |
| -int __init pxa27x_set_pwrmode(unsigned int mode) |
| +int pxa27x_set_pwrmode(unsigned int mode) |
| { |
| switch (mode) { |
| case PWRMODE_SLEEP: |