diff --git a/arch/x86/zefi/efi.h b/arch/x86/zefi/efi.h index 719e2917313..863728133ce 100644 --- a/arch/x86/zefi/efi.h +++ b/arch/x86/zefi/efi.h @@ -10,6 +10,7 @@ #ifndef _ASMLANGUAGE #include +#include #define __abi __attribute__((ms_abi)) @@ -29,6 +30,43 @@ typedef uintptr_t efi_status_t; +#define EFI_STATUS(_status) (_status | BIT((BITS_PER_LONG-1))) + +#define EFI_SUCCESS 0 +#define EFI_LOAD_ERROR EFI_STATUS(1) +#define EFI_INVALID_PARAMETER EFI_STATUS(2) +#define EFI_UNSUPPORTED EFI_STATUS(3) +#define EFI_BAD_BUFFER_SIZE EFI_STATUS(4) +#define EFI_BUFFER_TOO_SMALL EFI_STATUS(5) +#define EFI_NOT_READY EFI_STATUS(6) +#define EFI_DEVICE_ERROR EFI_STATUS(7) +#define EFI_WRITE_PROTECTED EFI_STATUS(8) +#define EFI_OUT_OF_RESOURCES EFI_STATUS(9) +#define EFI_VOLUME_CORRUPTED EFI_STATUS(10) +#define EFI_VOLUME_FULL EFI_STATUS(11) +#define EFI_NO_MEDIA EFI_STATUS(12) +#define EFI_MEDIA_CHANGED EFI_STATUS(13) +#define EFI_NOT_FOUND EFI_STATUS(14) +#define EFI_ACCESS_DENIED EFI_STATUS(15) +#define EFI_NO_RESPONSE EFI_STATUS(16) +#define EFI_NO_MAPPING EFI_STATUS(17) +#define EFI_TIMEOUT EFI_STATUS(18) +#define EFI_NOT_STARTED EFI_STATUS(19) +#define EFI_ALREADY_STARTED EFI_STATUS(20) +#define EFI_ABORTED EFI_STATUS(21) +#define EFI_ICMP_ERROR EFI_STATUS(22) +#define EFI_TFTP_ERROR EFI_STATUS(23) +#define EFI_PROTOCOL_ERROR EFI_STATUS(24) +#define EFI_INCOMPATIBLE_VERSION EFI_STATUS(25) +#define EFI_SECURITY_VIOLATION EFI_STATUS(26) +#define EFI_CRC_ERROR EFI_STATUS(27) +#define EFI_END_OF_MEDIA EFI_STATUS(28) +#define EFI_END_OF_FILE EFI_STATUS(31) +#define EFI_INVALID_LANGUAGE EFI_STATUS(32) +#define EFI_COMPROMISED_DATA EFI_STATUS(33) +#define EFI_IP_ADDRESS_CONFLICT EFI_STATUS(34) +#define EFI_HTTP_ERROR EFI_STATUS(35) + typedef struct { union { struct {