lkml.org 
[lkml]   [2011]   [Aug]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 2/9] efi.h: Add struct definition for boot time services
    Date
    From: Matt Fleming <matt.fleming@linux.intel.com>

    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>
    Cc: "H. Peter Anvin" <hpa@linux.intel.com>
    Signed-off-by: Matt Fleming <matt.fleming@linux.intel.com>
    ---
    include/linux/efi.h | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++-
    1 files changed, 52 insertions(+), 1 deletions(-)

    diff --git a/include/linux/efi.h b/include/linux/efi.h
    index 2362a0b..9547597 100644
    --- a/include/linux/efi.h
    +++ b/include/linux/efi.h
    @@ -139,6 +139,57 @@ typedef struct {
    } 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
    */
    #define EFI_RESET_COLD 0
    @@ -261,7 +312,7 @@ typedef struct {
    unsigned long stderr_handle;
    unsigned long stderr;
    efi_runtime_services_t *runtime;
    - unsigned long boottime;
    + efi_boot_services_t *boottime;
    unsigned long nr_tables;
    unsigned long tables;
    } efi_system_table_t;
    --
    1.7.4.4


    \
     
     \ /
      Last update: 2011-08-11 13:03    [W:0.025 / U:60.248 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site