diff options
author | Sam Ravnborg <sam@ravnborg.org> | 2008-01-21 20:22:46 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-22 01:34:30 -0500 |
commit | a1f35ba374bc421ab33e40163be2b57995b09962 (patch) | |
tree | 5df4759a6b6f93f8ec26e16738ee5c19050a8f03 | |
parent | d384e35a25445bb60457b7dab8cffe178c6b7ecb (diff) |
[SPARC64]: Fix of section mismatch warnings.
Fix following Section mismatch warning in sparc64:
WARNING: arch/sparc64/kernel/built-in.o(.text+0x13dec): Section mismatch: reference to .devinit.text:pci_scan_one_pbm (between 'psycho_scan_bus' and 'psycho_pbm_init')
WARNING: arch/sparc64/kernel/built-in.o(.text+0x14b58): Section mismatch: reference to .devinit.text:pci_scan_one_pbm (between 'sabre_scan_bus' and 'sabre_init')
WARNING: arch/sparc64/kernel/built-in.o(.text+0x15ea4): Section mismatch: reference to .devinit.text:pci_scan_one_pbm (between 'schizo_scan_bus' and 'schizo_pbm_init')
WARNING: arch/sparc64/kernel/built-in.o(.text+0x17780): Section mismatch: reference to .devinit.text:pci_scan_one_pbm (between 'pci_sun4v_scan_bus' and 'pci_sun4v_get_head')
WARNING: arch/sparc64/kernel/built-in.o(.text+0x17d5c): Section mismatch: reference to .devinit.text:pci_scan_one_pbm (between 'pci_fire_scan_bus' and 'pci_fire_get_head')
WARNING: arch/sparc64/kernel/built-in.o(.text+0x23860): Section mismatch: reference to .devinit.text:vio_dev_release (between 'vio_create_one' and 'vio_add')
WARNING: arch/sparc64/kernel/built-in.o(.text+0x23868): Section mismatch: reference to .devinit.text:vio_dev_release (between 'vio_create_one' and 'vio_add')
The pci_* were all missing __init annotations.
For the vio.c case it was a function with a wrong annotation which was removed.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | arch/sparc64/kernel/pci_fire.c | 8 | ||||
-rw-r--r-- | arch/sparc64/kernel/pci_psycho.c | 6 | ||||
-rw-r--r-- | arch/sparc64/kernel/pci_sabre.c | 7 | ||||
-rw-r--r-- | arch/sparc64/kernel/pci_schizo.c | 17 | ||||
-rw-r--r-- | arch/sparc64/kernel/pci_sun4v.c | 5 | ||||
-rw-r--r-- | arch/sparc64/kernel/vio.c | 2 |
6 files changed, 24 insertions, 21 deletions
diff --git a/arch/sparc64/kernel/pci_fire.c b/arch/sparc64/kernel/pci_fire.c index fef3b37487bf..7571ed563147 100644 --- a/arch/sparc64/kernel/pci_fire.c +++ b/arch/sparc64/kernel/pci_fire.c | |||
@@ -30,7 +30,7 @@ | |||
30 | "i" (ASI_PHYS_BYPASS_EC_E) \ | 30 | "i" (ASI_PHYS_BYPASS_EC_E) \ |
31 | : "memory") | 31 | : "memory") |
32 | 32 | ||
33 | static void pci_fire_scan_bus(struct pci_pbm_info *pbm) | 33 | static void __init pci_fire_scan_bus(struct pci_pbm_info *pbm) |
34 | { | 34 | { |
35 | pbm->pci_bus = pci_scan_one_pbm(pbm); | 35 | pbm->pci_bus = pci_scan_one_pbm(pbm); |
36 | 36 | ||
@@ -434,8 +434,8 @@ static void pci_fire_hw_init(struct pci_pbm_info *pbm) | |||
434 | fire_write(pbm->pbm_regs + FIRE_PEC_IENAB, ~(u64)0); | 434 | fire_write(pbm->pbm_regs + FIRE_PEC_IENAB, ~(u64)0); |
435 | } | 435 | } |
436 | 436 | ||
437 | static int pci_fire_pbm_init(struct pci_controller_info *p, | 437 | static int __init pci_fire_pbm_init(struct pci_controller_info *p, |
438 | struct device_node *dp, u32 portid) | 438 | struct device_node *dp, u32 portid) |
439 | { | 439 | { |
440 | const struct linux_prom64_registers *regs; | 440 | const struct linux_prom64_registers *regs; |
441 | struct pci_pbm_info *pbm; | 441 | struct pci_pbm_info *pbm; |
@@ -488,7 +488,7 @@ static inline int portid_compare(u32 x, u32 y) | |||
488 | return 0; | 488 | return 0; |
489 | } | 489 | } |
490 | 490 | ||
491 | void fire_pci_init(struct device_node *dp, const char *model_name) | 491 | void __init fire_pci_init(struct device_node *dp, const char *model_name) |
492 | { | 492 | { |
493 | struct pci_controller_info *p; | 493 | struct pci_controller_info *p; |
494 | u32 portid = of_getintprop_default(dp, "portid", 0xff); | 494 | u32 portid = of_getintprop_default(dp, "portid", 0xff); |
diff --git a/arch/sparc64/kernel/pci_psycho.c b/arch/sparc64/kernel/pci_psycho.c index d27ee5d528a2..0bad96e5d184 100644 --- a/arch/sparc64/kernel/pci_psycho.c +++ b/arch/sparc64/kernel/pci_psycho.c | |||
@@ -801,7 +801,7 @@ static void pbm_config_busmastering(struct pci_pbm_info *pbm) | |||
801 | pci_config_write8(addr, 64); | 801 | pci_config_write8(addr, 64); |
802 | } | 802 | } |
803 | 803 | ||
804 | static void psycho_scan_bus(struct pci_pbm_info *pbm) | 804 | static void __init psycho_scan_bus(struct pci_pbm_info *pbm) |
805 | { | 805 | { |
806 | pbm_config_busmastering(pbm); | 806 | pbm_config_busmastering(pbm); |
807 | pbm->is_66mhz_capable = 0; | 807 | pbm->is_66mhz_capable = 0; |
@@ -965,7 +965,7 @@ static void psycho_pbm_strbuf_init(struct pci_pbm_info *pbm, | |||
965 | #define PSYCHO_MEMSPACE_B 0x180000000UL | 965 | #define PSYCHO_MEMSPACE_B 0x180000000UL |
966 | #define PSYCHO_MEMSPACE_SIZE 0x07fffffffUL | 966 | #define PSYCHO_MEMSPACE_SIZE 0x07fffffffUL |
967 | 967 | ||
968 | static void psycho_pbm_init(struct pci_controller_info *p, | 968 | static void __init psycho_pbm_init(struct pci_controller_info *p, |
969 | struct device_node *dp, int is_pbm_a) | 969 | struct device_node *dp, int is_pbm_a) |
970 | { | 970 | { |
971 | struct property *prop; | 971 | struct property *prop; |
@@ -1012,7 +1012,7 @@ static void psycho_pbm_init(struct pci_controller_info *p, | |||
1012 | 1012 | ||
1013 | #define PSYCHO_CONFIGSPACE 0x001000000UL | 1013 | #define PSYCHO_CONFIGSPACE 0x001000000UL |
1014 | 1014 | ||
1015 | void psycho_init(struct device_node *dp, char *model_name) | 1015 | void __init psycho_init(struct device_node *dp, char *model_name) |
1016 | { | 1016 | { |
1017 | struct linux_prom64_registers *pr_regs; | 1017 | struct linux_prom64_registers *pr_regs; |
1018 | struct pci_controller_info *p; | 1018 | struct pci_controller_info *p; |
diff --git a/arch/sparc64/kernel/pci_sabre.c b/arch/sparc64/kernel/pci_sabre.c index fba67c3d8809..1c5f5fa2339f 100644 --- a/arch/sparc64/kernel/pci_sabre.c +++ b/arch/sparc64/kernel/pci_sabre.c | |||
@@ -633,7 +633,7 @@ static void apb_init(struct pci_bus *sabre_bus) | |||
633 | } | 633 | } |
634 | } | 634 | } |
635 | 635 | ||
636 | static void sabre_scan_bus(struct pci_pbm_info *pbm) | 636 | static void __init sabre_scan_bus(struct pci_pbm_info *pbm) |
637 | { | 637 | { |
638 | static int once; | 638 | static int once; |
639 | 639 | ||
@@ -731,7 +731,8 @@ static int sabre_iommu_init(struct pci_pbm_info *pbm, | |||
731 | return 0; | 731 | return 0; |
732 | } | 732 | } |
733 | 733 | ||
734 | static void sabre_pbm_init(struct pci_controller_info *p, struct pci_pbm_info *pbm, struct device_node *dp) | 734 | static void __init sabre_pbm_init(struct pci_controller_info *p, |
735 | struct pci_pbm_info *pbm, struct device_node *dp) | ||
735 | { | 736 | { |
736 | pbm->name = dp->full_name; | 737 | pbm->name = dp->full_name; |
737 | printk("%s: SABRE PCI Bus Module\n", pbm->name); | 738 | printk("%s: SABRE PCI Bus Module\n", pbm->name); |
@@ -750,7 +751,7 @@ static void sabre_pbm_init(struct pci_controller_info *p, struct pci_pbm_info *p | |||
750 | pci_determine_mem_io_space(pbm); | 751 | pci_determine_mem_io_space(pbm); |
751 | } | 752 | } |
752 | 753 | ||
753 | void sabre_init(struct device_node *dp, char *model_name) | 754 | void __init sabre_init(struct device_node *dp, char *model_name) |
754 | { | 755 | { |
755 | const struct linux_prom64_registers *pr_regs; | 756 | const struct linux_prom64_registers *pr_regs; |
756 | struct pci_controller_info *p; | 757 | struct pci_controller_info *p; |
diff --git a/arch/sparc64/kernel/pci_schizo.c b/arch/sparc64/kernel/pci_schizo.c index e752e75cce83..e30609362322 100644 --- a/arch/sparc64/kernel/pci_schizo.c +++ b/arch/sparc64/kernel/pci_schizo.c | |||
@@ -1084,7 +1084,7 @@ static void pbm_config_busmastering(struct pci_pbm_info *pbm) | |||
1084 | pci_config_write8(addr, 64); | 1084 | pci_config_write8(addr, 64); |
1085 | } | 1085 | } |
1086 | 1086 | ||
1087 | static void schizo_scan_bus(struct pci_pbm_info *pbm) | 1087 | static void __init schizo_scan_bus(struct pci_pbm_info *pbm) |
1088 | { | 1088 | { |
1089 | pbm_config_busmastering(pbm); | 1089 | pbm_config_busmastering(pbm); |
1090 | pbm->is_66mhz_capable = | 1090 | pbm->is_66mhz_capable = |
@@ -1333,9 +1333,9 @@ static void schizo_pbm_hw_init(struct pci_pbm_info *pbm) | |||
1333 | } | 1333 | } |
1334 | } | 1334 | } |
1335 | 1335 | ||
1336 | static int schizo_pbm_init(struct pci_controller_info *p, | 1336 | static int __init schizo_pbm_init(struct pci_controller_info *p, |
1337 | struct device_node *dp, u32 portid, | 1337 | struct device_node *dp, u32 portid, |
1338 | int chip_type) | 1338 | int chip_type) |
1339 | { | 1339 | { |
1340 | const struct linux_prom64_registers *regs; | 1340 | const struct linux_prom64_registers *regs; |
1341 | struct pci_pbm_info *pbm; | 1341 | struct pci_pbm_info *pbm; |
@@ -1430,7 +1430,8 @@ static inline int portid_compare(u32 x, u32 y, int chip_type) | |||
1430 | return (x == y); | 1430 | return (x == y); |
1431 | } | 1431 | } |
1432 | 1432 | ||
1433 | static void __schizo_init(struct device_node *dp, char *model_name, int chip_type) | 1433 | static void __init __schizo_init(struct device_node *dp, char *model_name, |
1434 | int chip_type) | ||
1434 | { | 1435 | { |
1435 | struct pci_controller_info *p; | 1436 | struct pci_controller_info *p; |
1436 | struct pci_pbm_info *pbm; | 1437 | struct pci_pbm_info *pbm; |
@@ -1474,17 +1475,17 @@ fatal_memory_error: | |||
1474 | prom_halt(); | 1475 | prom_halt(); |
1475 | } | 1476 | } |
1476 | 1477 | ||
1477 | void schizo_init(struct device_node *dp, char *model_name) | 1478 | void __init schizo_init(struct device_node *dp, char *model_name) |
1478 | { | 1479 | { |
1479 | __schizo_init(dp, model_name, PBM_CHIP_TYPE_SCHIZO); | 1480 | __schizo_init(dp, model_name, PBM_CHIP_TYPE_SCHIZO); |
1480 | } | 1481 | } |
1481 | 1482 | ||
1482 | void schizo_plus_init(struct device_node *dp, char *model_name) | 1483 | void __init schizo_plus_init(struct device_node *dp, char *model_name) |
1483 | { | 1484 | { |
1484 | __schizo_init(dp, model_name, PBM_CHIP_TYPE_SCHIZO_PLUS); | 1485 | __schizo_init(dp, model_name, PBM_CHIP_TYPE_SCHIZO_PLUS); |
1485 | } | 1486 | } |
1486 | 1487 | ||
1487 | void tomatillo_init(struct device_node *dp, char *model_name) | 1488 | void __init tomatillo_init(struct device_node *dp, char *model_name) |
1488 | { | 1489 | { |
1489 | __schizo_init(dp, model_name, PBM_CHIP_TYPE_TOMATILLO); | 1490 | __schizo_init(dp, model_name, PBM_CHIP_TYPE_TOMATILLO); |
1490 | } | 1491 | } |
diff --git a/arch/sparc64/kernel/pci_sun4v.c b/arch/sparc64/kernel/pci_sun4v.c index e587a372f3fe..1aa8e044b105 100644 --- a/arch/sparc64/kernel/pci_sun4v.c +++ b/arch/sparc64/kernel/pci_sun4v.c | |||
@@ -612,7 +612,7 @@ const struct dma_ops sun4v_dma_ops = { | |||
612 | .sync_sg_for_cpu = dma_4v_sync_sg_for_cpu, | 612 | .sync_sg_for_cpu = dma_4v_sync_sg_for_cpu, |
613 | }; | 613 | }; |
614 | 614 | ||
615 | static void pci_sun4v_scan_bus(struct pci_pbm_info *pbm) | 615 | static void __init pci_sun4v_scan_bus(struct pci_pbm_info *pbm) |
616 | { | 616 | { |
617 | struct property *prop; | 617 | struct property *prop; |
618 | struct device_node *dp; | 618 | struct device_node *dp; |
@@ -960,7 +960,8 @@ static void pci_sun4v_msi_init(struct pci_pbm_info *pbm) | |||
960 | } | 960 | } |
961 | #endif /* !(CONFIG_PCI_MSI) */ | 961 | #endif /* !(CONFIG_PCI_MSI) */ |
962 | 962 | ||
963 | static void __init pci_sun4v_pbm_init(struct pci_controller_info *p, struct device_node *dp, u32 devhandle) | 963 | static void __init pci_sun4v_pbm_init(struct pci_controller_info *p, |
964 | struct device_node *dp, u32 devhandle) | ||
964 | { | 965 | { |
965 | struct pci_pbm_info *pbm; | 966 | struct pci_pbm_info *pbm; |
966 | 967 | ||
diff --git a/arch/sparc64/kernel/vio.c b/arch/sparc64/kernel/vio.c index 0c1ee619d814..e78b3517940b 100644 --- a/arch/sparc64/kernel/vio.c +++ b/arch/sparc64/kernel/vio.c | |||
@@ -131,7 +131,7 @@ void vio_unregister_driver(struct vio_driver *viodrv) | |||
131 | } | 131 | } |
132 | EXPORT_SYMBOL(vio_unregister_driver); | 132 | EXPORT_SYMBOL(vio_unregister_driver); |
133 | 133 | ||
134 | static void __devinit vio_dev_release(struct device *dev) | 134 | static void vio_dev_release(struct device *dev) |
135 | { | 135 | { |
136 | kfree(to_vio_dev(dev)); | 136 | kfree(to_vio_dev(dev)); |
137 | } | 137 | } |