[tip: x86/misc] x86/amd_nb: Clean up early_is_amd_nb()

From: tip-bot2 for Yazen Ghannam
Date: Thu Jan 09 2025 - 04:17:13 EST


The following commit has been merged into the x86/misc branch of tip:

Commit-ID: e13f51b51814e2527c51998d2dae594ef9cb633a
Gitweb: https://git.kernel.org/tip/e13f51b51814e2527c51998d2dae594ef9cb633a
Author: Yazen Ghannam <yazen.ghannam@xxxxxxx>
AuthorDate: Fri, 06 Dec 2024 16:11:56
Committer: Borislav Petkov (AMD) <bp@xxxxxxxxx>
CommitterDate: Wed, 08 Jan 2025 10:47:22 +01:00

x86/amd_nb: Clean up early_is_amd_nb()

The check for early_is_amd_nb() is only useful for systems with GART or
the NB_CFG register.

Zen-based systems (both AMD and Hygon) have neither, so return early for
them.

Signed-off-by: Yazen Ghannam <yazen.ghannam@xxxxxxx>
Signed-off-by: Borislav Petkov (AMD) <bp@xxxxxxxxx>
Link: https://lore.kernel.org/r/20241206161210.163701-4-yazen.ghannam@xxxxxxx
---
arch/x86/kernel/amd_nb.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/arch/x86/kernel/amd_nb.c b/arch/x86/kernel/amd_nb.c
index 37b8244..ee20071 100644
--- a/arch/x86/kernel/amd_nb.c
+++ b/arch/x86/kernel/amd_nb.c
@@ -385,7 +385,6 @@ static int amd_cache_northbridges(void)
*/
bool __init early_is_amd_nb(u32 device)
{
- const struct pci_device_id *misc_ids = amd_nb_misc_ids;
const struct pci_device_id *id;
u32 vendor = device & 0xffff;

@@ -393,11 +392,11 @@ bool __init early_is_amd_nb(u32 device)
boot_cpu_data.x86_vendor != X86_VENDOR_HYGON)
return false;

- if (boot_cpu_data.x86_vendor == X86_VENDOR_HYGON)
- misc_ids = hygon_nb_misc_ids;
+ if (cpu_feature_enabled(X86_FEATURE_ZEN))
+ return false;

device >>= 16;
- for (id = misc_ids; id->vendor; id++)
+ for (id = amd_nb_misc_ids; id->vendor; id++)
if (vendor == id->vendor && device == id->device)
return true;
return false;