The instance should follow the SmmSmramSaveStateLib header to only have two functions with "EFIAPI". But I saw more than 2. Can you check and remove those unnecessary ones?
Thanks, Ray > -----Original Message----- > From: Chang, Abner <abner.ch...@amd.com> > Sent: Sunday, January 15, 2023 12:26 PM > To: devel@edk2.groups.io; Attar, AbdulLateef (Abdul Lateef) > <abdullateef.at...@amd.com> > Cc: Grimes, Paul <paul.gri...@amd.com>; Kirkendall, Garrett > <garrett.kirkend...@amd.com>; Dong, Eric <eric.d...@intel.com>; Ni, Ray > <ray...@intel.com>; Kumar, Rahul R <rahul.r.ku...@intel.com>; Gerd > Hoffmann <kra...@redhat.com> > Subject: RE: [edk2-devel] [PATCH v2 3/6] UefiCpuPkg: Adds > SmmSmramSaveStateLib library class > > [AMD Official Use Only - General] > > Comments in line. > > > -----Original Message----- > > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Abdul > > Lateef Attar via groups.io > > Sent: Wednesday, January 11, 2023 2:16 PM > > To: devel@edk2.groups.io > > Cc: Attar, AbdulLateef (Abdul Lateef) <abdullateef.at...@amd.com>; > > Grimes, Paul <paul.gri...@amd.com>; Kirkendall, Garrett > > <garrett.kirkend...@amd.com>; Chang, Abner <abner.ch...@amd.com>; > > Eric Dong <eric.d...@intel.com>; Ray Ni <ray...@intel.com>; Rahul Kumar > > <rahul1.ku...@intel.com>; Gerd Hoffmann <kra...@redhat.com> > > Subject: [edk2-devel] [PATCH v2 3/6] UefiCpuPkg: Adds > > SmmSmramSaveStateLib library class > > > > Caution: This message originated from an External Source. Use proper > > caution when opening attachments, clicking links, or responding. > > > > > > BZ: > > > https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugz > > > illa.tianocore.org%2Fshow_bug.cgi%3Fid%3D4182&data=05%7C01%7Cabner. > > > chang%40amd.com%7C90493fee40864523f7d508daf39b7e40%7C3dd8961fe4 > > > 884e608e11a82d994e183d%7C0%7C0%7C638090146447645457%7CUnknown > > %7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1ha > > > WwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=E1WQL7%2F65L1K%2F6S > > uvA0EKpQ55V1J36Ofe3NklDf3Cqw%3D&reserved=0 > > > > Adds SmmSmramSaveStateLib Library class in UefiCpuPkg.dec. > > Adds function declaration header file. > > > > Cc: Paul Grimes <paul.gri...@amd.com> > > Cc: Garrett Kirkendall <garrett.kirkend...@amd.com> > > Cc: Abner Chang <abner.ch...@amd.com> > > Cc: Eric Dong <eric.d...@intel.com> > > Cc: Ray Ni <ray...@intel.com> > > Cc: Rahul Kumar <rahul1.ku...@intel.com> > > Cc: Gerd Hoffmann <kra...@redhat.com> > > > > Signed-off-by: Abdul Lateef Attar <abdat...@amd.com> > > --- > > UefiCpuPkg/UefiCpuPkg.dec | 4 ++ > > .../Include/Library/SmmSmramSaveStateLib.h | 69 > > +++++++++++++++++++ > > 2 files changed, 73 insertions(+) > > create mode 100644 > UefiCpuPkg/Include/Library/SmmSmramSaveStateLib.h > > > > diff --git a/UefiCpuPkg/UefiCpuPkg.dec b/UefiCpuPkg/UefiCpuPkg.dec > > index cff239d5283e..1de90b677828 100644 > > --- a/UefiCpuPkg/UefiCpuPkg.dec > > +++ b/UefiCpuPkg/UefiCpuPkg.dec > > @@ -2,6 +2,7 @@ > > # This Package provides UEFI compatible CPU modules and libraries. > > > > # > > > > # Copyright (c) 2007 - 2022, Intel Corporation. All rights reserved.<BR> > > > > +# Copyright (C) 2023 Advanced Micro Devices, Inc. All rights > > +reserved.<BR> > > > > # > > > > # SPDX-License-Identifier: BSD-2-Clause-Patent > > > > # > > > > @@ -65,6 +66,9 @@ [LibraryClasses.IA32, LibraryClasses.X64] > > ## @libraryclass Provides function for manipulating x86 paging > > structures. > > > > CpuPageTableLib|Include/Library/CpuPageTableLib.h > > > > > > > > + ## @libraryclass Provides functions for manipulating Smram savestate > > registers. > > > > + SmmSmramSaveSateLib|Include/Library/SmmSmramSaveStateLib.h > > > > + > > > > [Guids] > > > > gUefiCpuPkgTokenSpaceGuid = { 0xac05bf33, 0x995a, 0x4ed4, { 0xaa, > > 0xb8, 0xef, 0x7a, 0xe8, 0xf, 0x5c, 0xb0 }} > > > > gMsegSmramGuid = { 0x5802bce4, 0xeeee, 0x4e33, { 0xa1, > > 0x30, > > 0xeb, 0xad, 0x27, 0xf0, 0xe4, 0x39 }} > > > > diff --git a/UefiCpuPkg/Include/Library/SmmSmramSaveStateLib.h > > b/UefiCpuPkg/Include/Library/SmmSmramSaveStateLib.h > > new file mode 100644 > > index 000000000000..d10eb064ceac > > --- /dev/null > > +++ b/UefiCpuPkg/Include/Library/SmmSmramSaveStateLib.h > > @@ -0,0 +1,69 @@ > > +/** @file > > > > +Library that provides service to read/write CPU specific smram save state > > registers. > > > > + > > > > +Copyright (c) 2010 - 2019, Intel Corporation. All rights reserved.<BR> > > > > +Copyright (C) 2023 Advanced Micro Devices, Inc. All rights > > +reserved.<BR> > > > > + > > > > +SPDX-License-Identifier: BSD-2-Clause-Patent > > > > + > > > > +**/ > > > > + > > > > +#ifndef SMM_SMRAM_SAVE_STATE_LIB_H_ > > > > +#define SMM_SMRAM_SAVE_STATE_LIB_H_ > > > > + > > > > +#include <Protocol/SmmCpu.h> > > > > +#include <Uefi/UefiBaseType.h> > > > > + > > > > +/** > > > > + Read an SMM Save State register on the target processor. If this > > + function > > > > + returns EFI_UNSUPPORTED, then the caller is responsible for reading > > + the > > > > + SMM Save Sate register. > > > > + > > > > + @param[in] CpuIndex The index of the CPU to read the SMM Save > > + State. The > > > > + value must be between 0 and the NumberOfCpus > > + field in > > > > + the System Management System Table (SMST). > > > > + @param[in] Register The SMM Save State register to read. > > > > + @param[in] Width The number of bytes to read from the CPU save > > state. > > > > + @param[out] Buffer Upon return, this holds the CPU register value > read > > > > + from the save state. > > > > + > > > > + @retval EFI_SUCCESS The register was read from Save State. > > > > + @retval EFI_INVALID_PARAMTER Buffer is NULL. > > > > + @retval EFI_UNSUPPORTED This function does not support reading > [Chang, Abner] > EFI_NOT_FOUND is missed in @retval. > > > Register. > > > > + > > > > +**/ > > > > +EFI_STATUS > > > > +EFIAPI > > > > +SmramSaveStateReadRegister ( > > > > + IN UINTN CpuIndex, > > > > + IN EFI_SMM_SAVE_STATE_REGISTER Register, > > > > + IN UINTN Width, > > > > + OUT VOID *Buffer > > > > + ); > > > > + > > > > +/** > > > > + Writes an SMM Save State register on the target processor. If this > > + function > > > > + returns EFI_UNSUPPORTED, then the caller is responsible for writing > > + the > > > > + SMM Save Sate register. > > > > + > > > > + @param[in] CpuIndex The index of the CPU to write the SMM Save > > + State. The > > > > + value must be between 0 and the NumberOfCpus > > + field in > > > > + the System Management System Table (SMST). > > > > + @param[in] Register The SMM Save State register to write. > > > > + @param[in] Width The number of bytes to write to the CPU save state. > > > > + @param[in] Buffer Upon entry, this holds the new CPU register value. > > > > + > > > > + @retval EFI_SUCCESS The register was written to Save State. > > > > + @retval EFI_INVALID_PARAMTER Buffer is NULL. > > > > + @retval EFI_UNSUPPORTED This function does not support writing > [Chang, Abner] > EFI_NOT_FOUND is missed in @retval. > > Thanks > Abner > > > Register. > > > > +**/ > > > > +EFI_STATUS > > > > +EFIAPI > > > > +SmramSaveStateWriteRegister ( > > > > + IN UINTN CpuIndex, > > > > + IN EFI_SMM_SAVE_STATE_REGISTER Register, > > > > + IN UINTN Width, > > > > + IN CONST VOID *Buffer > > > > + ); > > > > + > > > > +#endif > > > > -- > > 2.25.1 > > > > > > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#101051): https://edk2.groups.io/g/devel/message/101051 Mute This Topic: https://groups.io/mt/96195137/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/leave/9847357/21656/1706620634/xyzzy [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-