[PATCH v8 0/7] Incorporate DRAM address in EDAC messages
From: Yazen Ghannam
Date: Mon Jul 27 2026 - 17:21:12 EST
Hi all,
This revision includes a larger ATL/PRM rework in order to have a single
translation helper. There are 6 UMC address translation PRM handlers
defined today in the AMD ACPI Porting Guide. With this set, we'll be
using 2 of them: NA->SPA and NA->DA. There's a use case for a third
translation: DA->SPA. This would be used to convert specific DA values
to an SPA for preventative actions like row retirement, etc. I'll do
that in a separate, future patch.
Address acronyms:
NA = Normalized Address
SPA = System Physical Address
DA = DRAM address
Also, the "function pointer registration" is back, since that is what
allows the library to be an optional config. I was reminded of this when
the following came up recently.
4c3da04827dc ("RAS/AMD/ATL, EDAC/amd64: Only load ATL when needed")
Patch 1
* Removes the AMD_ATL_PRM config option.
* New idea in this revision.
Patch 2
* Rework the PRM handler wrapper.
* Based on feedback from Boris.
Patches 3-5
* Bulk of the 'unified interface' rework.
* Suggested by Boris.
* Basically, a three step conversion:
* Patch 3 adds the new interface.
* Patch 4 switches users from old to new interface.
* Patch 5 deletes the old interface.
Patches 6-7
* Mostly the same "Add/use DRAM address translation".
* Updated to use the new interface.
* Minor formatting and miscellaneous changes.
Thanks,
Yazen
Cc: Avadhut Naik <avanaik92@xxxxxxxxx>
Link:
https://lore.kernel.org/20260630210640.680758-1-yazen.ghannam@xxxxxxx
Changes in v8:
- Drop "Directly export address translation helper".
- Merge the two PRM translation helpers into one. (Boris)
- Build the PRM support unconditionally and drop CONFIG_AMD_ATL_PRM.
- Formatting and other small changes.
Changes in v7:
- Drop fake_inject patch that was already accepted.
- Remove function pointers. (Boris).
Changes in v6:
- Remove fake_inject interface. (Boris)
- Add two more values to 'other_detail'.
Changes in v5:
- Address a comment from Sashiko in patch 2.
Changes in v4:
- Drop a "handler available" check in patch 1.
- Reword commit message in patch 2.
- Reformat string in patch 2.
Avadhut Naik (2):
RAS/AMD/ATL: Add DRAM address translation via PRM
EDAC/amd64: Include DRAM address in output
Yazen Ghannam (5):
RAS/AMD/ATL: Always build PRM address translation support
RAS/AMD/ATL: Refactor PRM address translation into a common helper
RAS/AMD/ATL: Add unified UMC address translation interface
RAS/AMD/ATL: Use unified interface for SPA translation
RAS/AMD/ATL: Remove the standalone SPA translation interface
drivers/edac/amd64_edac.c | 38 ++++++++++++++++++------
drivers/edac/amd64_edac.h | 2 ++
drivers/ras/amd/atl/Kconfig | 4 ---
drivers/ras/amd/atl/Makefile | 3 +-
drivers/ras/amd/atl/core.c | 4 +--
drivers/ras/amd/atl/internal.h | 13 ++-------
drivers/ras/amd/atl/prm.c | 30 +++++++------------
drivers/ras/amd/atl/system.c | 4 +++
drivers/ras/amd/atl/umc.c | 53 +++++++++++++++++++++++++++-------
drivers/ras/amd/fmpm.c | 10 +++----
drivers/ras/ras.c | 31 +++++++++-----------
include/linux/ras.h | 44 +++++++++++++++++++++++-----
12 files changed, 151 insertions(+), 85 deletions(-)
base-commit: 4020f22dccb18f04ace6c8481dddc01603d21173
--
2.53.0