audk/IntelFsp2Pkg
Chasel Chiu 520a1e60de IntelFsp2Pkg: PeiService pointer not reset to 0 in SecMain
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2018

Current FSP SEC_IDT_TABLE structure is not natural aligned:
  typedef struct _SEC_IDT_TABLE {
    EFI_PEI_SERVICES  *PeiService;
    UINT64            IdtTable[];
  } SEC_IDT_TABLE;
Compiler will insert DWORD padding between 2 elements and
GetPeiServicesTablePointer() in early phase then always
returns padding data from stack, which was not reset to 0
in SecMain.

Solution is to align FSP SEC_IDT_TABLE structure to UefiCpuPkg
to have UINT64 as PeiService field and reset it to 0.

Test: Verified on internal platform and booting successfully
      with FSP API mode.

Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Cc: Star Zeng <star.zeng@intel.com>
Signed-off-by: Chasel Chiu <chasel.chiu@intel.com>
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
2019-07-26 09:47:27 +08:00
..
FspNotifyPhase IntelFsp2Pkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:03 -07:00
FspSecCore IntelFsp2Pkg: PeiService pointer not reset to 0 in SecMain 2019-07-26 09:47:27 +08:00
Include IntelFsp2Pkg: Fix various typos 2019-07-11 21:07:17 +08:00
Library IntelFsp2Pkg: Fix various typos 2019-07-11 21:07:17 +08:00
Tools IntelFsp2Pkg: Fix various typos 2019-07-11 21:07:17 +08:00
IntelFsp2Pkg.dec IntelFsp2Pkg: add TempRamExitPpi.h. 2019-06-20 12:11:22 +08:00
IntelFsp2Pkg.dsc IntelFsp2Pkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:03 -07:00
Readme.md IntelFsp2Pkg: Convert files to CRLF line ending 2017-04-06 15:42:56 +08:00

Readme.md