diff options
| author | Russell King <rmk+kernel@arm.linux.org.uk> | 2010-07-27 03:50:16 -0400 |
|---|---|---|
| committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2010-07-27 05:48:43 -0400 |
| commit | 2c39c9e149f45ec15a6985cb06ec8f6d904bb35e (patch) | |
| tree | 5143aee07729e3a0b986833eaa88b1181719b3bb | |
| parent | 3d3f78d752bfada5b6041f2f7bd0833d8bdf7a4a (diff) | |
ARM: Fix section build warnings for AMBA drivers
Found in the Versatile build:
WARNING: drivers/built-in.o(.data+0x14c): Section mismatch in reference from the variable pl061_gpio_driver to the (unknown reference) .init.data:(unknown)
The variable pl061_gpio_driver references
the (unknown reference) __initdata (unknown)
WARNING: drivers/built-in.o(.data+0x40f8): Section mismatch in reference from the variable pl011_driver to the (unknown reference) .init.data:(unknown)
The variable pl011_driver references
the (unknown reference) __initdata (unknown)
WARNING: drivers/built-in.o(.data+0x5ab4): Section mismatch in reference from the variable pl031_driver to the (unknown reference) .init.data:(unknown)
The variable pl031_driver references
the (unknown reference) __initdata (unknown)
Basically, amba_id structures must not be __initdata. Also fix:
WARNING: drivers/built-in.o(.data+0x138): Section mismatch in reference from the variable pl061_gpio_driver to the function .init.text:pl061_probe()
The variable pl061_gpio_driver references
the function __init pl061_probe()
which is an incorrectly annotated probe function. Fix it to reflect
the other AMBA bus probe functions by removing the __init attributation.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| -rw-r--r-- | drivers/gpio/pl061.c | 4 | ||||
| -rw-r--r-- | drivers/rtc/rtc-pl031.c | 2 | ||||
| -rw-r--r-- | drivers/serial/amba-pl010.c | 2 | ||||
| -rw-r--r-- | drivers/serial/amba-pl011.c | 2 |
4 files changed, 5 insertions, 5 deletions
diff --git a/drivers/gpio/pl061.c b/drivers/gpio/pl061.c index ee568c8fcbd0..5005990f751f 100644 --- a/drivers/gpio/pl061.c +++ b/drivers/gpio/pl061.c | |||
| @@ -232,7 +232,7 @@ static void pl061_irq_handler(unsigned irq, struct irq_desc *desc) | |||
| 232 | desc->chip->unmask(irq); | 232 | desc->chip->unmask(irq); |
| 233 | } | 233 | } |
| 234 | 234 | ||
| 235 | static int __init pl061_probe(struct amba_device *dev, struct amba_id *id) | 235 | static int pl061_probe(struct amba_device *dev, struct amba_id *id) |
| 236 | { | 236 | { |
| 237 | struct pl061_platform_data *pdata; | 237 | struct pl061_platform_data *pdata; |
| 238 | struct pl061_gpio *chip; | 238 | struct pl061_gpio *chip; |
| @@ -333,7 +333,7 @@ free_mem: | |||
| 333 | return ret; | 333 | return ret; |
| 334 | } | 334 | } |
| 335 | 335 | ||
| 336 | static struct amba_id pl061_ids[] __initdata = { | 336 | static struct amba_id pl061_ids[] = { |
| 337 | { | 337 | { |
| 338 | .id = 0x00041061, | 338 | .id = 0x00041061, |
| 339 | .mask = 0x000fffff, | 339 | .mask = 0x000fffff, |
diff --git a/drivers/rtc/rtc-pl031.c b/drivers/rtc/rtc-pl031.c index 3587d9922f28..71bbefc3544e 100644 --- a/drivers/rtc/rtc-pl031.c +++ b/drivers/rtc/rtc-pl031.c | |||
| @@ -456,7 +456,7 @@ static struct rtc_class_ops stv2_pl031_ops = { | |||
| 456 | .irq_set_freq = pl031_irq_set_freq, | 456 | .irq_set_freq = pl031_irq_set_freq, |
| 457 | }; | 457 | }; |
| 458 | 458 | ||
| 459 | static struct amba_id pl031_ids[] __initdata = { | 459 | static struct amba_id pl031_ids[] = { |
| 460 | { | 460 | { |
| 461 | .id = 0x00041031, | 461 | .id = 0x00041031, |
| 462 | .mask = 0x000fffff, | 462 | .mask = 0x000fffff, |
diff --git a/drivers/serial/amba-pl010.c b/drivers/serial/amba-pl010.c index b09a638d051f..50441ffe8e38 100644 --- a/drivers/serial/amba-pl010.c +++ b/drivers/serial/amba-pl010.c | |||
| @@ -782,7 +782,7 @@ static int pl010_resume(struct amba_device *dev) | |||
| 782 | return 0; | 782 | return 0; |
| 783 | } | 783 | } |
| 784 | 784 | ||
| 785 | static struct amba_id pl010_ids[] __initdata = { | 785 | static struct amba_id pl010_ids[] = { |
| 786 | { | 786 | { |
| 787 | .id = 0x00041010, | 787 | .id = 0x00041010, |
| 788 | .mask = 0x000fffff, | 788 | .mask = 0x000fffff, |
diff --git a/drivers/serial/amba-pl011.c b/drivers/serial/amba-pl011.c index f67e09da6d33..6ca7a44f29c2 100644 --- a/drivers/serial/amba-pl011.c +++ b/drivers/serial/amba-pl011.c | |||
| @@ -930,7 +930,7 @@ static int pl011_resume(struct amba_device *dev) | |||
| 930 | } | 930 | } |
| 931 | #endif | 931 | #endif |
| 932 | 932 | ||
| 933 | static struct amba_id pl011_ids[] __initdata = { | 933 | static struct amba_id pl011_ids[] = { |
| 934 | { | 934 | { |
| 935 | .id = 0x00041011, | 935 | .id = 0x00041011, |
| 936 | .mask = 0x000fffff, | 936 | .mask = 0x000fffff, |
