#ifndef __SAL_API_H__\r
#define __SAL_API_H__\r
\r
-typedef UINTN EFI_SAL_STATUS;\r
+//\r
+// FIT Types \r
+// Table 2-2 of Intel Itanium Processor Family System Abstraction Layer Specification December 2003\r
+//\r
+#define EFI_SAL_FIT_FIT_HEADER_TYPE 0x00\r
+#define EFI_SAL_FIT_PAL_B_TYPE 0x01\r
+//\r
+// type from 0x02 to 0x0E is reserved.\r
+//\r
+#define EFI_SAL_FIT_PAL_A_TYPE 0x0F\r
+//\r
+// OEM-defined type range is from 0x10 to 0x7E. Here we defined the PEI_CORE type as 0x10\r
+//\r
+#define EFI_SAL_FIT_PEI_CORE_TYPE 0x10\r
+#define EFI_SAL_FIT_UNUSED_TYPE 0x7F\r
\r
//\r
-// EFI_SAL_STATUS defines\r
+// EFI_SAL_STATUS \r
//\r
+typedef UINTN EFI_SAL_STATUS;\r
+\r
#define EFI_SAL_SUCCESS ((EFI_SAL_STATUS) 0)\r
#define EFI_SAL_MORE_RECORDS ((EFI_SAL_STATUS) 3)\r
#define EFI_SAL_NOT_IMPLEMENTED ((EFI_SAL_STATUS) - 1)\r
#define EFI_SAL_NO_INFORMATION ((EFI_SAL_STATUS) - 5)\r
#define EFI_SAL_NOT_ENOUGH_SCRATCH ((EFI_SAL_STATUS) - 9)\r
\r
+//\r
+// Return values from SAL\r
+//\r
+typedef struct {\r
+ EFI_SAL_STATUS Status; // register r8\r
+ UINTN r9;\r
+ UINTN r10;\r
+ UINTN r11;\r
+} SAL_RETURN_REGS;\r
+\r
//\r
// Delivery Mode of IPF CPU.\r
//\r
EFI_DELIVERY_MODE_ExtINT\r
} EFI_DELIVERY_MODE;\r
\r
-//\r
-// Return values from SAL\r
-//\r
-typedef struct {\r
- EFI_SAL_STATUS Status; // register r8\r
- UINTN r9;\r
- UINTN r10;\r
- UINTN r11;\r
-} SAL_RETURN_REGS;\r
-\r
typedef SAL_RETURN_REGS (EFIAPI *SAL_PROC)\r
(\r
IN UINT64 FunctionId,\r