diff options
-rw-r--r-- | arch/i386/kernel/acpi/boot.c | 3 | ||||
-rw-r--r-- | arch/x86_64/kernel/apic.c | 9 | ||||
-rw-r--r-- | include/asm-x86_64/acpi.h | 14 |
3 files changed, 4 insertions, 22 deletions
diff --git a/arch/i386/kernel/acpi/boot.c b/arch/i386/kernel/acpi/boot.c index 8309a7b2cd63..79577f0ace98 100644 --- a/arch/i386/kernel/acpi/boot.c +++ b/arch/i386/kernel/acpi/boot.c | |||
@@ -44,6 +44,9 @@ extern void __init clustered_apic_check(void); | |||
44 | extern int gsi_irq_sharing(int gsi); | 44 | extern int gsi_irq_sharing(int gsi); |
45 | #include <asm/proto.h> | 45 | #include <asm/proto.h> |
46 | 46 | ||
47 | static inline int acpi_madt_oem_check(char *oem_id, char *oem_table_id) { return 0; } | ||
48 | |||
49 | |||
47 | #else /* X86 */ | 50 | #else /* X86 */ |
48 | 51 | ||
49 | #ifdef CONFIG_X86_LOCAL_APIC | 52 | #ifdef CONFIG_X86_LOCAL_APIC |
diff --git a/arch/x86_64/kernel/apic.c b/arch/x86_64/kernel/apic.c index d70605eda333..e5b14c57eaa0 100644 --- a/arch/x86_64/kernel/apic.c +++ b/arch/x86_64/kernel/apic.c | |||
@@ -962,14 +962,12 @@ void smp_apic_timer_interrupt(struct pt_regs *regs) | |||
962 | irq_exit(); | 962 | irq_exit(); |
963 | } | 963 | } |
964 | 964 | ||
965 | int __initdata unsync_tsc_on_multicluster; | ||
966 | |||
967 | /* | 965 | /* |
968 | * oem_force_hpet_timer -- force HPET mode for some boxes. | 966 | * oem_force_hpet_timer -- force HPET mode for some boxes. |
969 | * | 967 | * |
970 | * Thus far, the major user of this is IBM's Summit2 series: | 968 | * Thus far, the major user of this is IBM's Summit2 series: |
971 | * | 969 | * |
972 | * Some clustered boxes may have unsynced TSC problems if they are | 970 | * Clustered boxes may have unsynced TSC problems if they are |
973 | * multi-chassis. Use available data to take a good guess. | 971 | * multi-chassis. Use available data to take a good guess. |
974 | * If in doubt, go HPET. | 972 | * If in doubt, go HPET. |
975 | */ | 973 | */ |
@@ -979,11 +977,6 @@ __cpuinit int oem_force_hpet_timer(void) | |||
979 | unsigned id; | 977 | unsigned id; |
980 | DECLARE_BITMAP(clustermap, NUM_APIC_CLUSTERS); | 978 | DECLARE_BITMAP(clustermap, NUM_APIC_CLUSTERS); |
981 | 979 | ||
982 | /* Only do this check on IBM machines - big Unisys systems | ||
983 | use multiple clusters too, but have synchronized TSC */ | ||
984 | if (!unsync_tsc_on_multicluster) | ||
985 | return 0; | ||
986 | |||
987 | bitmap_zero(clustermap, NUM_APIC_CLUSTERS); | 980 | bitmap_zero(clustermap, NUM_APIC_CLUSTERS); |
988 | 981 | ||
989 | for (i = 0; i < NR_CPUS; i++) { | 982 | for (i = 0; i < NR_CPUS; i++) { |
diff --git a/include/asm-x86_64/acpi.h b/include/asm-x86_64/acpi.h index e2b9923189a0..aa1c7b2e438c 100644 --- a/include/asm-x86_64/acpi.h +++ b/include/asm-x86_64/acpi.h | |||
@@ -164,20 +164,6 @@ extern u8 x86_acpiid_to_apicid[]; | |||
164 | 164 | ||
165 | extern int acpi_skip_timer_override; | 165 | extern int acpi_skip_timer_override; |
166 | 166 | ||
167 | extern int unsync_tsc_on_multicluster; | ||
168 | |||
169 | static inline int acpi_madt_oem_check(char *oem, char *productid) | ||
170 | { | ||
171 | /* Copied from i386. Probably has too many entries. */ | ||
172 | if (!strncmp(oem, "IBM ENSW", 8) && | ||
173 | (!strncmp(productid, "VIGIL SMP", 9) | ||
174 | || !strncmp(productid, "EXA", 3) | ||
175 | || !strncmp(productid, "RUTHLESS SMP", 12))) { | ||
176 | unsync_tsc_on_multicluster = 1; | ||
177 | } | ||
178 | return 0; | ||
179 | } | ||
180 | |||
181 | #endif /*__KERNEL__*/ | 167 | #endif /*__KERNEL__*/ |
182 | 168 | ||
183 | #endif /*_ASM_ACPI_H*/ | 169 | #endif /*_ASM_ACPI_H*/ |