Chipsets & PCIe

CXL Type-3 memory-device context

A CXL memory-class context: PCI enumeration, mailbox management and usable system memory are separate stages.

On this page
  1. Overview & identity
  2. Driver & binding
  3. Firmware
  4. Read-only diagnostics
  5. Limitations & related issues
  6. References

Overview & identity

No manufacturer or exact memory appliance is inferred. The checked cxl_pci table matches PCI_CLASS_MEMORY_CXL with CXL_MEMORY_PROGIF 0x10, yielding class 050210. That class identifies a management path for a CXL memory function, not a promise that a CXL region is configured or its memory is online.

This is an explicit class, transport or driver-context profile. It is not an exact numeric product match.

A numeric match establishes a candidate family within the reviewed evidence. Marketing names, board variants, subsystem conditions and successful operation remain separate questions.

Driver & binding

cxl_pci is the class-backed kernel candidate. Its probe checks device capabilities and sets up memory-device management; other CXL core components handle ports, decoders and regions. A bound PCI management driver therefore does not by itself prove that applications can allocate this memory.

  • cxl_pci — kernel driver/module candidate

Detected, bound, operational: learn the difference

Firmware

Device/revision dependent

The PCI driver reads device firmware and mailbox readiness/status but provides no universal host-loaded filename for arbitrary CXL memory hardware. Device firmware and platform description remain implementation-specific; use the exact probe status, not a guessed firmware package.

Inspect firmware packaging on your distribution

Read-only diagnostics

Run one displayed command at a time. Replace uppercase placeholders with the affected device, interface or module from your own output. Commands are never executed here. Read-only output can still contain private identifiers.

Read this function and its bound driver

lspci -nnk -s BDF

Replace BDF with the address of the CXL memory function. The summary normally needs no sudo. Numeric ID and the “driver in use” observation are stronger evidence than a descriptive name or candidate-module list.

Confirm the PCI driver owner

readlink /sys/bus/pci/devices/BDF/driver

Use a full domain:bus:slot.function BDF. This normally needs no sudo and only reads a symlink. The last component is the bound driver; no link records an unbound/absent function, not a missing software package.

Read CXL core device associations

ls -l /sys/bus/cxl/devices

This read-only listing normally needs no sudo. Look for CXL memdev/port objects related to the selected PCI address. Their presence shows core objects; it does not establish that a region is active, memory is online or an application uses it.

Read current-boot controller messages

journalctl -k -b --no-pager

Read the first cxl_pci mailbox/capability or firmware-status error before later region messages. Journal access may require local group membership; failure to read it is not controller failure.

Limitations & related issues

A class hit is not proof of complete CXL platform support or safe memory removal. Firmware status and mailbox readiness can fail independently of enumeration. This profile has no tested capacity, bandwidth or topology configuration and performs no region changes.

These guides are linked for relevant observations, not as known defects of every device in this family.

Choose a hardware diagnostic workflow · Inspect a log excerpt in Fix Lab

References

Source review records a checked implementation or document, not a reproduced hardware test. Version-specific tables do not establish a minimum kernel or guaranteed operation.