[PATCH v5 3/8] EDAC/amd64: Stop matching Hygon CPUs

From: Lin Wang

Date: Thu Sep 10 2026 - 04:39:32 EST


amd64_edac matches Hygon Family 0x18, but obtains its node count and
F3 devices from the AMD northbridge cache. That cache maps dense node
indices to fixed PCI slots starting at 0x18. Hygon discovers DF devices
by PCI ID and reads their identities from DF registers. Their PCI slots
do not encode node identity, and CPU NodeIds are sparse across sockets.
The cache therefore cannot represent the Hygon topology.

A failed fixed-slot F3 lookup causes amd_cache_northbridges() to discard
the cache, and amd64_edac then exits at its amd_nb_num() check. The
driver has no valid Hygon node count or node-to-F3 mapping.

Remove the Hygon CPU match and the unused Family 0x18 case. Hygon memory
controller support requires the Hygon node interfaces and will be added
separately. This does not affect MCE decoding in mce_amd.c.

Signed-off-by: Lin Wang <wanglin@xxxxxxxxxxxxxx>
---
drivers/edac/amd64_edac.c | 4 ----
1 file changed, 4 deletions(-)

diff --git a/drivers/edac/amd64_edac.c b/drivers/edac/amd64_edac.c
index 475235c402e8..9e35098d3dd2 100644
--- a/drivers/edac/amd64_edac.c
+++ b/drivers/edac/amd64_edac.c
@@ -3840,9 +3840,6 @@ static int per_family_init(struct amd64_pvt *pvt)
}
break;

- case 0x18:
- break;
-
case 0x19:
switch (pvt->model) {
case 0x00 ... 0x0f:
@@ -4120,7 +4117,6 @@ static const struct x86_cpu_id amd64_cpuids[] = {
X86_MATCH_VENDOR_FAM(AMD, 0x15, NULL),
X86_MATCH_VENDOR_FAM(AMD, 0x16, NULL),
X86_MATCH_VENDOR_FAM(AMD, 0x17, NULL),
- X86_MATCH_VENDOR_FAM(HYGON, 0x18, NULL),
X86_MATCH_VENDOR_FAM(AMD, 0x19, NULL),
X86_MATCH_VENDOR_FAM(AMD, 0x1A, NULL),
{ }
--
2.43.0