]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
x86/apic: Fix 32-bit APIC initialization for extended Intel Families
authorSohil Mehta <sohil.mehta@intel.com>
Wed, 19 Feb 2025 18:41:19 +0000 (18:41 +0000)
committerIngo Molnar <mingo@kernel.org>
Wed, 19 Mar 2025 10:19:29 +0000 (11:19 +0100)
APIC detection is currently limited to a few specific Families and will
not match the upcoming Families >=18.

Extend the check to include all Families 6 or greater. Also convert it
to a VFM check to make it simpler.

Signed-off-by: Sohil Mehta <sohil.mehta@intel.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Acked-by: Dave Hansen <dave.hansen@linux.intel.com>
Link: https://lore.kernel.org/r/20250219184133.816753-2-sohil.mehta@intel.com
arch/x86/kernel/apic/apic.c

index ddca8da6d4680654a8b4b1a172ef8344637e0147..62584a34793115d6ce5238ea3ffc9074edab6c35 100644 (file)
@@ -2011,8 +2011,8 @@ static bool __init detect_init_APIC(void)
        case X86_VENDOR_HYGON:
                break;
        case X86_VENDOR_INTEL:
-               if (boot_cpu_data.x86 == 6 || boot_cpu_data.x86 == 15 ||
-                   (boot_cpu_data.x86 == 5 && boot_cpu_has(X86_FEATURE_APIC)))
+               if ((boot_cpu_data.x86 == 5 && boot_cpu_has(X86_FEATURE_APIC)) ||
+                   boot_cpu_data.x86_vfm >= INTEL_PENTIUM_PRO)
                        break;
                goto no_apic;
        default: