]> git.ipfire.org Git - thirdparty/linux.git/commit
cxl/atl: Lock decoders that need address translation
authorRobert Richter <rrichter@amd.com>
Wed, 14 Jan 2026 16:48:27 +0000 (17:48 +0100)
committerDave Jiang <dave.jiang@intel.com>
Wed, 4 Feb 2026 16:17:31 +0000 (09:17 -0700)
commita2e794895089c1356b7687e8df1fa7d224d40bb6
treeac52326d76d43a0daa807529410de8ce53327db2
parentaf74daf91652f15b82560bb93850d2ec8bbfa976
cxl/atl: Lock decoders that need address translation

The current kernel implementation does not support endpoint setup with
Normalized Addressing. It only translates an endpoint's DPA to the SPA
range of the host bridge. Therefore, the endpoint address range cannot
be determined, making a non-auto setup impossible. If a decoder
requires address translation, reprogramming should be disabled and the
decoder locked.

The BIOS, however, provides all the necessary address translation
data, which the kernel can use to reconfigure endpoint decoders with
normalized addresses. Locking the decoders in the BIOS would prevent a
capable kernel (or other operating systems) from shutting down
auto-generated regions and managing resources dynamically.

Reviewed-by: Gregory Price <gourry@gourry.net>
Reviewed-by: Jonathan Cameron <jonathan.cameron@huawei.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Tested-by: Gregory Price <gourry@gourry.net>
Signed-off-by: Robert Richter <rrichter@amd.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>> ---
Link: https://patch.msgid.link/20260114164837.1076338-12-rrichter@amd.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
drivers/cxl/core/atl.c