Version 2 patch series for PCIe DOE for PCIe and CXL 2.0 Summary is
1: PCIe DOE support for Discovery and CMA. - MSI-X and polling supported 2: CXL DOE for CDAT and Compliance Mode. - DOE CDAT response returns one CDAT Structure instance based on request EntryHandle value. - One of each CDAT Structure types supported Based on QEMU version: https://gitlab.com/bwidawsk/qemu/-/tree/cxl-2.0v3 References: 1. CXL 2.0 specification https://www.computeexpresslink.org/download-the-specification 2. PCI-SIG ECN: Data Object Exchange (DOE) http://www.pcisig.com 3. Coherent Device Attribute Table CDAT 1.02 https://uefi.org/sites/default/files/resources/Coherent%20Device%20Attribute%20Table_1.02.pdf --- Chris Browy (2): Basic PCIe DOE support Basic CXL DOE for CDAT and Compliance Mode MAINTAINERS | 7 + hw/cxl/cxl-component-utils.c | 132 ++++++++++ hw/mem/cxl_type3.c | 172 +++++++++++++ hw/pci/meson.build | 1 + hw/pci/pcie.c | 2 +- hw/pci/pcie_doe.c | 414 ++++++++++++++++++++++++++++++ include/hw/cxl/cxl_cdat.h | 120 +++++++++ include/hw/cxl/cxl_compl.h | 289 +++++++++++++++++++++ include/hw/cxl/cxl_component.h | 126 +++++++++ include/hw/cxl/cxl_device.h | 3 + include/hw/cxl/cxl_pci.h | 4 + include/hw/pci/pci_ids.h | 2 + include/hw/pci/pcie.h | 1 + include/hw/pci/pcie_doe.h | 166 ++++++++++++ include/hw/pci/pcie_regs.h | 4 + include/standard-headers/linux/pci_regs.h | 3 +- 16 files changed, 1444 insertions(+), 2 deletions(-) create mode 100644 hw/pci/pcie_doe.c create mode 100644 include/hw/cxl/cxl_cdat.h create mode 100644 include/hw/cxl/cxl_compl.h create mode 100644 include/hw/pci/pcie_doe.h -- 1.8.3.1