Skip to content

Cerebrus MCTP gap in code and spec #15

@PrakashK94

Description

@PrakashK94

I found a gap in Cerebrus MCTP code and MCTP Base spec DSP0236_1.3.0. Its not aligned/not matching.

Check this piece of code present in https://github.com/Azure/Project-Cerberus/blob/master/core/mctp/mctp_control_protocol.h.

/**
 * MCTP completion codes
 * Listed in section 10.2 of the MCTP Base Specification DSP0236
 */
enum
{
	MCTP_CONTROL_PROTOCOL_SUCCESS,							/**< Success */
	MCTP_CONTROL_PROTOCOL_ERROR,							/**< Generic error */
	MCTP_CONTROL_PROTOCOL_ERROR_INVALID_DATA = 0x03,		/**< Invalid data or parameter value */
	MCTP_CONTROL_PROTOCOL_ERROR_INVALID_LEN,				/**< Invalid message length */
	MCTP_CONTROL_PROTOCOL_ERROR_NOT_READY = 0xF0,			/**< Receiver not ready */
	MCTP_CONTROL_PROTOCOL_ERROR_UNSUPPORTED_CMD,			/**< Command unspecified or unsupported */
	MCTP_CONTROL_PROTOCOL_CMD_SPECIFIC,						/**< Command specific completion code */
};

I see in the above piece of code, MCTP_CONTROL_PROTOCOL_ERROR_INVALID_DATA is defined as 0x03, MCTP_CONTROL_PROTOCOL_ERROR_INVALID_LEN as 0x04, MCTP_CONTROL_PROTOCOL_ERROR_NOT_READY as 0xF0 and MCTP_CONTROL_PROTOCOL_ERROR_UNSUPPORTED_CMD as 0xF1 where as in MCTP base spec, its defined as some other value. Please check 12.2 section of this document, https://www.dmtf.org/sites/default/files/standards/documents/DSP0236_1.3.0.pdf.

image

Could you please share your feedback on this?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions