summaryrefslogtreecommitdiffstats
path: root/arch/i386/kernel
diff options
context:
space:
mode:
authorJason Davis <jason@rightthere.net>2005-04-17 00:24:53 +0200
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-17 00:24:53 +0200
commit90660ec3c3e3f463a3cc7005213345b6c9ecfab9 (patch)
tree1b9d29d6db925d41e282f2f3dcff189b4c185f90 /arch/i386/kernel
parent[PATCH] x86_64: disable interrupts during SMP bogomips checking (diff)
downloadlinux-90660ec3c3e3f463a3cc7005213345b6c9ecfab9.tar.xz
linux-90660ec3c3e3f463a3cc7005213345b6c9ecfab9.zip
[PATCH] x86_64 genapic update
x86_64 genapic mechanism should be aware of machines that use physical APIC mode regardless of how many clusters/processors are detected. ACPI 3.0 FADT makes this determination very simple by providing a feature flag "force_apic_physical_destination_mode" to state whether the machine unconditionally uses physical APIC mode. Unisys' next generation x86_64 ES7000 will need to utilize this FADT feature flag in order to boot the x86_64 kernel in the correct APIC mode. This patch has been tested on both x86_64 commodity and ES7000 boxes. Signed-off-by: Jason Davis <jason.davis@unisys.com> Acked-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/i386/kernel')
-rw-r--r--arch/i386/kernel/acpi/boot.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/i386/kernel/acpi/boot.c b/arch/i386/kernel/acpi/boot.c
index 9ba0b957d11f..040451e90a04 100644
--- a/arch/i386/kernel/acpi/boot.c
+++ b/arch/i386/kernel/acpi/boot.c
@@ -608,6 +608,10 @@ static int __init acpi_parse_fadt(unsigned long phys, unsigned long size)
acpi_fadt.sci_int = fadt->sci_int;
#endif
+ /* initialize rev and apic_phys_dest_mode for x86_64 genapic */
+ acpi_fadt.revision = fadt->revision;
+ acpi_fadt.force_apic_physical_destination_mode = fadt->force_apic_physical_destination_mode;
+
#ifdef CONFIG_X86_PM_TIMER
/* detect the location of the ACPI PM Timer */
if (fadt->revision >= FADT2_REVISION_ID) {