]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFsp2Pkg/FspSecCore/SecMain.h
IntelFsp2Pkg: PeiService pointer not reset to 0 in SecMain
[mirror_edk2.git] / IntelFsp2Pkg / FspSecCore / SecMain.h
index 6fb16febabc6ff37e6ccf06112bb78453ca0b964..af7f3879600731ee2d8fb89a7d7d135ea59451fa 100644 (file)
@@ -1,6 +1,6 @@
 /** @file\r
 \r
-  Copyright (c) 2014 - 2018, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2014 - 2019, Intel Corporation. All rights reserved.<BR>\r
   SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
@@ -29,7 +29,13 @@ typedef VOID (*PEI_CORE_ENTRY) ( \
 );\r
 \r
 typedef struct _SEC_IDT_TABLE {\r
-  EFI_PEI_SERVICES  *PeiService;\r
+  //\r
+  // Reserved 8 bytes preceding IDT to store EFI_PEI_SERVICES**, since IDT base\r
+  // address should be 8-byte alignment.\r
+  // Note: For IA32, only the 4 bytes immediately preceding IDT is used to store\r
+  // EFI_PEI_SERVICES**\r
+  //\r
+  UINT64            PeiService;\r
   UINT64            IdtTable[FixedPcdGet8 (PcdFspMaxInterruptSupported)];\r
 } SEC_IDT_TABLE;\r
 \r