Intel FSP Header File definition from Intel Firmware Support Package External\r
Architecture Specification v2.0 and above.\r
\r
- Copyright (c) 2014 - 2021, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (c) 2014 - 2022, Intel Corporation. All rights reserved.<BR>\r
SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
\r
+#include <Base.h>\r
+\r
#ifndef __FSP_HEADER_FILE_H__\r
#define __FSP_HEADER_FILE_H__\r
\r
\r
#define FSP_INFO_HEADER_SIGNATURE SIGNATURE_32 ('F', 'S', 'P', 'H')\r
\r
-#pragma pack(1)\r
+#define IMAGE_ATTRIBUTE_GRAPHICS_SUPPORT BIT0\r
+#define IMAGE_ATTRIBUTE_DISPATCH_MODE_SUPPORT BIT1\r
+#define IMAGE_ATTRIBUTE_64BIT_MODE_SUPPORT BIT2\r
+#define FSP_IA32 0\r
+#define FSP_X64 1\r
+\r
+ #pragma pack(1)\r
\r
///\r
/// FSP Information Header as described in FSP v2.0 Spec section 5.1.1.\r
UINT8 SpecVersion;\r
///\r
/// Byte 0x0B: Revision of the FSP Information Header.\r
- /// The Current value for this field is 0x6.\r
+ /// The Current value for this field is 0x7.\r
///\r
UINT8 HeaderRevision;\r
///\r
UINT32 ImageBase;\r
///\r
/// Byte 0x20: Attribute for the FSP binary.\r
+ /// Bit 0: Graphics Support - Set to 1 when FSP supports enabling Graphics Display.\r
+ /// Bit 1: Dispatch Mode Support - Set to 1 when FSP supports the optional Dispatch Mode API defined in Section 7.2 and 9. This bit is only valid if FSP HeaderRevision is >= 4.\r
+ /// Bit 2: 64-bit mode support - Set to 1 to indicate FSP supports 64-bit long mode interfaces. Set to 0 to indicate FSP supports 32-bit mode interfaces. This bit is only valid if FSP HeaderRevision is >= 7.\r
+ /// Bits 15:3 - Reserved\r
///\r
UINT16 ImageAttribute;\r
///\r
/// Byte 0x4E: Reserved4.\r
///\r
UINT16 Reserved4;\r
+ ///\r
+ /// Byte 0x50: Offset for the API for the Multi-Phase memory initialization.\r
+ ///\r
+ UINT32 FspMultiPhaseMemInitEntryOffset;\r
+ ///\r
+ /// Byte 0x54: Offset for the API to initialize SMM.\r
+ ///\r
+ UINT32 FspSmmInitEntryOffset;\r
} FSP_INFO_HEADER;\r
\r
///\r
// UINT32 PatchData[];\r
} FSP_PATCH_TABLE;\r
\r
-#pragma pack()\r
+ #pragma pack()\r
\r
extern EFI_GUID gFspHeaderFileGuid;\r
\r