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 <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: "H. Peter Anvin" <[email protected]>
Signed-off-by: Alex Chiang <[email protected]>
Signed-off-by: Len Brown <[email protected]>
This commit is contained in:
Alex Chiang 2009-12-20 12:19:29 -07:00 • committed by Len Brown
commit 6c5807d7bc
6 changed files with 26 additions and 56 deletions

View file

@ -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;
}