This patch series provides an implementation of the the Data Object Exchange (DOE) for Component Measurement and Authentication (CMA) of the Security Protocol and Data Model (SPDM).
This patch is based on [1] Openspdm: https://github.com/jyao1/openspdm.git Openspdm is an emulator composed of an SPDM requester and an SPDM responder. The default SpdmEmu usage have the requester and responder communicate with each other via a TCP socket. However to test PCIe DOE support in QEMU PCIe/CXL device directly, the openspdm requester is modified to use pwrite/pread for MMIO access to the QEMU CXL Device DOE capability (hw/mem/cxl_type3.c). The openspdm requester is run as user application targeting the CXL Device. Follow the readme.md under [1] to build this enhanced version of openspdm. This patch series is to be used with a subsequent QEMU patch series to be concurrently with this patch series. Full instructions will be included there. hchkuo (2): build: gcc to CC in GNUMakefile requester: Modified for QEMU emulation GNUmakefile.Flags | 4 +- Include/IndustryStandard/PciDoeBinding.h | 27 +++++++ SpdmEmu/SpdmEmuCommon/SpdmEmu.c | 85 ++++++++++++++++++++++ SpdmEmu/SpdmEmuCommon/SpdmEmu.h | 7 ++ SpdmEmu/SpdmRequesterEmu/SpdmRequester.c | 100 +++++++++++++++++++------ SpdmEmu/SpdmRequesterEmu/SpdmRequesterEmu.c | 109 +++++++++++++++++++++++++--- SpdmEmu/SpdmRequesterEmu/SpdmRequesterEmu.h | 5 ++ 7 files changed, 302 insertions(+), 35 deletions(-) -- 1.8.3.1