1.. SPDX-License-Identifier: GPL-2.0 2 3================================ 4CEDT - CXL Early Discovery Table 5================================ 6 7The CXL Early Discovery Table is generated by BIOS to describe the CXL memory 8regions configured at boot by the BIOS. 9 10CHBS 11==== 12The CXL Host Bridge Structure describes CXL host bridges. Other than describing 13device register information, it reports the specific host bridge UID for this 14host bridge. These host bridge ID's will be referenced in other tables. 15 16Example :: 17 18 Subtable Type : 00 [CXL Host Bridge Structure] 19 Reserved : 00 20 Length : 0020 21 Associated host bridge : 00000007 <- Host bridge _UID 22 Specification version : 00000001 23 Reserved : 00000000 24 Register base : 0000010370400000 25 Register length : 0000000000010000 26 27CFMWS 28===== 29The CXL Fixed Memory Window structure describes a memory region associated 30with one or more CXL host bridges (as described by the CHBS). It additionally 31describes any inter-host-bridge interleave configuration that may have been 32programmed by BIOS. 33 34Example :: 35 36 Subtable Type : 01 [CXL Fixed Memory Window Structure] 37 Reserved : 00 38 Length : 002C 39 Reserved : 00000000 40 Window base address : 000000C050000000 <- Memory Region 41 Window size : 0000003CA0000000 42 Interleave Members (2^n) : 01 <- Interleave configuration 43 Interleave Arithmetic : 00 44 Reserved : 0000 45 Granularity : 00000000 46 Restrictions : 0006 47 QtgId : 0001 48 First Target : 00000007 <- Host Bridge _UID 49 Next Target : 00000006 <- Host Bridge _UID 50 51The restriction field dictates what this SPA range may be used for (memory type, 52voltile vs persistent, etc). One or more bits may be set. :: 53 54 Bit[0]: CXL Type 2 Memory 55 Bit[1]: CXL Type 3 Memory 56 Bit[2]: Volatile Memory 57 Bit[3]: Persistent Memory 58 Bit[4]: Fixed Config (HPA cannot be re-used) 59 60INTRA-host-bridge interleave (multiple devices on one host bridge) is NOT 61reported in this structure, and is solely defined via CXL device decoder 62programming (host bridge and endpoint decoders). 63