Apologies for the quick turn around on v2 - I wanted to deal with the big formatting issues very quickly before others hacked on it. v2: - Formatting (Jonathan) - Cross-links - Mild formatting and wording updates. - Some graphs in cxl-driver to explan object relationships --- This series converts CXL Boot to Bash Docs to Linux Kernel Docs. I tried to break it into separate patches to make it easier for people with specific expertise to review. The big open TODOs: - use-case documentation. I only have the type-3 perspective, and only one perspective. It would be good to have that hacked on more generally. - memory tiering documentation. I basically left this unfilled for now. Would like some basic docs on at least TPP and DAMON. - devices: CDAT explanation It would be good to have this spelled out at least a little bit. - platform: ACPI SRAT Generic port / initiator docs I don't know anything about this and people say it's important. Thank you to everyone who contributed feedback during LSF/MM Boot-to-Bash proposal. Hopefully I incorporated most feedback, but I may have missed some. Co-developed-by: Joshua Hahn <joshua.hahnjy@xxxxxxxxx> Signed-off-by: Joshua Hahn <joshua.hahnjy@xxxxxxxxx> Signed-off-by: Gregory Price <gourry@xxxxxxxxxx> Gregory Price (18): cxl: update documentation structure in prep for new docs cxl: docs/devices - device reference and uefi placeholder cxl: docs/platform/bios-and-efi documentation cxl: docs/platform/acpi reference documentation cxl: docs/platform/example-configs documentation cxl: docs/linux - overview cxl: docs/linux - early boot configuration cxl: docs/linux - add cxl-driver theory of operation cxl: docs/linux/cxl-driver - add example configurations cxl: docs/linux/dax-driver documentation cxl: docs/linux/memory-hotplug cxl: docs/allocation/dax cxl: docs/allocation/page-allocator cxl: docs/allocation/reclaim cxl: docs/allocation/hugepages cxl: docs/allocation/tiering cxl: docs/use-cases cxl: docs - add self-referencing cross-links .../driver-api/cxl/allocation/dax.rst | 60 ++ .../driver-api/cxl/allocation/hugepages.rst | 34 + .../cxl/allocation/page-allocator.rst | 86 +++ .../driver-api/cxl/allocation/reclaim.rst | 51 ++ .../driver-api/cxl/allocation/tiering.rst | 31 + .../driver-api/cxl/devices/device-types.rst | 170 +++++ Documentation/driver-api/cxl/devices/uefi.rst | 10 + Documentation/driver-api/cxl/index.rst | 56 +- .../cxl/{ => linux}/access-coordinates.rst | 8 +- .../driver-api/cxl/linux/cxl-driver.rst | 631 ++++++++++++++++++ .../driver-api/cxl/linux/dax-driver.rst | 43 ++ .../driver-api/cxl/linux/early-boot.rst | 136 ++++ .../example-configurations/hb-interleave.rst | 314 +++++++++ .../intra-hb-interleave.rst | 291 ++++++++ .../multi-interleave.rst | 401 +++++++++++ .../example-configurations/single-device.rst | 246 +++++++ .../driver-api/cxl/linux/memory-hotplug.rst | 78 +++ .../driver-api/cxl/linux/overview.rst | 103 +++ .../driver-api/cxl/platform/acpi.rst | 76 +++ .../driver-api/cxl/platform/acpi/cedt.rst | 53 ++ .../driver-api/cxl/platform/acpi/dsdt.rst | 28 + .../driver-api/cxl/platform/acpi/hmat.rst | 29 + .../driver-api/cxl/platform/acpi/slit.rst | 18 + .../driver-api/cxl/platform/acpi/srat.rst | 38 ++ .../driver-api/cxl/platform/bios-and-efi.rst | 263 ++++++++ .../cxl/platform/example-configs.rst | 13 + .../example-configurations/flexible.rst | 296 ++++++++ .../example-configurations/hb-interleave.rst | 107 +++ .../multi-dev-per-hb.rst | 90 +++ .../example-configurations/one-dev-per-hb.rst | 136 ++++ ...ry-devices.rst => theory-of-operation.rst} | 10 +- .../cxl/use-case/dynamic-capacity.rst | 20 + .../cxl/use-case/memory-expansion.rst | 15 + .../driver-api/cxl/use-case/shared-memory.rst | 15 + .../cxl/use-case/virtual-machines.rst | 19 + 35 files changed, 3963 insertions(+), 12 deletions(-) create mode 100644 Documentation/driver-api/cxl/allocation/dax.rst create mode 100644 Documentation/driver-api/cxl/allocation/hugepages.rst create mode 100644 Documentation/driver-api/cxl/allocation/page-allocator.rst create mode 100644 Documentation/driver-api/cxl/allocation/reclaim.rst create mode 100644 Documentation/driver-api/cxl/allocation/tiering.rst create mode 100644 Documentation/driver-api/cxl/devices/device-types.rst create mode 100644 Documentation/driver-api/cxl/devices/uefi.rst rename Documentation/driver-api/cxl/{ => linux}/access-coordinates.rst (93%) create mode 100644 Documentation/driver-api/cxl/linux/cxl-driver.rst create mode 100644 Documentation/driver-api/cxl/linux/dax-driver.rst create mode 100644 Documentation/driver-api/cxl/linux/early-boot.rst create mode 100644 Documentation/driver-api/cxl/linux/example-configurations/hb-interleave.rst create mode 100644 Documentation/driver-api/cxl/linux/example-configurations/intra-hb-interleave.rst create mode 100644 Documentation/driver-api/cxl/linux/example-configurations/multi-interleave.rst create mode 100644 Documentation/driver-api/cxl/linux/example-configurations/single-device.rst create mode 100644 Documentation/driver-api/cxl/linux/memory-hotplug.rst create mode 100644 Documentation/driver-api/cxl/linux/overview.rst create mode 100644 Documentation/driver-api/cxl/platform/acpi.rst create mode 100644 Documentation/driver-api/cxl/platform/acpi/cedt.rst create mode 100644 Documentation/driver-api/cxl/platform/acpi/dsdt.rst create mode 100644 Documentation/driver-api/cxl/platform/acpi/hmat.rst create mode 100644 Documentation/driver-api/cxl/platform/acpi/slit.rst create mode 100644 Documentation/driver-api/cxl/platform/acpi/srat.rst create mode 100644 Documentation/driver-api/cxl/platform/bios-and-efi.rst create mode 100644 Documentation/driver-api/cxl/platform/example-configs.rst create mode 100644 Documentation/driver-api/cxl/platform/example-configurations/flexible.rst create mode 100644 Documentation/driver-api/cxl/platform/example-configurations/hb-interleave.rst create mode 100644 Documentation/driver-api/cxl/platform/example-configurations/multi-dev-per-hb.rst create mode 100644 Documentation/driver-api/cxl/platform/example-configurations/one-dev-per-hb.rst rename Documentation/driver-api/cxl/{memory-devices.rst => theory-of-operation.rst} (98%) create mode 100644 Documentation/driver-api/cxl/use-case/dynamic-capacity.rst create mode 100644 Documentation/driver-api/cxl/use-case/memory-expansion.rst create mode 100644 Documentation/driver-api/cxl/use-case/shared-memory.rst create mode 100644 Documentation/driver-api/cxl/use-case/virtual-machines.rst -- 2.49.0