From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web11.21314.1683734272349510764 for ; Wed, 10 May 2023 08:57:52 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=dIDDkaph; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: chasel.chiu@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1683734272; x=1715270272; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=VGqwVTpJ4oS5XYUeO3GmAgF7aEfzwCQnizglBeZzhPk=; b=dIDDkaph+5GJwfyRo5CteboZ1lCAxZPJUh9FVBnJSM/6RDViABH9vT4S N+/+TkQEcpJ/9inlKVMKaYqDjq9mZ95cMEzp9ClTgjoFHEocwefkdzLFX bIRsi6zPiq7+i74UzTmcuQ/eNyfL6E1r1emiV784mAOdBYyQFwQ/x0ioY F4KcSPuEGST1+NC8pVghz1zV0w+qMMkUbHIkwwSi6Cf+KSFMj1TQY61GW Fb4gW3wdOuzJBGCCV0PF3U4UH97Zd82UTJXS4bLyygD71nKf9wFa2CV0F IuEQDrXilfnAkvvIO0949vtach1d2mhgGfmrfJMqFRdSE52hbqM/7jwPE A==; X-IronPort-AV: E=McAfee;i="6600,9927,10706"; a="352441969" X-IronPort-AV: E=Sophos;i="5.99,265,1677571200"; d="scan'208";a="352441969" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 May 2023 08:57:38 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10706"; a="945753091" X-IronPort-AV: E=Sophos;i="5.99,265,1677571200"; d="scan'208";a="945753091" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by fmsmga006.fm.intel.com with ESMTP; 10 May 2023 08:57:37 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 10 May 2023 08:57:37 -0700 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 10 May 2023 08:57:36 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Wed, 10 May 2023 08:57:36 -0700 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (104.47.73.42) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Wed, 10 May 2023 08:57:36 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PUZWo+uPL5qauneKmZ6b+iO+2XkaO5KfatqTQqBkL52eA664NEliW8VL5101gOTbcJKp1Ca6seHe6Z7cYyBPpbR3G/iH/32QTGj4kDQyGFje9lc6qxEg3knGN1Q9zAyO5LYG1ou80YEIzligqN7zB61jWKgsYtt+krh49gDZ5rsxUUkxB5tHPfPT1ozfAaLm7W1RXMaFTCTCYRVi5OaVq7aulBJypu122bC8tpFwKgwq+MYONeyhCTMdgEI4XWfpkA1I+FGnqgVL8QM5sy7BmWfjiCYHUY6Ay9mrexTjk9abnFNUSkBr7AmK1LshshmGKp9NIiZ6mbEPnNoD9J/CvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=MAlQQt+xLl4nw6ahdn5bYuAgID0tyhIek9KxhUjm0eQ=; b=dMiNF9W1H5O6RMBy4/p4CBXFbFKdhKkhajh1cdmnCyvXIsHaT5Pt2kssszdHp68idffDuQksvZf9rPNTx4usL+5I4h/CFShbYJc2aulowr0FSye2D9bURja6WYeuca1BuuIjm/hratorz2XDKsRvoxDF/UjZKkBbx+jpftbUWXghAVLh5P6vqmfj03PP36ySBgjKhbghk6sTXcmKFGkU/GjOROKIywV5qvqNXDox7dfDEvaCNnF6fs66yEvmfpKQ2eHaPFPEtzZYXmTIYRLSXDQNVvo/XM02IWBRI1MVMxydoXNRFrhqwRdPMkSxMPP+DHfSHU0ZKG3K4Ua7tucTog== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from BN9PR11MB5483.namprd11.prod.outlook.com (2603:10b6:408:104::10) by CY5PR11MB6282.namprd11.prod.outlook.com (2603:10b6:930:22::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.33; Wed, 10 May 2023 15:57:34 +0000 Received: from BN9PR11MB5483.namprd11.prod.outlook.com ([fe80::1eb1:2222:1823:8e7a]) by BN9PR11MB5483.namprd11.prod.outlook.com ([fe80::1eb1:2222:1823:8e7a%7]) with mapi id 15.20.6363.033; Wed, 10 May 2023 15:57:34 +0000 From: "Chiu, Chasel" To: "devel@edk2.groups.io" , "mikuback@linux.microsoft.com" CC: "Desimone, Nathaniel L" , "Oram, Isaac W" , "Gao, Liming" , "Dong, Eric" , "Gudla, Raghava" Subject: Re: [edk2-devel] [edk2-platforms][PATCH v4 1/1] MinPlatformPkg: Add FspNvsBuffer compression option Thread-Topic: [edk2-devel] [edk2-platforms][PATCH v4 1/1] MinPlatformPkg: Add FspNvsBuffer compression option Thread-Index: AQHZg1B/QOnxCLieyUOde+UMx7i8Oa9TqYow Date: Wed, 10 May 2023 15:57:33 +0000 Message-ID: References: <20230510150217.1716-1-mikuback@linux.microsoft.com> In-Reply-To: <20230510150217.1716-1-mikuback@linux.microsoft.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BN9PR11MB5483:EE_|CY5PR11MB6282:EE_ x-ms-office365-filtering-correlation-id: e3f71561-9ccb-4db0-e72e-08db516f44b9 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: wOhC2X831UQd9FRkanYJEUnVn6PDtArXIkEptS00vt0rrnybqaCDKFxMKiIQxL1Pi9nsJxeHnTaK2QDXDbIUM1TyPjZgReQ+vJm7myrP3zFWi5F4QEHkG3k3256QxHYf3arbXiD3Tcl4Cc2ej/xDWzx01H/xz5ZIKcVf+hN5kS+6qb5o221QsERogqlV7jT58XxbKRV7AWArIsApKVbWViNiWTwVzMSbgTgh6SfLOVyWNVSB/Ey8OiDuFs/MO2+pwXvljDRCt1MTSTIAyfHB17OY8yY1hbLrmlxV6x6ggWNPBISXJErXYXdxlgEoOM9/75x85Qn18EN/lxzedtjgCqqaZG9FsFYCdCUQkVuwpo48EeKWws8Bd0RzvjcQyfQ8eElYU0zuwJy8BAXO4OOsrNmwclG9nvbmBlUv57WSa0DId3q4looToYWZjSvzEnw15YA7gaYWVzAb/+kDkxcgzUoZ+DcJHTf6fqSCWao1C+w86rFiNkDT4Xyfmgtyw6ely7UyyQShhpz0+fg5bN6MFPaU3p1Ha3+sy49IVBHsBl0CSnVE9J4+NjQqx7yO2BoGlHF1YNxgpQUdGPNUsZ4BODN7ZWGfZjfbVHRVXLzPbkSxptFmkE6TS9XlR67432FxgPdIgfoMrD21/KLgf65v8g== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN9PR11MB5483.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(39860400002)(366004)(136003)(396003)(346002)(451199021)(52536014)(5660300002)(54906003)(110136005)(478600001)(7696005)(71200400001)(8676002)(41300700001)(966005)(8936002)(316002)(66899021)(53546011)(45080400002)(64756008)(66476007)(66556008)(4326008)(66946007)(76116006)(6506007)(26005)(66446008)(107886003)(19627235002)(9686003)(83380400001)(2906002)(186003)(122000001)(55016003)(82960400001)(33656002)(86362001)(38070700005)(38100700002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?gLBGN3T1I01i3Ryos8/elIWP+kPdA2/sfi08gSC7zQoXICbpRPL+1S9JP4dH?= =?us-ascii?Q?MNv6AVNWmopi+7+dOvMlo0AIJdQmsxd6pGhlCmUapB/mlJDmD+Xm8CiZhQoB?= =?us-ascii?Q?Tn4YAYgth3YpVPLFFP+YU0Yus2FPNRPleQTVGn0PZQPmTH4vHQt8NKTUx1by?= =?us-ascii?Q?DSgJwyKDYFG8bXRraNd9NFZG2g5/72WwY7lynMtA7lZKBT6NA2y75VV8pgAd?= =?us-ascii?Q?yWH4jLLslDVEdBKAZpZg3qkF/Qe9pFzDmQGkKYPk7+BGB4VieI0GhWfNewQA?= =?us-ascii?Q?D1ytjEHBEpmv44h8KemVrqB7/UEGtJ87vz51q176CQ7hG+TqmrB1AUexLyXu?= =?us-ascii?Q?KPLMuj3clduvfmJYxWq/PbOnZMQDN+M4/8sI1kqDZkaMvZdUXIqgYRzjbSA/?= =?us-ascii?Q?/L9IRcD8aEFmeiSyCCWkIk7QDxw8crURu2iEz7n8de48D7NZxQSdSC/ZA0u4?= =?us-ascii?Q?HmxJBQhB5Q2jYU/DyWj90vnPgY4bZP2nojOyoQhC47TxwV9kJB+j5FH/cTK5?= =?us-ascii?Q?sY5VWEYpZZ32zOjxOuP4wjHwBurjf9E+mIU711yG6XLe/5Gl6/PV4QAgDtJO?= =?us-ascii?Q?BzN8CytFucJfnZCI5Q816mfRNw7D3LwfC1usVeYW5dDp4bb6dPU7maahuhx4?= =?us-ascii?Q?F4HMUBd9isjAWlxeNbt5qbX0/sIGQ9TzQaKUGYfSrCxJuj8P6QUkTIgIlqbt?= =?us-ascii?Q?8Xm/eXS95XOvic6YErrkur4k8ObuB7/VDOKRfb005MCSekE1MatDZb0YE1Nl?= =?us-ascii?Q?PD11rhWZ99+72YFKMM3cLBTEP9rAJp42ZogyjcZ9TKDXJQIpPeXGtr4YyBd4?= =?us-ascii?Q?si0Bl1HstLv5KCGOhvlAHVa8KgFTj0jIm9kdPdP6aVhcvQKoOdPXBBMxDqcJ?= =?us-ascii?Q?NeUCdH9V9DfkWDsAQ0recyxCZQ61+DvlgbmL3sBswr3PjKF95SmxZxOT2o2J?= =?us-ascii?Q?JsUDuOhRt2qNWZxtuk0UtQacG4IrWa7QWWwAlJlzKlSMKBnOhrp2ErA9aiZZ?= =?us-ascii?Q?tvfHkgoI9h3Au2Ndf6TZMfYvbz547HuowM9b/8vYwj7BWi9wnqDsU2km9VeL?= =?us-ascii?Q?b7pp02IsGR/OHWaOOfGMNeTrjDOKKNbWHqSWIarnjQKGeCqTQOKSsLNbeEAR?= =?us-ascii?Q?NmFUfhCyOtdYdapHHfIvATcCqv737PhBZbmnQfQaL5cgviuSt1VCMD0+SzEl?= =?us-ascii?Q?3XSRLa73WD5javskFniSZSgcJVvtvQpwBK51y+VpDKFAAVYYpS1YFAYDQfnZ?= =?us-ascii?Q?oabVzJ50h+pHrlPw2gxPpRnvRmxc4/8iRYaBY4xuG6AtE2gxU0Qr18/jRF1D?= =?us-ascii?Q?xwmfEcBLCPjaI2yaArgg6UM+Ucd3RGX0xLUV9Y/XncXpe5mUw9pNpPeQppUl?= =?us-ascii?Q?svvwR9YFosNSDM8zCDHS/1rpkGUMjHd0rypQui2hOx4S5+A7fd8WVueYdw/3?= =?us-ascii?Q?0sYA1Ah151MDCf8qmN5GFXpuVihyLg7VY7yLQSGMkA0J0f28px5aA+bvvnUe?= =?us-ascii?Q?Lf4vrNEokrPuRHrjY4SLJ7cxI5hOtuOngZqw/ztzR4V2tlHbjYlzJ8WsI5el?= =?us-ascii?Q?fXevymW2eIwvdNjrktZBIMpqXE2ARPvyWpp1aI2K?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN9PR11MB5483.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e3f71561-9ccb-4db0-e72e-08db516f44b9 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 May 2023 15:57:33.9213 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: haXpQ5kik+7dmubp4OD0B0Y6eyV2kfjnQBivGEqXd7aqgYWBJTg2a2/BJj11TiIAFUaO7UAe0+owl6p9HRmxRg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR11MB6282 Return-Path: chasel.chiu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Patch merged: https://github.com/tianocore/edk2-platforms/commit/dbd802cd273ad1b51be46ca0= 9a58a15e4b70863f Thanks, Chasel > -----Original Message----- > From: devel@edk2.groups.io On Behalf Of Michael > Kubacki > Sent: Wednesday, May 10, 2023 8:02 AM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Desimone, Nathaniel L > ; Oram, Isaac W ; > Gao, Liming ; Dong, Eric ; > Gudla, Raghava > Subject: [edk2-devel] [edk2-platforms][PATCH v4 1/1] MinPlatformPkg: Add > FspNvsBuffer compression option >=20 > From: Michael Kubacki >=20 > Adds a PCD called "PcdEnableCompressedFspNvsBuffer" that allows the > "FspNvsBuffer" UEFI variable data to be saved as compressed data. >=20 > Especially due to the nature of the data saved in this variable, it compr= esses well. > For example, it has been found to reduce ~63KB of data to ~13KB. Boot tim= e > impact has been found to be negligible. >=20 > The default value is FALSE to keep default behavior consistent. >=20 > Decompression can be performed on the variable data using the standard > UefiDecompressLib. >=20 > Cc: Chasel Chiu > Cc: Nate DeSimone > Cc: Isaac Oram > Cc: Liming Gao > Cc: Eric Dong > Cc: Raghava Gudla > Signed-off-by: Michael Kubacki > --- >=20 > Notes: > v4: > - Rebase onto 42a677e992d2 > - Add CompressLib to MinPlatformPkg.dsc as well > v3: > - Rebase onto 7ac91ec277db > - Add CompressLib instance to CoreCommonLib.dsc > v2: Rebase onto 9769bf28d1fc >=20 >=20 > Platform/Intel/MinPlatformPkg/FspWrapper/SaveMemoryConfig/SaveMemoryC > onfig.c | 62 ++++++++++++++++---- >=20 > Platform/Intel/MinPlatformPkg/FspWrapper/SaveMemoryConfig/SaveMemoryC > onfig.inf | 4 ++ > Platform/Intel/MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc = | > 1 + > Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec = | 6 ++ > Platform/Intel/MinPlatformPkg/MinPlatformPkg.dsc = | 1 + > 5 files changed, 61 insertions(+), 13 deletions(-) >=20 > diff --git > a/Platform/Intel/MinPlatformPkg/FspWrapper/SaveMemoryConfig/SaveMemor > yConfig.c > b/Platform/Intel/MinPlatformPkg/FspWrapper/SaveMemoryConfig/SaveMemor > yConfig.c > index 0215e8eeddfb..95b8cef8b32b 100644 > --- > a/Platform/Intel/MinPlatformPkg/FspWrapper/SaveMemoryConfig/SaveMemor > yConfig.c > +++ > b/Platform/Intel/MinPlatformPkg/FspWrapper/SaveMemoryConfig/SaveMemo > +++ ryConfig.c > @@ -3,6 +3,7 @@ > exists, and saves the data to nvRAM. >=20 > Copyright (c) 2017 - 2022, Intel Corporation. All rights reserved.
> +Copyright (c) Microsoft Corporation.
> SPDX-License-Identifier: BSD-2-Clause-Patent >=20 > **/ > @@ -10,6 +11,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #include > #include #include > +#include > #include > #include > #include > @@ -19,6 +21,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #include > #include > #include > +#include > #include > #include >=20 > @@ -38,20 +41,26 @@ SaveMemoryConfigEntryPoint ( > IN EFI_SYSTEM_TABLE *SystemTable > ) > { > - EFI_STATUS Status; > - EFI_HOB_GUID_TYPE *GuidHob; > - VOID *HobData; > - VOID *VariableData; > - UINTN DataSize; > - UINTN BufferSize; > - BOOLEAN DataIsIdentical; > + EFI_STATUS Status; > + EFI_HOB_GUID_TYPE *GuidHob; > + VOID *HobData; > + VOID *VariableData; > + UINTN DataSize; > + UINTN BufferSize; > + BOOLEAN DataIsIdentical; > + VOID *CompressedData; > + UINT64 CompressedSize; > + UINTN CompressedAllocationPages; >=20 > - DataSize =3D 0; > - BufferSize =3D 0; > - VariableData =3D NULL; > - GuidHob =3D NULL; > - HobData =3D NULL; > - DataIsIdentical =3D FALSE; > + DataSize =3D 0; > + BufferSize =3D 0; > + VariableData =3D NULL; > + GuidHob =3D NULL; > + HobData =3D NULL; > + DataIsIdentical =3D FALSE; > + CompressedData =3D NULL; > + CompressedSize =3D 0; > + CompressedAllocationPages =3D 0; >=20 > // > // Search for the Memory Configuration GUID HOB. If it is not present= , then > @@ -73,6 +82,29 @@ SaveMemoryConfigEntryPoint ( > } > } >=20 > + if (PcdGetBool (PcdEnableCompressedFspNvsBuffer)) { > + if (DataSize > 0) { > + CompressedAllocationPages =3D EFI_SIZE_TO_PAGES (DataSize); > + CompressedData =3D AllocatePages (CompressedAllocationP= ages); > + if (CompressedData =3D=3D NULL) { > + DEBUG ((DEBUG_ERROR, "[%a] - Failed to allocate compressed data > buffer.\n", __FUNCTION__)); > + ASSERT_EFI_ERROR (EFI_OUT_OF_RESOURCES); > + return EFI_OUT_OF_RESOURCES; > + } > + > + CompressedSize =3D EFI_PAGES_TO_SIZE (CompressedAllocationPages); > + Status =3D Compress (HobData, DataSize, CompressedData, > &CompressedSize); > + if (EFI_ERROR (Status)) { > + DEBUG ((DEBUG_ERROR, "[%a] - failed to compress data. Status =3D= %r\n", > __FUNCTION__, Status)); > + ASSERT_EFI_ERROR (Status); > + return Status; > + } > + } > + > + HobData =3D CompressedData; > + DataSize =3D (UINTN)CompressedSize; > + } > + > if (HobData !=3D NULL) { > DEBUG ((DEBUG_INFO, "FspNvsHob.NvsDataLength:%d\n", DataSize)); > DEBUG ((DEBUG_INFO, "FspNvsHob.NvsDataPtr : 0x%x\n", HobData)); > @@ -136,6 +168,10 @@ SaveMemoryConfigEntryPoint ( > DEBUG((DEBUG_ERROR, "Memory S3 Data HOB was not found\n")); > } >=20 > + if (CompressedData !=3D NULL) { > + FreePages (CompressedData, CompressedAllocationPages); } > + > // > // This driver does not produce any protocol services, so always unloa= d it. > // > diff --git > a/Platform/Intel/MinPlatformPkg/FspWrapper/SaveMemoryConfig/SaveMemor > yConfig.inf > b/Platform/Intel/MinPlatformPkg/FspWrapper/SaveMemoryConfig/SaveMemor > yConfig.inf > index 61e85a658693..0f12deb131ca 100644 > --- > a/Platform/Intel/MinPlatformPkg/FspWrapper/SaveMemoryConfig/SaveMemor > yConfig.inf > +++ > b/Platform/Intel/MinPlatformPkg/FspWrapper/SaveMemoryConfig/SaveMemo > +++ ryConfig.inf > @@ -26,6 +26,7 @@ [LibraryClasses] > LargeVariableReadLib > LargeVariableWriteLib > BaseLib > + CompressLib >=20 > [Packages] > MdePkg/MdePkg.dec > @@ -45,6 +46,9 @@ [Guids] > gFspNonVolatileStorageHob2Guid ## CONSUMES > gFspNvsBufferVariableGuid ## PRODUCES >=20 > +[Pcd] > + gMinPlatformPkgTokenSpaceGuid.PcdEnableCompressedFspNvsBuffer > + > [Depex] > gEfiVariableArchProtocolGuid AND > gEfiVariableWriteArchProtocolGuid > \ No newline at end of file > diff --git a/Platform/Intel/MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc > b/Platform/Intel/MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc > index 5ce21cf31e17..dfe7d836d32a 100644 > --- a/Platform/Intel/MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc > +++ b/Platform/Intel/MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc > @@ -147,6 +147,7 @@ [LibraryClasses.common] >=20 > BmpSupportLib|MdeModulePkg/Library/BaseBmpSupportLib/BaseBmpSupportLi > b.inf >=20 > LargeVariableReadLib|MinPlatformPkg/Library/BaseLargeVariableLib/BaseLarg > eVariableReadLib.inf >=20 > LargeVariableWriteLib|MinPlatformPkg/Library/BaseLargeVariableLib/BaseLar= g > eVariableWriteLib.inf > + CompressLib|MinPlatformPkg/Library/CompressLib/CompressLib.inf >=20 > # > # CryptLib > diff --git a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > index 784abb828e76..45c75f8ec2c9 100644 > --- a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > +++ b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > @@ -311,6 +311,12 @@ [PcdsFixedAtBuild, PcdsPatchableInModule, > PcdsDynamic, PcdsDynamicEx] >=20 >=20 > gMinPlatformPkgTokenSpaceGuid.PcdPlatformMemoryCheckLevel|0|UINT32|0 > x30000009 >=20 > + ## Controls whether the FSP NVS buffer is saved as compressed data. > + # Data compression can significantly reduce variable storage usage for= FSP > NVS buffer data. > + # Platforms that choose to compress the data will need to decompress > + the variable data upon # extraction. > + > + > gMinPlatformPkgTokenSpaceGuid.PcdEnableCompressedFspNvsBuffer|FALSE|B > O > + OLEAN|0x30000010 > + > ## This PCD is to control which device is the potential trusted consol= e input > device.

> # For example:
> # USB Short Form: UsbHID(0xFFFF,0xFFFF,0x1,0x1)
diff --git > a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dsc > b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dsc > index 90127c16b59e..087fa48dd00a 100644 > --- a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dsc > +++ b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dsc > @@ -101,6 +101,7 @@ [LibraryClasses.common.DXE_DRIVER] > # > # DXE phase common > # > + CompressLib|MinPlatformPkg/Library/CompressLib/CompressLib.inf >=20 > FspWrapperPlatformLib|MinPlatformPkg/FspWrapper/Library/DxeFspWrapperPl > atformLib/DxeFspWrapperPlatformLib.inf >=20 > TestPointCheckLib|MinPlatformPkg/Test/Library/TestPointCheckLib/DxeTestPo= i > ntCheckLib.inf > TestPointLib|MinPlatformPkg/Test/Library/TestPointLib/DxeTestPointLib.= inf > -- > 2.40.1.windows.1 >=20 >=20 >=20 > -=3D-=3D-=3D-=3D-=3D-=3D > Groups.io Links: You receive all messages sent to this group. > View/Reply Online (#104568): https://edk2.groups.io/g/devel/message/10456= 8 > Mute This Topic: https://groups.io/mt/98807775/1777047 > Group Owner: devel+owner@edk2.groups.io > Unsubscribe: https://edk2.groups.io/g/devel/unsub [chasel.chiu@intel.com] > -=3D-=3D-=3D-=3D-=3D-=3D >=20