From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 160DC7803CD for ; Fri, 20 Oct 2023 12:53:28 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=OFPeIOw88jGGA/qEio3ysyHoEH9KEOREFlGS5QVMIpY=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1697806407; v=1; b=jH1r9pgWuGxiRViGFLS7jGX9GLYz7vhpOFDXxUZmKFWJdCLMWM/TOdwBnlQqNm6g1hs8LnHB 2NY6EvDZk28cwFPn6C7y4pwPpaF9ATiDuznaOn1mppUOaD4YKe6ROCLh4VlwpMD93UnRV1CCenR 3W8wGXJalvkaXGwI2mtAWSm0= X-Received: by 127.0.0.2 with SMTP id aizAYY7687511xSBd1snQ0Uc; Fri, 20 Oct 2023 05:53:27 -0700 X-Received: from mail-lj1-f178.google.com (mail-lj1-f178.google.com [209.85.208.178]) by mx.groups.io with SMTP id smtpd.web10.53396.1697806406991173499 for ; Fri, 20 Oct 2023 05:53:27 -0700 X-Received: by mail-lj1-f178.google.com with SMTP id 38308e7fff4ca-2c50fbc218bso11069871fa.3 for ; Fri, 20 Oct 2023 05:53:26 -0700 (PDT) X-Gm-Message-State: KeXNyCHoyd5QauxNRoyLxmwwx7686176AA= X-Google-Smtp-Source: AGHT+IHCJqZapHSlUdAfgS5pD+yAV16zfYJ/IYJiAsTre5J5LltvcfQpag8nt9XMwUZHRBdbVnLQ/w== X-Received: by 2002:a2e:a9a7:0:b0:2c5:18ed:180a with SMTP id x39-20020a2ea9a7000000b002c518ed180amr1523659ljq.33.1697806404792; Fri, 20 Oct 2023 05:53:24 -0700 (PDT) X-Received: from PC10319.67 ([82.97.198.254]) by smtp.googlemail.com with ESMTPSA id x22-20020a05651c105600b002b9e5fe86dasm350853ljm.81.2023.10.20.05.53.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Oct 2023 05:53:23 -0700 (PDT) From: "Konstantin Aladyshev" To: devel@edk2.groups.io Cc: abner.chang@amd.com, isaac.w.oram@intel.com, AbdulLateef.Attar@amd.com, nicklew@nvidia.com, Konstantin Aladyshev Subject: [edk2-devel] [PATCH edk2-platforms v2 15/15] PldmSmbiosTransferDxe: Implement Set PLDM terminus ID API Date: Fri, 20 Oct 2023 15:53:02 +0300 Message-Id: <20231020125302.1459-16-aladyshev22@gmail.com> In-Reply-To: <20231020125302.1459-1-aladyshev22@gmail.com> References: <20231020125302.1459-1-aladyshev22@gmail.com> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,aladyshev22@gmail.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: Content-Transfer-Encoding: quoted-printable X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=jH1r9pgW; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io From: Abner Chang Currently all PLDM functions inside the PLDM_SMBIOS_TRANSFER_PROTOCOL use PLDM terminus PCDs for the MCTP addressing. Add additional function to the protocol API to provide user a way to use custom TIDs. Signed-off-by: Abner Chang Signed-off-by: Konstantin Aladyshev --- .../Protocol/PldmSmbiosTransferProtocol.h | 26 +++++++++++++++++ .../PldmSmbiosTransferDxe.c | 28 +++++++++++++++++++ 2 files changed, 54 insertions(+) diff --git a/Features/ManageabilityPkg/Include/Protocol/PldmSmbiosTransferP= rotocol.h b/Features/ManageabilityPkg/Include/Protocol/PldmSmbiosTransferPr= otocol.h index 7903e12726..8b23d39682 100644 --- a/Features/ManageabilityPkg/Include/Protocol/PldmSmbiosTransferProtocol= .h +++ b/Features/ManageabilityPkg/Include/Protocol/PldmSmbiosTransferProtocol= .h @@ -23,6 +23,31 @@ typedef struct _EDKII_PLDM_SMBIOS_TRANSFER_PROTOCOL EDK= II_PLDM_SMBIOS_TRANSFER_ #define EDKII_PLDM_SMBIOS_TRANSFER_PROTOCOL_VERSION ((EDKII_PLDM_SM= BIOS_TRANSFER_PROTOCOL_VERSION_MAJOR << 8) |\=0D EDKII_PLDM_SMBIOS_T= RANSFER_PROTOCOL_VERSION_MINOR)=0D =0D +/**=0D + This function sets PLDM SMBIOS transfer source and destination=0D + PLDM terminus ID.=0D +=0D + @param [in] This EDKII_PLDM_SMBIOS_TRANSFER_PROTOCOL instanc= e.=0D + @param [in] SourceId PLDM source teminus ID.=0D + Set to PLDM_TERMINUS_ID_UNASSIGNED means us= e=0D + platform default PLDM terminus ID.=0D + (gManageabilityPkgTokenSpaceGuid.PcdPldmSou= rceTerminusId)=0D + @param [in] DestinationId PLDM destination teminus ID.=0D + Set to PLDM_TERMINUS_ID_UNASSIGNED means us= e=0D + platform default PLDM terminus ID.=0D + (gManageabilityPkgTokenSpaceGuid.PcdPldmDes= tinationEndpointId)=0D +=0D + @retval EFI_SUCCESS Get SMBIOS table metadata Successfu= lly.=0D + @retval EFI_INVALID_PARAMETER Invalid value of source or destinat= ion=0D + PLDM terminus ID.=0D +**/=0D +typedef=0D +EFI_STATUS=0D +(EFIAPI *PLDM_GET_SMBIOS_TRANSFER_TERMINUS_ID)(=0D + IN UINT8 SourceId,=0D + IN UINT8 DestinationId=0D + );=0D +=0D /**=0D This function gets SMBIOS table metadata.=0D =0D @@ -151,6 +176,7 @@ EFI_STATUS // EDKII_PLDM_SMBIOS_TRANSFER_PROTOCOL=0D //=0D typedef struct {=0D + PLDM_GET_SMBIOS_TRANSFER_TERMINUS_ID SetPldmSmbiosTransferTerminu= sId;=0D PLDM_GET_SMBIOS_STRUCTURE_TABLE_METADATA GetSmbiosStructureTableMetaD= ata;=0D PLDM_SET_SMBIOS_STRUCTURE_TABLE_METADATA SetSmbiosStructureTableMetaD= ata;=0D PLDM_GET_SMBIOS_STRUCTURE_TABLE GetSmbiosStructureTable;=0D diff --git a/Features/ManageabilityPkg/Universal/PldmSmbiosTransferDxe/Pldm= SmbiosTransferDxe.c b/Features/ManageabilityPkg/Universal/PldmSmbiosTransfe= rDxe/PldmSmbiosTransferDxe.c index fdf033f0b1..357a7d49e4 100644 --- a/Features/ManageabilityPkg/Universal/PldmSmbiosTransferDxe/PldmSmbiosT= ransferDxe.c +++ b/Features/ManageabilityPkg/Universal/PldmSmbiosTransferDxe/PldmSmbiosT= ransferDxe.c @@ -25,6 +25,33 @@ =0D UINT32 SetSmbiosStructureTableHandle;=0D =0D +/**=0D + This function sets PLDM SMBIOS transfer source and destination=0D + PLDM terminus ID.=0D +=0D + @param [in] This EDKII_PLDM_SMBIOS_TRANSFER_PROTOCOL instanc= e.=0D + @param [in] SourceId PLDM source teminus ID.=0D + Set to PLDM_TERMINUS_ID_UNASSIGNED means us= e=0D + platform default PLDM terminus ID.=0D + (gManageabilityPkgTokenSpaceGuid.PcdPldmSou= rceTerminusId)=0D + @param [in] DestinationId PLDM destination teminus ID.=0D + Set to PLDM_TERMINUS_ID_UNASSIGNED means us= e=0D + platform default PLDM terminus ID.=0D + (gManageabilityPkgTokenSpaceGuid.PcdPldmDes= tinationEndpointId)=0D +=0D + @retval EFI_SUCCESS Get SMBIOS table metadata Successfu= lly.=0D + @retval EFI_INVALID_PARAMETER Invalid value of source or destinat= ion=0D + PLDM terminus ID.=0D +**/=0D +EFI_STATUS=0D +SetPldmSmbiosTransferTerminusId (=0D + IN UINT8 SourceId,=0D + IN UINT8 DestinationId=0D + )=0D +{=0D + return PldmSetTerminus(SourceId, DestinationId);=0D +}=0D +=0D /**=0D Get the full size of SMBIOS structure including optional strings that fo= llow the formatted structure.=0D =0D @@ -457,6 +484,7 @@ GetSmbiosStructureByHandle ( }=0D =0D EDKII_PLDM_SMBIOS_TRANSFER_PROTOCOL_V1_0 mPldmSmbiosTransferProtocolV10 = =3D {=0D + SetPldmSmbiosTransferTerminusId,=0D GetSmbiosStructureTableMetaData,=0D SetSmbiosStructureTableMetaData,=0D GetSmbiosStructureTable,=0D --=20 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#109865): https://edk2.groups.io/g/devel/message/109865 Mute This Topic: https://groups.io/mt/102080245/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-