X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Finclude%2Fefi.h;h=5fc52ff48fdc678f34ad95503b725436c9ab3ec9;hb=44fed9dca9311fa21f516c8812f017771953ceb6;hp=b53187edb80c824685c72243843e1203466ea203;hpb=83be3317b8ff12484e7a67501a955f6ccf1f977b;p=debian%2Fefibootmgr diff --git a/src/include/efi.h b/src/include/efi.h index b53187e..5fc52ff 100644 --- a/src/include/efi.h +++ b/src/include/efi.h @@ -1,8 +1,8 @@ /* - efi.[ch] - Manipulates EFI variables as exported in /proc/efi/vars - - Copyright (C) 2001 Dell Computer Corporation - + efi.[ch] - Extensible Firmware Interface definitions + + Copyright (C) 2001, 2003 Dell Computer Corporation + This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or @@ -27,6 +27,7 @@ * version 1.02, 12 December, 2000 */ #include +#include #define BITS_PER_LONG (sizeof(unsigned long) * 8) @@ -336,24 +337,34 @@ typedef struct { } __attribute__((packed)) END_DEVICE_PATH; -/* Used for ACPI _HID */ -#define EISAID_PNP0A03 0xa0341d0 - -#define PROC_DIR_EFI_VARS "/proc/efi/vars/" +struct efivar_kernel_calls { + efi_status_t (*read)(const char *name, efi_variable_t *var); + efi_status_t (*edit)(const char *name, efi_variable_t *var); + efi_status_t (*create)(efi_variable_t *var); + efi_status_t (*delete)(efi_variable_t *var); + char *path; +}; +/* Used for ACPI _HID */ +#define EISAID_PNP0A03 0xa0341d0 /* Exported functions */ -efi_status_t read_variable(char *name, efi_variable_t *var); -efi_status_t write_variable(efi_variable_t *var); -int make_linux_efi_variable(efi_variable_t *var, +extern int make_linux_efi_variable(efi_variable_t *var, unsigned int free_number); -char * efi_guid_unparse(efi_guid_t *guid, char *out); -EFI_DEVICE_PATH *load_option_path(EFI_LOAD_OPTION *option); - - +extern char * efi_guid_unparse(efi_guid_t *guid, char *out); +extern EFI_DEVICE_PATH *load_option_path(EFI_LOAD_OPTION *option); +extern efi_status_t read_variable(const char *name, efi_variable_t *var); +extern efi_status_t edit_variable(efi_variable_t *var); +extern efi_status_t create_variable(efi_variable_t *var); +extern efi_status_t delete_variable(efi_variable_t *var); +extern efi_status_t create_or_edit_variable(efi_variable_t *var); +extern void set_fs_kernel_calls(); +extern int read_boot_var_names(struct dirent ***namelist); +extern int variable_to_name(efi_variable_t *var, char *name); +extern int var_name_to_path(const char *name, char *path); -#endif /* _ASM_IA64_EFI_H */ +#endif /* EFI_H */