From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=192.55.52.93; helo=mga11.intel.com; envelope-from=michael.d.kinney@intel.com; receiver=edk2-devel@lists.01.org Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 0FFAC21EBD1CE for ; Fri, 20 Apr 2018 16:00:11 -0700 (PDT) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Apr 2018 16:00:11 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,303,1520924400"; d="scan'208";a="48667885" Received: from orsmsx104.amr.corp.intel.com ([10.22.225.131]) by fmsmga001.fm.intel.com with ESMTP; 20 Apr 2018 16:00:11 -0700 Received: from orsmsx153.amr.corp.intel.com (10.22.226.247) by ORSMSX104.amr.corp.intel.com (10.22.225.131) with Microsoft SMTP Server (TLS) id 14.3.319.2; Fri, 20 Apr 2018 16:00:10 -0700 Received: from orsmsx113.amr.corp.intel.com ([169.254.9.55]) by ORSMSX153.amr.corp.intel.com ([169.254.12.79]) with mapi id 14.03.0319.002; Fri, 20 Apr 2018 16:00:10 -0700 From: "Kinney, Michael D" To: "Yao, Jiewen" , "edk2-devel@lists.01.org" , "Kinney, Michael D" Thread-Topic: [RFC v2 0/4] Add FmpDevicePkg Thread-Index: AQHT1o/OHaTxy9R+A0uF+R9yWdQ7S6QJhXUAgADDmjA= Date: Fri, 20 Apr 2018 23:00:10 +0000 Message-ID: References: <20180417210522.29644-1-michael.d.kinney@intel.com> <74D8A39837DF1E4DA445A8C0B3885C503AB75A50@shsmsx102.ccr.corp.intel.com> In-Reply-To: <74D8A39837DF1E4DA445A8C0B3885C503AB75A50@shsmsx102.ccr.corp.intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.0.0.116 dlp-reaction: no-action x-originating-ip: [10.22.254.140] MIME-Version: 1.0 Subject: Re: [RFC v2 0/4] Add FmpDevicePkg X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Apr 2018 23:00:12 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable How about: LowestSupportedVersionCheckRequired() LockFmpDeviceAtLockEventGuidRequired() Mike > -----Original Message----- > From: Yao, Jiewen > Sent: Thursday, April 19, 2018 9:18 PM > To: Kinney, Michael D ; > edk2-devel@lists.01.org > Cc: Sean Brogan > Subject: RE: [RFC v2 0/4] Add FmpDevicePkg >=20 > Thanks Mike. >=20 > I am a little confused about naming: > CheckLowestSupportedVersion() and > LockFmpDeviceAtLockEventGuid(). >=20 > At the first glace, I think those 2 API will *do the > check* for LSV, or *do the lock* FMP. >=20 > But actually, it returns a state to indicate *if* the > caller need check LSV and *if* the caller need lock FMP. >=20 > Can we rename them to be > NeedCheckLowestSupportedVersion() and > NeedLockFmpDeviceAtLockEventGuid() ? >=20 >=20 > Other update seems good. Reviewed-by: > Jiewen.yao@intel.com >=20 >=20 > Thank you > Yao Jiewen >=20 > > -----Original Message----- > > From: Kinney, Michael D > > Sent: Wednesday, April 18, 2018 5:05 AM > > To: edk2-devel@lists.01.org > > Cc: Sean Brogan ; Yao, > Jiewen > > ; Kinney, Michael D > > > Subject: [RFC v2 0/4] Add FmpDevicePkg > > > > https://bugzilla.tianocore.org/show_bug.cgi?id=3D922 > > > > Changes in V2 > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > * FmpDevicePkg DEC file > > + Change PcdFmpDeviceSystemResetRequired from > FeatureFlag > > to FixedAtBuild > > + Add PcdFmpDeviceTestKeySha256Digest for test key > detection. > > Set to {0} to disable test key detection. > > * FmpDevicePkg DSC file > > + Fix ARM and AARCH64 build issues > > + Update DisplayUpdateProgressLib mappings to match > patches in > > Bug_801_DisplayUpdateProgressLib_V2 > > * FmpDeviceLib Class and Instance > > + Update FmpDeviceGetSize() to return EFI_STATUS > > + Update FmpDeviceGetAttributes() to return > EFI_STATUS > > + Update FmpDeviceGetVersionString() to return > EFI_STATUS > > * FmpDxe > > + Set depex to Variable Arch Write Protocol and > Variable Lock Protocol > > + Break out test key detection in FmpDxe into > DetectTestKey.c > > + Change LockAllVars() to LockAllFmpVariables() > > + Update LockAllFmpVariables() to lock each of the > UEFI variables used. > > + Always lock UEFI variables when > PcdFmpDeviceLockEventGuid is signaled > > + Remove ComputeVersionName(). FmpDeviceLib must > provide version > > string > > > > Based on content from the following branch: > > > > > https://github.com/Microsoft/MS_UEFI/tree/share/MsCapsul > eSupport/MsCapsu > > leUpdatePkg > > > > Branch for review: > > > > > https://github.com/mdkinney/edk2/tree/Bug_922_FmpDeviceP > kg_V2 > > > > This package provides an implementation of a Firmware > Management Protocol > > instance that supports the update of firmware storage > devices using UEFI > > Capsules. The behavior of the Firmware Management > Protocol instance is > > customized using libraries and PCDs. > > > > Cc: Sean Brogan > > Cc: Jiewen Yao > > Contributed-under: TianoCore Contribution Agreement > 1.1 > > Signed-off-by: Michael D Kinney > > > > > Kinney, Michael D (4): > > FmpDevicePkg: Add package, library classes, and PCDs > > FmpDevicePkg: Add library instances > > FmpDevicePkg: Add FmpDxe module > > FmpDevicePkg: Add DSC file to build all package > components > > > > FmpDevicePkg/FmpDevicePkg.dec | > 132 ++ > > FmpDevicePkg/FmpDevicePkg.dsc | > 134 ++ > > FmpDevicePkg/FmpDevicePkg.uni | > 80 ++ > > FmpDevicePkg/FmpDevicePkgExtra.uni | > 18 + > > FmpDevicePkg/FmpDxe/DetectTestKey.c | > 166 +++ > > FmpDevicePkg/FmpDxe/FmpDxe.c | > 1451 > > ++++++++++++++++++++ > > FmpDevicePkg/FmpDxe/FmpDxe.inf | > 93 ++ > > FmpDevicePkg/FmpDxe/FmpDxe.uni | > 20 + > > FmpDevicePkg/FmpDxe/FmpDxeExtra.uni | > 18 + > > FmpDevicePkg/FmpDxe/FmpDxeLib.inf | > 90 ++ > > FmpDevicePkg/FmpDxe/VariableSupport.c | > 461 +++++++ > > FmpDevicePkg/FmpDxe/VariableSupport.h | > 180 +++ > > .../Include/Library/CapsuleUpdatePolicyLib.h | > 120 ++ > > FmpDevicePkg/Include/Library/FmpDeviceLib.h | > 405 ++++++ > > FmpDevicePkg/Include/Library/FmpPayloadHeaderLib.h | > 100 ++ > > .../CapsuleUpdatePolicyLibNull.c | > 136 ++ > > .../CapsuleUpdatePolicyLibNull.inf | > 45 + > > .../CapsuleUpdatePolicyLibNull.uni | > 17 + > > .../Library/FmpDeviceLibNull/FmpDeviceLib.c | > 427 ++++++ > > .../Library/FmpDeviceLibNull/FmpDeviceLibNull.inf | > 48 + > > .../Library/FmpDeviceLibNull/FmpDeviceLibNull.uni | > 18 + > > .../FmpPayloadHeaderLibV1/FmpPayloadHeaderLib.c | > 188 +++ > > .../FmpPayloadHeaderLibV1.inf | > 48 + > > .../FmpPayloadHeaderLibV1.uni | > 21 + > > 24 files changed, 4416 insertions(+) > > create mode 100644 FmpDevicePkg/FmpDevicePkg.dec > > create mode 100644 FmpDevicePkg/FmpDevicePkg.dsc > > create mode 100644 FmpDevicePkg/FmpDevicePkg.uni > > create mode 100644 FmpDevicePkg/FmpDevicePkgExtra.uni > > create mode 100644 > FmpDevicePkg/FmpDxe/DetectTestKey.c > > create mode 100644 FmpDevicePkg/FmpDxe/FmpDxe.c > > create mode 100644 FmpDevicePkg/FmpDxe/FmpDxe.inf > > create mode 100644 FmpDevicePkg/FmpDxe/FmpDxe.uni > > create mode 100644 > FmpDevicePkg/FmpDxe/FmpDxeExtra.uni > > create mode 100644 FmpDevicePkg/FmpDxe/FmpDxeLib.inf > > create mode 100644 > FmpDevicePkg/FmpDxe/VariableSupport.c > > create mode 100644 > FmpDevicePkg/FmpDxe/VariableSupport.h > > create mode 100644 > FmpDevicePkg/Include/Library/CapsuleUpdatePolicyLib.h > > create mode 100644 > FmpDevicePkg/Include/Library/FmpDeviceLib.h > > create mode 100644 > FmpDevicePkg/Include/Library/FmpPayloadHeaderLib.h > > create mode 100644 > > > FmpDevicePkg/Library/CapsuleUpdatePolicyLibNull/CapsuleU > pdatePolicyLibNull > > .c > > create mode 100644 > > > FmpDevicePkg/Library/CapsuleUpdatePolicyLibNull/CapsuleU > pdatePolicyLibNull > > .inf > > create mode 100644 > > > FmpDevicePkg/Library/CapsuleUpdatePolicyLibNull/CapsuleU > pdatePolicyLibNull > > .uni > > create mode 100644 > > FmpDevicePkg/Library/FmpDeviceLibNull/FmpDeviceLib.c > > create mode 100644 > > > FmpDevicePkg/Library/FmpDeviceLibNull/FmpDeviceLibNull.i > nf > > create mode 100644 > > > FmpDevicePkg/Library/FmpDeviceLibNull/FmpDeviceLibNull.u > ni > > create mode 100644 > > > FmpDevicePkg/Library/FmpPayloadHeaderLibV1/FmpPayloadHea > derLib.c > > create mode 100644 > > > FmpDevicePkg/Library/FmpPayloadHeaderLibV1/FmpPayloadHea > derLibV1.inf > > create mode 100644 > > > FmpDevicePkg/Library/FmpPayloadHeaderLibV1/FmpPayloadHea > derLibV1.uni > > > > -- > > 2.14.2.windows.3