xref: /linux/Documentation/driver-api/cxl/platform/example-configurations/multi-dev-per-hb.rst (revision e9ef810dfee7a2227da9d423aecb0ced35faddbe)
18545940bSGregory Price.. SPDX-License-Identifier: GPL-2.0
28545940bSGregory Price
38545940bSGregory Price================================
48545940bSGregory PriceMultiple Devices per Host Bridge
58545940bSGregory Price================================
68545940bSGregory Price
78545940bSGregory PriceIn this example system we will have a single socket and one CXL host bridge.
88545940bSGregory PriceThere are two CXL memory expanders with 4GB attached to the host bridge.
98545940bSGregory Price
108545940bSGregory PriceThings to note:
118545940bSGregory Price
128545940bSGregory Price* Intra-Bridge interleave is not described here.
138545940bSGregory Price* The expanders are described by a single CEDT/CFMWS.
148545940bSGregory Price* This CEDT/SRAT describes one node for both devices.
158545940bSGregory Price* There is only one proximity domain the HMAT for both devices.
168545940bSGregory Price
17*dba600d0SGregory Price:doc:`CEDT <../acpi/cedt>`::
188545940bSGregory Price
198545940bSGregory Price            Subtable Type : 00 [CXL Host Bridge Structure]
208545940bSGregory Price                 Reserved : 00
218545940bSGregory Price                   Length : 0020
228545940bSGregory Price   Associated host bridge : 00000007
238545940bSGregory Price    Specification version : 00000001
248545940bSGregory Price                 Reserved : 00000000
258545940bSGregory Price            Register base : 0000010370400000
268545940bSGregory Price          Register length : 0000000000010000
278545940bSGregory Price
288545940bSGregory Price            Subtable Type : 01 [CXL Fixed Memory Window Structure]
298545940bSGregory Price                 Reserved : 00
308545940bSGregory Price                   Length : 002C
318545940bSGregory Price                 Reserved : 00000000
328545940bSGregory Price      Window base address : 0000001000000000
338545940bSGregory Price              Window size : 0000000200000000
348545940bSGregory Price Interleave Members (2^n) : 00
358545940bSGregory Price    Interleave Arithmetic : 00
368545940bSGregory Price                 Reserved : 0000
378545940bSGregory Price              Granularity : 00000000
388545940bSGregory Price             Restrictions : 0006
398545940bSGregory Price                    QtgId : 0001
408545940bSGregory Price             First Target : 00000007
418545940bSGregory Price
42*dba600d0SGregory Price:doc:`SRAT <../acpi/srat>`::
438545940bSGregory Price
448545940bSGregory Price         Subtable Type : 01 [Memory Affinity]
458545940bSGregory Price                Length : 28
468545940bSGregory Price      Proximity Domain : 00000001
478545940bSGregory Price             Reserved1 : 0000
488545940bSGregory Price          Base Address : 0000001000000000
498545940bSGregory Price        Address Length : 0000000200000000
508545940bSGregory Price             Reserved2 : 00000000
518545940bSGregory Price Flags (decoded below) : 0000000B
528545940bSGregory Price             Enabled : 1
538545940bSGregory Price       Hot Pluggable : 1
548545940bSGregory Price        Non-Volatile : 0
558545940bSGregory Price
56*dba600d0SGregory Price:doc:`HMAT <../acpi/hmat>`::
578545940bSGregory Price
588545940bSGregory Price               Structure Type : 0001 [SLLBI]
598545940bSGregory Price                    Data Type : 00   [Latency]
608545940bSGregory Price Target Proximity Domain List : 00000000
618545940bSGregory Price Target Proximity Domain List : 00000001
628545940bSGregory Price                        Entry : 0080
638545940bSGregory Price                        Entry : 0100
648545940bSGregory Price
658545940bSGregory Price               Structure Type : 0001 [SLLBI]
668545940bSGregory Price                    Data Type : 03   [Bandwidth]
678545940bSGregory Price Target Proximity Domain List : 00000000
688545940bSGregory Price Target Proximity Domain List : 00000001
698545940bSGregory Price                        Entry : 1200
708545940bSGregory Price                        Entry : 0200
718545940bSGregory Price
72*dba600d0SGregory Price:doc:`SLIT <../acpi/slit>`::
738545940bSGregory Price
748545940bSGregory Price     Signature : "SLIT"    [System Locality Information Table]
758545940bSGregory Price    Localities : 0000000000000003
768545940bSGregory Price  Locality   0 : 10 20
778545940bSGregory Price  Locality   1 : FF 0A
788545940bSGregory Price
79*dba600d0SGregory Price:doc:`DSDT <../acpi/dsdt>`::
808545940bSGregory Price
818545940bSGregory Price  Scope (_SB)
828545940bSGregory Price  {
838545940bSGregory Price    Device (S0D0)
848545940bSGregory Price    {
858545940bSGregory Price        Name (_HID, "ACPI0016" /* Compute Express Link Host Bridge */)  // _HID: Hardware ID
868545940bSGregory Price        ...
878545940bSGregory Price        Name (_UID, 0x07)  // _UID: Unique ID
888545940bSGregory Price    }
898545940bSGregory Price    ...
908545940bSGregory Price  }
91