xref: /linux/Documentation/driver-api/cxl/platform/example-configurations/hb-interleave.rst (revision 8545940bd420e7a79c66bccee330a947581d259b)
1*8545940bSGregory Price.. SPDX-License-Identifier: GPL-2.0
2*8545940bSGregory Price
3*8545940bSGregory Price============================
4*8545940bSGregory PriceCross-Host-Bridge Interleave
5*8545940bSGregory Price============================
6*8545940bSGregory PriceThis system has a single socket with two CXL host bridges. Each host bridge
7*8545940bSGregory Pricehas a single CXL memory expander with a 4GB of memory.
8*8545940bSGregory Price
9*8545940bSGregory PriceThings to note:
10*8545940bSGregory Price
11*8545940bSGregory Price* Cross-Bridge interleave is described.
12*8545940bSGregory Price* The expanders are described by a single CFMWS.
13*8545940bSGregory Price* This SRAT describes one node for both host bridges.
14*8545940bSGregory Price* The HMAT describes a single node's performance.
15*8545940bSGregory Price
16*8545940bSGregory PriceCEDT ::
17*8545940bSGregory Price
18*8545940bSGregory Price            Subtable Type : 00 [CXL Host Bridge Structure]
19*8545940bSGregory Price                 Reserved : 00
20*8545940bSGregory Price                   Length : 0020
21*8545940bSGregory Price   Associated host bridge : 00000007
22*8545940bSGregory Price    Specification version : 00000001
23*8545940bSGregory Price                 Reserved : 00000000
24*8545940bSGregory Price            Register base : 0000010370400000
25*8545940bSGregory Price          Register length : 0000000000010000
26*8545940bSGregory Price
27*8545940bSGregory Price            Subtable Type : 00 [CXL Host Bridge Structure]
28*8545940bSGregory Price                 Reserved : 00
29*8545940bSGregory Price                   Length : 0020
30*8545940bSGregory Price   Associated host bridge : 00000006
31*8545940bSGregory Price    Specification version : 00000001
32*8545940bSGregory Price                 Reserved : 00000000
33*8545940bSGregory Price            Register base : 0000010380800000
34*8545940bSGregory Price          Register length : 0000000000010000
35*8545940bSGregory Price
36*8545940bSGregory Price            Subtable Type : 01 [CXL Fixed Memory Window Structure]
37*8545940bSGregory Price                 Reserved : 00
38*8545940bSGregory Price                   Length : 002C
39*8545940bSGregory Price                 Reserved : 00000000
40*8545940bSGregory Price      Window base address : 0000001000000000
41*8545940bSGregory Price              Window size : 0000000200000000
42*8545940bSGregory Price Interleave Members (2^n) : 01
43*8545940bSGregory Price    Interleave Arithmetic : 00
44*8545940bSGregory Price                 Reserved : 0000
45*8545940bSGregory Price              Granularity : 00000000
46*8545940bSGregory Price             Restrictions : 0006
47*8545940bSGregory Price                    QtgId : 0001
48*8545940bSGregory Price             First Target : 00000007
49*8545940bSGregory Price            Second Target : 00000006
50*8545940bSGregory Price
51*8545940bSGregory PriceSRAT ::
52*8545940bSGregory Price
53*8545940bSGregory Price         Subtable Type : 01 [Memory Affinity]
54*8545940bSGregory Price                Length : 28
55*8545940bSGregory Price      Proximity Domain : 00000001
56*8545940bSGregory Price             Reserved1 : 0000
57*8545940bSGregory Price          Base Address : 0000001000000000
58*8545940bSGregory Price        Address Length : 0000000200000000
59*8545940bSGregory Price             Reserved2 : 00000000
60*8545940bSGregory Price Flags (decoded below) : 0000000B
61*8545940bSGregory Price             Enabled : 1
62*8545940bSGregory Price       Hot Pluggable : 1
63*8545940bSGregory Price        Non-Volatile : 0
64*8545940bSGregory Price
65*8545940bSGregory PriceHMAT ::
66*8545940bSGregory Price
67*8545940bSGregory Price               Structure Type : 0001 [SLLBI]
68*8545940bSGregory Price                    Data Type : 00   [Latency]
69*8545940bSGregory Price Target Proximity Domain List : 00000000
70*8545940bSGregory Price Target Proximity Domain List : 00000001
71*8545940bSGregory Price Target Proximity Domain List : 00000002
72*8545940bSGregory Price                        Entry : 0080
73*8545940bSGregory Price                        Entry : 0100
74*8545940bSGregory Price
75*8545940bSGregory Price               Structure Type : 0001 [SLLBI]
76*8545940bSGregory Price                    Data Type : 03   [Bandwidth]
77*8545940bSGregory Price Target Proximity Domain List : 00000000
78*8545940bSGregory Price Target Proximity Domain List : 00000001
79*8545940bSGregory Price Target Proximity Domain List : 00000002
80*8545940bSGregory Price                        Entry : 1200
81*8545940bSGregory Price                        Entry : 0400
82*8545940bSGregory Price
83*8545940bSGregory PriceSLIT ::
84*8545940bSGregory Price
85*8545940bSGregory Price     Signature : "SLIT"    [System Locality Information Table]
86*8545940bSGregory Price    Localities : 0000000000000003
87*8545940bSGregory Price  Locality   0 : 10 20
88*8545940bSGregory Price  Locality   1 : FF 0A
89*8545940bSGregory Price
90*8545940bSGregory PriceDSDT ::
91*8545940bSGregory Price
92*8545940bSGregory Price  Scope (_SB)
93*8545940bSGregory Price  {
94*8545940bSGregory Price    Device (S0D0)
95*8545940bSGregory Price    {
96*8545940bSGregory Price        Name (_HID, "ACPI0016" /* Compute Express Link Host Bridge */)  // _HID: Hardware ID
97*8545940bSGregory Price        ...
98*8545940bSGregory Price        Name (_UID, 0x07)  // _UID: Unique ID
99*8545940bSGregory Price    }
100*8545940bSGregory Price    ...
101*8545940bSGregory Price    Device (S0D5)
102*8545940bSGregory Price    {
103*8545940bSGregory Price        Name (_HID, "ACPI0016" /* Compute Express Link Host Bridge */)  // _HID: Hardware ID
104*8545940bSGregory Price        ...
105*8545940bSGregory Price        Name (_UID, 0x06)  // _UID: Unique ID
106*8545940bSGregory Price    }
107*8545940bSGregory Price  }
108