[PATCH] x86/moorestown: change to __devinit in order to suppress warning

From: Sebastian Andrzej Siewior
Date: Thu May 31 2012 - 17:57:13 EST


The allmodconfig hits:

|WARNING: vmlinux.o(.text+0x6553d): Section mismatch in reference from the function intel_scu_devices_create() to the function .devinit.text: spi_register_board_info()
|The function intel_scu_devices_create() references
|the function __devinit spi_register_board_info().
|This is often because intel_scu_devices_create lacks a __devinit
|annotation or the annotation of spi_register_board_info is wrong.
|
|WARNING: vmlinux.o(.text+0x655f1): Section mismatch in reference from the function intel_scu_devices_create() to the function .init.text:i2c _register_board_info()
|The function intel_scu_devices_create() references
|the function __init i2c_register_board_info().
|This is often because intel_scu_devices_create lacks a __init
|annotation or the annotation of i2c_register_board_info is wrong.

This patch marks intel_scu_devices_create() as devinit because it calls
a devinit function, spi_register_board_info().
The second problem with i2c_register_board_info() does not go away and
should crash once build as a module because i2c_register_board_info() is
long gone. Therefore this function should not be used from a module.
Going through all the code here makes me ask, why don't use DT here for
all that I2C and friends?

Signed-off-by: Sebastian Andrzej Siewior <sebastian@xxxxxxxxxxxxx>
---
And I looked like this while going over the code:
http://download.breakpoint.cc/meme/moorestown_no_dt.png

arch/x86/platform/mrst/mrst.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/x86/platform/mrst/mrst.c b/arch/x86/platform/mrst/mrst.c
index e31bcd8..fd41a92 100644
--- a/arch/x86/platform/mrst/mrst.c
+++ b/arch/x86/platform/mrst/mrst.c
@@ -782,7 +782,7 @@ BLOCKING_NOTIFIER_HEAD(intel_scu_notifier);
EXPORT_SYMBOL_GPL(intel_scu_notifier);

/* Called by IPC driver */
-void intel_scu_devices_create(void)
+void __devinit intel_scu_devices_create(void)
{
int i;

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/