#ifndef _FSP_API_H_\r
#define _FSP_API_H_\r
\r
+///\r
+/// FSP Reset Status code\r
+/// These are defined in FSP EAS v2.0 section 11.2.2 - OEM Status Code\r
+/// @{\r
+#define FSP_STATUS_RESET_REQUIRED_COLD 0x40000001\r
+#define FSP_STATUS_RESET_REQUIRED_WARM 0x40000002\r
+#define FSP_STATUS_RESET_REQUIRED_3 0x40000003\r
+#define FSP_STATUS_RESET_REQUIRED_4 0x40000004\r
+#define FSP_STATUS_RESET_REQUIRED_5 0x40000005\r
+#define FSP_STATUS_RESET_REQUIRED_6 0x40000006\r
+#define FSP_STATUS_RESET_REQUIRED_7 0x40000007\r
+#define FSP_STATUS_RESET_REQUIRED_8 0x40000008\r
+/// @}\r
+\r
#pragma pack(1)\r
+///\r
+/// FSP_UPD_HEADER Configuration.\r
+///\r
typedef struct {\r
///\r
/// UPD Region Signature. This signature will be\r
UINT8 Reserved[23];\r
} FSP_UPD_HEADER;\r
\r
+///\r
+/// FSPM_ARCH_UPD Configuration.\r
+///\r
typedef struct {\r
///\r
/// Revision of the structure. For FSP v2.0 value is 1.\r
UINT8 Reserved1[8];\r
} FSPM_ARCH_UPD;\r
\r
+///\r
+/// FSPT_UPD_COMMON Configuration.\r
+///\r
typedef struct {\r
+ ///\r
+ /// FSP_UPD_HEADER Configuration.\r
+ ///\r
FSP_UPD_HEADER FspUpdHeader;\r
} FSPT_UPD_COMMON;\r
\r
+///\r
+/// FSPM_UPD_COMMON Configuration.\r
+///\r
typedef struct {\r
+ ///\r
+ /// FSP_UPD_HEADER Configuration.\r
+ ///\r
FSP_UPD_HEADER FspUpdHeader;\r
+ ///\r
+ /// FSPM_ARCH_UPD Configuration.\r
+ ///\r
FSPM_ARCH_UPD FspmArchUpd;\r
} FSPM_UPD_COMMON;\r
\r
+///\r
+/// FSPS_UPD_COMMON Configuration.\r
+///\r
typedef struct {\r
+ ///\r
+ /// FSP_UPD_HEADER Configuration.\r
+ ///\r
FSP_UPD_HEADER FspUpdHeader;\r
} FSPS_UPD_COMMON;\r
\r
+///\r
+/// Enumeration of FSP_INIT_PHASE for NOTIFY_PHASE.\r
+///\r
typedef enum {\r
///\r
/// This stage is notified when the bootloader completes the\r
EnumInitPhaseEndOfFirmware = 0xF0\r
} FSP_INIT_PHASE;\r
\r
+///\r
+/// Definition of NOTIFY_PHASE_PARAMS.\r
+///\r
typedef struct {\r
///\r
/// Notification phase used for NotifyPhase API\r