Board Management Controller User Guide: Intel FPGA Programmable Acceleration Card N3000-N

ID 683186
Date 9/08/2020
Public

2.2. MCTP Packetization Support

MCTP Definitions

  • The message body represents the payload of an MCTP message. The message body can span multiple MCTP packets.
  • MCTP packet payload refers to the portion of the message body of an MCTP message that is carried in a single MCTP packet.
  • Transmission Unit refers to the size of the portion of the MCTP packet payload.

Transmission Unit Size

  • The baseline transmission unit (minimum transmission unit) size for MCTP is 64 bytes.
  • All MCTP control messages are required to have a packet payload that is no larger than the baseline transmission unit without negotiation. (The negotiation mechanism for larger transmission units between endpoints is message type-specific and is not addressed in MCTP Base specification)
  • Any MCTP message whose message body size is bigger than 64 bytes shall be split into multiple packets for a single message transmission.
MCTP Packet Fields
Figure 2. Generic Packet/Message Fields
Refer to the table below for more information on message fields.
Message Fields Description
Byte Count Byte counting from byte #4 to the byte right before PEC.
Header Version Set to 0001b for MCTP devices that are conformant to the MCTP Base Specification DSP0237.
SOM, EOM, Pkt Seq #, TO, and Msg Tag Refer to DSP0237 (MCTP SMB us/I2C Transport Binding Spec) and DSP0236 (MCTP Base Spec).
IC Message Integrity Check bit = 0b -> MCTP control and PLDM over MCTP messages do not include an overall Message Integrity check field according to DSP0236 and DSP0241 in respective.
Msg Type 0x00 for MCTP control and 0x01 for PLDM, others are not supported, refer to DSP0239 for more message types.
Rq, D, and Instance ID Refer to the spec DSP0236.
Hdr Ver 0x00 according the spec DSP0240.
PLDM Type 0x00 for PLDM Messaging Control and Discovery, 0x02 for PLDM for Platform Monitoring and Control, only two types here are supported.
PLDM Command Code Refer to the spec DSP0245 for more PLDM types.
PLDM Completion Code* Present only in PLDM response message, refer to the spec DSP0240.
PLDM Message Payload

The fields within PLDM messages are transferred from lower offset (e.g. +0 byte) first. And Unless otherwise specified, byte ordering of multi-byte numeric fields or bit fields is “Big Endian” (that is, the lower byte offset holds the most significant byte, and higher offsets hold lesser significant bytes).