]> git.proxmox.com Git - mirror_edk2.git/blobdiff - SecurityPkg/Tcg/Tcg2Smm/Tpm.asl
SecuritPkg: Tcg2Smm: Add PlatformClass to TPM2 Table
[mirror_edk2.git] / SecurityPkg / Tcg / Tcg2Smm / Tpm.asl
index 776f43e972f91154365f88031df892a82c411c6a..cf0642e10457e510642be55e4fa77c7a5b1b29b0 100644 (file)
@@ -2,7 +2,8 @@
   The TPM2 definition block in ACPI table for TCG2 physical presence  \r
   and MemoryClear.\r
 \r
   The TPM2 definition block in ACPI table for TCG2 physical presence  \r
   and MemoryClear.\r
 \r
-Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.<BR>\r
+(c)Copyright 2016 HP Development Company, L.P.<BR>\r
 This program and the accompanying materials \r
 are licensed and made available under the terms and conditions of the BSD License \r
 which accompanies this distribution.  The full text of the license may be found at \r
 This program and the accompanying materials \r
 are licensed and made available under the terms and conditions of the BSD License \r
 which accompanies this distribution.  The full text of the license may be found at \r
@@ -29,8 +30,14 @@ DefinitionBlock (
       //\r
       // TCG2\r
       //\r
       //\r
       // TCG2\r
       //\r
-      Name (_HID, "MSFT0101")\r
-      \r
+\r
+      //\r
+      //  TAG for patching TPM2.0 _HID\r
+      //\r
+      Name (_HID, "NNNN0000")\r
+\r
+      Name (_CID, "MSFT0101")\r
+\r
       //\r
       // Readable name of this device, don't know if this way is correct yet\r
       //\r
       //\r
       // Readable name of this device, don't know if this way is correct yet\r
       //\r
@@ -40,7 +47,7 @@ DefinitionBlock (
       // Return the resource consumed by TPM device\r
       //\r
       Name (_CRS, ResourceTemplate () {\r
       // Return the resource consumed by TPM device\r
       //\r
       Name (_CRS, ResourceTemplate () {\r
-        Memory32Fixed (ReadOnly, 0xfed40000, 0x5000)\r
+        Memory32Fixed (ReadWrite, 0xfed40000, 0x5000)\r
       })\r
 \r
       //\r
       })\r
 \r
       //\r
@@ -78,7 +85,8 @@ DefinitionBlock (
         MCIN,   8,  //   Software SMI for Memory Clear Interface\r
         MCIP,   32, //   Used for save the Mor paramter\r
         MORD,   32, //   Memory Overwrite Request Data\r
         MCIN,   8,  //   Software SMI for Memory Clear Interface\r
         MCIP,   32, //   Used for save the Mor paramter\r
         MORD,   32, //   Memory Overwrite Request Data\r
-        MRET,   32  //   Memory Overwrite function return code\r
+        MRET,   32, //   Memory Overwrite function return code\r
+        UCRQ,   32  //   Phyical Presence request operation to Get User Confirmation Status \r
       }\r
 \r
       Method (PTS, 1, Serialized)\r
       }\r
 \r
       Method (PTS, 1, Serialized)\r
@@ -187,7 +195,7 @@ DefinitionBlock (
             //\r
             // a) Get Physical Presence Interface Version\r
             //\r
             //\r
             // a) Get Physical Presence Interface Version\r
             //\r
-            Return ("1.3")\r
+            Return ("$PV")\r
           }\r
           Case (2)\r
           {\r
           }\r
           Case (2)\r
           {\r
@@ -196,6 +204,7 @@ DefinitionBlock (
             //\r
                   \r
             Store (DerefOf (Index (Arg2, 0x00)), PPRQ)\r
             //\r
                   \r
             Store (DerefOf (Index (Arg2, 0x00)), PPRQ)\r
+            Store (0, PPRM)\r
             Store (0x02, PPIP)\r
               \r
             //\r
             Store (0x02, PPIP)\r
               \r
             //\r
@@ -273,7 +282,7 @@ DefinitionBlock (
             // e) Get User Confirmation Status for Operation\r
             //\r
             Store (8, PPIP)\r
             // e) Get User Confirmation Status for Operation\r
             //\r
             Store (8, PPIP)\r
-            Store (DerefOf (Index (Arg2, 0x00)), PPRQ)\r
+            Store (DerefOf (Index (Arg2, 0x00)), UCRQ)\r
                   \r
             //\r
             // Triggle the SMI interrupt\r
                   \r
             //\r
             // Triggle the SMI interrupt\r