ARM: imx: make imx51/3 suspend optional
authorArnd Bergmann <arnd@arndb.de>
Thu, 21 May 2015 12:06:30 +0000 (14:06 +0200)
committerShawn Guo <shawn.guo@linaro.org>
Wed, 3 Jun 2015 06:51:44 +0000 (14:51 +0800)
A recent change to the imx53 power management caused a build
regression when CONFIG_SOC_IMX53 is disabled:

mach-imx/built-in.o:(.init.rodata+0x60): undefined reference to `imx53_suspend'
mach-imx/built-in.o:(.init.rodata+0x64): undefined reference to `imx53_suspend_sz'

This avoids the problem by compiling the code in question
conditionally on the presence of CONFIG_SOC_IMX53. For
consistency, I'm also changing the same thing for
CONFIG_SOC_IMX51.

An additional benefit of this approach is reduced code size
for kernels that only include support for one of the two
SoCs.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Fixes: 1579c7b9fe01 ("ARM: imx53: Set DDR pins to high impedance when in suspend to RAM.")
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
arch/arm/mach-imx/pm-imx5.c

index a8d00b9..0309ccd 100644 (file)
@@ -413,10 +413,12 @@ static int __init imx5_pm_common_init(const struct imx5_pm_data *data)
 
 void __init imx51_pm_init(void)
 {
-       imx5_pm_common_init(&imx51_pm_data);
+       if (IS_ENABLED(CONFIG_SOC_IMX51))
+               imx5_pm_common_init(&imx51_pm_data);
 }
 
 void __init imx53_pm_init(void)
 {
-       imx5_pm_common_init(&imx53_pm_data);
+       if (IS_ENABLED(CONFIG_SOC_IMX53))
+               imx5_pm_common_init(&imx53_pm_data);
 }