summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorAlex Chiang <achiang@hp.com>2009-12-20 20:19:29 +0100
committerLen Brown <len.brown@intel.com>2009-12-22 09:24:13 +0100
commit6c5807d7bc7d051fce00863ffb98d36325501eb2 (patch)
treeeceda659786e5e6ff659fca0b0382ec52ea13871 /drivers
parentACPI: processor: factor out common _PDC settings (diff)
downloadlinux-6c5807d7bc7d051fce00863ffb98d36325501eb2.tar.xz
linux-6c5807d7bc7d051fce00863ffb98d36325501eb2.zip
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 'drivers')
-rw-r--r--drivers/acpi/processor_pdc.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/acpi/processor_pdc.c b/drivers/acpi/processor_pdc.c
index ccda7c95d073..48df08ebcec4 100644
--- a/drivers/acpi/processor_pdc.c
+++ b/drivers/acpi/processor_pdc.c
@@ -40,6 +40,9 @@ static void acpi_set_pdc_bits(u32 *buf)
/* Enable coordination with firmware's _TSD info */
buf[2] = ACPI_PDC_SMP_T_SWCOORD;
+
+ /* Twiddle arch-specific bits needed for _PDC */
+ arch_acpi_set_pdc_bits(buf);
}
static void acpi_processor_init_pdc(struct acpi_processor *pr)
@@ -81,9 +84,6 @@ static void acpi_processor_init_pdc(struct acpi_processor *pr)
obj_list->pointer = obj;
pr->pdc = obj_list;
- /* Now let the arch do the bit-twiddling to buf[] */
- arch_acpi_processor_init_pdc(pr);
-
return;
}