[AMD Official Use Only - General] We need the use case on our platforms, it says we don’t have plan at the moment. However we are welcome anyone from community to implement it. 😊 Abner From: Yoshinoya Sent: Wednesday, November 1, 2023 1:20 PM To: devel@edk2.groups.io; Chang, Abner Cc: Konstantin Aladyshev ; Attar, AbdulLateef (Abdul Lateef) ; nicklew@nvidia.com Subject: Re:Re: [edk2-devel] [PATCH edk2-platforms v3 00/16] MTCP-over-KCS support Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding. Hi, Abner: Got it, Thanks. Is there any plan to implement MTCP-over-smbus or MTCP-over-PCIE ? Thanks At 2023-10-31 15:00:03, "Chang, Abner via groups.io" > wrote: MCTP over KCS defines two types of KCS-like access, one is compatible with IPMI KCS, another is memory map I/O access. It doesn’t require any special HW, just require the I/O cycle or memory cycle can be delivered to the management controller. Yes, we can consider MCTP is a software layer protocol and the that protocol is HW (transport interface) agnostic. Abner From: Yoshinoya > Sent: Tuesday, October 31, 2023 2:38 PM To: devel@edk2.groups.io; Chang, Abner > Cc: Konstantin Aladyshev >; Attar, AbdulLateef (Abdul Lateef) >; nicklew@nvidia.com Subject: Re:Re: [edk2-devel] [PATCH edk2-platforms v3 00/16] MTCP-over-KCS support Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding. Hi, Abner: I ask you a favor. KCS actually layer on LPC interface. KCS is a usual BMC-to-CPU communication channel. Does MCTP-over-KCS feature require some special LPC interface hardware changes? Or, MCTP is just a software stack and it uses current LPC interface, not any special hardward design change requirement. Thanks At 2023-10-26 13:03:02, "Chang, Abner via groups.io" > wrote: >[AMD Official Use Only - General] > >Merged. I will send another patch for Uncrustify updates if any. > >Abner > >> -----Original Message----- >> From: Chang, Abner >> Sent: Tuesday, October 24, 2023 10:44 AM >> To: Konstantin Aladyshev >; devel@edk2.groups.io >> Cc: Attar, AbdulLateef (Abdul Lateef) >; >> nicklew@nvidia.com >> Subject: RE: [PATCH edk2-platforms v3 00/16] MTCP-over-KCS support >> >> For entire V3 and the additional patch 16/16, >> Reviewed-by: Abner Chang > >> >> I will do the Uncrustify check and merge this patch set once the corresponding >> edk2 changes are merged. >> Thanks >> Abner >> >> > -----Original Message----- >> > From: Konstantin Aladyshev > >> > Sent: Monday, October 23, 2023 9:05 PM >> > To: devel@edk2.groups.io >> > Cc: Chang, Abner >; Attar, AbdulLateef (Abdul >> > Lateef) >; nicklew@nvidia.com; Konstantin >> > Aladyshev > >> > Subject: [PATCH edk2-platforms v3 00/16] MTCP-over-KCS support >> > >> > Caution: This message originated from an External Source. Use proper >> caution >> > when opening attachments, clicking links, or responding. >> > >> > >> > The Manageability KCS transport library needs to support requests both >> > from MCTP and IPMI transports. Currently the code only handles IPMI >> > case correctly. >> > In the MCTP case the communication should be based on the MCTP-over- >> KCS >> > specification (DSP0254). This specification defines a special KCS >> > binding header and trailer structures that need to be present in every >> > MCTP message. >> > The header structure contains a length field, therefore response packet >> > size is not needed to be known beforehand. >> > The trailer structure contains a PEC checksum that can be used to check >> > itegrity of the response message. >> > Modify Manageability KCS transport library code to check which message >> > is processed (IPMI or MCTP) and handle each case correctly based on its >> > own specification. >> > This patch is a result of a joint effort from the Konstantin Aladyshev >> > > and Abner Chang >. >> > >> > Tested: >> > PLDM communication between the HOST and BMC was tested with both >> > components implemented via open-source software: >> > - The HOST (UEFI firmware) part was based one the edk2 [1] and >> > edk2-platforms [2] code, >> > - The BMC part was based on the openbmc [3] distribution. >> > >> > The testing process and all the necessary utilities are described in >> > the [4] repository. >> > >> > The provided changes keep IPMI over KCS stack working as reported by >> > Abner Chang. >> > >> > [1]: https://github.com/tianocore/edk2 >> > [2]: https://github.com/tianocore/edk2-platforms >> > [3]: https://github.com/openbmc/openbmc >> > [4]: https://github.com/Kostr/PLDM >> > >> > Changes v2 -> v3: >> > - Add new patch that adds PLDM completion code check >> > >> > Changes v1 -> v2: >> > - Add new patches with corrections for the PLDM protocol. The >> > resulting communication via EDKII_PLDM_PROTOCOL was successfully >> > tested. >> > >> > Abner Chang (4): >> > ManageabilityPkg: Add PLDM terminus PCDs >> > PldmProtocolDxe: Correct TID argument usage >> > ManageabilityPkg/PldmProtocol: Remove PLDM command table >> > PldmSmbiosTransferDxe: Implement Set PLDM terminus ID API >> > >> > Konstantin Aladyshev (12): >> > ManageabilityPkg: Add definition for the MCTP KCS TRAILER structure >> > ManageabilityPkg: Check MCTP EIDs for reserved values >> > ManageabilityPkg: Support both MCTP and IPMI in KCS tranport library >> > ManageabilityPkg: Check header fields in the MCTP response >> > ManageabilityPkg: Correct typo in MCTP destination EID field >> > ManageabilityPkg: Update the algorithm of using MCTP endpoint ID PCD >> > ManageabilityPkg: Correct value for the MCTP TAG_OWNER response bit >> > ManageabilityPkg: Don't check MCTP header fields if transfer has >> > failed >> > ManageabilityPkg: Use correct constants for PLDM header checks >> > ManageabilityPkg: Return error on multiple-packet MCTP responses >> > ManageabilityPkg: Return error on PLDM header check fails >> > ManageabilityPkg: Check PLDM completion code >> > >> > .../Include/Library/BasePldmProtocolLib.h | 16 + >> > .../Library/ManageabilityTransportMctpLib.h | 9 +- >> > .../Include/Protocol/MctpProtocol.h | 12 +- >> > .../Include/Protocol/PldmProtocol.h | 18 +- >> > .../Protocol/PldmSmbiosTransferProtocol.h | 26 ++ >> > .../Common/KcsCommon.c | 284 +++++++++++++++--- >> > .../Dxe/ManageabilityTransportMctp.c | 4 +- >> > .../PldmProtocolLibrary/Dxe/PldmProtocolLib.c | 49 ++- >> > .../Dxe/PldmProtocolLib.inf | 6 +- >> > .../ManageabilityPkg/ManageabilityPkg.dec | 6 + >> > .../MctpProtocol/Common/MctpProtocolCommon.c | 129 +++++++- >> > .../Universal/MctpProtocol/Dxe/MctpProtocol.c | 51 +++- >> > .../PldmProtocol/Common/PldmProtocolCommon.c | 148 +++------ >> > .../PldmProtocol/Common/PldmProtocolCommon.h | 25 +- >> > .../Universal/PldmProtocol/Dxe/PldmProtocol.c | 69 ++++- >> > .../PldmProtocol/Dxe/PldmProtocolDxe.inf | 4 - >> > .../PldmSmbiosTransferDxe.c | 28 ++ >> > 17 files changed, 690 insertions(+), 194 deletions(-) >> > >> > -- >> > 2.34.1 > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#110467): https://edk2.groups.io/g/devel/message/110467 Mute This Topic: https://groups.io/mt/102134646/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-