public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table
@ 2019-09-29  6:15 Yao, Jiewen
  2019-09-29  6:15 ` [PATCH 1/3] MdePkg/Include: correct Lasa in Tpm2Acpi Yao, Jiewen
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Yao, Jiewen @ 2019-09-29  6:15 UTC (permalink / raw)
  To: devel; +Cc: Jian J Wang, Chao Zhang

Bugzilla https://bugzilla.tianocore.org/show_bug.cgi?id=978

This patch series adds Laml/Lasa to TPM2 ACPI table.

This is defined by TPM2 ACPI table Version 1.2, Revision 8.
It only impacts the TPM2 ACPI table version 4 or above.
The default TPM2 ACPI table version is still 3 to keep maximum compatibility.

The new fields are only for TCG2 log format, but not TCG1.2 log format.

This new fields are optional and won't be consumed by OS/Loader, because
the OS/loader still uses TCG2_PROTOCOL to get the event log.

These fields are important for OS utility, because the OS utility can
not use TCG2_PROTOCOL.

Test:
Use default TPM2 version 3. No ALMA/ALSA shown in TPM2 table.
Use TPM2 version 4. The DXE driver reports ALMA/ALSA PCD and the SMM driver
installs ALMA/ALSA in TPM2 table.

Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Chao Zhang <chao.b.zhang@intel.com>
Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>

Jiewen Yao (3):
  MdePkg/Include: correct Lasa in Tpm2Acpi.
  SecurityPkg/dsc: Add PCD for Laml, Lasa for TPM2.
  SecurityPkg/Tcg2: Add Support Laml, Lasa for TPM2 ACPI.

 MdePkg/Include/IndustryStandard/Tpm2Acpi.h |  2 +-
 SecurityPkg/SecurityPkg.dec                |  8 ++++++
 SecurityPkg/SecurityPkg.uni                |  9 ++++++
 SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.c          | 32 ++++++++++++++++++----
 SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.inf        |  3 ++
 SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c          | 32 ++++++++++++++++++++--
 SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.inf        |  2 ++
 7 files changed, 78 insertions(+), 10 deletions(-)

-- 
2.19.2.windows.1


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 1/3] MdePkg/Include: correct Lasa in Tpm2Acpi.
  2019-09-29  6:15 [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table Yao, Jiewen
@ 2019-09-29  6:15 ` Yao, Jiewen
  2019-09-30  5:36   ` Liming Gao
  2019-09-29  6:15 ` [PATCH 2/3] SecurityPkg/dsc: Add PCD for Laml, Lasa for TPM2 Yao, Jiewen
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 7+ messages in thread
From: Yao, Jiewen @ 2019-09-29  6:15 UTC (permalink / raw)
  To: devel; +Cc: Michael D Kinney, Liming Gao

Correct Lasa according to TCG ACPI spec.

Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
---
 MdePkg/Include/IndustryStandard/Tpm2Acpi.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/MdePkg/Include/IndustryStandard/Tpm2Acpi.h b/MdePkg/Include/IndustryStandard/Tpm2Acpi.h
index b75f025f03..3ed6834cc9 100644
--- a/MdePkg/Include/IndustryStandard/Tpm2Acpi.h
+++ b/MdePkg/Include/IndustryStandard/Tpm2Acpi.h
@@ -27,7 +27,7 @@ typedef struct {
   UINT32                      StartMethod;
 //UINT8                       PlatformSpecificParameters[];  // size up to 12
 //UINT32                      Laml;                          // Optional
-//UINT32                      Lasa;                          // Optional
+//UINT64                      Lasa;                          // Optional
 } EFI_TPM2_ACPI_TABLE;
 
 #define EFI_TPM2_ACPI_TABLE_START_METHOD_ACPI                                          2
-- 
2.19.2.windows.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/3] SecurityPkg/dsc: Add PCD for Laml, Lasa for TPM2.
  2019-09-29  6:15 [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table Yao, Jiewen
  2019-09-29  6:15 ` [PATCH 1/3] MdePkg/Include: correct Lasa in Tpm2Acpi Yao, Jiewen
@ 2019-09-29  6:15 ` Yao, Jiewen
  2019-09-29  6:15 ` [PATCH 3/3] SecurityPkg/Tcg2: Add Support Laml, Lasa for TPM2 ACPI Yao, Jiewen
  2019-09-30  5:23 ` [edk2-devel] [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table Wang, Jian J
  3 siblings, 0 replies; 7+ messages in thread
From: Yao, Jiewen @ 2019-09-29  6:15 UTC (permalink / raw)
  To: devel; +Cc: Jian J Wang, Chao Zhang

Those PCDs will be used for TPM2 ACPI table.
Tcg2Dxe need produce those for event log address.
Tcg2Smm need consume those to fill TPM2 ACPI table.

Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Chao Zhang <chao.b.zhang@intel.com>
Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
---
 SecurityPkg/SecurityPkg.dec | 8 ++++++++
 SecurityPkg/SecurityPkg.uni | 9 +++++++++
 2 files changed, 17 insertions(+)

diff --git a/SecurityPkg/SecurityPkg.dec b/SecurityPkg/SecurityPkg.dec
index 6dbaff1a0c..8249bf0220 100644
--- a/SecurityPkg/SecurityPkg.dec
+++ b/SecurityPkg/SecurityPkg.dec
@@ -488,5 +488,13 @@
   # @Prompt IdleByass status supported by current active TPM interface.
   gEfiSecurityPkgTokenSpaceGuid.PcdCRBIdleByPass|0xFF|UINT8|0x0001001F
 
+  ## This PCD records LAML field in TPM2 ACPI table.
+  # @Prompt Tpm2AcpiTableLaml LAML field in TPM2 ACPI table.
+  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLaml|0|UINT32|0x00010022
+
+  ## This PCD records LASA field in TPM2 ACPI table.
+  # @Prompt Tpm2AcpiTableLasa LASA field in TPM2 ACPI table.
+  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLasa|0|UINT64|0x00010023
+
 [UserExtensions.TianoCore."ExtraFiles"]
   SecurityPkgExtra.uni
diff --git a/SecurityPkg/SecurityPkg.uni b/SecurityPkg/SecurityPkg.uni
index 14077fbc28..ee79b98f0d 100644
--- a/SecurityPkg/SecurityPkg.uni
+++ b/SecurityPkg/SecurityPkg.uni
@@ -286,3 +286,12 @@
                                                                                           "  TRUE  - Skip password prompt.\n"
                                                                                           "  FALSE - Does not skip password prompt.\n"
 
+#string STR_gEfiSecurityPkgTokenSpaceGuid_PcdTpm2AcpiTableLaml_PROMPT  #language en-US "The LAML of TPM2 ACPI table"
+
+#string STR_gEfiSecurityPkgTokenSpaceGuid_PcdTpm2AcpiTableLaml_HELP  #language en-US "This PCD defines LAML of TPM2 ACPI table\n\n"
+                                                                                     "0 means this field is unsupported\n"
+
+#string STR_gEfiSecurityPkgTokenSpaceGuid_PcdTpm2AcpiTableLasa_PROMPT  #language en-US "The LASA of TPM2 ACPI table"
+
+#string STR_gEfiSecurityPkgTokenSpaceGuid_PcdTpm2AcpiTableLasa_HELP  #language en-US "This PCD defines LASA of TPM2 ACPI table\n\n"
+                                                                                     "0 means this field is unsupported\n"
-- 
2.19.2.windows.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 3/3] SecurityPkg/Tcg2: Add Support Laml, Lasa for TPM2 ACPI.
  2019-09-29  6:15 [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table Yao, Jiewen
  2019-09-29  6:15 ` [PATCH 1/3] MdePkg/Include: correct Lasa in Tpm2Acpi Yao, Jiewen
  2019-09-29  6:15 ` [PATCH 2/3] SecurityPkg/dsc: Add PCD for Laml, Lasa for TPM2 Yao, Jiewen
@ 2019-09-29  6:15 ` Yao, Jiewen
  2019-09-30  5:23 ` [edk2-devel] [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table Wang, Jian J
  3 siblings, 0 replies; 7+ messages in thread
From: Yao, Jiewen @ 2019-09-29  6:15 UTC (permalink / raw)
  To: devel; +Cc: Jian J Wang, Chao Zhang

Tcg2Dxe produces PcdTpm2AcpiTableLaml/Lasa for event log address.
Tcg2Smm consumes PcdTpm2AcpiTableLaml/Lasa to fill TPM2 ACPI table.

Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Chao Zhang <chao.b.zhang@intel.com>
Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
---
 SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.c   | 32 +++++++++++++++++++++++------
 SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.inf |  3 +++
 SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c   | 32 ++++++++++++++++++++++++++---
 SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.inf |  2 ++
 4 files changed, 60 insertions(+), 9 deletions(-)

diff --git a/SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.c b/SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.c
index a2729457b7..85f2e0ae38 100644
--- a/SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.c
+++ b/SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.c
@@ -1467,17 +1467,37 @@ SetupEventLog (
   for (Index = 0; Index < sizeof(mTcg2EventInfo)/sizeof(mTcg2EventInfo[0]); Index++) {
     if ((mTcgDxeData.BsCap.SupportedEventLogs & mTcg2EventInfo[Index].LogFormat) != 0) {
       mTcgDxeData.EventLogAreaStruct[Index].EventLogFormat = mTcg2EventInfo[Index].LogFormat;
-      Status = gBS->AllocatePages (
-                      AllocateAnyPages,
-                      EfiBootServicesData,
-                      EFI_SIZE_TO_PAGES (PcdGet32 (PcdTcgLogAreaMinLen)),
-                      &Lasa
-                      );
+      if (PcdGet8(PcdTpm2AcpiTableRev) >= 4) {
+        Status = gBS->AllocatePages (
+                        AllocateAnyPages,
+                        EfiACPIMemoryNVS,
+                        EFI_SIZE_TO_PAGES (PcdGet32 (PcdTcgLogAreaMinLen)),
+                        &Lasa
+                        );
+      } else {
+        Status = gBS->AllocatePages (
+                        AllocateAnyPages,
+                        EfiBootServicesData,
+                        EFI_SIZE_TO_PAGES (PcdGet32 (PcdTcgLogAreaMinLen)),
+                        &Lasa
+                        );
+      }
       if (EFI_ERROR (Status)) {
         return Status;
       }
       mTcgDxeData.EventLogAreaStruct[Index].Lasa = Lasa;
       mTcgDxeData.EventLogAreaStruct[Index].Laml = PcdGet32 (PcdTcgLogAreaMinLen);
+
+      if ((PcdGet8(PcdTpm2AcpiTableRev) >= 4) ||
+          (mTcg2EventInfo[Index].LogFormat == EFI_TCG2_EVENT_LOG_FORMAT_TCG_2)) {
+        //
+        // Report TCG2 event log address and length, so that they can be reported in TPM2 ACPI table.
+        // Ignore the return status, because those fields are optional.
+        //
+        PcdSet32S(PcdTpm2AcpiTableLaml, (UINT32)mTcgDxeData.EventLogAreaStruct[Index].Laml);
+        PcdSet64S(PcdTpm2AcpiTableLasa, mTcgDxeData.EventLogAreaStruct[Index].Lasa);
+      }
+
       //
       // To initialize them as 0xFF is recommended
       // because the OS can know the last entry for that.
diff --git a/SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.inf b/SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.inf
index 9a44aadea6..c41c50a7a2 100644
--- a/SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.inf
+++ b/SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.inf
@@ -102,6 +102,9 @@
   gEfiSecurityPkgTokenSpaceGuid.PcdTcg2NumberOfPCRBanks                     ## CONSUMES
   gEfiSecurityPkgTokenSpaceGuid.PcdTcgLogAreaMinLen                         ## CONSUMES
   gEfiSecurityPkgTokenSpaceGuid.PcdTcg2FinalLogAreaLen                      ## CONSUMES
+  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableRev                         ## CONSUMES
+  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLaml                        ## PRODUCES
+  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLasa                        ## PRODUCES
 
 [Depex]
   TRUE
diff --git a/SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c b/SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c
index a2d71741f2..14e4ed0ee1 100644
--- a/SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c
+++ b/SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c
@@ -16,8 +16,24 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 #include "Tcg2Smm.h"
 
+#pragma pack(1)
 
-EFI_TPM2_ACPI_TABLE  mTpm2AcpiTemplate = {
+typedef struct {
+  EFI_ACPI_DESCRIPTION_HEADER Header;
+  // Flags field is replaced in version 4 and above
+  //    BIT0~15:  PlatformClass      This field is only valid for version 4 and above
+  //    BIT16~31: Reserved
+  UINT32                      Flags;
+  UINT64                      AddressOfControlArea;
+  UINT32                      StartMethod;
+  UINT8                       PlatformSpecificParameters[12];  // size up to 12
+  UINT32                      Laml;                          // Optional
+  UINT64                      Lasa;                          // Optional
+} EFI_TPM2_ACPI_TABLE_V4;
+
+#pragma pack()
+
+EFI_TPM2_ACPI_TABLE_V4  mTpm2AcpiTemplate = {
   {
     EFI_ACPI_5_0_TRUSTED_COMPUTING_PLATFORM_2_TABLE_SIGNATURE,
     sizeof (mTpm2AcpiTemplate),
@@ -748,6 +764,16 @@ PublishTpm2 (
     DEBUG((DEBUG_INFO, "Tpm2 ACPI table PlatformClass is %d\n", (mTpm2AcpiTemplate.Flags & 0x0000FFFF)));
   }
 
+  mTpm2AcpiTemplate.Laml = PcdGet32(PcdTpm2AcpiTableLaml);
+  mTpm2AcpiTemplate.Lasa = PcdGet64(PcdTpm2AcpiTableLasa);
+  if ((mTpm2AcpiTemplate.Header.Revision < EFI_TPM2_ACPI_TABLE_REVISION_4) ||
+      (mTpm2AcpiTemplate.Laml == 0) || (mTpm2AcpiTemplate.Lasa == 0)) {
+    //
+    // If version is smaller than 4 or Laml/Lasa is not valid, rollback to original Length.
+    //
+    mTpm2AcpiTemplate.Header.Length = sizeof(EFI_TPM2_ACPI_TABLE);
+  }
+
   //
   // Measure to PCR[0] with event EV_POST_CODE ACPI DATA
   //
@@ -757,7 +783,7 @@ PublishTpm2 (
     EV_POSTCODE_INFO_ACPI_DATA,
     ACPI_DATA_LEN,
     &mTpm2AcpiTemplate,
-    sizeof(mTpm2AcpiTemplate)
+    mTpm2AcpiTemplate.Header.Length
     );
 
   InterfaceType = PcdGet8(PcdActiveTpmInterfaceType);
@@ -795,7 +821,7 @@ PublishTpm2 (
   Status = AcpiTable->InstallAcpiTable (
                         AcpiTable,
                         &mTpm2AcpiTemplate,
-                        sizeof(mTpm2AcpiTemplate),
+                        mTpm2AcpiTemplate.Header.Length,
                         &TableKey
                         );
   ASSERT_EFI_ERROR (Status);
diff --git a/SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.inf b/SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.inf
index 471342703f..e33cbcc491 100644
--- a/SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.inf
+++ b/SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.inf
@@ -84,6 +84,8 @@
   gEfiSecurityPkgTokenSpaceGuid.PcdTpm2CurrentIrqNum            ## CONSUMES
   gEfiSecurityPkgTokenSpaceGuid.PcdTpm2PossibleIrqNumBuf        ## CONSUMES
   gEfiSecurityPkgTokenSpaceGuid.PcdActiveTpmInterfaceType       ## CONSUMES
+  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLaml            ## CONSUMES
+  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLasa            ## CONSUMES
 
 [Depex]
   gEfiAcpiTableProtocolGuid AND
-- 
2.19.2.windows.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [edk2-devel] [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table
  2019-09-29  6:15 [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table Yao, Jiewen
                   ` (2 preceding siblings ...)
  2019-09-29  6:15 ` [PATCH 3/3] SecurityPkg/Tcg2: Add Support Laml, Lasa for TPM2 ACPI Yao, Jiewen
@ 2019-09-30  5:23 ` Wang, Jian J
  2019-09-30  5:25   ` Yao, Jiewen
  3 siblings, 1 reply; 7+ messages in thread
From: Wang, Jian J @ 2019-09-30  5:23 UTC (permalink / raw)
  To: devel@edk2.groups.io, Yao, Jiewen; +Cc: Zhang, Chao B

Thanks for implementing this feature. Just one minor comment. The BZ link should also
be mentioned in patch1-3, not just cover letter. With this addressed, for the whole series,

Reviewed-by: Jian J Wang <jian.j.wang@intel.com>

> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Yao, Jiewen
> Sent: Sunday, September 29, 2019 2:16 PM
> To: devel@edk2.groups.io
> Cc: Wang, Jian J <jian.j.wang@intel.com>; Zhang, Chao B
> <chao.b.zhang@intel.com>
> Subject: [edk2-devel] [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table
> 
> Bugzilla https://bugzilla.tianocore.org/show_bug.cgi?id=978
> 
> This patch series adds Laml/Lasa to TPM2 ACPI table.
> 
> This is defined by TPM2 ACPI table Version 1.2, Revision 8.
> It only impacts the TPM2 ACPI table version 4 or above.
> The default TPM2 ACPI table version is still 3 to keep maximum compatibility.
> 
> The new fields are only for TCG2 log format, but not TCG1.2 log format.
> 
> This new fields are optional and won't be consumed by OS/Loader, because
> the OS/loader still uses TCG2_PROTOCOL to get the event log.
> 
> These fields are important for OS utility, because the OS utility can
> not use TCG2_PROTOCOL.
> 
> Test:
> Use default TPM2 version 3. No ALMA/ALSA shown in TPM2 table.
> Use TPM2 version 4. The DXE driver reports ALMA/ALSA PCD and the SMM driver
> installs ALMA/ALSA in TPM2 table.
> 
> Cc: Jian J Wang <jian.j.wang@intel.com>
> Cc: Chao Zhang <chao.b.zhang@intel.com>
> Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
> 
> Jiewen Yao (3):
>   MdePkg/Include: correct Lasa in Tpm2Acpi.
>   SecurityPkg/dsc: Add PCD for Laml, Lasa for TPM2.
>   SecurityPkg/Tcg2: Add Support Laml, Lasa for TPM2 ACPI.
> 
>  MdePkg/Include/IndustryStandard/Tpm2Acpi.h |  2 +-
>  SecurityPkg/SecurityPkg.dec                |  8 ++++++
>  SecurityPkg/SecurityPkg.uni                |  9 ++++++
>  SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.c          | 32 ++++++++++++++++++----
>  SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.inf        |  3 ++
>  SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c          | 32 ++++++++++++++++++++--
>  SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.inf        |  2 ++
>  7 files changed, 78 insertions(+), 10 deletions(-)
> 
> --
> 2.19.2.windows.1
> 
> 
> 


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [edk2-devel] [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table
  2019-09-30  5:23 ` [edk2-devel] [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table Wang, Jian J
@ 2019-09-30  5:25   ` Yao, Jiewen
  0 siblings, 0 replies; 7+ messages in thread
From: Yao, Jiewen @ 2019-09-30  5:25 UTC (permalink / raw)
  To: Wang, Jian J, devel@edk2.groups.io; +Cc: Zhang, Chao B

Got it. Thanks for the reminder. I will follow.

Thank you
Yao Jiewen

> -----Original Message-----
> From: Wang, Jian J <jian.j.wang@intel.com>
> Sent: Monday, September 30, 2019 1:23 PM
> To: devel@edk2.groups.io; Yao, Jiewen <jiewen.yao@intel.com>
> Cc: Zhang, Chao B <chao.b.zhang@intel.com>
> Subject: RE: [edk2-devel] [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table
> 
> Thanks for implementing this feature. Just one minor comment. The BZ link
> should also
> be mentioned in patch1-3, not just cover letter. With this addressed, for the
> whole series,
> 
> Reviewed-by: Jian J Wang <jian.j.wang@intel.com>
> 
> > -----Original Message-----
> > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Yao,
> Jiewen
> > Sent: Sunday, September 29, 2019 2:16 PM
> > To: devel@edk2.groups.io
> > Cc: Wang, Jian J <jian.j.wang@intel.com>; Zhang, Chao B
> > <chao.b.zhang@intel.com>
> > Subject: [edk2-devel] [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table
> >
> > Bugzilla https://bugzilla.tianocore.org/show_bug.cgi?id=978
> >
> > This patch series adds Laml/Lasa to TPM2 ACPI table.
> >
> > This is defined by TPM2 ACPI table Version 1.2, Revision 8.
> > It only impacts the TPM2 ACPI table version 4 or above.
> > The default TPM2 ACPI table version is still 3 to keep maximum compatibility.
> >
> > The new fields are only for TCG2 log format, but not TCG1.2 log format.
> >
> > This new fields are optional and won't be consumed by OS/Loader, because
> > the OS/loader still uses TCG2_PROTOCOL to get the event log.
> >
> > These fields are important for OS utility, because the OS utility can
> > not use TCG2_PROTOCOL.
> >
> > Test:
> > Use default TPM2 version 3. No ALMA/ALSA shown in TPM2 table.
> > Use TPM2 version 4. The DXE driver reports ALMA/ALSA PCD and the SMM
> driver
> > installs ALMA/ALSA in TPM2 table.
> >
> > Cc: Jian J Wang <jian.j.wang@intel.com>
> > Cc: Chao Zhang <chao.b.zhang@intel.com>
> > Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
> >
> > Jiewen Yao (3):
> >   MdePkg/Include: correct Lasa in Tpm2Acpi.
> >   SecurityPkg/dsc: Add PCD for Laml, Lasa for TPM2.
> >   SecurityPkg/Tcg2: Add Support Laml, Lasa for TPM2 ACPI.
> >
> >  MdePkg/Include/IndustryStandard/Tpm2Acpi.h |  2 +-
> >  SecurityPkg/SecurityPkg.dec                |  8 ++++++
> >  SecurityPkg/SecurityPkg.uni                |  9 ++++++
> >  SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.c          | 32 ++++++++++++++++++----
> >  SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.inf        |  3 ++
> >  SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c          | 32 ++++++++++++++++++++--
> >  SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.inf        |  2 ++
> >  7 files changed, 78 insertions(+), 10 deletions(-)
> >
> > --
> > 2.19.2.windows.1
> >
> >
> > 


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/3] MdePkg/Include: correct Lasa in Tpm2Acpi.
  2019-09-29  6:15 ` [PATCH 1/3] MdePkg/Include: correct Lasa in Tpm2Acpi Yao, Jiewen
@ 2019-09-30  5:36   ` Liming Gao
  0 siblings, 0 replies; 7+ messages in thread
From: Liming Gao @ 2019-09-30  5:36 UTC (permalink / raw)
  To: Yao, Jiewen, devel@edk2.groups.io; +Cc: Kinney, Michael D

Reviewed-by: Liming Gao <liming.gao@intel.com>

>-----Original Message-----
>From: Yao, Jiewen
>Sent: Sunday, September 29, 2019 2:16 PM
>To: devel@edk2.groups.io
>Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Gao, Liming
><liming.gao@intel.com>
>Subject: [PATCH 1/3] MdePkg/Include: correct Lasa in Tpm2Acpi.
>
>Correct Lasa according to TCG ACPI spec.
>
>Cc: Michael D Kinney <michael.d.kinney@intel.com>
>Cc: Liming Gao <liming.gao@intel.com>
>Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
>---
> MdePkg/Include/IndustryStandard/Tpm2Acpi.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/MdePkg/Include/IndustryStandard/Tpm2Acpi.h
>b/MdePkg/Include/IndustryStandard/Tpm2Acpi.h
>index b75f025f03..3ed6834cc9 100644
>--- a/MdePkg/Include/IndustryStandard/Tpm2Acpi.h
>+++ b/MdePkg/Include/IndustryStandard/Tpm2Acpi.h
>@@ -27,7 +27,7 @@ typedef struct {
>   UINT32                      StartMethod;
> //UINT8                       PlatformSpecificParameters[];  // size up to 12
> //UINT32                      Laml;                          // Optional
>-//UINT32                      Lasa;                          // Optional
>+//UINT64                      Lasa;                          // Optional
> } EFI_TPM2_ACPI_TABLE;
>
> #define EFI_TPM2_ACPI_TABLE_START_METHOD_ACPI                                          2
>--
>2.19.2.windows.1


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-09-30  5:36 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-09-29  6:15 [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table Yao, Jiewen
2019-09-29  6:15 ` [PATCH 1/3] MdePkg/Include: correct Lasa in Tpm2Acpi Yao, Jiewen
2019-09-30  5:36   ` Liming Gao
2019-09-29  6:15 ` [PATCH 2/3] SecurityPkg/dsc: Add PCD for Laml, Lasa for TPM2 Yao, Jiewen
2019-09-29  6:15 ` [PATCH 3/3] SecurityPkg/Tcg2: Add Support Laml, Lasa for TPM2 ACPI Yao, Jiewen
2019-09-30  5:23 ` [edk2-devel] [PATCH 0/3] Add Laml/Lasa to TPM2 acpi table Wang, Jian J
2019-09-30  5:25   ` Yao, Jiewen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox