UEFI HII: Merge UEFI HII support changes from branch.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4600 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
qwang12
2008-01-21 14:41:31 +00:00
parent 93e3992d1e
commit 7d582d6b49
21 changed files with 3518 additions and 3273 deletions

View File

@@ -207,9 +207,9 @@ typedef struct {
#define MSG_SATA_DP 0x12
typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header;
UINT16 HbaPortNumber;
UINT16 PortMultiplierPort;
UINT16 LogicalUnitNumber;
UINT16 HBAPortNumber;
UINT16 PortMultiplierPortNumber;
UINT16 Lun;
} SATA_DEVICE_PATH;
#define MSG_I2O_DP 0x06

View File

@@ -17,11 +17,8 @@
#ifndef __EFI_FORM_BROWSER_H__
#define __EFI_FORM_BROWSER_H__
#error "UEFI 2.1 HII is not fully implemented for now, Please don't include this file now."
#define EFI_FORM_BROWSER2_PROTOCOL_GUID \
{ 0xe5a1333e, 0xe1b4, 0x4e55, { 0xce, 0xeb, 0x35, 0xc3, 0xef, 0x13, 0x34, 0x43 } }
{0xb9d4c360, 0xbcfb, 0x4f9b, {0x92, 0x98, 0x53, 0xc1, 0x36, 0x98, 0x22, 0x58 }}
typedef struct _EFI_FORM_BROWSER2_PROTOCOL EFI_FORM_BROWSER2_PROTOCOL;
@@ -54,10 +51,10 @@ typedef struct {
typedef UINTN EFI_BROWSER_ACTION_REQUEST;
#define EFI_BROWSER_ACTION_NONE 0
#define EFI_BROWSER_ACTION_RESET 1
#define EFI_BROWSER_ACTION_SUMBIT 2
#define EFI_BROWSER_ACTION_EXIT 3
#define EFI_BROWSER_ACTION_REQUEST_NONE 0
#define EFI_BROWSER_ACTION_REQUEST_RESET 1
#define EFI_BROWSER_ACTION_REQUEST_SUBMIT 2
#define EFI_BROWSER_ACTION_REQUEST_EXIT 3
/**
@@ -67,7 +64,7 @@ typedef UINTN EFI_BROWSER_ACTION_REQUEST;
the browser to use a variety of passed-in information or
primarily use the HII database as the source of information.
@param This A pointer to the EFI_FORM_BROWSER_PROTOCOL
@param This A pointer to the EFI_FORM_BROWSER2_PROTOCOL
instance.
@param Handle A pointer to an array of HII handles to
@@ -121,12 +118,12 @@ typedef UINTN EFI_BROWSER_ACTION_REQUEST;
typedef
EFI_STATUS
(EFIAPI *EFI_SEND_FORM2) (
IN CONST EFI_FORM_BROWSER_PROTOCOL *This,
IN CONST EFI_HII_HANDLE *Handle,
IN CONST UINTN HandleCount,
IN CONST BOOLEAN SingleUse,
IN CONST EFI_FORM_BROWSER2_PROTOCOL *This,
IN EFI_HII_HANDLE *Handle,
IN UINTN HandleCount,
IN EFI_GUID *FormSetGuid, OPTIONAL
IN EFI_FORM_ID FormId, OPTIONAL
IN CONST EFI_SCREEN_DESCRIPTOR *ScreenDimensions, OPTIONAL
OUT BOOLEAN *ResetRequired OPTIONAL
OUT EFI_BROWSER_ACTION_REQUEST *ActionRequest OPTIONAL
);
@@ -137,7 +134,7 @@ EFI_STATUS
browser. This routine called this service in the browser to
retrieve or set certain uncommitted state information.
@param This A pointer to the EFI_FORM_BROWSER_PROTOCOL
@param This A pointer to the EFI_FORM_BROWSER2_PROTOCOL
instance.
@param ResultsDataSize A pointer to the size of the buffer
@@ -172,7 +169,7 @@ EFI_STATUS
typedef
EFI_STATUS
(EFIAPI *EFI_BROWSER_CALLBACK2 ) (
IN CONST EFI_FORM_BROWSER_PROTOCOL *This,
IN CONST EFI_FORM_BROWSER2_PROTOCOL *This,
IN OUT UINTN *ResultsDataSize,
IN OUT EFI_STRING ResultsData,
IN CONST BOOLEAN RetrieveData,
@@ -213,4 +210,3 @@ extern EFI_GUID gEfiFormBrowser2ProtocolGuid;
#endif

View File

@@ -19,13 +19,18 @@
#ifndef __EFI_HII_CONFIG_ACCESS_H__
#define __EFI_HII_CONFIG_ACCESS_H__
#error "UEFI 2.1 HII is not fully implemented for now, Please don't include this file now."
#include <Protocol/FormBrowser2.h>
#define EFI_HII_CONFIG_ACCESS_PROTOCOL_GUID \
{ 0x330d4706, 0xf2a0, 0x4e4f, { 0xa3, 0x69, 0xb6, 0x6f, 0xa8, 0xd5, 0x43, 0x85 } }
typedef struct _EFI_HII_CONFIG_ACCESS_PROTOCOL EFI_HII_CONFIG_ACCESS_PROTOCOL;
typedef UINTN EFI_BROWSER_ACTION;
#define EFI_BROWSER_ACTION_CHANGING 0
#define EFI_BROWSER_ACTION_CHANGED 1
/**
This function allows the caller to request the current
@@ -235,3 +240,4 @@ extern EFI_GUID gEfiHiiConfigAccessProtocolGuid;
#endif

View File

@@ -19,8 +19,6 @@
#ifndef __HII_CONFIG_ROUTING_H__
#define __HII_CONFIG_ROUTING_H__
#error "UEFI 2.1 HII is not fully implemented for now, Please don't include this file now."
#define EFI_HII_CONFIG_ROUTING_PROTOCOL_GUID \
{ 0x587e72d7, 0xcc50, 0x4f79, { 0x82, 0x09, 0xca, 0x29, 0x1f, 0xc1, 0xa1, 0x0f } }
@@ -112,7 +110,7 @@ typedef
EFI_STATUS
(EFIAPI * EFI_HII_ROUTING_EXTRACT_CONFIG ) (
IN CONST EFI_HII_CONFIG_ROUTING_PROTOCOL *This,
IN CONST EFI_STRING *Request,
IN CONST EFI_STRING Request,
OUT EFI_STRING *Progress,
OUT EFI_STRING *Results
);
@@ -278,7 +276,7 @@ EFI_STATUS
IN CONST EFI_STRING ConfigRequest,
IN CONST UINT8 *Block,
IN CONST UINTN BlockSize,
OUT EFI_STRING **Config,
OUT EFI_STRING *Config,
OUT EFI_STRING *Progress
);
@@ -334,12 +332,62 @@ typedef
EFI_STATUS
(EFIAPI * EFI_HII_ROUTING_CONFIG_TO_BLOCK ) (
IN CONST EFI_HII_CONFIG_ROUTING_PROTOCOL *This,
IN CONST EFI_STRING *ConfigResp,
IN CONST UINT8 *Block,
IN CONST EFI_STRING ConfigResp,
IN OUT UINT8 *Block,
IN OUT UINTN *BlockSize,
OUT EFI_STRING *Progress
);
typedef
EFI_STATUS
(EFIAPI * EFI_HII_GET_ALT_CFG) (
IN CONST EFI_HII_CONFIG_ROUTING_PROTOCOL *This,
IN CONST EFI_STRING Configuration,
IN CONST EFI_GUID *Guid,
IN CONST EFI_STRING Name,
IN CONST EFI_DEVICE_PATH_PROTOCOL *DevicePath,
IN CONST UINT16 *AltCfgId,
OUT EFI_STRING *AltCfgResp
)
/*++
Routine Description:
This helper function is to be called by drivers to extract portions of
a larger configuration string.
Arguments:
This - A pointer to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance.
Configuration - A null-terminated Unicode string in <MultiConfigAltResp> format.
Guid - A pointer to the GUID value to search for in the
routing portion of the ConfigResp string when retrieving
the requested data. If Guid is NULL, then all GUID
values will be searched for.
Name - A pointer to the NAME value to search for in the
routing portion of the ConfigResp string when retrieving
the requested data. If Name is NULL, then all Name
values will be searched for.
DevicePath - A pointer to the PATH value to search for in the
routing portion of the ConfigResp string when retrieving
the requested data. If DevicePath is NULL, then all
DevicePath values will be searched for.
AltCfgId - A pointer to the ALTCFG value to search for in the
routing portion of the ConfigResp string when retrieving
the requested data. If this parameter is NULL,
then the current setting will be retrieved.
AltCfgResp - A pointer to a buffer which will be allocated by the
function which contains the retrieved string as requested.
This buffer is only allocated if the call was successful.
Returns:
EFI_SUCCESS - The request succeeded. The requested data was extracted
and placed in the newly allocated AltCfgResp buffer.
EFI_OUT_OF_RESOURCES - Not enough memory to allocate AltCfgResp.
EFI_INVALID_PARAMETER - Any parameter is invalid.
EFI_NOT_FOUND - Target for the specified routing data was not found.
--*/
;
/**
@@ -354,6 +402,7 @@ struct _EFI_HII_CONFIG_ROUTING_PROTOCOL {
EFI_HII_ROUTING_ROUTE_CONFIG RouteConfig;
EFI_HII_ROUTING_BLOCK_TO_CONFIG BlockToConfig;
EFI_HII_ROUTING_CONFIG_TO_BLOCK ConfigToBlock;
EFI_HII_GET_ALT_CFG GetAltConfig;
};
extern EFI_GUID gEfiHiiConfigRoutingProtocolGuid;

File diff suppressed because it is too large Load Diff

View File

@@ -18,8 +18,6 @@
#include <Protocol/GraphicsOutput.h>
#include <Protocol/HiiImage.h>
#error "UEFI 2.1 HII is not fully implemented for now, Please don't include this file now."
#define EFI_HII_FONT_PROTOCOL_GUID \
{ 0xe9ca4775, 0x8657, 0x47fc, { 0x97, 0xe7, 0x7e, 0xd6, 0x5a, 0x8, 0x43, 0x24 } }
@@ -264,12 +262,12 @@ typedef
EFI_STATUS
(EFIAPI *EFI_HII_STRING_TO_IMAGE) (
IN CONST EFI_HII_FONT_PROTOCOL *This,
IN CONST EFI_HII_OUT_FLAGS Flags,
IN EFI_HII_OUT_FLAGS Flags,
IN CONST EFI_STRING String,
IN CONST EFI_FONT_DISPLAY_INFO *StringInfo,
IN OUT EFI_IMAGE_OUTPUT **Blt,
IN CONST UINTN BltX,
IN CONST UINTN BltY,
IN UINTN BltX,
IN UINTN BltY,
OUT EFI_HII_ROW_INFO **RowInfoArray OPTIONAL,
OUT UINTN *RowInfoArraySize OPTIONAL,
OUT UINTN *ColumnInfoArray OPTIONAL
@@ -396,14 +394,14 @@ typedef
EFI_STATUS
(EFIAPI *EFI_HII_STRING_ID_TO_IMAGE) (
IN CONST EFI_HII_FONT_PROTOCOL *This,
IN CONST EFI_HII_OUT_FLAGS Flags,
IN CONST EFI_HII_HANDLE PackageList,
IN CONST EFI_STRING_ID StringId,
IN EFI_HII_OUT_FLAGS Flags,
IN EFI_HII_HANDLE PackageList,
IN EFI_STRING_ID StringId,
IN CONST CHAR8 *Language,
IN CONST EFI_FONT_DISPLAY_INFO *StringInfo OPTIONAL,
IN OUT EFI_IMAGE_OUTPUT **Blt,
IN CONST UINTN BltX,
IN CONST UINTN BltY,
IN UINTN BltX,
IN UINTN BltY,
OUT EFI_HII_ROW_INFO **RowInfoArray OPTIONAL,
OUT UINTN *RowInfoArraySize OPTIONAL,
OUT UINTN *ColumnInfoArray OPTIONAL

View File

@@ -15,8 +15,6 @@
#ifndef __HII_IMAGE_H__
#define __HII_IMAGE_H__
#error "UEFI 2.1 HII is not fully implemented for now, Please don't include this file now."
#define EFI_HII_IMAGE_PROTOCOL_GUID \
{ 0x31a6406a, 0x6bdf, 0x4e46, { 0xb2, 0xa2, 0xeb, 0xaa, 0x89, 0xc4, 0x9, 0x20 } }
@@ -47,10 +45,10 @@ typedef struct _EFI_HII_IMAGE_PROTOCOL EFI_HII_IMAGE_PROTOCOL;
**/
typedef struct _EFI_IMAGE_INPUT {
UINT32 Flags;
UINT16 Width;
UINT16 Height;
EFI_GRAPHICS_OUTPUT_BLT_PIXEL *Bitmap;
UINT32 Flags;
UINT16 Width;
UINT16 Height;
EFI_GRAPHICS_OUTPUT_BLT_PIXEL Bitmap[1];
} EFI_IMAGE_INPUT;
@@ -83,7 +81,7 @@ typedef
EFI_STATUS
(EFIAPI *EFI_HII_NEW_IMAGE) (
IN CONST EFI_HII_IMAGE_PROTOCOL *This,
IN CONST EFI_HII_HANDLE PackageList,
IN EFI_HII_HANDLE PackageList,
OUT EFI_IMAGE_ID *ImageId,
IN CONST EFI_IMAGE_INPUT *Image
);
@@ -133,8 +131,8 @@ typedef
EFI_STATUS
(EFIAPI *EFI_HII_GET_IMAGE) (
IN CONST EFI_HII_IMAGE_PROTOCOL *This,
IN CONST EFI_HII_HANDLE PackageList,
IN CONST EFI_IMAGE_ID ImageId,
IN EFI_HII_HANDLE PackageList,
IN EFI_IMAGE_ID ImageId,
OUT EFI_IMAGE_INPUT *Image,
OUT UINTN *ImageSize
);
@@ -168,9 +166,9 @@ typedef
EFI_STATUS
(EFIAPI *EFI_HII_SET_IMAGE) (
IN CONST EFI_HII_IMAGE_PROTOCOL *This,
IN CONST EFI_HII_HANDLE PackageList,
IN CONST EFI_IMAGE_ID ImageId,
IN CONST EFI_IMAGE_INPUT Image
IN EFI_HII_HANDLE PackageList,
IN EFI_IMAGE_ID ImageId,
IN CONST EFI_IMAGE_INPUT *Image
);
@@ -264,11 +262,11 @@ typedef
EFI_STATUS
(EFIAPI *EFI_HII_DRAW_IMAGE) (
IN CONST EFI_HII_IMAGE_PROTOCOL *This,
IN CONST EFI_HII_DRAW_FLAGS Flags,
IN CONST EFI_IMAGE_INPUT Image,
IN EFI_HII_DRAW_FLAGS Flags,
IN CONST EFI_IMAGE_INPUT *Image,
IN OUT EFI_IMAGE_OUTPUT **Blt,
IN CONST UINTN BltX,
IN CONST UINTN BltY
IN UINTN BltX,
IN UINTN BltY
);
/**
@@ -342,12 +340,12 @@ typedef
EFI_STATUS
(EFIAPI *EFI_HII_DRAW_IMAGE_ID) (
IN CONST EFI_HII_IMAGE_PROTOCOL *This,
IN CONST EFI_HII_DRAW_FLAGS Flags,
IN CONST EFI_HII_HANDLE PackageList,
IN CONST EFI_IMAGE_ID ImageId,
IN EFI_HII_DRAW_FLAGS Flags,
IN EFI_HII_HANDLE PackageList,
IN EFI_IMAGE_ID ImageId,
IN OUT EFI_IMAGE_OUTPUT **Blt,
IN CONST UINTN BltX,
IN CONST UINTN BltY
IN UINTN BltX,
IN UINTN BltY
);
@@ -379,3 +377,4 @@ extern EFI_GUID gEfiHiiImageProtocolGuid;
#endif

View File

@@ -15,11 +15,12 @@
#ifndef __HII_STRING_H__
#define __HII_STRING_H__
#error "UEFI 2.1 HII is not fully implemented for now, Please don't include this file now."
#define EFI_HII_STRING_PROTOCOL_GUID \
{ 0xfd96974, 0x23aa, 0x4cdc, { 0xb9, 0xcb, 0x98, 0xd1, 0x77, 0x50, 0x32, 0x2a } }
#include <Protocol/HiiDatabase.h>
#include <Protocol/HiiFont.h>
typedef struct _EFI_HII_STRING_PROTOCOL EFI_HII_STRING_PROTOCOL;
@@ -59,11 +60,12 @@ typedef
EFI_STATUS
(EFIAPI *EFI_HII_NEW_STRING) (
IN CONST EFI_HII_STRING_PROTOCOL *This,
IN CONST EFI_HII_HANDLE PackageList,
OUT EFI_STRING_ID *StringId
IN EFI_HII_HANDLE PackageList,
OUT EFI_STRING_ID *StringId,
IN CONST CHAR8 *Language,
IN CONST CHAR16 *LanguageName, OPTIONAL
IN CONST EFI_STRING String,
IN CONST EFI_FONT_INFO *StringFontInfo OPTIONAL,
IN CONST EFI_FONT_INFO *StringFontInfo OPTIONAL
);
@@ -124,11 +126,11 @@ EFI_STATUS
(EFIAPI *EFI_HII_GET_STRING) (
IN CONST EFI_HII_STRING_PROTOCOL *This,
IN CONST CHAR8 *Language,
IN CONST EFI_HII_HANDLE PackageList,
IN CONST EFI_STRING_ID StringId,
IN EFI_HII_HANDLE PackageList,
IN EFI_STRING_ID StringId,
OUT EFI_STRING String,
IN OUT UINTN StringSize,
OUT EFI_FONT_INFO *StringFontInfo OPTIONAL
IN OUT UINTN *StringSize,
OUT EFI_FONT_INFO **StringFontInfo OPTIONAL
);
/**
@@ -168,10 +170,10 @@ typedef
EFI_STATUS
(EFIAPI *EFI_HII_SET_STRING) (
IN CONST EFI_HII_STRING_PROTOCOL *This,
IN CONST EFI_HII_HANDLE PackageList,
IN CONST EFI_STRING_ID StringId,
IN EFI_HII_HANDLE PackageList,
IN EFI_STRING_ID StringId,
IN CONST CHAR8 *Language,
IN CONST EFI_STRING String,
IN EFI_STRING String,
IN CONST EFI_FONT_INFO *StringFontInfo OPTIONAL
);
@@ -208,10 +210,10 @@ EFI_STATUS
typedef
EFI_STATUS
(EFIAPI *EFI_HII_GET_LANGUAGES) (
IN CONST EFI_HII_DATABASE_PROTOCOL *This,
IN CONST EFI_HII_HANDLE PackageList,
IN CONST EFI_HII_STRING_PROTOCOL *This,
IN EFI_HII_HANDLE PackageList,
IN OUT CHAR8 *Languages,
IN OUT UINTN LanguagesSize
IN OUT UINTN *LanguagesSize
);
@@ -263,12 +265,12 @@ EFI_STATUS
**/
typedef
EFI_STATUS
(EFIAPI *EFI_GET_2ND_LANGUAGES) (
IN CONST EFI_HII_DATABASE_PROTOCOL *This,
IN CONST EFI_HII_HANDLE PackageList,
IN CONST CHAR8 *FirstLanguage;
(EFIAPI *EFI_HII_GET_2ND_LANGUAGES) (
IN CONST EFI_HII_STRING_PROTOCOL *This,
IN EFI_HII_HANDLE PackageList,
IN CONST CHAR8 *FirstLanguage,
IN OUT CHAR8 *SecondLanguages,
IN OUT UINTN SecondLanguagesSize
IN OUT UINTN *SecondLanguagesSize
);
@@ -301,3 +303,4 @@ extern EFI_GUID gEfiHiiStringProtocolGuid;
#endif