Merged - https://github.com/tianocore/edk2/pull/2291
> -----Original Message----- > From: [email protected] <[email protected]> On Behalf Of Yao, Jiewen > Sent: Saturday, December 11, 2021 9:45 PM > To: Xu, Min M <[email protected]>; [email protected] > Cc: Kinney, Michael D <[email protected]>; Liming Gao > <[email protected]>; Liu, Zhiguang <[email protected]>; Wang, > Jian J <[email protected]>; Lu, Ken <[email protected]>; Sami Mujawar > <[email protected]>; Gerd Hoffmann <[email protected]> > Subject: Re: [edk2-devel] [PATCH V7 0/3] Introduce CcMeasurementProtocol > into EDK2 > > Series: Reviewed-by: Jiewen Yao <[email protected]> > > > -----Original Message----- > > From: Xu, Min M <[email protected]> > > Sent: Saturday, December 11, 2021 9:09 PM > > To: [email protected] > > Cc: Xu, Min M <[email protected]>; Kinney, Michael D > > <[email protected]>; Liming Gao <[email protected]>; Liu, > > Zhiguang <[email protected]>; Yao, Jiewen <[email protected]>; > > Wang, Jian J <[email protected]>; Lu, Ken <[email protected]>; Sami > > Mujawar <[email protected]>; Gerd Hoffmann <[email protected]> > > Subject: [PATCH V7 0/3] Introduce CcMeasurementProtocol into EDK2 > > > > BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3625 > > > > If Confidential Computing (Cc) firmware supports measurement and an > > event is created, CC-Guest firmware is designed to report the event > > log with the same data structure in TCG-Platform-Firmware-Profile > > specification with EFI_TCG2_EVENT_LOG_FORMAT_TCG_2 format. > > > > The CC-Guest firmware supports measurement. It is designed to produce > > EFI_CC_MEASUREMENT_PROTOCOL with new GUID > > EFI_CC_MEASUREMENT_PROTOCOL_GUID to report event log and provides > > hash capability. > > > > Patch #1: > > Introduce the CC Measurement Protocol definition into MdePkg. > > > > Patch #2: > > Update DxeTpm2MeasureBootLib to support CC based measure boot. > > > > Patch #3: > > Update DxeTpmMeasurementLib to support CC based measurement. > > > > Code is at https://github.com/mxu9/edk2/tree/td_protocol.v6 > > > > This patch-set has been tested in Intel's internal hardware platform. > > Both TD and TPM pass the tests. > > > > v7 changes: > > - Rebase the code base (commit: e81a81e5846e) and update patch-set with > > uncrustify. > > > > v6 changes: > > - Add ASSERT (sizeof (EFI_CC_EVENT) == sizeof (EFI_TCG2_EVENT)) check. > > - Update the CcMeasureAndLogData () to add CcProtocol pointer as the > > input parameter. > > - Tpm20MeasureAndLogData () / Tpm12MeasureAndLogDat () > > / CcMeasureAndLogData () are made static according to Sami's > > comments. > > > > v5 changes: > > - Add gEfiCcFinalEventsTableGuid in [Guids] section of MdePkg.dec > > - DxeTpm2MeasureBootLib and DxeTpmMeasurementLib will first > > call CC protocol to do the measure boot / measurement. If it is not > > installed, TCG2 protocol will be located and called. > > - CreateCcEventFromTcg2Event is removed. This is because CcEvent is > > similar to Tcg2Event except the MrIndex and PcrIndex. So in the code > > Tcg2Event will be first created and intialized. If > > CcMeasurementProtocol is called to do the measure boot, then CcEvent > > points to Tcg2Event and the MrIndex is adjusted. > > - Some other minor changes. > > > > v4 changes: > > - Rename TeeMeasurementProtocol to CcMeasurementProtocol based > > on the discussion in below links: > > https://edk2.groups.io/g/devel/message/82876 > > https://edk2.groups.io/g/devel/message/82999 > > https://edk2.groups.io/g/devel/message/83000 > > With this protocol, CC based measure boot is supported. > > TD based measure boot is one of the CC based measure boot. > > - The spec will be updated according to the changes later. > > - TdProtocol.h is deleted. Its content is merged into CcMeasurement.h. > > - Add gEfiCcFinalEventsTableGuid definition in MdePkg.dec > > - Update the description in DxeTpm2MeasureBootLib.inf > > and DxeTpmMeasurementLib.inf > > > > v3 changes: > > - Rename TdProtocol to TeeMeasurementProtocol which is a neutral name. > > With this protocol, TEE based measure boot is supported. > > TD based measure boot is one of the TEE based measure boot. > > - The spec will be updated according to the changes later. > > - Fix errors in DxeTpm2MeasureBootLib. > > > > v2 changes: > > - TD based measure boot is implemented in DxeTpm2MeasureBootLib. > > This minimize the code changes. > > - TD based measurement is added. It is implemented in > > DxeTpmMeasurementLib. > > - Fix the typo in comments. > > > > Cc: Michael D Kinney <[email protected]> > > Cc: Liming Gao <[email protected]> > > Cc: Zhiguang Liu <[email protected]> > > Cc: Jiewen Yao <[email protected]> > > Cc: Jian J Wang <[email protected]> > > Cc: Ken Lu <[email protected]> > > Cc: Sami Mujawar <[email protected]> > > Cc: Gerd Hoffmann <[email protected]> > > Reviewed-by: Sami Mujawar <[email protected]> > > Tested-by: Min Xu <[email protected]> > > Signed-off-by: Min Xu <[email protected]> > > > > Min Xu (3): > > MdePkg: Introduce CcMeasurementProtocol for CC Guest firmware > > SecurityPkg: Support CcMeasurementProtocol in DxeTpm2MeasureBootLib > > SecurityPkg: Support CcMeasurementProtocol in DxeTpmMeasurementLib > > > > MdePkg/Include/Protocol/CcMeasurement.h | 302 +++++++++++++++ > > MdePkg/MdePkg.dec | 6 + > > .../DxeTpm2MeasureBootLib.c | 343 ++++++++++++++---- > > .../DxeTpm2MeasureBootLib.inf | 3 +- > > .../DxeTpmMeasurementLib.c | 122 ++++++- > > .../DxeTpmMeasurementLib.inf | 9 +- > > 6 files changed, 686 insertions(+), 99 deletions(-) > > create mode 100644 MdePkg/Include/Protocol/CcMeasurement.h > > > > -- > > 2.29.2.windows.2 > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#84660): https://edk2.groups.io/g/devel/message/84660 Mute This Topic: https://groups.io/mt/87657481/21656 Group Owner: [email protected] Unsubscribe: https://edk2.groups.io/g/devel/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
