diff options
author | David S. Miller <davem@sunset.davemloft.net> | 2007-05-07 03:02:24 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-05-07 03:02:24 -0400 |
commit | c35a376d6089ab0ece2913959c8363aad76eb820 (patch) | |
tree | 27cdf056c3a43b74e15fe576bd4fa39dd35c8681 /arch/sparc64/kernel/prom.c | |
parent | a6009dda97776d50166e7f1e378cf553a1c20309 (diff) |
[SPARC64]: Fix section mismatch warnings in arch/sparc64/kernel/prom.c
The IRQ translation init routines should all be __init.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc64/kernel/prom.c')
-rw-r--r-- | arch/sparc64/kernel/prom.c | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/arch/sparc64/kernel/prom.c b/arch/sparc64/kernel/prom.c index 6625ac8d15fe..c54d4d8af014 100644 --- a/arch/sparc64/kernel/prom.c +++ b/arch/sparc64/kernel/prom.c | |||
@@ -396,7 +396,7 @@ static unsigned int psycho_irq_build(struct device_node *dp, | |||
396 | return build_irq(inofixup, iclr, imap); | 396 | return build_irq(inofixup, iclr, imap); |
397 | } | 397 | } |
398 | 398 | ||
399 | static void psycho_irq_trans_init(struct device_node *dp) | 399 | static void __init psycho_irq_trans_init(struct device_node *dp) |
400 | { | 400 | { |
401 | const struct linux_prom64_registers *regs; | 401 | const struct linux_prom64_registers *regs; |
402 | 402 | ||
@@ -636,7 +636,7 @@ static unsigned int sabre_irq_build(struct device_node *dp, | |||
636 | return virt_irq; | 636 | return virt_irq; |
637 | } | 637 | } |
638 | 638 | ||
639 | static void sabre_irq_trans_init(struct device_node *dp) | 639 | static void __init sabre_irq_trans_init(struct device_node *dp) |
640 | { | 640 | { |
641 | const struct linux_prom64_registers *regs; | 641 | const struct linux_prom64_registers *regs; |
642 | struct sabre_irq_data *irq_data; | 642 | struct sabre_irq_data *irq_data; |
@@ -793,7 +793,8 @@ static unsigned int schizo_irq_build(struct device_node *dp, | |||
793 | return virt_irq; | 793 | return virt_irq; |
794 | } | 794 | } |
795 | 795 | ||
796 | static void __schizo_irq_trans_init(struct device_node *dp, int is_tomatillo) | 796 | static void __init __schizo_irq_trans_init(struct device_node *dp, |
797 | int is_tomatillo) | ||
797 | { | 798 | { |
798 | const struct linux_prom64_registers *regs; | 799 | const struct linux_prom64_registers *regs; |
799 | struct schizo_irq_data *irq_data; | 800 | struct schizo_irq_data *irq_data; |
@@ -815,12 +816,12 @@ static void __schizo_irq_trans_init(struct device_node *dp, int is_tomatillo) | |||
815 | irq_data->chip_version = of_getintprop_default(dp, "version#", 0); | 816 | irq_data->chip_version = of_getintprop_default(dp, "version#", 0); |
816 | } | 817 | } |
817 | 818 | ||
818 | static void schizo_irq_trans_init(struct device_node *dp) | 819 | static void __init schizo_irq_trans_init(struct device_node *dp) |
819 | { | 820 | { |
820 | __schizo_irq_trans_init(dp, 0); | 821 | __schizo_irq_trans_init(dp, 0); |
821 | } | 822 | } |
822 | 823 | ||
823 | static void tomatillo_irq_trans_init(struct device_node *dp) | 824 | static void __init tomatillo_irq_trans_init(struct device_node *dp) |
824 | { | 825 | { |
825 | __schizo_irq_trans_init(dp, 1); | 826 | __schizo_irq_trans_init(dp, 1); |
826 | } | 827 | } |
@@ -834,7 +835,7 @@ static unsigned int pci_sun4v_irq_build(struct device_node *dp, | |||
834 | return sun4v_build_irq(devhandle, devino); | 835 | return sun4v_build_irq(devhandle, devino); |
835 | } | 836 | } |
836 | 837 | ||
837 | static void pci_sun4v_irq_trans_init(struct device_node *dp) | 838 | static void __init pci_sun4v_irq_trans_init(struct device_node *dp) |
838 | { | 839 | { |
839 | const struct linux_prom64_registers *regs; | 840 | const struct linux_prom64_registers *regs; |
840 | 841 | ||
@@ -908,7 +909,7 @@ static unsigned int fire_irq_build(struct device_node *dp, | |||
908 | return build_irq(ino, iclr, imap); | 909 | return build_irq(ino, iclr, imap); |
909 | } | 910 | } |
910 | 911 | ||
911 | static void fire_irq_trans_init(struct device_node *dp) | 912 | static void __init fire_irq_trans_init(struct device_node *dp) |
912 | { | 913 | { |
913 | const struct linux_prom64_registers *regs; | 914 | const struct linux_prom64_registers *regs; |
914 | struct fire_irq_data *irq_data; | 915 | struct fire_irq_data *irq_data; |
@@ -1071,7 +1072,7 @@ static unsigned int sbus_of_build_irq(struct device_node *dp, | |||
1071 | return build_irq(sbus_level, iclr, imap); | 1072 | return build_irq(sbus_level, iclr, imap); |
1072 | } | 1073 | } |
1073 | 1074 | ||
1074 | static void sbus_irq_trans_init(struct device_node *dp) | 1075 | static void __init sbus_irq_trans_init(struct device_node *dp) |
1075 | { | 1076 | { |
1076 | const struct linux_prom64_registers *regs; | 1077 | const struct linux_prom64_registers *regs; |
1077 | 1078 | ||
@@ -1118,7 +1119,7 @@ static unsigned int central_build_irq(struct device_node *dp, | |||
1118 | return build_irq(0, iclr, imap); | 1119 | return build_irq(0, iclr, imap); |
1119 | } | 1120 | } |
1120 | 1121 | ||
1121 | static void central_irq_trans_init(struct device_node *dp) | 1122 | static void __init central_irq_trans_init(struct device_node *dp) |
1122 | { | 1123 | { |
1123 | dp->irq_trans = prom_early_alloc(sizeof(struct of_irq_controller)); | 1124 | dp->irq_trans = prom_early_alloc(sizeof(struct of_irq_controller)); |
1124 | dp->irq_trans->irq_build = central_build_irq; | 1125 | dp->irq_trans->irq_build = central_build_irq; |
@@ -1132,7 +1133,7 @@ struct irq_trans { | |||
1132 | }; | 1133 | }; |
1133 | 1134 | ||
1134 | #ifdef CONFIG_PCI | 1135 | #ifdef CONFIG_PCI |
1135 | static struct irq_trans pci_irq_trans_table[] = { | 1136 | static struct irq_trans __initdata pci_irq_trans_table[] = { |
1136 | { "SUNW,sabre", sabre_irq_trans_init }, | 1137 | { "SUNW,sabre", sabre_irq_trans_init }, |
1137 | { "pci108e,a000", sabre_irq_trans_init }, | 1138 | { "pci108e,a000", sabre_irq_trans_init }, |
1138 | { "pci108e,a001", sabre_irq_trans_init }, | 1139 | { "pci108e,a001", sabre_irq_trans_init }, |
@@ -1158,7 +1159,7 @@ static unsigned int sun4v_vdev_irq_build(struct device_node *dp, | |||
1158 | return sun4v_build_irq(devhandle, devino); | 1159 | return sun4v_build_irq(devhandle, devino); |
1159 | } | 1160 | } |
1160 | 1161 | ||
1161 | static void sun4v_vdev_irq_trans_init(struct device_node *dp) | 1162 | static void __init sun4v_vdev_irq_trans_init(struct device_node *dp) |
1162 | { | 1163 | { |
1163 | const struct linux_prom64_registers *regs; | 1164 | const struct linux_prom64_registers *regs; |
1164 | 1165 | ||
@@ -1170,7 +1171,7 @@ static void sun4v_vdev_irq_trans_init(struct device_node *dp) | |||
1170 | ((regs->phys_addr >> 32UL) & 0x0fffffff); | 1171 | ((regs->phys_addr >> 32UL) & 0x0fffffff); |
1171 | } | 1172 | } |
1172 | 1173 | ||
1173 | static void irq_trans_init(struct device_node *dp) | 1174 | static void __init irq_trans_init(struct device_node *dp) |
1174 | { | 1175 | { |
1175 | #ifdef CONFIG_PCI | 1176 | #ifdef CONFIG_PCI |
1176 | const char *model; | 1177 | const char *model; |