mbox series

[RFC,v2,0/3] Add SPDM over Storage transport support for NVMe

Message ID 20250116010856.95115-2-wilfred.mallawa@wdc.com (mailing list archive)
Headers show
Series Add SPDM over Storage transport support for NVMe | expand

Message

Wilfred Mallawa Jan. 16, 2025, 1:08 a.m. UTC
This series adds support for SPDM to be used over the storage transport, as
defined by the DMTF DSP0286 [1] for NVMe. That is, using the admin
NVMe Security Send/Receive commands, support transport for SPDM as per
DSP0286 [1]. The binding specification (DSP0286) is still currently a draft
specification that has an "Expected release Q4 2024" [2].

In anticipation of it's release, this series is an RFC.

[1] https://www.dmtf.org/sites/default/files/standards/documents/DSP0286_1.0.0WIP90.pdf
[2] https://www.dmtf.org/content/now-available-%E2%80%93-spdm-storage-binding-specification-wip

Changes V1 -> V2:
  - Split out the SPDM Socket API patch for separate send/recv functions
  - Addressed comments from Klaus Jensen
    - Dropped unnecessary allocation length check
    - Dropped unnecessary alloc_len alignment check
    - Fixed up `nvme_security_receive: dw10` SPSP bit-masking

Wilfred Mallawa (3):
  spdm: add spdm storage transport virtual header
  hw/nvme: add NVMe Admin Security SPDM support
  hw/nvme: connect SPDM over NVMe Security Send/Recv

 docs/specs/spdm.rst          |  10 +-
 hw/nvme/ctrl.c               | 265 +++++++++++++++++++++++++++++++++--
 hw/nvme/nvme.h               |   5 +
 include/block/nvme.h         |  15 ++
 include/hw/pci/pci_device.h  |   1 +
 include/system/spdm-socket.h |  12 ++
 6 files changed, 294 insertions(+), 14 deletions(-)