diff options
Diffstat (limited to 'include/linux/efi.h')
| -rw-r--r-- | include/linux/efi.h | 52 | 
1 files changed, 49 insertions, 3 deletions
| diff --git a/include/linux/efi.h b/include/linux/efi.h index ef8dbc0a1522..ccd4d3f91c98 100644 --- a/include/linux/efi.h +++ b/include/linux/efi.h @@ -148,6 +148,52 @@ typedef struct {  	u32 imagesize;  } efi_capsule_header_t; +/* EFI_FIRMWARE_MANAGEMENT_CAPSULE_HEADER */ +struct efi_manage_capsule_header { +	u32 ver; +	u16 emb_drv_cnt; +	u16 payload_cnt; +	/* +	 * Variable-size array of the size given by the sum of +	 * emb_drv_cnt and payload_cnt. +	 */ +	u64 offset_list[]; +} __packed; + +/* EFI_FIRMWARE_MANAGEMENT_CAPSULE_IMAGE_HEADER */ +struct efi_manage_capsule_image_header { +	u32 ver; +	efi_guid_t image_type_id; +	u8 image_index; +	u8 reserved_bytes[3]; +	u32 image_size; +	u32 vendor_code_size; +	/* hw_ins was introduced in version 2 */ +	u64 hw_ins; +	/* capsule_support was introduced in version 3 */ +	u64 capsule_support; +} __packed; + +/* WIN_CERTIFICATE */ +struct win_cert { +	u32 len; +	u16 rev; +	u16 cert_type; +}; + +/* WIN_CERTIFICATE_UEFI_GUID */ +struct win_cert_uefi_guid { +	struct win_cert	hdr; +	efi_guid_t cert_type; +	u8 cert_data[]; +}; + +/* EFI_FIRMWARE_IMAGE_AUTHENTICATION */ +struct efi_image_auth { +	u64 mon_count; +	struct win_cert_uefi_guid auth_info; +}; +  /*   * EFI capsule flags   */ @@ -570,8 +616,8 @@ extern struct efi {  	unsigned long			flags;  } efi; -#define EFI_RT_SUPPORTED_GET_TIME 				0x0001 -#define EFI_RT_SUPPORTED_SET_TIME 				0x0002 +#define EFI_RT_SUPPORTED_GET_TIME				0x0001 +#define EFI_RT_SUPPORTED_SET_TIME				0x0002  #define EFI_RT_SUPPORTED_GET_WAKEUP_TIME			0x0004  #define EFI_RT_SUPPORTED_SET_WAKEUP_TIME			0x0008  #define EFI_RT_SUPPORTED_GET_VARIABLE				0x0010 @@ -838,7 +884,7 @@ extern int efi_status_to_err(efi_status_t status);  #define EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS 0x0000000000000020  #define EFI_VARIABLE_APPEND_WRITE	0x0000000000000040 -#define EFI_VARIABLE_MASK 	(EFI_VARIABLE_NON_VOLATILE | \ +#define EFI_VARIABLE_MASK	(EFI_VARIABLE_NON_VOLATILE | \  				EFI_VARIABLE_BOOTSERVICE_ACCESS | \  				EFI_VARIABLE_RUNTIME_ACCESS | \  				EFI_VARIABLE_HARDWARE_ERROR_RECORD | \ |