From nobody Wed May 1 19:57:08 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+52573+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+52573+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1577328953; cv=none; d=zohomail.com; s=zohoarc; b=mMgF3WtEfXPxMSjaC5JIKTcuWL4SqkxYZk5fRmURuHBIl+KzpL9PJ7oZYc4o/qbVxM7rNkXhFtMaJl5Un7fIFJZSdq6x5LFT8C/NPdx29BIqQ8MztVd5ihSd2QZ0xiGapfCRbyNfKifBTpYUPeel+dNzEnFRy7N1LX3Z0lrBDmI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577328953; h=Cc:Date:From:List-Id:List-Unsubscribe:Message-ID:Reply-To:Sender:Subject:To; bh=cBWSkLaikMXl1v/SOG3mDaxJeKhWaEdWXenoeAFqbOQ=; b=f8/O3zKgUBEaOyRhoaVYw4utXb8iLifeFPhdQOZ6hUvf2aDtAsVLrDnRl5MYaDvOrT96/Tf1Ru7ARyv+WpDzVG5f6PN8MHzu/pLTYbYz1133zps6jgfQG8FHDQR+uA64C7w+JLfGFa2Uas8fBFdtYynL67WaWv9Dq/ecgZ9DwAs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+52573+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1577328953194854.7321197683099; Wed, 25 Dec 2019 18:55:53 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id Kl4iYY1788612xXVQyxDoqi3; Wed, 25 Dec 2019 18:55:52 -0800 X-Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mx.groups.io with SMTP id smtpd.web12.17731.1577328951776771421 for ; Wed, 25 Dec 2019 18:55:52 -0800 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False X-Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 25 Dec 2019 18:55:51 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,357,1571727600"; d="scan'208";a="419352460" X-Received: from unknown (HELO ethantsa-MOBL1.gar.corp.intel.com) ([10.5.240.208]) by fmsmga006.fm.intel.com with ESMTP; 25 Dec 2019 18:55:50 -0800 From: "Ethan Tsao" To: devel@edk2.groups.io Cc: Ray Ni , Rangasai V Chaganty Subject: [edk2-devel] [Patch V4] IntelSiliconPkg/Include/Library:Add ConfigBlockLib.h Date: Thu, 26 Dec 2019 10:55:33 +0800 Message-Id: <20191226025533.13480-1-ethan.tsao@intel.com> Precedence: Bulk List-Unsubscribe: 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,ethan.tsao@intel.com X-Gm-Message-State: Y4i3hKN80fsVY2d2OT4R9wTsx1787277AA= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1577328952; bh=Vg6A/Pdvr33wdH4Rjef1RbwDc5R+tvBOJ+a+ZDWWBys=; h=Cc:Date:From:Reply-To:Subject:To; b=HB533tRZJCSv0IsxwNdvbts3yGZ0wOCL1aflnxI5ArTk0kw+m5nDkH0Bc3JaNk3AzEt BIQ8KsPnkB7BSNV2q9qB6htdvt+Wmx0kRJoL1Ufz+Fw3AhW8TMFOMPGKJJIcjWtW6nslJ +8gLNt4peFIp5SPmG80+sl47tw/HOUq6lLM= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3D2318 Move ConfigBlockLib.h and ConfigBlock.h to InstelSiliconPkg and remove all = other ConfigBlockLib.h and ConfigBlock.h Signed-off-by: Ethan Tsao Cc: Ray Ni Cc: Rangasai V Chaganty Reviewed-by: Ray Ni --- Silicon/Intel/CoffeelakeSiliconPkg/CoffeelakeSiliconPkg.dsc = | 2 +- Silicon/Intel/IntelSiliconPkg/Include/ConfigBlock.h = | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ Silicon/Intel/{CoffeelakeSiliconPkg =3D> IntelSiliconPkg}/Include/Library/= ConfigBlockLib.h | 0 Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec = | 4 ++++ Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dsc = | 1 + Silicon/Intel/IntelSiliconPkg/Library/BaseConfigBlockLib/BaseConfigBlockLi= b.inf | 2 +- Silicon/Intel/KabylakeSiliconPkg/Include/Library/ConfigBlockLib.h = | 64 -------------------------------------------------------= --------- 7 files changed, 60 insertions(+), 66 deletions(-) diff --git a/Silicon/Intel/CoffeelakeSiliconPkg/CoffeelakeSiliconPkg.dsc b/= Silicon/Intel/CoffeelakeSiliconPkg/CoffeelakeSiliconPkg.dsc index 37c77d8f63..702a833cc4 100644 --- a/Silicon/Intel/CoffeelakeSiliconPkg/CoffeelakeSiliconPkg.dsc +++ b/Silicon/Intel/CoffeelakeSiliconPkg/CoffeelakeSiliconPkg.dsc @@ -147,7 +147,7 @@ gUefiCpuPkgTokenSpaceGuid.PcdCpuApTargetCstate|0 # Silicon Init Common Library # !include $(PLATFORM_SI_PACKAGE)/SiPkgCommonLib.dsc -ConfigBlockLib|ClientSiliconPkg/Library/BaseConfigBlockLib/BaseConfigBlock= Lib.inf +ConfigBlockLib|IntelSiliconPkg/Library/BaseConfigBlockLib/BaseConfigBlockL= ib.inf PchTraceHubInitLib|ClientSiliconPkg/Library/BasePchTraceHubInitLib/BasePch= TraceHubInitLib.inf =20 [LibraryClasses.IA32] diff --git a/Silicon/Intel/IntelSiliconPkg/Include/ConfigBlock.h b/Silicon/= Intel/IntelSiliconPkg/Include/ConfigBlock.h new file mode 100644 index 0000000000..d0e3d94418 --- /dev/null +++ b/Silicon/Intel/IntelSiliconPkg/Include/ConfigBlock.h @@ -0,0 +1,53 @@ +/** @file + Header file for Config Block Lib implementation + + Copyright (c) 2019 Intel Corporation. All rights reserved.
+ + SPDX-License-Identifier: BSD-2-Clause-Patent +**/ + +#ifndef _CONFIG_BLOCK_H_ +#define _CONFIG_BLOCK_H_ + +#include +#include +#include +#include + +#pragma pack (push,1) + +/// +/// Config Block Header +/// +typedef struct _CONFIG_BLOCK_HEADER { + EFI_HOB_GUID_TYPE GuidHob; ///< Offset 0-23 GUID e= xtension HOB header + UINT8 Revision; ///< Offset 24 Revisi= on of this config block + UINT8 Attributes; ///< Offset 25 The ma= in revision for config block + UINT8 Reserved[2]; ///< Offset 26-27 Reserv= ed for future use +} CONFIG_BLOCK_HEADER; + +/// +/// Config Block +/// +typedef struct _CONFIG_BLOCK { + CONFIG_BLOCK_HEADER Header; ///< Offset 0-27 Header= of config block + // + // Config Block Data + // +} CONFIG_BLOCK; + +/// +/// Config Block Table Header +/// +typedef struct _CONFIG_BLOCK_TABLE_STRUCT { + CONFIG_BLOCK_HEADER Header; ///< Offset 0-27 GUID n= umber for main entry of config block + UINT8 Rsvd0[2]; ///< Offset 28-29 Reserv= ed for future use + UINT16 NumberOfBlocks; ///< Offset 30-31 Number= of config blocks (N) + UINT32 AvailableSize; ///< Offset 32-35 Curren= t config block table size +/// +/// Individual Config Block Structures are added here in memory as part of= AddConfigBlock() +/// +} CONFIG_BLOCK_TABLE_HEADER; +#pragma pack (pop) + +#endif // _CONFIG_BLOCK_H_ diff --git a/Silicon/Intel/CoffeelakeSiliconPkg/Include/Library/ConfigBlock= Lib.h b/Silicon/Intel/IntelSiliconPkg/Include/Library/ConfigBlockLib.h similarity index 100% rename from Silicon/Intel/CoffeelakeSiliconPkg/Include/Library/ConfigBlockL= ib.h rename to Silicon/Intel/IntelSiliconPkg/Include/Library/ConfigBlockLib.h diff --git a/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec b/Silicon/In= tel/IntelSiliconPkg/IntelSiliconPkg.dec index 22ebf19c4e..aad39f88ee 100644 --- a/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec +++ b/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec @@ -30,6 +30,10 @@ # PeiGetVtdPmrAlignmentLib|Include/Library/PeiGetVtdPmrAlignmentLib.h =20 + ## @libraryclass Provides services to access ConfigBlock + # + ConfigBlockLib|Include/Library/ConfigBlockLib.h + [Guids] ## GUID for Package token space # {A9F8D54E-1107-4F0A-ADD0-4587E7A4A735} diff --git a/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dsc b/Silicon/In= tel/IntelSiliconPkg/IntelSiliconPkg.dsc index 0a6509d8b3..d90202d0f3 100644 --- a/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dsc +++ b/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dsc @@ -36,6 +36,7 @@ MicrocodeFlashAccessLib|IntelSiliconPkg/Feature/Capsule/Library/Microcod= eFlashAccessLibNull/MicrocodeFlashAccessLibNull.inf PeiGetVtdPmrAlignmentLib|IntelSiliconPkg/Library/PeiGetVtdPmrAlignmentLi= b/PeiGetVtdPmrAlignmentLib.inf TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurem= entLibNull.inf + ConfigBlockLib|IntelSiliconPkg/Library/BaseConfigBlockLib/BaseConfigBloc= kLib.inf =20 [LibraryClasses.common.PEIM] PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf diff --git a/Silicon/Intel/IntelSiliconPkg/Library/BaseConfigBlockLib/BaseC= onfigBlockLib.inf b/Silicon/Intel/IntelSiliconPkg/Library/BaseConfigBlockLi= b/BaseConfigBlockLib.inf index 37b4faaf65..87e7e315b7 100644 --- a/Silicon/Intel/IntelSiliconPkg/Library/BaseConfigBlockLib/BaseConfigBl= ockLib.inf +++ b/Silicon/Intel/IntelSiliconPkg/Library/BaseConfigBlockLib/BaseConfigBl= ockLib.inf @@ -18,7 +18,7 @@ LIBRARY_CLASS =3D ConfigBlockLib =20 [Packages] MdePkg/MdePkg.dec -KabylakeSiliconPkg/SiPkg.dec +IntelSiliconPkg/IntelSiliconPkg.dec =20 [Sources] BaseConfigBlockLib.c diff --git a/Silicon/Intel/KabylakeSiliconPkg/Include/Library/ConfigBlockLi= b.h b/Silicon/Intel/KabylakeSiliconPkg/Include/Library/ConfigBlockLib.h deleted file mode 100644 index 04c8ec5cca..0000000000 --- a/Silicon/Intel/KabylakeSiliconPkg/Include/Library/ConfigBlockLib.h +++ /dev/null @@ -1,64 +0,0 @@ -/** @file - Header file for Config Block Lib implementation - -Copyright (c) 2017, Intel Corporation. All rights reserved.
-SPDX-License-Identifier: BSD-2-Clause-Patent - -**/ - -#ifndef _CONFIG_BLOCK_LIB_H_ -#define _CONFIG_BLOCK_LIB_H_ - -/** - Create config block table - - @param[in] TotalSize - Max size to be allocated f= or the Config Block Table - @param[out] ConfigBlockTableAddress - On return, points to a poi= nter to the beginning of Config Block Table Address - - @retval EFI_INVALID_PARAMETER - Invalid Parameter - @retval EFI_OUT_OF_RESOURCES - Out of resources - @retval EFI_SUCCESS - Successfully created Config Block Table = at ConfigBlockTableAddress -**/ -EFI_STATUS -EFIAPI -CreateConfigBlockTable ( - IN UINT16 TotalSize, - OUT VOID **ConfigBlockTableAddress - ); - -/** - Add config block into config block table structure - - @param[in] ConfigBlockTableAddress - A pointer to the beginning= of Config Block Table Address - @param[out] ConfigBlockAddress - On return, points to a poi= nter to the beginning of Config Block Address - - @retval EFI_OUT_OF_RESOURCES - Config Block Table is full and cannot add= new Config Block or - Config Block Offset Table is full and can= not add new Config Block. - @retval EFI_SUCCESS - Successfully added Config Block -**/ -EFI_STATUS -EFIAPI -AddConfigBlock ( - IN VOID *ConfigBlockTableAddress, - OUT VOID **ConfigBlockAddress - ); - -/** - Retrieve a specific Config Block data by GUID - - @param[in] ConfigBlockTableAddress - A pointer to the beginnin= g of Config Block Table Address - @param[in] ConfigBlockGuid - A pointer to the GUID use= s to search specific Config Block - @param[out] ConfigBlockAddress - On return, points to a po= inter to the beginning of Config Block Address - - @retval EFI_NOT_FOUND - Could not find the Config Block - @retval EFI_SUCCESS - Config Block found and return -**/ -EFI_STATUS -EFIAPI -GetConfigBlock ( - IN VOID *ConfigBlockTableAddress, - IN EFI_GUID *ConfigBlockGuid, - OUT VOID **ConfigBlockAddress - ); - -#endif // _CONFIG_BLOCK_LIB_H_ --=20 2.16.2.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52573): https://edk2.groups.io/g/devel/message/52573 Mute This Topic: https://groups.io/mt/69267854/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-