diff options
Diffstat (limited to 'arch/x86/kernel/io_apic_64.c')
-rw-r--r-- | arch/x86/kernel/io_apic_64.c | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/arch/x86/kernel/io_apic_64.c b/arch/x86/kernel/io_apic_64.c index 8269434d1707..8cdcc4f287cc 100644 --- a/arch/x86/kernel/io_apic_64.c +++ b/arch/x86/kernel/io_apic_64.c | |||
@@ -53,6 +53,8 @@ | |||
53 | #include <mach_ipi.h> | 53 | #include <mach_ipi.h> |
54 | #include <mach_apic.h> | 54 | #include <mach_apic.h> |
55 | 55 | ||
56 | #define __apicdebuginit(type) static type __init | ||
57 | |||
56 | struct irq_cfg { | 58 | struct irq_cfg { |
57 | cpumask_t domain; | 59 | cpumask_t domain; |
58 | cpumask_t old_domain; | 60 | cpumask_t old_domain; |
@@ -87,8 +89,6 @@ int first_system_vector = 0xfe; | |||
87 | 89 | ||
88 | char system_vectors[NR_VECTORS] = { [0 ... NR_VECTORS-1] = SYS_VECTOR_FREE}; | 90 | char system_vectors[NR_VECTORS] = { [0 ... NR_VECTORS-1] = SYS_VECTOR_FREE}; |
89 | 91 | ||
90 | #define __apicdebuginit __init | ||
91 | |||
92 | int sis_apic_bug; /* not actually supported, dummy for compile */ | 92 | int sis_apic_bug; /* not actually supported, dummy for compile */ |
93 | 93 | ||
94 | static int no_timer_check; | 94 | static int no_timer_check; |
@@ -965,7 +965,8 @@ static void __init setup_timer_IRQ0_pin(unsigned int apic, unsigned int pin, | |||
965 | ioapic_write_entry(apic, pin, entry); | 965 | ioapic_write_entry(apic, pin, entry); |
966 | } | 966 | } |
967 | 967 | ||
968 | void __apicdebuginit print_IO_APIC(void) | 968 | |
969 | __apicdebuginit(void) print_IO_APIC(void) | ||
969 | { | 970 | { |
970 | int apic, i; | 971 | int apic, i; |
971 | union IO_APIC_reg_00 reg_00; | 972 | union IO_APIC_reg_00 reg_00; |
@@ -1059,9 +1060,7 @@ void __apicdebuginit print_IO_APIC(void) | |||
1059 | return; | 1060 | return; |
1060 | } | 1061 | } |
1061 | 1062 | ||
1062 | #if 0 | 1063 | __apicdebuginit(void) print_APIC_bitfield(int base) |
1063 | |||
1064 | static __apicdebuginit void print_APIC_bitfield (int base) | ||
1065 | { | 1064 | { |
1066 | unsigned int v; | 1065 | unsigned int v; |
1067 | int i, j; | 1066 | int i, j; |
@@ -1082,7 +1081,7 @@ static __apicdebuginit void print_APIC_bitfield (int base) | |||
1082 | } | 1081 | } |
1083 | } | 1082 | } |
1084 | 1083 | ||
1085 | void __apicdebuginit print_local_APIC(void * dummy) | 1084 | __apicdebuginit(void) print_local_APIC(void *dummy) |
1086 | { | 1085 | { |
1087 | unsigned int v, ver, maxlvt; | 1086 | unsigned int v, ver, maxlvt; |
1088 | 1087 | ||
@@ -1159,12 +1158,12 @@ void __apicdebuginit print_local_APIC(void * dummy) | |||
1159 | printk("\n"); | 1158 | printk("\n"); |
1160 | } | 1159 | } |
1161 | 1160 | ||
1162 | void print_all_local_APICs (void) | 1161 | __apicdebuginit(void) print_all_local_APICs(void) |
1163 | { | 1162 | { |
1164 | on_each_cpu(print_local_APIC, NULL, 1); | 1163 | on_each_cpu(print_local_APIC, NULL, 1); |
1165 | } | 1164 | } |
1166 | 1165 | ||
1167 | void __apicdebuginit print_PIC(void) | 1166 | __apicdebuginit(void) print_PIC(void) |
1168 | { | 1167 | { |
1169 | unsigned int v; | 1168 | unsigned int v; |
1170 | unsigned long flags; | 1169 | unsigned long flags; |
@@ -1196,7 +1195,17 @@ void __apicdebuginit print_PIC(void) | |||
1196 | printk(KERN_DEBUG "... PIC ELCR: %04x\n", v); | 1195 | printk(KERN_DEBUG "... PIC ELCR: %04x\n", v); |
1197 | } | 1196 | } |
1198 | 1197 | ||
1199 | #endif /* 0 */ | 1198 | __apicdebuginit(int) print_all_ICs(void) |
1199 | { | ||
1200 | print_PIC(); | ||
1201 | print_all_local_APICs(); | ||
1202 | print_IO_APIC(); | ||
1203 | |||
1204 | return 0; | ||
1205 | } | ||
1206 | |||
1207 | fs_initcall(print_all_ICs); | ||
1208 | |||
1200 | 1209 | ||
1201 | void __init enable_IO_APIC(void) | 1210 | void __init enable_IO_APIC(void) |
1202 | { | 1211 | { |
@@ -1849,8 +1858,6 @@ void __init setup_IO_APIC(void) | |||
1849 | setup_IO_APIC_irqs(); | 1858 | setup_IO_APIC_irqs(); |
1850 | init_IO_APIC_traps(); | 1859 | init_IO_APIC_traps(); |
1851 | check_timer(); | 1860 | check_timer(); |
1852 | if (!acpi_ioapic) | ||
1853 | print_IO_APIC(); | ||
1854 | } | 1861 | } |
1855 | 1862 | ||
1856 | struct sysfs_ioapic_data { | 1863 | struct sysfs_ioapic_data { |