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.115; helo=mga14.intel.com; envelope-from=jiewen.yao@intel.com; receiver=edk2-devel@lists.01.org Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) (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 2973F228392E0 for ; Fri, 20 Apr 2018 16:09:12 -0700 (PDT) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Apr 2018 16:09:12 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,303,1520924400"; d="scan'208";a="35253186" Received: from fmsmsx105.amr.corp.intel.com ([10.18.124.203]) by orsmga008.jf.intel.com with ESMTP; 20 Apr 2018 16:09:11 -0700 Received: from fmsmsx157.amr.corp.intel.com (10.18.116.73) by FMSMSX105.amr.corp.intel.com (10.18.124.203) with Microsoft SMTP Server (TLS) id 14.3.319.2; Fri, 20 Apr 2018 16:09:11 -0700 Received: from shsmsx104.ccr.corp.intel.com (10.239.4.70) by FMSMSX157.amr.corp.intel.com (10.18.116.73) with Microsoft SMTP Server (TLS) id 14.3.319.2; Fri, 20 Apr 2018 16:09:11 -0700 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.79]) by SHSMSX104.ccr.corp.intel.com ([169.254.5.240]) with mapi id 14.03.0319.002; Sat, 21 Apr 2018 07:09:09 +0800 From: "Yao, Jiewen" To: "Kinney, Michael D" CC: "edk2-devel@lists.01.org" , Sean Brogan Thread-Topic: [RFC v2 0/4] Add FmpDevicePkg Thread-Index: AQHT1o/PeO+zhLL/wkGocXsyLk8ovaQJDqjQgAC0xgCAAIifAg== Date: Fri, 20 Apr 2018 23:09:09 +0000 Message-ID: <959DE3C7-2C4B-47DE-8CE9-1FB97D24E8FC@intel.com> References: <20180417210522.29644-1-michael.d.kinney@intel.com> <74D8A39837DF1E4DA445A8C0B3885C503AB75A50@shsmsx102.ccr.corp.intel.com>, In-Reply-To: Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: 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:09:13 -0000 Content-Language: zh-CN Content-Type: text/plain; charset="iso-2022-jp" Content-Transfer-Encoding: quoted-printable that is also ok, as long as we can know the api returns a state instead of = do the work. thank you! Yao, Jiewen > =1B$B:_=1B(B 2018=1B$BG/=1B(B4=1B$B7n=1B(B21=1B$BF|!$>e8a=1B(B7:00=1B$B!$= =1B(BKinney, Michael D =1B$B=20 > How about: >=20 > LowestSupportedVersionCheckRequired() > LockFmpDeviceAtLockEventGuidRequired() >=20 > Mike >=20 >> -----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 >>>=20 >>> https://bugzilla.tianocore.org/show_bug.cgi?id=3D922 >>>=20 >>> 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 >>>=20 >>> Based on content from the following branch: >>>=20 >>>=20 >> https://github.com/Microsoft/MS_UEFI/tree/share/MsCapsul >> eSupport/MsCapsu >>> leUpdatePkg >>>=20 >>> Branch for review: >>>=20 >>>=20 >> https://github.com/mdkinney/edk2/tree/Bug_922_FmpDeviceP >> kg_V2 >>>=20 >>> 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. >>>=20 >>> Cc: Sean Brogan >>> Cc: Jiewen Yao >>> Contributed-under: TianoCore Contribution Agreement >> 1.1 >>> Signed-off-by: Michael D Kinney >> >>>=20 >>> 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 >>>=20 >>> 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 >>>=20 >> FmpDevicePkg/Library/CapsuleUpdatePolicyLibNull/CapsuleU >> pdatePolicyLibNull >>> .c >>> create mode 100644 >>>=20 >> FmpDevicePkg/Library/CapsuleUpdatePolicyLibNull/CapsuleU >> pdatePolicyLibNull >>> .inf >>> create mode 100644 >>>=20 >> FmpDevicePkg/Library/CapsuleUpdatePolicyLibNull/CapsuleU >> pdatePolicyLibNull >>> .uni >>> create mode 100644 >>> FmpDevicePkg/Library/FmpDeviceLibNull/FmpDeviceLib.c >>> create mode 100644 >>>=20 >> FmpDevicePkg/Library/FmpDeviceLibNull/FmpDeviceLibNull.i >> nf >>> create mode 100644 >>>=20 >> FmpDevicePkg/Library/FmpDeviceLibNull/FmpDeviceLibNull.u >> ni >>> create mode 100644 >>>=20 >> FmpDevicePkg/Library/FmpPayloadHeaderLibV1/FmpPayloadHea >> derLib.c >>> create mode 100644 >>>=20 >> FmpDevicePkg/Library/FmpPayloadHeaderLibV1/FmpPayloadHea >> derLibV1.inf >>> create mode 100644 >>>=20 >> FmpDevicePkg/Library/FmpPayloadHeaderLibV1/FmpPayloadHea >> derLibV1.uni >>>=20 >>> -- >>> 2.14.2.windows.3 >=20