]> git.proxmox.com Git - mirror_edk2.git/blobdiff - SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.c
SecurityPkg: Tcg2Dxe: Report correct FinalEventLog size
[mirror_edk2.git] / SecurityPkg / Tcg / Tcg2Smm / Tcg2Smm.c
index 19d9b489fe522e17bc537469372acf52b9f9ae9c..d02123dfa61fb282420675d7dd8533afc0a96a1c 100644 (file)
@@ -119,6 +119,9 @@ PhysicalPresenceCallback (
 {\r
   UINT32                MostRecentRequest;\r
   UINT32                Response;\r
+  UINT32                OperationRequest;\r
+  UINT32                RequestParameter;\r
+\r
 \r
   if (mTcgNvs->PhysicalPresence.Parameter == TCG_ACPI_FUNCTION_RETURN_REQUEST_RESPONSE_TO_OS) {\r
     mTcgNvs->PhysicalPresence.ReturnCode = Tcg2PhysicalPresenceLibReturnOperationResponseToOsFunction (\r
@@ -130,13 +133,18 @@ PhysicalPresenceCallback (
     return EFI_SUCCESS;\r
   } else if ((mTcgNvs->PhysicalPresence.Parameter == TCG_ACPI_FUNCTION_SUBMIT_REQUEST_TO_BIOS) \r
           || (mTcgNvs->PhysicalPresence.Parameter == TCG_ACPI_FUNCTION_SUBMIT_REQUEST_TO_BIOS_2)) {\r
-    mTcgNvs->PhysicalPresence.ReturnCode = Tcg2PhysicalPresenceLibSubmitRequestToPreOSFunction (\r
-                                             mTcgNvs->PhysicalPresence.Request,\r
-                                             mTcgNvs->PhysicalPresence.RequestParameter\r
+\r
+    OperationRequest = mTcgNvs->PhysicalPresence.Request;\r
+    RequestParameter = mTcgNvs->PhysicalPresence.RequestParameter;\r
+    mTcgNvs->PhysicalPresence.ReturnCode = Tcg2PhysicalPresenceLibSubmitRequestToPreOSFunctionEx (\r
+                                             &OperationRequest,\r
+                                             &RequestParameter\r
                                              );\r
+    mTcgNvs->PhysicalPresence.Request = OperationRequest;\r
+    mTcgNvs->PhysicalPresence.RequestParameter = RequestParameter;\r
   } else if (mTcgNvs->PhysicalPresence.Parameter == TCG_ACPI_FUNCTION_GET_USER_CONFIRMATION_STATUS_FOR_REQUEST) {\r
-    mTcgNvs->PhysicalPresence.ReturnCode = Tcg2PhysicalPresenceLibGetUserConfirmationStatusFunction (mTcgNvs->PhysicalPresence.Request);\r
-  } \r
+    mTcgNvs->PhysicalPresence.ReturnCode = Tcg2PhysicalPresenceLibGetUserConfirmationStatusFunction (mTcgNvs->PPRequestUserConfirm);\r
+  }\r
 \r
   return EFI_SUCCESS;\r
 }\r