]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Ipf/SalApi.h
Add FIT types from the SAL Spec to SalApi.h
[mirror_edk2.git] / MdePkg / Include / Ipf / SalApi.h
index a9520c1b20190371b5b1da55959b3c49f3bac9cc..1d62705d56a76f32d108a3a9c352ff1403cc0553 100644 (file)
 #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
@@ -31,6 +47,16 @@ typedef UINTN EFI_SAL_STATUS;
 #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
@@ -45,16 +71,6 @@ typedef enum {
   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