| From 95146fb3988ae0e2bf0613f70064780b9029ca1d Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Fri, 6 Dec 2024 16:11:55 +0000 |
| Subject: x86/amd_nb: Restrict init function to AMD-based systems |
| |
| From: Yazen Ghannam <yazen.ghannam@amd.com> |
| |
| [ Upstream commit bee9e840609cc67d0a7d82f22a2130fb7a0a766d ] |
| |
| The code implicitly operates on AMD-based systems by matching on PCI |
| IDs. However, the use of these IDs is going away. |
| |
| Add an explicit CPU vendor check instead of relying on PCI IDs. |
| |
| Signed-off-by: Yazen Ghannam <yazen.ghannam@amd.com> |
| Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de> |
| Link: https://lore.kernel.org/r/20241206161210.163701-3-yazen.ghannam@amd.com |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| arch/x86/kernel/amd_nb.c | 4 ++++ |
| 1 file changed, 4 insertions(+) |
| |
| diff --git a/arch/x86/kernel/amd_nb.c b/arch/x86/kernel/amd_nb.c |
| index 9fe9972d2071b..37b8244899d89 100644 |
| --- a/arch/x86/kernel/amd_nb.c |
| +++ b/arch/x86/kernel/amd_nb.c |
| @@ -582,6 +582,10 @@ static __init void fix_erratum_688(void) |
| |
| static __init int init_amd_nbs(void) |
| { |
| + if (boot_cpu_data.x86_vendor != X86_VENDOR_AMD && |
| + boot_cpu_data.x86_vendor != X86_VENDOR_HYGON) |
| + return 0; |
| + |
| amd_cache_northbridges(); |
| amd_cache_gart(); |
| |
| -- |
| 2.39.5 |
| |