/* * EFI Test driver Header * * Copyright(C) 2012-2016 Canonical Ltd. * */ #ifndef _DRIVERS_FIRMWARE_EFI_TEST_H_ #define _DRIVERS_FIRMWARE_EFI_TEST_H_ #include struct efi_getvariable { efi_char16_t *variable_name; efi_guid_t *vendor_guid; u32 *attributes; unsigned long *data_size; void *data; efi_status_t *status; } __packed; struct efi_setvariable { efi_char16_t *variable_name; efi_guid_t *vendor_guid; u32 attributes; unsigned long data_size; void *data; efi_status_t *status; } __packed; struct efi_getnextvariablename { unsigned long *variable_name_size; efi_char16_t *variable_name; efi_guid_t *vendor_guid; efi_status_t *status; } __packed; struct efi_queryvariableinfo { u32 attributes; u64 *maximum_variable_storage_size; u64 *remaining_variable_storage_size; u64 *maximum_variable_size; efi_status_t *status; } __packed; struct efi_gettime { efi_time_t *time; efi_time_cap_t *capabilities; efi_status_t *status; } __packed; struct efi_settime { efi_time_t *time; efi_status_t *status; } __packed; struct efi_getwakeuptime { efi_bool_t *enabled; efi_bool_t *pending; efi_time_t *time; efi_status_t *status; } __packed; struct efi_setwakeuptime { efi_bool_t enabled; efi_time_t *time; efi_status_t *status; } __packed; struct efi_getnexthighmonotoniccount { u32 *high_count; efi_status_t *status; } __packed; struct efi_querycapsulecapabilities { efi_capsule_header_t **capsule_header_array; unsigned long capsule_count; u64 *maximum_capsule_size; int *reset_type; efi_status_t *status; } __packed; #define EFI_RUNTIME_GET_VARIABLE \ _IOWR('p', 0x01, struct efi_getvariable) #define EFI_RUNTIME_SET_VARIABLE \ _IOW('p', 0x02, struct efi_setvariable) #define EFI_RUNTIME_GET_TIME \ _IOR('p', 0x03, struct efi_gettime) #define EFI_RUNTIME_SET_TIME \ _IOW('p', 0x04, struct efi_settime) #define EFI_RUNTIME_GET_WAKETIME \ _IOR('p', 0x05, struct efi_getwakeuptime) #define EFI_RUNTIME_SET_WAKETIME \ _IOW('p', 0x06, struct efi_setwakeuptime) #define EFI_RUNTIME_GET_NEXTVARIABLENAME \ _IOWR('p', 0x07, struct efi_getnextvariablename) #define EFI_RUNTIME_QUERY_VARIABLEINFO \ _IOR('p', 0x08, struct efi_queryvariableinfo) #define EFI_RUNTIME_GET_NEXTHIGHMONOTONICCOUNT \ _IOR('p', 0x09, struct efi_getnexthighmonotoniccount) #define EFI_RUNTIME_QUERY_CAPSULECAPABILITIES \ _IOR('p', 0x0A, struct efi_querycapsulecapabilities) #endif /* _DRIVERS_FIRMWARE_EFI_TEST_H_ */