EFI_STATUS Status;\r
UINT64 UefiMemoryBase;\r
UINT64 StackBase;\r
+ UINT32 StackSize;\r
\r
//\r
// Report Status Code to indicate entering SEC core\r
FirmwareContext.FlattenedDeviceTree = (UINT64)DeviceTreeAddress;\r
SetFirmwareContextPointer (&FirmwareContext);\r
\r
- StackBase = (UINT64)FixedPcdGet32 (PcdOvmfSecPeiTempRamBase) +\r
- FixedPcdGet32 (PcdOvmfSecPeiTempRamSize);\r
- UefiMemoryBase = StackBase - SIZE_32MB;\r
+ StackBase = (UINT64)FixedPcdGet32 (PcdOvmfSecPeiTempRamBase);\r
+ StackSize = FixedPcdGet32 (PcdOvmfSecPeiTempRamSize);\r
+ UefiMemoryBase = StackBase + StackSize - SIZE_32MB;\r
\r
// Declare the PI/UEFI memory region\r
HobList = HobConstructor (\r
\r
SecInitializePlatform ();\r
\r
+ BuildStackHob (StackBase, StackSize);\r
+\r
//\r
// Process all libraries constructor function linked to SecMain.\r
//\r