提交 f30ca6ba 编写于 作者: M Matt Fleming 提交者: H. Peter Anvin

efi.h: Add struct definition for boot time services

With the forthcoming efi stub code we're gonna need to access boot
time services so let's define a struct so we can access the functions.

Cc: Matthew Garrett <mjg@redhat.com>
Signed-off-by: NMatt Fleming <matt.fleming@intel.com>
Link: http://lkml.kernel.org/r/1318848017-12301-1-git-send-email-matt@console-pimps.orgSigned-off-by: NH. Peter Anvin <hpa@linux.intel.com>
上级 f7d7d01b
...@@ -138,6 +138,57 @@ typedef struct { ...@@ -138,6 +138,57 @@ typedef struct {
u8 sets_to_zero; u8 sets_to_zero;
} efi_time_cap_t; } efi_time_cap_t;
/*
* EFI Boot Services table
*/
typedef struct {
efi_table_hdr_t hdr;
void *raise_tpl;
void *restore_tpl;
void *allocate_pages;
void *free_pages;
void *get_memory_map;
void *allocate_pool;
void *free_pool;
void *create_event;
void *set_timer;
void *wait_for_event;
void *signal_event;
void *close_event;
void *check_event;
void *install_protocol_interface;
void *reinstall_protocol_interface;
void *uninstall_protocol_interface;
void *handle_protocol;
void *__reserved;
void *register_protocol_notify;
void *locate_handle;
void *locate_device_path;
void *install_configuration_table;
void *load_image;
void *start_image;
void *exit;
void *unload_image;
void *exit_boot_services;
void *get_next_monotonic_count;
void *stall;
void *set_watchdog_timer;
void *connect_controller;
void *disconnect_controller;
void *open_protocol;
void *close_protocol;
void *open_protocol_information;
void *protocols_per_handle;
void *locate_handle_buffer;
void *locate_protocol;
void *install_multiple_protocol_interfaces;
void *uninstall_multiple_protocol_interfaces;
void *calculate_crc32;
void *copy_mem;
void *set_mem;
void *create_event_ex;
} efi_boot_services_t;
/* /*
* Types and defines for EFI ResetSystem * Types and defines for EFI ResetSystem
*/ */
...@@ -261,7 +312,7 @@ typedef struct { ...@@ -261,7 +312,7 @@ typedef struct {
unsigned long stderr_handle; unsigned long stderr_handle;
unsigned long stderr; unsigned long stderr;
efi_runtime_services_t *runtime; efi_runtime_services_t *runtime;
unsigned long boottime; efi_boot_services_t *boottime;
unsigned long nr_tables; unsigned long nr_tables;
unsigned long tables; unsigned long tables;
} efi_system_table_t; } efi_system_table_t;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册