Implemented Runtime Services
This commit is contained in:
parent
937e50d0ee
commit
7c8c1aef7b
7 changed files with 94 additions and 30 deletions
72
efi_rs.h
72
efi_rs.h
|
@ -6,12 +6,55 @@
|
|||
#define EFI_RUNTIME_SERVICES_SIGNATURE 0x56524553544e5552
|
||||
#define EFI_RUNTIME_SERVICES_REVISION EFI_SPECIFICATION_VERSION
|
||||
|
||||
#define EFI_VARIABLE_NON_VOLATILE 0x00000001
|
||||
#define EFI_VARIABLE_BOOTSERVICE_ACCESS 0x00000002
|
||||
#define EFI_VARIABLE_RUNTIME_ACCESS 0x00000004
|
||||
#define EFI_VARIABLE_HARDWARE_ERROR_RECORD 0x00000008
|
||||
// NOTE: EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS is deprecated
|
||||
// and should be considered reserved.
|
||||
#define EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS 0x00000010
|
||||
#define EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS 0x00000020
|
||||
#define EFI_VARIABLE_APPEND_WRITE 0x00000040
|
||||
#define EFI_VARIABLE_ENHANCED_AUTHENTICATED_ACCESS 0x00000080
|
||||
|
||||
#define EFI_VARIABLE_AUTHENTICATION_3_CERT_ID_SHA256 1
|
||||
#define EFI_VARIABLE_AUTHENTICATION_3_TIMESTAMP_TYPE 1
|
||||
#define EFI_VARIABLE_AUTHENTICATION_3_NONCE_TYPE 2
|
||||
|
||||
#define EFI_HARDWARE_ERROR_VARIABLE {0x414e6Bdd,0xe47b,0x47cc, {0xb2,0x44,0xbb,0x61,0x02,0x0c,0xf5,0x16}}
|
||||
|
||||
#define EFI_TIME_ADJUST_DAYLIGHT 0x01
|
||||
#define EFI_TIME_IN_DAYLIGHT 0x02
|
||||
#define EFI_UNSPECIFIED_TIMEZONE 0x07FF
|
||||
|
||||
#define EFI_OPTIONAL_PTR 0x00000001
|
||||
|
||||
#define CAPSULE_FLAGS_PERSIST_ACROSS_RESET 0x00010000
|
||||
#define CAPSULE_FLAGS_POPULATE_SYSTEM_TABLE 0x00020000
|
||||
#define CAPSULE_FLAGS_INITIATE_RESET 0x00040000
|
||||
|
||||
#define EFI_MEMORY_RANGE_CAPSULE_GUID {0xde9f0ec,0x88b6,0x428f, {0x97,0x7a,0x25,0x8f,0x1d,0xe,0x5e,0x72}}
|
||||
|
||||
#define EFI_OS_INDICATIONS_BOOT_TO_FW_UI 0x0000000000000001
|
||||
#define EFI_OS_INDICATIONS_TIMESTAMP_REVOCATION 0x0000000000000002
|
||||
#define EFI_OS_INDICATIONS_FILE_CAPSULE_DELIVERY_SUPPORTED 0x0000000000000004
|
||||
#define EFI_OS_INDICATIONS_FMP_CAPSULE_SUPPORTED 0x0000000000000008
|
||||
#define EFI_OS_INDICATIONS_CAPSULE_RESULT_VAR_SUPPORTED 0x0000000000000010
|
||||
#define EFI_OS_INDICATIONS_START_OS_RECOVERY 0x0000000000000020
|
||||
#define EFI_OS_INDICATIONS_START_PLATFORM_RECOVERY 0x0000000000000040
|
||||
#define EFI_OS_INDICATIONS_JSON_CONFIG_DATA_REFRESH 0x0000000000000080
|
||||
|
||||
#define EFI_CAPSULE_REPORT_GUID {0x39b68c46,0xf7fb,0x441b, {0xb6,0xec,0x16,0xb0,0xf6,0x98,0x21,0xf3}}
|
||||
|
||||
typedef struct _EFI_RUNTIME_SERVICES EFI_RUNTIME_SERVICES;
|
||||
|
||||
typedef enum {
|
||||
EfiResetCold,
|
||||
EfiResetWarm,
|
||||
EfiResetShutdown,
|
||||
EfiResetPlatformSpecific
|
||||
} EFI_RESET_TYPE;
|
||||
|
||||
typedef struct {
|
||||
UINT16 Year;
|
||||
UINT8 Month;
|
||||
|
@ -32,6 +75,35 @@ typedef struct {
|
|||
BOOLEAN SetsToZero;
|
||||
} EFI_TIME_CAPABILITIES;
|
||||
|
||||
// NOTE: EFI_VARIABLE_AUTHENTICATION is deprecated
|
||||
typedef struct {
|
||||
UINT64 MonotonicCount;
|
||||
//WIN_CERTIFICATE_UEFI_GUID AuthInfo;
|
||||
} EFI_VARIABLE_AUTHENTICATION;
|
||||
|
||||
typedef struct {
|
||||
EFI_TIME TimeStamp;
|
||||
//WIN_CERTIFICATE_UEFI_GUID AuthInfo;
|
||||
} EFI_VARIABLE_AUTHENTICATION_2;
|
||||
|
||||
typedef struct {
|
||||
UINT8 Version;
|
||||
UINT8 Type;
|
||||
UINT32 MetadataSize;
|
||||
UINT32 Flags;
|
||||
} EFI_VARIABLE_AUTHENTICATION_3;
|
||||
|
||||
typedef struct {
|
||||
UINT8 Type;
|
||||
UINT32 IdSize;
|
||||
//UINT8 Id[IdSize];
|
||||
} EFI_VARIABLE_AUTHENTICATION_3_CERT_ID;
|
||||
|
||||
typedef struct {
|
||||
UINT32 NonceSize;
|
||||
//UINT8 Nonce[NonceSize];
|
||||
} EFI_VARIABLE_AUTHENTICATION_3_NONCE;
|
||||
|
||||
typedef struct {
|
||||
EFI_GUID CapsuleGuid;
|
||||
UINT32 HeaderSize;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue