From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Prarit Bhargava Date: Thu, 11 Jun 2020 21:03:36 -0400 Subject: [PATCH] arch/x86: Remove vendor specific CPU ID checks Upstream Status: RHEL only After discussions with Devel, QE, Support, and Certification we have decided to drop the CPU specific checks in rh_check_supported(). Certification is adopting a new process in which CPU certifications will be tracked on https://catalog.redhat.com. Remove the vendor specific CPU ID checks from rh_check_supported(). Signed-off-by: Prarit Bhargava Cc: David Arcari --- arch/x86/kernel/setup.c | 85 ----------------------------------------- 1 file changed, 85 deletions(-) diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c index 66441cb9c1af..6100995124f9 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c @@ -758,72 +758,6 @@ static void __init trim_low_memory_range(void) } #ifdef CONFIG_RHEL_DIFFERENCES -static bool valid_amd_processor(__u8 family, const char *model_id) -{ - bool valid; - - switch(family) { - case 0x15: - valid = true; - break; - - case 0x17: - valid = strstr(model_id, "AMD EPYC 7"); - break; - - default: - valid = false; - break; - } - - return valid; -} - -static bool valid_intel_processor(__u8 family, __u8 model, __u8 stepping) -{ - bool valid; - - if (family != 6) - return false; - - switch(model) { - case INTEL_FAM6_ATOM_GOLDMONT_D: - case INTEL_FAM6_ATOM_GOLDMONT_PLUS: - - case INTEL_FAM6_BROADWELL: - case INTEL_FAM6_BROADWELL_G: - case INTEL_FAM6_BROADWELL_X: - case INTEL_FAM6_BROADWELL_D: - - case INTEL_FAM6_HASWELL: - case INTEL_FAM6_HASWELL_G: - case INTEL_FAM6_HASWELL_L: - case INTEL_FAM6_HASWELL_X: - valid = true; - break; - - case INTEL_FAM6_KABYLAKE: - valid = (stepping <= 10); - break; - - case INTEL_FAM6_KABYLAKE_L: - valid = (stepping <= 11); - break; - - case INTEL_FAM6_SKYLAKE_L: - case INTEL_FAM6_SKYLAKE: - case INTEL_FAM6_SKYLAKE_X: - /* stepping > 4 is Cascade Lake and is not supported */ - valid = (stepping <= 4); - break; - - default: - valid = false; - break; - } - - return valid; -} static void rh_check_supported(void) { @@ -844,27 +778,8 @@ static void rh_check_supported(void) */ switch (boot_cpu_data.x86_vendor) { case X86_VENDOR_AMD: - if (!valid_amd_processor(boot_cpu_data.x86, - boot_cpu_data.x86_model_id)) { - pr_crit("Detected CPU family %xh model %d\n", - boot_cpu_data.x86, - boot_cpu_data.x86_model); - mark_hardware_unsupported("AMD Processor"); - } - break; - case X86_VENDOR_INTEL: - if (!valid_intel_processor(boot_cpu_data.x86, - boot_cpu_data.x86_model, - boot_cpu_data.x86_stepping)) { - pr_crit("Detected CPU family %d model %d stepping %d\n", - boot_cpu_data.x86, - boot_cpu_data.x86_model, - boot_cpu_data.x86_stepping); - mark_hardware_unsupported("Intel Processor"); - } break; - default: pr_crit("Detected processor %s %s\n", boot_cpu_data.x86_vendor_id, -- 2.28.0