Committing changes to the comments, after review with engineers.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9018 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
pkandel
2009-07-28 13:25:37 +00:00
parent d3a12d776c
commit 5259c97d7a
36 changed files with 248 additions and 324 deletions

View File

@@ -1,6 +1,6 @@
/** @file
This file defines the Human Interface Infrastructure protocol which will
be used by resources which want to publish IFR/Font/String data and have it
This file defines the Human Interface Infrastructure protocol, which is
used by resources that want to publish IFR/Font/String data and have it
collected by the Configuration engine. This protocol is defined in the.
Intel Platform Innovation Framework for EFI Human Interface Infrastructure
Specification Version 0.92.
@@ -20,23 +20,10 @@
#define _FRAMEWORK_HII_H_
//
// To get EFI_GRAPHICS_OUTPUT_BLT_PIXEL,
// is defined in MdePkg/Protocol/GraphicsOutput.h
// EFI_GRAPHICS_OUTPUT_BLT_PIXEL is defined in MdePkg/Protocol/GraphicsOutput.h
//
#include <Protocol/GraphicsOutput.h>
///
/// In both EDK and EDK II, incompatbile change is done to Framework HII protocol.
/// This change should cause a change of GUID in both of code and HII spec. But we
/// update the GUID in code in EDK and EDK II. The 0.92 spec is not updated. This
/// is a known issue.
///
///
/// Note that EFI_HII_PROTOCOL_GUID is different from that defined in the Framework HII
/// 0.92 spec because the spec changed part of HII interfaces but did not update the protocol
/// GUID.
///
#define EFI_HII_PROTOCOL_GUID \
////// In both EDK and EDK II, incompatbile change is done to Framework HII protocol. /// This change should cause a change of GUID in both of code and HII spec. But we /// update the GUID in code in EDK and EDK II. The 0.92 spec is not updated. This/// is a known issue.///////// Note that EFI_HII_PROTOCOL_GUID is different from that defined in the Framework HII/// 0.92 spec because the spec changed part of HII interfaces but did not update the protocol/// GUID.///#define EFI_HII_PROTOCOL_GUID \
{ \
0xd7ad636e, 0xb997, 0x459b, {0xbf, 0x3f, 0x88, 0x46, 0x89, 0x79, 0x80, 0xe1} \
}
@@ -90,11 +77,7 @@ typedef struct {
UINT16 Type; ///< The type of the package.
} EFI_HII_PACK_HEADER;
///
/// IFR package structure.
/// Immediately following the EFI_HII_IFR_PACK structure will be a series of IFR opcodes.
///
typedef struct {
////// IFR package structure./// Immediately following the EFI_HII_IFR_PACK structure will be a series of IFR opcodes. ///typedef struct {
EFI_HII_PACK_HEADER Header; ///< Header of the IFR package.
} EFI_HII_IFR_PACK;
@@ -102,15 +85,7 @@ typedef struct {
/// HII Handle package structure.
///
typedef struct {
///
/// Header of the package.
///
EFI_HII_PACK_HEADER Header; // Must be filled in
///
/// The image handle of the driver to which the package is referring.
///
EFI_HANDLE ImageHandle; // Must be filled in
///
/// /// Header of the package. /// EFI_HII_PACK_HEADER Header; // Must be filled in /// /// The image handle of the driver to which the package is referring. /// EFI_HANDLE ImageHandle; // Must be filled in ///
/// The handle of the device that is being described by this package.
///
EFI_HANDLE DeviceHandle; // Optional
@@ -279,18 +254,7 @@ typedef struct {
//
#define LANG_RIGHT_TO_LEFT 0x00000001
///
/// A string package is used to localize strings to a particular
/// language. The package is associated with a particular driver
/// or set of drivers. Tools are used to associate tokens with
/// string references in forms and in programs. These tokens are
/// language agnostic. When paired with a language pack (directly
/// or indirectly), the string token resolves into an actual
/// UNICODE string. The NumStringPointers determines how many
/// StringPointers (offset values) there are as well as the total
/// number of Strings that are defined.
///
typedef struct {
////// A string package is used to localize strings to a particular/// language. The package is associated with a particular driver/// or set of drivers. Tools are used to associate tokens with/// string references in forms and in programs. These tokens are/// language agnostic. When paired with a language pack (directly/// or indirectly), the string token resolves into an actual/// UNICODE string. The NumStringPointers determines how many/// StringPointers (offset values) there are as well as the total/// number of Strings that are defined.///typedef struct {
///
/// Header of the package.
///
@@ -342,14 +306,7 @@ typedef struct {
//EFI_WIDE_GLYPH WideGlyphs[];
} EFI_HII_FONT_PACK;
///
/// The definition of a specific physical key
///
/// Note: Name difference between code and the Framework HII 0.92 spec.
/// Add FRAMEWORK_ prefix to avoid name confict with EFI_KEY_DESCRIPTOR defined in the
/// UEFI 2.1d spec.
///
typedef struct {
////// The definition of a specific physical key////// Note: Name difference between code and the Framework HII 0.92 spec./// Add FRAMEWORK_ prefix to avoid name confict with EFI_KEY_DESCRIPTOR defined in the/// UEFI 2.1d spec.///typedef struct {
///
/// Used to describe a physical key on a keyboard.
///
@@ -376,20 +333,7 @@ typedef struct {
UINT16 Modifier;
} FRAMEWORK_EFI_KEY_DESCRIPTOR;
///
/// This structure allows a sparse set of keys to be redefined
/// or a complete redefinition of the keyboard layout. Most
/// keyboards have a lot of commonality in their layouts, therefore
/// only defining those keys that need to change from the default
/// minimizes the passed in information.
///
/// Additionally, when an update occurs, the active keyboard layout
/// will be switched to the newly updated keyboard layout. This
/// allows for situations that when a keyboard layout driver is
/// loaded as part of system initialization, the system will default
/// the keyboard behavior to the new layout.
///
typedef struct {
////// This structure allows a sparse set of keys to be redefined/// or a complete redefinition of the keyboard layout. Most/// keyboards have a lot of commonality in their layouts, therefore/// only defining those keys that need to change from the default/// minimizes the passed in information.////// Additionally, when an update occurs, the active keyboard layout/// will be switched to the newly updated keyboard layout. This/// allows for situations that when a keyboard layout driver is/// loaded as part of system initialization, the system will default/// the keyboard behavior to the new layout.///typedef struct {
///
/// Header of the package.
EFI_HII_PACK_HEADER Header;
@@ -514,9 +458,9 @@ EFI_STATUS
Exports the contents of the database into a buffer.
@param This A pointer to the EFI_HII_PROTOCOL instance.
@param Handle An FRAMEWORK_EFI_HII_HANDLE that corresponds to the desired
@param Handle A FRAMEWORK_EFI_HII_HANDLE that corresponds to the desired
handle to export. If the value is 0, the entire database will be exported.
In either case, the data will be exported in a format described by the
The data is exported in a format described by the
structure definition of EFI_HII_EXPORT_TABLE.
@param BufferSize
On input, a pointer to the length of the buffer. On output, the length
@@ -543,7 +487,7 @@ EFI_STATUS
@param This A pointer to the EFI_HII_PROTOCOL instance.
@param Handle The handle on which the string resides.
@retval EFI_SUCCESS Remove strings from the handle successfully.
@retval EFI_SUCCESS Successfully removed strings from the handle.
@retval EFI_INVALID_PARAMETER The Handle was unknown.
**/
@@ -591,7 +535,7 @@ EFI_STATUS
@param This A pointer to the EFI_HII_PROTOCOL instance.
@param Source A pointer to a Unicode string.
@param Index On input, the offset into the string from which to fetch
the character.On successful completion, the index is updated to the first
the character. On successful completion, the index is updated to the first
character past the character(s) making up the just extracted glyph.
@param GlyphBuffer Pointer to an array where the glyphs corresponding
to the characters in the source may be stored. GlyphBuffer is assumed
@@ -636,8 +580,8 @@ EFI_STATUS
@retval EFI_SUCCESS It worked.
@retval EFI_NOT_FOUND A glyph for a character was not found.
@note: Inconsistent with specification here:
In Framework Spec,HII spec 0.92. The type of 3rd, 4th and 8th parameter is EFI_UGA_PIXEL.
Here the definition use the EFI_GRAPHICS_OUTPUT_BLT_PIXEL which defined in UEFI2.1 spec
In Framework Spec, HII spec 0.92. The type of 3rd, 4th and 8th parameter is EFI_UGA_PIXEL.
Here the definition uses the EFI_GRAPHICS_OUTPUT_BLT_PIXEL, which is defined in UEFI 2.1 spec
**/
typedef
EFI_STATUS
@@ -838,7 +782,7 @@ EFI_STATUS
@param Handle The HII handle from which will have default data retrieved.
@param DefaultMask The mask used to specify some type of default override when extracting
the default image data.
@param VariablePackList A indirect pointer to the first entry of a link list with
@param VariablePackList An indirect pointer to the first entry of a link list with
type EFI_HII_VARIABLE_PACK_LIST.
@retval EFI_SUCCESS The VariablePackList was populated with the appropriate