sysfs-firmware-efi-vars 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  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. =============== ========================================
  18. attributes: A read-only text file enumerating the
  19. EFI variable flags. Potential values
  20. include:
  21. EFI_VARIABLE_NON_VOLATILE
  22. EFI_VARIABLE_BOOTSERVICE_ACCESS
  23. EFI_VARIABLE_RUNTIME_ACCESS
  24. EFI_VARIABLE_HARDWARE_ERROR_RECORD
  25. EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS
  26. See the EFI documentation for an
  27. explanation of each of these variables.
  28. data: A read-only binary file that can be read
  29. to attain the value of the EFI variable
  30. guid: The vendor GUID of the variable. This
  31. should always match the GUID in the
  32. variable's name.
  33. raw_var: A binary file that can be read to obtain
  34. a structure that contains everything
  35. there is to know about the variable.
  36. For structure definition see "struct
  37. efi_variable" in the kernel sources.
  38. This file can also be written to in
  39. order to update the value of a variable.
  40. For this to work however, all fields of
  41. the "struct efi_variable" passed must
  42. match byte for byte with the structure
  43. read out of the file, save for the value
  44. portion.
  45. **Note** the efi_variable structure
  46. read/written with this file contains a
  47. 'long' type that may change widths
  48. depending on your underlying
  49. architecture.
  50. size: As ASCII representation of the size of
  51. the variable's value.
  52. =============== ========================================
  53. In addition, two other magic binary files are provided
  54. in the top-level directory and are used for adding and
  55. removing variables:
  56. =============== ========================================
  57. new_var: Takes a "struct efi_variable" and
  58. instructs the EFI firmware to create a
  59. new variable.
  60. del_var: Takes a "struct efi_variable" and
  61. instructs the EFI firmware to remove any
  62. variable that has a matching vendor GUID
  63. and variable key name.
  64. =============== ========================================