Reviewed-by: Qin Long <[email protected]>
Best Regards & Thanks, LONG, Qin > -----Original Message----- > From: Zhang, Chao B > Sent: Sunday, June 12, 2016 10:26 AM > To: [email protected] > Cc: Yao, Jiewen; Long, Qin; Zhang, Chao B > Subject: [PATCH] SecurityPkg: Tcg2Smm: Enhance TIS interface detection > > TCG PC Client PTP spec defines that if InterfaceType is defined as TIS1.3. All > the other fields of the FIFO Interface Identifier Register are skipped. > http://www.trustedcomputinggroup.org/pc-client-specific-platform-tpm- > profile-for-tpm-2-0-v43-150126/ > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Chao Zhang <[email protected]> > --- > SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c | 12 +++++++++++- > 1 file changed, 11 insertions(+), 1 deletion(-) > > diff --git a/SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c > b/SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c > index b497475..1c2d8ba 100644 > --- a/SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c > +++ b/SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c > @@ -50,18 +50,27 @@ GetPtpInterface ( > InterfaceId.Uint32 = MmioRead32 ((UINTN)&((PTP_CRB_REGISTERS > *)Register)->InterfaceId); > InterfaceCapability.Uint32 = MmioRead32 > ((UINTN)&((PTP_FIFO_REGISTERS *)Register)->InterfaceCapability); > > + if (InterfaceId.Bits.InterfaceType == > PTP_INTERFACE_IDENTIFIER_INTERFACE_TYPE_TIS) { > + return PtpInterfaceTis; > + } > + > if ((InterfaceId.Bits.InterfaceType == > PTP_INTERFACE_IDENTIFIER_INTERFACE_TYPE_CRB) && > (InterfaceId.Bits.InterfaceVersion == > PTP_INTERFACE_IDENTIFIER_INTERFACE_VERSION_CRB) && > (InterfaceId.Bits.CapCRB != 0)) { > return PtpInterfaceCrb; > } > + > if ((InterfaceId.Bits.InterfaceType == > PTP_INTERFACE_IDENTIFIER_INTERFACE_TYPE_FIFO) && > (InterfaceId.Bits.InterfaceVersion == > PTP_INTERFACE_IDENTIFIER_INTERFACE_VERSION_FIFO) && > (InterfaceId.Bits.CapFIFO != 0) && > (InterfaceCapability.Bits.InterfaceVersion == > INTERFACE_CAPABILITY_INTERFACE_VERSION_PTP)) { > return PtpInterfaceFifo; > } > - return PtpInterfaceTis; > + > + // > + // No Ptp interface available > + // > + return PtpInterfaceMax; > } > > EFI_TPM2_ACPI_TABLE mTpm2AcpiTemplate = { @@ -400,6 +409,7 @@ > PublishTpm2 ( > case PtpInterfaceTis: > break; > default: > + DEBUG((EFI_D_ERROR, "TPM2 InterfaceType get error! %d\n", > + InterfaceType)); > break; > } > > -- > 1.9.5.msysgit.1 _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

