aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc64/kernel/pci_schizo.c
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2008-01-21 20:22:46 -0500
committerDavid S. Miller <davem@davemloft.net>2008-01-22 01:34:30 -0500
commita1f35ba374bc421ab33e40163be2b57995b09962 (patch)
tree5df4759a6b6f93f8ec26e16738ee5c19050a8f03 /arch/sparc64/kernel/pci_schizo.c
parentd384e35a25445bb60457b7dab8cffe178c6b7ecb (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>
Diffstat (limited to 'arch/sparc64/kernel/pci_schizo.c')
-rw-r--r--arch/sparc64/kernel/pci_schizo.c17
1 files changed, 9 insertions, 8 deletions
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
1087static void schizo_scan_bus(struct pci_pbm_info *pbm) 1087static 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
1336static int schizo_pbm_init(struct pci_controller_info *p, 1336static 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
1433static void __schizo_init(struct device_node *dp, char *model_name, int chip_type) 1433static 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
1477void schizo_init(struct device_node *dp, char *model_name) 1478void __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
1482void schizo_plus_init(struct device_node *dp, char *model_name) 1483void __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
1487void tomatillo_init(struct device_node *dp, char *model_name) 1488void __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}