Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

cxl: docs/platform/acpi/srat Add generic target documentation

Add description in the SRAT document to describe the Generic Port
Affinity sub-table.

Reviewed-by: Gregory Price <gourry@gourry.net>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Link: https://patch.msgid.link/20250515000923.2590820-3-dave.jiang@intel.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>

Dave Jiang 1ce91b37 49cee8fe

+27
+27
Documentation/driver-api/cxl/platform/acpi/srat.rst
··· 42 42 Enabled : 1 43 43 Hot Pluggable : 1 44 44 Non-Volatile : 0 45 + 46 + 47 + Generic Port Affinity 48 + ===================== 49 + The Generic Port Affinity subtable provides an association between a proximity 50 + domain and a device handle representing a Generic Port such as a CXL host 51 + bridge. With the association, latency and bandwidth numbers can be retrieved 52 + from the SRAT for the path between CPU(s) (initiator) and the Generic Port. 53 + This is used to construct performance coordinates for hotplugged CXL DEVICES, 54 + which cannot be enumerated at boot by platform firmware. 55 + 56 + Example :: 57 + 58 + Subtable Type : 06 [Generic Port Affinity] 59 + Length : 20 <- 32d, length of table 60 + Reserved : 00 61 + Device Handle Type : 00 <- 0 - ACPI, 1 - PCI 62 + Proximity Domain : 00000001 63 + Device Handle : ACPI0016:01 64 + Flags : 00000001 <- Bit 0 (Enabled) 65 + Reserved : 00000000 66 + 67 + The Proximity Domain is matched up to the :doc:`HMAT <hmat>` SSLBI Target 68 + Proximity Domain List for the related latency or bandwidth numbers. Those 69 + performance numbers are tied to a CXL host bridge via the Device Handle. 70 + The driver uses the association to retrieve the Generic Port performance 71 + numbers for the whole CXL path access coordinates calculation.