| What:		/sys/firmware/efi/vars | 
 | Date:		April 2004 | 
 | Contact:	Matt Domsch <Matt_Domsch@dell.com> | 
 | Description: | 
 | 		This directory exposes interfaces for interactive with | 
 | 		EFI variables.  For more information on EFI variables, | 
 | 		see 'Variable Services' in the UEFI specification | 
 | 		(section 7.2 in specification version 2.3 Errata D). | 
 |  | 
 | 		In summary, EFI variables are named, and are classified | 
 | 		into separate namespaces through the use of a vendor | 
 | 		GUID.  They also have an arbitrary binary value | 
 | 		associated with them. | 
 |  | 
 | 		The efivars module enumerates these variables and | 
 | 		creates a separate directory for each one found.  Each | 
 | 		directory has a name of the form "<key>-<vendor guid>" | 
 | 		and contains the following files: | 
 |  | 
 | 		attributes:	A read-only text file enumerating the | 
 | 				EFI variable flags.  Potential values | 
 | 				include: | 
 |  | 
 | 				EFI_VARIABLE_NON_VOLATILE | 
 | 				EFI_VARIABLE_BOOTSERVICE_ACCESS | 
 | 				EFI_VARIABLE_RUNTIME_ACCESS | 
 | 				EFI_VARIABLE_HARDWARE_ERROR_RECORD | 
 | 				EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS | 
 |  | 
 | 				See the EFI documentation for an | 
 | 				explanation of each of these variables. | 
 |  | 
 | 		data:		A read-only binary file that can be read | 
 | 				to attain the value of the EFI variable | 
 |  | 
 | 		guid:		The vendor GUID of the variable.  This | 
 | 				should always match the GUID in the | 
 | 				variable's name. | 
 |  | 
 | 		raw_var:	A binary file that can be read to obtain | 
 | 				a structure that contains everything | 
 | 				there is to know about the variable. | 
 | 				For structure definition see "struct | 
 | 				efi_variable" in the kernel sources. | 
 |  | 
 | 				This file can also be written to in | 
 | 				order to update the value of a variable. | 
 | 				For this to work however, all fields of | 
 | 				the "struct efi_variable" passed must | 
 | 				match byte for byte with the structure | 
 | 				read out of the file, save for the value | 
 | 				portion. | 
 |  | 
 | 				**Note** the efi_variable structure | 
 | 				read/written with this file contains a | 
 | 				'long' type that may change widths | 
 | 				depending on your underlying | 
 | 				architecture. | 
 |  | 
 | 		size:		As ASCII representation of the size of | 
 | 				the variable's value. | 
 |  | 
 |  | 
 | 		In addition, two other magic binary files are provided | 
 | 		in the top-level directory and are used for adding and | 
 | 		removing variables: | 
 |  | 
 | 		new_var:	Takes a "struct efi_variable" and | 
 | 				instructs the EFI firmware to create a | 
 | 				new variable. | 
 |  | 
 | 		del_var:	Takes a "struct efi_variable" and | 
 | 				instructs the EFI firmware to remove any | 
 | 				variable that has a matching vendor GUID | 
 | 				and variable key name. |