mirror of
https://github.com/torvalds/linux.git
synced 2026-04-22 16:53:59 -04:00
AMD Zen-based systems report memory error addresses through machine check banks representing Unified Memory Controllers (UMCs) in the form of UMC relative "normalized" addresses. A normalized address must be converted to a system physical address to be usable by the OS. Future AMD platforms will provide a UEFI PRM module that implements a number of address translation PRM handlers. This will provide an interface for the OS to call platform specific code without requiring the use of SMM or other heavy firmware operations. Add support for the normalized to system physical address translation PRM handler in the AMD Address Translation Library and prefer it over native code if available. The GUID and parameter buffer structure are specific to the normalized to system physical address handler provided by the address translation PRM module included in future AMD systems. The address translation PRM module is documented in chapter 22 of the publicly available "AMD Family 1Ah Models 00h–0Fh and Models 10h–1Fh ACPI v6.5 Porting Guide". [ bp: Massage commit message. ] Signed-off-by: John Allen <john.allen@amd.com> Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de> Link: https://lore.kernel.org/r/20240730151731.15363-3-john.allen@amd.com
26 lines
652 B
Plaintext
26 lines
652 B
Plaintext
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
#
|
|
# AMD Address Translation Library Kconfig
|
|
#
|
|
# Copyright (c) 2023, Advanced Micro Devices, Inc.
|
|
# All Rights Reserved.
|
|
#
|
|
# Author: Yazen Ghannam <Yazen.Ghannam@amd.com>
|
|
|
|
config AMD_ATL
|
|
tristate "AMD Address Translation Library"
|
|
depends on AMD_NB && X86_64 && RAS
|
|
depends on MEMORY_FAILURE
|
|
default N
|
|
help
|
|
This library includes support for implementation-specific
|
|
address translation procedures needed for various error
|
|
handling cases.
|
|
|
|
Enable this option if using DRAM ECC on Zen-based systems
|
|
and OS-based error handling.
|
|
|
|
config AMD_ATL_PRM
|
|
depends on AMD_ATL && ACPI_PRMT
|
|
def_bool y
|