sysfs-firmware-efi-vars 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. What: /sys/firmware/efi/vars
  2. Date: April 2004
  3. Contact: Matt Domsch <Matt_Domsch@dell.com>
  4. Description:
  5. This directory exposes interfaces for interactive with
  6. EFI variables. For more information on EFI variables,
  7. see 'Variable Services' in the UEFI specification
  8. (section 7.2 in specification version 2.3 Errata D).
  9. In summary, EFI variables are named, and are classified
  10. into separate namespaces through the use of a vendor
  11. GUID. They also have an arbitrary binary value
  12. associated with them.
  13. The efivars module enumerates these variables and
  14. creates a separate directory for each one found. Each
  15. directory has a name of the form "<key>-<vendor guid>"
  16. and contains the following files:
  17. attributes: A read-only text file enumerating the
  18. EFI variable flags. Potential values
  19. include:
  20. EFI_VARIABLE_NON_VOLATILE
  21. EFI_VARIABLE_BOOTSERVICE_ACCESS
  22. EFI_VARIABLE_RUNTIME_ACCESS
  23. EFI_VARIABLE_HARDWARE_ERROR_RECORD
  24. EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS
  25. See the EFI documentation for an
  26. explanation of each of these variables.
  27. data: A read-only binary file that can be read
  28. to attain the value of the EFI variable
  29. guid: The vendor GUID of the variable. This
  30. should always match the GUID in the
  31. variable's name.
  32. raw_var: A binary file that can be read to obtain
  33. a structure that contains everything
  34. there is to know about the variable.
  35. For structure definition see "struct
  36. efi_variable" in the kernel sources.
  37. This file can also be written to in
  38. order to update the value of a variable.
  39. For this to work however, all fields of
  40. the "struct efi_variable" passed must
  41. match byte for byte with the structure
  42. read out of the file, save for the value
  43. portion.
  44. **Note** the efi_variable structure
  45. read/written with this file contains a
  46. 'long' type that may change widths
  47. depending on your underlying
  48. architecture.
  49. size: As ASCII representation of the size of
  50. the variable's value.
  51. In addition, two other magic binary files are provided
  52. in the top-level directory and are used for adding and
  53. removing variables:
  54. new_var: Takes a "struct efi_variable" and
  55. instructs the EFI firmware to create a
  56. new variable.
  57. del_var: Takes a "struct efi_variable" and
  58. instructs the EFI firmware to remove any
  59. variable that has a matching vendor GUID
  60. and variable key name.