diff options
author | Alex Chiang <achiang@hp.com> | 2009-12-20 14:19:29 -0500 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2009-12-22 03:24:13 -0500 |
commit | 6c5807d7bc7d051fce00863ffb98d36325501eb2 (patch) | |
tree | eceda659786e5e6ff659fca0b0382ec52ea13871 /arch/ia64 | |
parent | 08ea48a326d8030ef5b7fb02292faf5a53c95e0a (diff) |
ACPI: processor: finish unifying arch_acpi_processor_init_pdc()
The only thing arch-specific about calling _PDC is what bits get
set in the input obj_list buffer.
There's no need for several levels of indirection to twiddle those
bits. Additionally, since we're just messing around with a buffer,
we can simplify the interface; no need to pass around the entire
struct acpi_processor * just to get at the buffer.
Cc: Tony Luck <tony.luck@intel.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Signed-off-by: Alex Chiang <achiang@hp.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'arch/ia64')
-rw-r--r-- | arch/ia64/include/asm/acpi.h | 4 | ||||
-rw-r--r-- | arch/ia64/kernel/acpi-processor.c | 18 |
2 files changed, 4 insertions, 18 deletions
diff --git a/arch/ia64/include/asm/acpi.h b/arch/ia64/include/asm/acpi.h index 3b788829464..7ae58892ba8 100644 --- a/arch/ia64/include/asm/acpi.h +++ b/arch/ia64/include/asm/acpi.h | |||
@@ -133,6 +133,10 @@ extern int __initdata nid_to_pxm_map[MAX_NUMNODES]; | |||
133 | #endif | 133 | #endif |
134 | 134 | ||
135 | static inline bool arch_has_acpi_pdc(void) { return true; } | 135 | static inline bool arch_has_acpi_pdc(void) { return true; } |
136 | static inline void arch_acpi_set_pdc_bits(u32 *buf) | ||
137 | { | ||
138 | buf[2] |= ACPI_PDC_EST_CAPABILITY_SMP; | ||
139 | } | ||
136 | 140 | ||
137 | #define acpi_unlazy_tlb(x) | 141 | #define acpi_unlazy_tlb(x) |
138 | 142 | ||
diff --git a/arch/ia64/kernel/acpi-processor.c b/arch/ia64/kernel/acpi-processor.c index ebe23f58bd6..7ba5accebf6 100644 --- a/arch/ia64/kernel/acpi-processor.c +++ b/arch/ia64/kernel/acpi-processor.c | |||
@@ -14,24 +14,6 @@ | |||
14 | #include <acpi/processor.h> | 14 | #include <acpi/processor.h> |
15 | #include <asm/acpi.h> | 15 | #include <asm/acpi.h> |
16 | 16 | ||
17 | static void init_intel_pdc(struct acpi_processor *pr) | ||
18 | { | ||
19 | u32 *buf = (u32 *)pr->pdc->pointer->buffer.pointer; | ||
20 | |||
21 | buf[2] |= ACPI_PDC_EST_CAPABILITY_SMP; | ||
22 | |||
23 | return; | ||
24 | } | ||
25 | |||
26 | /* Initialize _PDC data based on the CPU vendor */ | ||
27 | void arch_acpi_processor_init_pdc(struct acpi_processor *pr) | ||
28 | { | ||
29 | init_intel_pdc(pr); | ||
30 | return; | ||
31 | } | ||
32 | |||
33 | EXPORT_SYMBOL(arch_acpi_processor_init_pdc); | ||
34 | |||
35 | void arch_acpi_processor_cleanup_pdc(struct acpi_processor *pr) | 17 | void arch_acpi_processor_cleanup_pdc(struct acpi_processor *pr) |
36 | { | 18 | { |
37 | if (pr->pdc) { | 19 | if (pr->pdc) { |