summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWanlong Gao <gaowanlong@cn.fujitsu.com>2011-08-04 12:32:31 +0800
committerSamuel Ortiz <sameo@linux.intel.com>2011-10-24 14:09:08 +0200
commitd036c96e703c176250503194f4fcd8b96e606b52 (patch)
tree3beb8d61fce7aeb3bbfd8928d0f7869c7b55e343
parentc3b92c8787367a8bb53d57d9789b558f1295cc96 (diff)
downloadlinux-d036c96e703c176250503194f4fcd8b96e606b52.tar.bz2
mfd: Fix section mismatch warning in ab3550-core
This patch fixes: WARNING: drivers/mfd/built-in.o(.data+0x9998): Section mismatch in reference from the variable ab3550_driver to the function .init.text:ab3550_probe() The variable ab3550_driver references the function __init ab3550_probe() If the reference is valid then annotate the variable with __init* or __refdata (see linux/init.h) or name the variable: *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com> Acked-by: Linus Walleij <linus.walleij@linaro.org> Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
-rw-r--r--drivers/mfd/ab3550-core.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/mfd/ab3550-core.c b/drivers/mfd/ab3550-core.c
index 56ba1943c91d..882ea7192d8b 100644
--- a/drivers/mfd/ab3550-core.c
+++ b/drivers/mfd/ab3550-core.c
@@ -1086,7 +1086,7 @@ static inline void ab3550_remove_debugfs(void)
* This sets up a default config in the AB3550 chip so that it
* will work as expected.
*/
-static int __init ab3550_setup(struct ab3550 *ab)
+static int __devinit ab3550_setup(struct ab3550 *ab)
{
int err = 0;
int i;
@@ -1193,7 +1193,7 @@ struct ab_family_id {
char *name;
};
-static const struct ab_family_id ids[] __initdata = {
+static const struct ab_family_id ids[] __devinitconst = {
/* AB3550 */
{
.id = AB3550_P1A,
@@ -1205,7 +1205,7 @@ static const struct ab_family_id ids[] __initdata = {
}
};
-static int __init ab3550_probe(struct i2c_client *client,
+static int __devinit ab3550_probe(struct i2c_client *client,
const struct i2c_device_id *id)
{
struct ab3550 *ab;
@@ -1326,7 +1326,7 @@ exit_no_detect:
return err;
}
-static int __exit ab3550_remove(struct i2c_client *client)
+static int __devexit ab3550_remove(struct i2c_client *client)
{
struct ab3550 *ab = i2c_get_clientdata(client);
int num_i2c_clients = AB3550_NUM_BANKS;
@@ -1359,7 +1359,7 @@ static struct i2c_driver ab3550_driver = {
},
.id_table = ab3550_id,
.probe = ab3550_probe,
- .remove = __exit_p(ab3550_remove),
+ .remove = __devexit_p(ab3550_remove),
};
static int __init ab3550_i2c_init(void)