sync comments on data structure to follow latest UEFI spec.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9309 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
eric_tian 2009-09-24 08:56:33 +00:00
parent f60515255d
commit fbf926add9
15 changed files with 175 additions and 109 deletions

View File

@ -844,7 +844,7 @@ typedef INTN RETURN_STATUS;
/// ///
/// The Unicode string contained one or more characters that /// The string contained one or more characters that
/// the device could not render and were skipped. /// the device could not render and were skipped.
/// ///
#define RETURN_WARN_UNKNOWN_GLYPH ENCODE_WARNING (1) #define RETURN_WARN_UNKNOWN_GLYPH ENCODE_WARNING (1)

View File

@ -24,7 +24,7 @@
typedef struct { typedef struct {
/// ///
/// Size of the EFI_FILE_INFO structure, including the Nullterminated Unicode FileName string. /// Size of the EFI_FILE_INFO structure, including the Null-terminated FileName string.
/// ///
UINT64 Size; UINT64 Size;
/// ///
@ -52,7 +52,7 @@ typedef struct {
/// ///
UINT64 Attribute; UINT64 Attribute;
/// ///
/// The Null-terminated Unicode name of the file. /// The Null-terminated name of the file.
/// ///
CHAR16 FileName[1]; CHAR16 FileName[1];
} EFI_FILE_INFO; } EFI_FILE_INFO;

View File

@ -24,7 +24,7 @@
typedef struct { typedef struct {
/// ///
/// Size of the EFI_FILE_SYSTEM_INFO structure, including the Null-terminated Unicode VolumeLabel string. /// Size of the EFI_FILE_SYSTEM_INFO structure, including the Null-terminated VolumeLabel string.
/// ///
UINT64 Size; UINT64 Size;
/// ///

View File

@ -364,7 +364,7 @@ EFI_STATUS
@param Credentials A Signed Manifest containing verification information for the @param Credentials A Signed Manifest containing verification information for the
indicated data object. indicated data object.
@param DataObject An in-memory copy of the raw data object to be verified. @param DataObject An in-memory copy of the raw data object to be verified.
@param SectionName An ASCII (not Unicode) string giving the section name in the @param SectionName An ASCII string giving the section name in the
manifest holding the verification information (in other words, manifest holding the verification information (in other words,
hash value) that corresponds to DataObject. hash value) that corresponds to DataObject.
@param AuthorityCertificate A digital certificate whose public key must match the signer's @param AuthorityCertificate A digital certificate whose public key must match the signer's

View File

@ -27,7 +27,7 @@ typedef struct _EFI_COMPONENT_NAME2_PROTOCOL EFI_COMPONENT_NAME2_PROTOCOL;
/** /**
Retrieves a Unicode string that is the user readable name of Retrieves a string that is the user readable name of
the EFI Driver. the EFI Driver.
@param This A pointer to the @param This A pointer to the
@ -43,12 +43,12 @@ typedef struct _EFI_COMPONENT_NAME2_PROTOCOL EFI_COMPONENT_NAME2_PROTOCOL;
is specified in RFC 4646 language code is specified in RFC 4646 language code
format. format.
@param DriverName A pointer to the Unicode string to return. @param DriverName A pointer to the string to return.
This Unicode string is the name of the This string is the name of the
driver specified by This in the language driver specified by This in the language
specified by Language. specified by Language.
@retval EFI_SUCCESS The Unicode string for the @retval EFI_SUCCESS The string for the
Driver specified by This and the Driver specified by This and the
language specified by Language language specified by Language
was returned in DriverName. was returned in DriverName.
@ -72,7 +72,7 @@ EFI_STATUS
/** /**
Retrieves a Unicode string that is the user readable name of Retrieves a string that is the user readable name of
the controller that is being managed by an EFI Driver. the controller that is being managed by an EFI Driver.
@param This A pointer to the @param This A pointer to the
@ -106,15 +106,14 @@ EFI_STATUS
specified in RFC 4646 language code specified in RFC 4646 language code
format. format.
@param ControllerName A pointer to the Unicode string to @param ControllerName A pointer to the string to return.
return. This Unicode string is the This string is the name of the controller
name of the controller specified by specified by ControllerHandle and ChildHandle
ControllerHandle and ChildHandle in in the language specified by Language
the language specified by Language
from the point of view of the driver from the point of view of the driver
specified by This. specified by This.
@retval EFI_SUCCESS The Unicode string for the user @retval EFI_SUCCESS The string for the user
readable name in the language readable name in the language
specified by Language for the specified by Language for the
driver specified by This was driver specified by This was

View File

@ -854,7 +854,7 @@ typedef struct {
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// A NULL-terminated Unicode Path string including directory and file names. /// A NULL-terminated Path string including directory and file names.
/// ///
CHAR16 PathName[1]; CHAR16 PathName[1];
} FILEPATH_DEVICE_PATH; } FILEPATH_DEVICE_PATH;

View File

@ -65,7 +65,7 @@ typedef enum {
the driver writer. the driver writer.
@param ErrorType A GUID that defines the format of the data returned in Buffer. @param ErrorType A GUID that defines the format of the data returned in Buffer.
@param BufferSize The size, in bytes, of the data returned in Buffer. @param BufferSize The size, in bytes, of the data returned in Buffer.
@param Buffer A buffer that contains a Null-terminated Unicode string @param Buffer A buffer that contains a Null-terminated string
plus some additional data whose format is defined by plus some additional data whose format is defined by
ErrorType. Buffer is allocated by this function with ErrorType. Buffer is allocated by this function with
AllocatePool(), and it is the caller's responsibility AllocatePool(), and it is the caller's responsibility

View File

@ -45,7 +45,7 @@ typedef struct _EFI_HII_CONFIG_ROUTING_PROTOCOL EFI_HII_CONFIG_ROUTING_PROTOCOL;
They must have an additional description indicating the type of They must have an additional description indicating the type of
alternative configuration the string represents, alternative configuration the string represents,
"ALTCFG=<StringToken>". That <StringToken> (when converted from "ALTCFG=<StringToken>". That <StringToken> (when converted from
Hex UNICODE to binary) is a reference to a string in the hexadecimal (encoded as text) to binary) is a reference to a string in the
associated string pack. As an example, assume that the Request associated string pack. As an example, assume that the Request
string is: string is:
GUID=...&NAME=00480050&PATH=...&Fred&George&Ron&Neville A result GUID=...&NAME=00480050&PATH=...&Fred&George&Ron&Neville A result
@ -118,6 +118,9 @@ EFI_STATUS
); );
/** /**
This function allows the caller to request the current configuration
for the entirety of the current HII database and returns the data in
a null-terminated string.
This function allows the caller to request the current This function allows the caller to request the current
configuration for all of the current HII database. The results configuration for all of the current HII database. The results
@ -126,11 +129,11 @@ EFI_STATUS
@param This Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance. @param This Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance.
@param Results A null-terminated Unicode string in @param Results A null-terminated string in <MultiConfigAltResp>
<MultiConfigAltResp> format which has all format which has all values filled in for the
values filled in for the names in the Request names in the Request string.
string. String to be allocated by this String to be allocated by this function.
function. De-allocation is up to the caller. De-allocation is up to the caller.
@retval EFI_SUCCESS The Results string is filled with the @retval EFI_SUCCESS The Results string is filled with the
values corresponding to all requested values corresponding to all requested
@ -168,8 +171,7 @@ EFI_STATUS
@param This Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance. @param This Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance.
@param Configuration A null-terminated Unicode string in @param Configuration A null-terminated string in <MulltiConfigResp> format.
<MulltiConfigResp> format.
@param Progress A pointer to a string filled in with the @param Progress A pointer to a string filled in with the
offset of the most recent '&' before the offset of the most recent '&' before the
@ -210,15 +212,14 @@ EFI_STATUS
consists of a list of <BlockName> formatted names. It uses the consists of a list of <BlockName> formatted names. It uses the
offset in the name to determine the index into the Block to offset in the name to determine the index into the Block to
start the extraction and the width of each name to determine the start the extraction and the width of each name to determine the
number of bytes to extract. These are mapped to a UNICODE value number of bytes to extract. These are mapped to a string
using the equivalent of the C "%x" format (with optional leading using the equivalent of the C "%x" format (with optional leading
spaces). The call fails if, for any (offset, width) pair in spaces). The call fails if, for any (offset, width) pair in
ConfigRequest, offset+value >= BlockSize. ConfigRequest, offset+value >= BlockSize.
@param This Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance. @param This Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance.
@param ConfigRequest A null-terminated Unicode string in @param ConfigRequest A null-terminated string in <ConfigRequest> format.
<ConfigRequest> format.
@param Block Array of bytes defining the block's @param Block Array of bytes defining the block's
configuration. configuration.
@ -293,8 +294,7 @@ EFI_STATUS
@param This Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance. @param This Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance.
@param ConfigResp A null-terminated Unicode string in @param ConfigResp A null-terminated string in <ConfigResp> format.
<ConfigResp> format.
@param Block A possibly null array of bytes @param Block A possibly null array of bytes
representing the current block. Only representing the current block. Only
@ -349,7 +349,7 @@ EFI_STATUS
a larger configuration string. a larger configuration string.
@param This A pointer to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance. @param This A pointer to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance.
@param Configuration A null-terminated Unicode string in <MultiConfigAltResp> format. @param Configuration A null-terminated string in <MultiConfigAltResp> format.
@param Guid A pointer to the GUID value to search for in the @param Guid A pointer to the GUID value to search for in the
routing portion of the ConfigResp string when retrieving routing portion of the ConfigResp string when retrieving
the requested data. If Guid is NULL, then all GUID the requested data. If Guid is NULL, then all GUID

View File

@ -144,7 +144,7 @@ typedef struct _EFI_FONT_DISPLAY_INFO {
will use the pixel value from Blt. This flag cannot be used if will use the pixel value from Blt. This flag cannot be used if
Blt is NULL upon entry. If EFI_HII_IGNORE_IF_NO_GLYPH is set, Blt is NULL upon entry. If EFI_HII_IGNORE_IF_NO_GLYPH is set,
then characters which have no glyphs are not drawn. Otherwise, then characters which have no glyphs are not drawn. Otherwise,
they are replaced with Unicode character 0xFFFD (REPLACEMENT they are replaced with Unicode character code 0xFFFD (REPLACEMENT
CHARACTER). If EFI_HII_IGNORE_LINE_BREAK is set, then explicit CHARACTER). If EFI_HII_IGNORE_LINE_BREAK is set, then explicit
line break characters will be ignored. If line break characters will be ignored. If
EFI_HII_DIRECT_TO_SCREEN is set, then the string will be written EFI_HII_DIRECT_TO_SCREEN is set, then the string will be written
@ -263,7 +263,7 @@ EFI_STATUS
use the pixel value from Blt. This flag cannot be used if Blt use the pixel value from Blt. This flag cannot be used if Blt
is NULL upon entry. If EFI_HII_IGNORE_IF_NO_GLYPH is set, then is NULL upon entry. If EFI_HII_IGNORE_IF_NO_GLYPH is set, then
characters which have no glyphs are not drawn. Otherwise, they characters which have no glyphs are not drawn. Otherwise, they
are replaced with Unicode character 0xFFFD (REPLACEMENT are replaced with Unicode character code 0xFFFD (REPLACEMENT
CHARACTER). If EFI_HII_IGNORE_LINE_BREAK is set, then explicit CHARACTER). If EFI_HII_IGNORE_LINE_BREAK is set, then explicit
line break characters will be ignored. If line break characters will be ignored. If
EFI_HII_DIRECT_TO_SCREEN is set, then the string will be EFI_HII_DIRECT_TO_SCREEN is set, then the string will be
@ -391,7 +391,7 @@ EFI_STATUS
@retval EFI_WARN_UNKNOWN_GLYPH The glyph was unknown and was @retval EFI_WARN_UNKNOWN_GLYPH The glyph was unknown and was
replaced with the glyph for replaced with the glyph for
Unicode character 0xFFFD. Unicode character code 0xFFFD.
@retval EFI_INVALID_PARAMETER Blt is NULL or Width is NULL or @retval EFI_INVALID_PARAMETER Blt is NULL or Width is NULL or
Height is NULL Height is NULL

View File

@ -165,12 +165,12 @@ EFI_STATUS
); );
/** /**
Write a Unicode string to the output device. Write a string to the output device.
@param This Protocol instance pointer. @param This Protocol instance pointer.
@param String The NULL-terminated Unicode string to be displayed on the output @param String The NULL-terminated string to be displayed on the output
device(s). All output devices must also support the Unicode device(s). All output devices must also support the Unicode
drawing defined in this file. drawing character codes defined in this file.
@retval EFI_SUCCESS The string was output to the device. @retval EFI_SUCCESS The string was output to the device.
@retval EFI_DEVICE_ERROR The device reported an error while attempting to output @retval EFI_DEVICE_ERROR The device reported an error while attempting to output
@ -178,7 +178,7 @@ EFI_STATUS
@retval EFI_UNSUPPORTED The output device's mode is not currently in a @retval EFI_UNSUPPORTED The output device's mode is not currently in a
defined text mode. defined text mode.
@retval EFI_WARN_UNKNOWN_GLYPH This warning code indicates that some of the @retval EFI_WARN_UNKNOWN_GLYPH This warning code indicates that some of the
characters in the Unicode string could not be characters in the string could not be
rendered and were skipped. rendered and were skipped.
**/ **/
@ -190,15 +190,15 @@ EFI_STATUS
); );
/** /**
Verifies that all characters in a Unicode string can be output to the Verifies that all characters in a string can be output to the
target device. target device.
@param This Protocol instance pointer. @param This Protocol instance pointer.
@param String The NULL-terminated Unicode string to be examined for the output @param String The NULL-terminated string to be examined for the output
device(s). device(s).
@retval EFI_SUCCESS The device(s) are capable of rendering the output string. @retval EFI_SUCCESS The device(s) are capable of rendering the output string.
@retval EFI_UNSUPPORTED Some of the characters in the Unicode string cannot be @retval EFI_UNSUPPORTED Some of the characters in the string cannot be
rendered by one or more of the output devices mapped rendered by one or more of the output devices mapped
by the EFI handle. by the EFI handle.

View File

@ -49,16 +49,15 @@ typedef EFI_UNICODE_COLLATION_PROTOCOL UNICODE_COLLATION_INTERFACE;
// Protocol member functions // Protocol member functions
// //
/** /**
Performs a case-insensitive comparison of two Null-terminated Unicode Performs a case-insensitive comparison of two Null-terminated strings.
strings.
@param This Protocol instance pointer. @param This A pointer to the EFI_UNICODE_COLLATION_PROTOCOL instance.
@param Str1 A pointer to a Null-terminated Unicode string. @param Str1 A pointer to a Null-terminated string.
@param Str2 A pointer to a Null-terminated Unicode string. @param Str2 A pointer to a Null-terminated string.
@retval 0 Str1 is equivalent to Str2 @retval 0 Str1 is equivalent to Str2
@retval >_0 Str1 is lexically greater than Str2 @retval >0 Str1 is lexically greater than Str2
@retval <_0 Str1 is lexically less than Str2 @retval <0 Str1 is lexically less than Str2
**/ **/
typedef typedef
@ -70,12 +69,12 @@ INTN
); );
/** /**
Performs a case-insensitive comparison of a Null-terminated Unicode Performs a case-insensitive comparison of a Null-terminated
pattern string and a Null-terminated Unicode string. pattern string and a Null-terminated string.
@param This Protocol instance pointer. @param This A pointer to the EFI_UNICODE_COLLATION_PROTOCOL instance.
@param String A pointer to a Null-terminated Unicode string. @param String A pointer to a Null-terminated string.
@param Pattern A pointer to a Null-terminated Unicode pattern string. @param Pattern A pointer to a Null-terminated pattern string.
@retval TRUE Pattern was found in String. @retval TRUE Pattern was found in String.
@retval FALSE Pattern was not found in String. @retval FALSE Pattern was not found in String.
@ -90,11 +89,11 @@ BOOLEAN
); );
/** /**
Converts all the Unicode characters in a Null-terminated Unicode string to Converts all the characters in a Null-terminated string to
lower case Unicode characters. lower case characters.
@param This Protocol instance pointer. @param This A pointer to the EFI_UNICODE_COLLATION_PROTOCOL instance.
@param String A pointer to a Null-terminated Unicode string. @param String A pointer to a Null-terminated string.
**/ **/
typedef typedef
@ -105,11 +104,11 @@ VOID
); );
/** /**
Converts all the Unicode characters in a Null-terminated Unicode string to upper Converts all the characters in a Null-terminated string to upper
case Unicode characters. case characters.
@param This Protocol instance pointer. @param This A pointer to the EFI_UNICODE_COLLATION_PROTOCOL instance.
@param String A pointer to a Null-terminated Unicode string. @param String A pointer to a Null-terminated string.
**/ **/
typedef typedef
@ -121,14 +120,14 @@ VOID
/** /**
Converts an 8.3 FAT file name in an OEM character set to a Null-terminated Converts an 8.3 FAT file name in an OEM character set to a Null-terminated
Unicode string. string.
@param This Protocol instance pointer. @param This A pointer to the EFI_UNICODE_COLLATION_PROTOCOL instance.
@param FatSize The size of the string Fat in bytes. @param FatSize The size of the string Fat in bytes.
@param Fat A pointer to a Null-terminated string that contains an 8.3 file @param Fat A pointer to a Null-terminated string that contains an 8.3 file
name using an OEM character set. name using an OEM character set.
@param String A pointer to a Null-terminated Unicode string. The string must @param String A pointer to a Null-terminated string. The string must
be preallocated to hold FatSize Unicode characters. be allocated in advance to hold FatSize characters.
**/ **/
typedef typedef
@ -141,18 +140,17 @@ VOID
); );
/** /**
Converts a Null-terminated Unicode string to legal characters in a FAT Converts a Null-terminated string to legal characters in a FAT
filename using an OEM character set. filename using an OEM character set.
@param This Protocol instance pointer. @param This A pointer to the EFI_UNICODE_COLLATION_PROTOCOL instance.
@param String A pointer to a Null-terminated Unicode string. The string must @param String A pointer to a Null-terminated string.
be preallocated to hold FatSize Unicode characters.
@param FatSize The size of the string Fat in bytes. @param FatSize The size of the string Fat in bytes.
@param Fat A pointer to a Null-terminated string that contains an 8.3 file @param Fat A pointer to a string that contains the converted version of
name using an OEM character set. String using legal FAT characters from an OEM character set.
@retval TRUE Fat is a Long File Name @retval TRUE One or more conversions failed and were substituted with '_'
@retval FALSE Fat is an 8.3 file name @retval FALSE None of the conversions failed.
**/ **/
typedef typedef
@ -166,7 +164,7 @@ BOOLEAN
/// ///
/// The EFI_UNICODE_COLLATION_PROTOCOL is used to perform case-insensitive /// The EFI_UNICODE_COLLATION_PROTOCOL is used to perform case-insensitive
/// comparisons of Unicode strings. /// comparisons of strings.
/// ///
struct _EFI_UNICODE_COLLATION_PROTOCOL { struct _EFI_UNICODE_COLLATION_PROTOCOL {
EFI_UNICODE_COLLATION_STRICOLL StriColl; EFI_UNICODE_COLLATION_STRICOLL StriColl;

View File

@ -426,7 +426,7 @@ EFI_STATUS
); );
/** /**
Retrieves a Unicode string stored in a USB Device. Retrieves a string stored in a USB Device.
@param This A pointer to the EFI_USB_IO_PROTOCOL instance. @param This A pointer to the EFI_USB_IO_PROTOCOL instance.
@param LangID The Language ID for the string being retrieved. @param LangID The Language ID for the string being retrieved.

View File

@ -125,7 +125,7 @@ typedef struct {
/// ///
UINT64 Attributes; UINT64 Attributes;
/// ///
/// Unicode string. /// Null-terminated name of the partition.
/// ///
CHAR16 PartitionName[36]; CHAR16 PartitionName[36];
} EFI_PARTITION_ENTRY; } EFI_PARTITION_ENTRY;

View File

@ -83,28 +83,69 @@ typedef struct {
// //
// Definitions for Simplified Font Package // Definitions for Simplified Font Package
// Section 27.3.2
// //
// ///
// Contents of EFI_NARROW_GLYPH.Attributes /// Contents of EFI_NARROW_GLYPH.Attributes
// ///@{
#define EFI_GLYPH_NON_SPACING 0x01 #define EFI_GLYPH_NON_SPACING 0x01
#define EFI_GLYPH_WIDE 0x02 #define EFI_GLYPH_WIDE 0x02
#define EFI_GLYPH_HEIGHT 19 #define EFI_GLYPH_HEIGHT 19
#define EFI_GLYPH_WIDTH 8 #define EFI_GLYPH_WIDTH 8
///@}
///
/// The EFI_NARROW_GLYPH has a preferred dimension (w x h) of 8 x 19 pixels.
///
typedef struct { typedef struct {
///
/// The Unicode representation of the glyph. The term weight is the
/// technical term for a character code.
///
CHAR16 UnicodeWeight; CHAR16 UnicodeWeight;
///
/// The data element containing the glyph definitions.
///
UINT8 Attributes; UINT8 Attributes;
///
/// The column major glyph representation of the character. Bits
/// with values of one indicate that the corresponding pixel is to be
/// on when normally displayed; those with zero are off.
///
UINT8 GlyphCol1[EFI_GLYPH_HEIGHT]; UINT8 GlyphCol1[EFI_GLYPH_HEIGHT];
} EFI_NARROW_GLYPH; } EFI_NARROW_GLYPH;
///
/// The EFI_WIDE_GLYPH has a preferred dimension (w x h) of 16 x 19 pixels, which is large enough
/// to accommodate logographic characters.
///
typedef struct { typedef struct {
///
/// The Unicode representation of the glyph. The term weight is the
/// technical term for a character code.
///
CHAR16 UnicodeWeight; CHAR16 UnicodeWeight;
///
/// The data element containing the glyph definitions.
///
UINT8 Attributes; UINT8 Attributes;
///
/// The column major glyph representation of the character. Bits
/// with values of one indicate that the corresponding pixel is to be
/// on when normally displayed; those with zero are off.
///
UINT8 GlyphCol1[EFI_GLYPH_HEIGHT]; UINT8 GlyphCol1[EFI_GLYPH_HEIGHT];
///
/// The column major glyph representation of the character. Bits
/// with values of one indicate that the corresponding pixel is to be
/// on when normally displayed; those with zero are off.
///
UINT8 GlyphCol2[EFI_GLYPH_HEIGHT]; UINT8 GlyphCol2[EFI_GLYPH_HEIGHT];
///
/// Ensures that sizeof (EFI_WIDE_GLYPH) is twice the
/// sizeof (EFI_NARROW_GLYPH). The contents of Pad must
/// be zero.
///
UINT8 Pad[3]; UINT8 Pad[3];
} EFI_WIDE_GLYPH; } EFI_WIDE_GLYPH;
@ -1230,25 +1271,28 @@ typedef struct _EFI_IFR_TO_BOOLEAN {
EFI_IFR_OP_HEADER Header; EFI_IFR_OP_HEADER Header;
} EFI_IFR_TO_BOOLEAN; } EFI_IFR_TO_BOOLEAN;
// ///
// For EFI_IFR_TO_STRING, when converting from /// For EFI_IFR_TO_STRING, when converting from
// unsigned integers, these flags control the format: /// unsigned integers, these flags control the format:
// 0 = unsigned decimal /// 0 = unsigned decimal
// 1 = signed decimal /// 1 = signed decimal
// 2 = hexadecimal (lower-case alpha) /// 2 = hexadecimal (lower-case alpha)
// 3 = hexadecimal (upper-case alpha) /// 3 = hexadecimal (upper-case alpha)
// ///@{
#define EFI_IFR_STRING_UNSIGNED_DEC 0 #define EFI_IFR_STRING_UNSIGNED_DEC 0
#define EFI_IFR_STRING_SIGNED_DEC 1 #define EFI_IFR_STRING_SIGNED_DEC 1
#define EFI_IFR_STRING_LOWERCASE_HEX 2 #define EFI_IFR_STRING_LOWERCASE_HEX 2
#define EFI_IFR_STRING_UPPERCASE_HEX 3 #define EFI_IFR_STRING_UPPERCASE_HEX 3
// ///@}
// When converting from a buffer, these flags control the format:
// 0 = ASCII ///
// 8 = Unicode /// When converting from a buffer, these flags control the format:
// /// 0 = ASCII
/// 8 = Unicode
///@{
#define EFI_IFR_STRING_ASCII 0 #define EFI_IFR_STRING_ASCII 0
#define EFI_IFR_STRING_UNICODE 8 #define EFI_IFR_STRING_UNICODE 8
///@}
typedef struct _EFI_IFR_TO_STRING { typedef struct _EFI_IFR_TO_STRING {
EFI_IFR_OP_HEADER Header; EFI_IFR_OP_HEADER Header;
@ -1596,11 +1640,31 @@ typedef enum {
} EFI_KEY; } EFI_KEY;
typedef struct { typedef struct {
///
/// Used to describe a physical key on a keyboard.
///
EFI_KEY Key; EFI_KEY Key;
///
/// Unicode character code for the Key.
///
CHAR16 Unicode; CHAR16 Unicode;
///
/// Unicode character code for the key with the shift key being held down.
///
CHAR16 ShiftedUnicode; CHAR16 ShiftedUnicode;
///
/// Unicode character code for the key with the Alt-GR being held down.
///
CHAR16 AltGrUnicode; CHAR16 AltGrUnicode;
///
/// Unicode character code for the key with the Alt-GR and shift keys being held down.
///
CHAR16 ShiftedAltGrUnicode; CHAR16 ShiftedAltGrUnicode;
///
/// Modifier keys are defined to allow for special functionality that is not necessarily
/// accomplished by a printable character. Many of these modifier keys are flags to toggle
/// certain state bits on and off inside of a keyboard driver.
///
UINT16 Modifier; UINT16 Modifier;
UINT16 AffectedAttribute; UINT16 AffectedAttribute;
} EFI_KEY_DESCRIPTOR; } EFI_KEY_DESCRIPTOR;

View File

@ -592,8 +592,8 @@ VOID
/** /**
Returns the value of a variable. Returns the value of a variable.
@param VariableName A Null-terminated Unicode string that is the name of the @param VariableName A Null-terminated string that is the name of the vendor's
vendor's variable. variable.
@param VendorGuid A unique identifier for the vendor. @param VendorGuid A unique identifier for the vendor.
@param Attributes If not NULL, a pointer to the memory location to return the @param Attributes If not NULL, a pointer to the memory location to return the
attributes bitmask for the variable. attributes bitmask for the variable.
@ -628,7 +628,7 @@ EFI_STATUS
@param VariableNameSize The size of the VariableName buffer. @param VariableNameSize The size of the VariableName buffer.
@param VariableName On input, supplies the last VariableName that was returned @param VariableName On input, supplies the last VariableName that was returned
by GetNextVariableName(). On output, returns the Nullterminated by GetNextVariableName(). On output, returns the Nullterminated
Unicode string of the current variable. string of the current variable.
@param VendorGuid On input, supplies the last VendorGuid that was returned by @param VendorGuid On input, supplies the last VendorGuid that was returned by
GetNextVariableName(). On output, returns the GetNextVariableName(). On output, returns the
VendorGuid of the current variable. VendorGuid of the current variable.
@ -841,7 +841,7 @@ EFI_STATUS
@param ImageHandle Handle of image to be started. @param ImageHandle Handle of image to be started.
@param ExitDataSize Pointer to the size, in bytes, of ExitData. @param ExitDataSize Pointer to the size, in bytes, of ExitData.
@param ExitData Pointer to a pointer to a data buffer that includes a Null-terminated @param ExitData Pointer to a pointer to a data buffer that includes a Null-terminated
Unicode string, optionally followed by additional binary data. string, optionally followed by additional binary data.
@retval EFI_INVALID_PARAMETER ImageHandle is either an invalid image handle or the image @retval EFI_INVALID_PARAMETER ImageHandle is either an invalid image handle or the image
has already been initialized with StartImage has already been initialized with StartImage
@ -859,11 +859,16 @@ EFI_STATUS
/** /**
Terminates a loaded EFI image and returns control to boot services. Terminates a loaded EFI image and returns control to boot services.
@param ImageHandle Handle that identifies the image. @param ImageHandle Handle that identifies the image. This parameter is passed to the
image on entry.
@param ExitStatus The image's exit code. @param ExitStatus The image's exit code.
@param ExitDataSize The size, in bytes, of ExitData. @param ExitDataSize The size, in bytes, of ExitData. Ignored if ExitStatus is EFI_SUCCESS.
@param ExitData Pointer to a data buffer that includes a Null-terminated Unicode string, @param ExitData Pointer to a data buffer that includes a Null-terminated string,
optionally followed by additional binary data. optionally followed by additional binary data. The string is a
description that the caller may use to further indicate the reason
for the image's exit. ExitData is only valid if ExitStatus
is something other than EFI_SUCCESS. The ExitData buffer
must be allocated by calling AllocatePool().
@retval EFI_SUCCESS The image specified by ImageHandle was unloaded. @retval EFI_SUCCESS The image specified by ImageHandle was unloaded.
@retval EFI_INVALID_PARAMETER The image specified by ImageHandle has been loaded and @retval EFI_INVALID_PARAMETER The image specified by ImageHandle has been loaded and
@ -933,7 +938,7 @@ EFI_STATUS
@param Timeout The number of seconds to set the watchdog timer to. @param Timeout The number of seconds to set the watchdog timer to.
@param WatchdogCode The numeric code to log on a watchdog timer timeout event. @param WatchdogCode The numeric code to log on a watchdog timer timeout event.
@param DataSize The size, in bytes, of WatchdogData. @param DataSize The size, in bytes, of WatchdogData.
@param WatchdogData A data buffer that includes a Null-terminated Unicode string, optionally @param WatchdogData A data buffer that includes a Null-terminated string, optionally
followed by additional binary data. followed by additional binary data.
@retval EFI_SUCCESS The timeout has been set. @retval EFI_SUCCESS The timeout has been set.
@ -985,7 +990,7 @@ typedef enum {
@param DataSize The size, in bytes, of WatchdogData. @param DataSize The size, in bytes, of WatchdogData.
@param ResetData For a ResetType of EfiResetCold, EfiResetWarm, or @param ResetData For a ResetType of EfiResetCold, EfiResetWarm, or
EfiResetShutdown the data buffer starts with a Null-terminated EfiResetShutdown the data buffer starts with a Null-terminated
Unicode string, optionally followed by additional binary data. string, optionally followed by additional binary data.
**/ **/
typedef typedef
@ -1900,8 +1905,8 @@ typedef struct {
/// ///
EFI_TABLE_HEADER Hdr; EFI_TABLE_HEADER Hdr;
/// ///
/// A pointer to a null terminated Unicode string that identifies /// A pointer to a null terminated string that identifies the vendor
/// the vendor that produces the system firmware for the platform. /// that produces the system firmware for the platform.
/// ///
CHAR16 *FirmwareVendor; CHAR16 *FirmwareVendor;
/// ///