diff options
Diffstat (limited to 'arch/x86/kernel/acpi')
-rw-r--r-- | arch/x86/kernel/acpi/Makefile_32 | 3 | ||||
-rw-r--r-- | arch/x86/kernel/acpi/boot.c | 2 | ||||
-rw-r--r-- | arch/x86/kernel/acpi/cstate.c | 4 | ||||
-rw-r--r-- | arch/x86/kernel/acpi/earlyquirk_32.c | 84 | ||||
-rw-r--r-- | arch/x86/kernel/acpi/processor.c | 2 |
5 files changed, 4 insertions, 91 deletions
diff --git a/arch/x86/kernel/acpi/Makefile_32 b/arch/x86/kernel/acpi/Makefile_32 index a4852a2e9190..045dd54b33e0 100644 --- a/arch/x86/kernel/acpi/Makefile_32 +++ b/arch/x86/kernel/acpi/Makefile_32 | |||
@@ -1,7 +1,4 @@ | |||
1 | obj-$(CONFIG_ACPI) += boot.o | 1 | obj-$(CONFIG_ACPI) += boot.o |
2 | ifneq ($(CONFIG_PCI),) | ||
3 | obj-$(CONFIG_X86_IO_APIC) += earlyquirk_32.o | ||
4 | endif | ||
5 | obj-$(CONFIG_ACPI_SLEEP) += sleep_32.o wakeup_32.o | 2 | obj-$(CONFIG_ACPI_SLEEP) += sleep_32.o wakeup_32.o |
6 | 3 | ||
7 | ifneq ($(CONFIG_ACPI_PROCESSOR),) | 4 | ifneq ($(CONFIG_ACPI_PROCESSOR),) |
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c index afd2afe9102d..f28b2e251b1d 100644 --- a/arch/x86/kernel/acpi/boot.c +++ b/arch/x86/kernel/acpi/boot.c | |||
@@ -555,7 +555,7 @@ EXPORT_SYMBOL(acpi_map_lsapic); | |||
555 | 555 | ||
556 | int acpi_unmap_lsapic(int cpu) | 556 | int acpi_unmap_lsapic(int cpu) |
557 | { | 557 | { |
558 | x86_cpu_to_apicid[cpu] = -1; | 558 | per_cpu(x86_cpu_to_apicid, cpu) = -1; |
559 | cpu_clear(cpu, cpu_present_map); | 559 | cpu_clear(cpu, cpu_present_map); |
560 | num_processors--; | 560 | num_processors--; |
561 | 561 | ||
diff --git a/arch/x86/kernel/acpi/cstate.c b/arch/x86/kernel/acpi/cstate.c index 2d39f55d29a8..10b67170b133 100644 --- a/arch/x86/kernel/acpi/cstate.c +++ b/arch/x86/kernel/acpi/cstate.c | |||
@@ -29,7 +29,7 @@ | |||
29 | void acpi_processor_power_init_bm_check(struct acpi_processor_flags *flags, | 29 | void acpi_processor_power_init_bm_check(struct acpi_processor_flags *flags, |
30 | unsigned int cpu) | 30 | unsigned int cpu) |
31 | { | 31 | { |
32 | struct cpuinfo_x86 *c = cpu_data + cpu; | 32 | struct cpuinfo_x86 *c = &cpu_data(cpu); |
33 | 33 | ||
34 | flags->bm_check = 0; | 34 | flags->bm_check = 0; |
35 | if (num_online_cpus() == 1) | 35 | if (num_online_cpus() == 1) |
@@ -72,7 +72,7 @@ int acpi_processor_ffh_cstate_probe(unsigned int cpu, | |||
72 | struct acpi_processor_cx *cx, struct acpi_power_register *reg) | 72 | struct acpi_processor_cx *cx, struct acpi_power_register *reg) |
73 | { | 73 | { |
74 | struct cstate_entry *percpu_entry; | 74 | struct cstate_entry *percpu_entry; |
75 | struct cpuinfo_x86 *c = cpu_data + cpu; | 75 | struct cpuinfo_x86 *c = &cpu_data(cpu); |
76 | 76 | ||
77 | cpumask_t saved_mask; | 77 | cpumask_t saved_mask; |
78 | int retval; | 78 | int retval; |
diff --git a/arch/x86/kernel/acpi/earlyquirk_32.c b/arch/x86/kernel/acpi/earlyquirk_32.c deleted file mode 100644 index 23f78efc577d..000000000000 --- a/arch/x86/kernel/acpi/earlyquirk_32.c +++ /dev/null | |||
@@ -1,84 +0,0 @@ | |||
1 | /* | ||
2 | * Do early PCI probing for bug detection when the main PCI subsystem is | ||
3 | * not up yet. | ||
4 | */ | ||
5 | #include <linux/init.h> | ||
6 | #include <linux/kernel.h> | ||
7 | #include <linux/pci.h> | ||
8 | #include <linux/acpi.h> | ||
9 | |||
10 | #include <asm/pci-direct.h> | ||
11 | #include <asm/acpi.h> | ||
12 | #include <asm/apic.h> | ||
13 | |||
14 | #ifdef CONFIG_ACPI | ||
15 | |||
16 | static int __init nvidia_hpet_check(struct acpi_table_header *header) | ||
17 | { | ||
18 | return 0; | ||
19 | } | ||
20 | #endif | ||
21 | |||
22 | static int __init check_bridge(int vendor, int device) | ||
23 | { | ||
24 | #ifdef CONFIG_ACPI | ||
25 | static int warned; | ||
26 | /* According to Nvidia all timer overrides are bogus unless HPET | ||
27 | is enabled. */ | ||
28 | if (!acpi_use_timer_override && vendor == PCI_VENDOR_ID_NVIDIA) { | ||
29 | if (!warned && acpi_table_parse(ACPI_SIG_HPET, | ||
30 | nvidia_hpet_check)) { | ||
31 | warned = 1; | ||
32 | acpi_skip_timer_override = 1; | ||
33 | printk(KERN_INFO "Nvidia board " | ||
34 | "detected. Ignoring ACPI " | ||
35 | "timer override.\n"); | ||
36 | printk(KERN_INFO "If you got timer trouble " | ||
37 | "try acpi_use_timer_override\n"); | ||
38 | |||
39 | } | ||
40 | } | ||
41 | #endif | ||
42 | if (vendor == PCI_VENDOR_ID_ATI && timer_over_8254 == 1) { | ||
43 | timer_over_8254 = 0; | ||
44 | printk(KERN_INFO "ATI board detected. Disabling timer routing " | ||
45 | "over 8254.\n"); | ||
46 | } | ||
47 | return 0; | ||
48 | } | ||
49 | |||
50 | void __init check_acpi_pci(void) | ||
51 | { | ||
52 | int num, slot, func; | ||
53 | |||
54 | /* Assume the machine supports type 1. If not it will | ||
55 | always read ffffffff and should not have any side effect. | ||
56 | Actually a few buggy systems can machine check. Allow the user | ||
57 | to disable it by command line option at least -AK */ | ||
58 | if (!early_pci_allowed()) | ||
59 | return; | ||
60 | |||
61 | /* Poor man's PCI discovery */ | ||
62 | for (num = 0; num < 32; num++) { | ||
63 | for (slot = 0; slot < 32; slot++) { | ||
64 | for (func = 0; func < 8; func++) { | ||
65 | u32 class; | ||
66 | u32 vendor; | ||
67 | class = read_pci_config(num, slot, func, | ||
68 | PCI_CLASS_REVISION); | ||
69 | if (class == 0xffffffff) | ||
70 | break; | ||
71 | |||
72 | if ((class >> 16) != PCI_CLASS_BRIDGE_PCI) | ||
73 | continue; | ||
74 | |||
75 | vendor = read_pci_config(num, slot, func, | ||
76 | PCI_VENDOR_ID); | ||
77 | |||
78 | if (check_bridge(vendor & 0xffff, vendor >> 16)) | ||
79 | return; | ||
80 | } | ||
81 | |||
82 | } | ||
83 | } | ||
84 | } | ||
diff --git a/arch/x86/kernel/acpi/processor.c b/arch/x86/kernel/acpi/processor.c index b54fded49834..2ed0a4ce62f0 100644 --- a/arch/x86/kernel/acpi/processor.c +++ b/arch/x86/kernel/acpi/processor.c | |||
@@ -63,7 +63,7 @@ static void init_intel_pdc(struct acpi_processor *pr, struct cpuinfo_x86 *c) | |||
63 | void arch_acpi_processor_init_pdc(struct acpi_processor *pr) | 63 | void arch_acpi_processor_init_pdc(struct acpi_processor *pr) |
64 | { | 64 | { |
65 | unsigned int cpu = pr->id; | 65 | unsigned int cpu = pr->id; |
66 | struct cpuinfo_x86 *c = cpu_data + cpu; | 66 | struct cpuinfo_x86 *c = &cpu_data(cpu); |
67 | 67 | ||
68 | pr->pdc = NULL; | 68 | pr->pdc = NULL; |
69 | if (c->x86_vendor == X86_VENDOR_INTEL) | 69 | if (c->x86_vendor == X86_VENDOR_INTEL) |