From 71c7de856234c0f2cdf6b5693ef87324db31af72 Mon Sep 17 00:00:00 2001 From: Wenhui Fan Date: Mon, 16 Jun 2025 11:32:47 +0800 Subject: [PATCH] anolis: EDAC/amd64: Use unicast instead of broadcast to access the cs_config register ANBZ: #21447 In the scenario that DDR memory numbers are different in per node, broadcast access can not get the correct value of the cs_config, so use unicast access instead. Fixes: 48df47c37e8b ("anolis: EDAC/amd64: Correct the address translation for hygon family 18h model 4h") Signed-off-by: Wenhui Fan --- drivers/edac/amd64_edac.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/edac/amd64_edac.c b/drivers/edac/amd64_edac.c index 628c19dd709b..8c73fa46d9c3 100644 --- a/drivers/edac/amd64_edac.c +++ b/drivers/edac/amd64_edac.c @@ -859,7 +859,7 @@ static int hygon_umc_normaddr_to_sysaddr(u64 norm_addr, u16 nid, u8 umc, } if (boot_cpu_data.x86_model == 0x4) { - if (df_indirect_read_broadcast(nid, 2, 0x48, &ctx.tmp)) + if (df_indirect_read_instance(nid, 2, 0x48, umc, &ctx.tmp)) goto out_err; chan_addr_sel = (ctx.tmp >> 24) & 0x1; chan_hash_enable = (ctx.tmp >> 23) & 0x1; -- Gitee