Correct the structure's comments to follow doxygen format.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8721 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@ -3,7 +3,7 @@
|
|||||||
Framework IFR is primarily consumed by the EFI presentation engine, and produced by EFI
|
Framework IFR is primarily consumed by the EFI presentation engine, and produced by EFI
|
||||||
internal application and drivers as well as all add-in card option-ROM drivers
|
internal application and drivers as well as all add-in card option-ROM drivers
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -31,7 +31,7 @@
|
|||||||
#define FRAMEWORK_EFI_IFR_CHECKBOX_OP 0x06
|
#define FRAMEWORK_EFI_IFR_CHECKBOX_OP 0x06
|
||||||
#define FRAMEWORK_EFI_IFR_NUMERIC_OP 0x07
|
#define FRAMEWORK_EFI_IFR_NUMERIC_OP 0x07
|
||||||
#define FRAMEWORK_EFI_IFR_PASSWORD_OP 0x08
|
#define FRAMEWORK_EFI_IFR_PASSWORD_OP 0x08
|
||||||
#define FRAMEWORK_EFI_IFR_ONE_OF_OPTION_OP 0x09 // ONEOF OPTION field
|
#define FRAMEWORK_EFI_IFR_ONE_OF_OPTION_OP 0x09 ///< ONEOF OPTION field
|
||||||
#define FRAMEWORK_EFI_IFR_SUPPRESS_IF_OP 0x0A
|
#define FRAMEWORK_EFI_IFR_SUPPRESS_IF_OP 0x0A
|
||||||
#define FRAMEWORK_EFI_IFR_END_FORM_OP 0x0B
|
#define FRAMEWORK_EFI_IFR_END_FORM_OP 0x0B
|
||||||
#define FRAMEWORK_EFI_IFR_HIDDEN_OP 0x0C
|
#define FRAMEWORK_EFI_IFR_HIDDEN_OP 0x0C
|
||||||
@ -47,7 +47,7 @@
|
|||||||
#define FRAMEWORK_EFI_IFR_AND_OP 0x15
|
#define FRAMEWORK_EFI_IFR_AND_OP 0x15
|
||||||
#define FRAMEWORK_EFI_IFR_OR_OP 0x16
|
#define FRAMEWORK_EFI_IFR_OR_OP 0x16
|
||||||
#define FRAMEWORK_EFI_IFR_NOT_OP 0x17
|
#define FRAMEWORK_EFI_IFR_NOT_OP 0x17
|
||||||
#define FRAMEWORK_EFI_IFR_END_IF_OP 0x18 // for endif of inconsistentif, suppressif, grayoutif
|
#define FRAMEWORK_EFI_IFR_END_IF_OP 0x18 ///< for endif of inconsistentif, suppressif, grayoutif
|
||||||
#define FRAMEWORK_EFI_IFR_GRAYOUT_IF_OP 0x19
|
#define FRAMEWORK_EFI_IFR_GRAYOUT_IF_OP 0x19
|
||||||
#define FRAMEWORK_EFI_IFR_DATE_OP 0x1A
|
#define FRAMEWORK_EFI_IFR_DATE_OP 0x1A
|
||||||
#define FRAMEWORK_EFI_IFR_TIME_OP 0x1B
|
#define FRAMEWORK_EFI_IFR_TIME_OP 0x1B
|
||||||
@ -77,7 +77,7 @@
|
|||||||
#define FRAMEWORK_EFI_IFR_FLAG_RESET_REQUIRED 0x10
|
#define FRAMEWORK_EFI_IFR_FLAG_RESET_REQUIRED 0x10
|
||||||
#define FRAMEWORK_EFI_IFR_FLAG_LATE_CHECK 0x20
|
#define FRAMEWORK_EFI_IFR_FLAG_LATE_CHECK 0x20
|
||||||
|
|
||||||
#define EFI_NON_DEVICE_CLASS 0x00 // Useful when you do not want something in the Device Manager
|
#define EFI_NON_DEVICE_CLASS 0x00 ///< Useful when you do not want something in the Device Manager
|
||||||
#define EFI_DISK_DEVICE_CLASS 0x01
|
#define EFI_DISK_DEVICE_CLASS 0x01
|
||||||
#define EFI_VIDEO_DEVICE_CLASS 0x02
|
#define EFI_VIDEO_DEVICE_CLASS 0x02
|
||||||
#define EFI_NETWORK_DEVICE_CLASS 0x04
|
#define EFI_NETWORK_DEVICE_CLASS 0x04
|
||||||
@ -88,16 +88,16 @@
|
|||||||
#define EFI_SETUP_APPLICATION_SUBCLASS 0x00
|
#define EFI_SETUP_APPLICATION_SUBCLASS 0x00
|
||||||
#define EFI_GENERAL_APPLICATION_SUBCLASS 0x01
|
#define EFI_GENERAL_APPLICATION_SUBCLASS 0x01
|
||||||
#define EFI_FRONT_PAGE_SUBCLASS 0x02
|
#define EFI_FRONT_PAGE_SUBCLASS 0x02
|
||||||
#define EFI_SINGLE_USE_SUBCLASS 0x03 // Used to display a single entity and then exit
|
#define EFI_SINGLE_USE_SUBCLASS 0x03 ///< Used to display a single entity and then exit
|
||||||
|
|
||||||
//
|
///
|
||||||
// Used to flag dynamically created op-codes. This is meaningful to the IFR Library set
|
/// Used to flag dynamically created op-codes. This is meaningful to the IFR Library set
|
||||||
// and the browser since we need to distinguish between compiled NV map data and created data.
|
/// and the browser since we need to distinguish between compiled NV map data and created data.
|
||||||
// We do not allow new entries to be created in the NV map dynamically however we still need
|
/// We do not allow new entries to be created in the NV map dynamically however we still need
|
||||||
// to display this information correctly. To dynamically create op-codes and assume that their
|
/// to display this information correctly. To dynamically create op-codes and assume that their
|
||||||
// data will be saved, ensure that the NV starting location they refer to is pre-defined in the
|
/// data will be saved, ensure that the NV starting location they refer to is pre-defined in the
|
||||||
// NV map.
|
/// NV map.
|
||||||
//
|
///
|
||||||
#define FRAMEWORK_EFI_IFR_FLAG_CREATED 128
|
#define FRAMEWORK_EFI_IFR_FLAG_CREATED 128
|
||||||
|
|
||||||
|
|
||||||
@ -118,7 +118,7 @@ typedef struct {
|
|||||||
EFI_PHYSICAL_ADDRESS CallbackHandle;
|
EFI_PHYSICAL_ADDRESS CallbackHandle;
|
||||||
UINT16 Class;
|
UINT16 Class;
|
||||||
UINT16 SubClass;
|
UINT16 SubClass;
|
||||||
UINT16 NvDataSize; // set once, size of the NV data as defined in the script
|
UINT16 NvDataSize; ///< set once, size of the NV data as defined in the script
|
||||||
} FRAMEWORK_EFI_IFR_FORM_SET;
|
} FRAMEWORK_EFI_IFR_FORM_SET;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@ -142,8 +142,8 @@ typedef struct {
|
|||||||
STRING_REF Help;
|
STRING_REF Help;
|
||||||
STRING_REF Text;
|
STRING_REF Text;
|
||||||
STRING_REF TextTwo;
|
STRING_REF TextTwo;
|
||||||
UINT8 Flags; // This is included solely for purposes of interactive/dynamic support.
|
UINT8 Flags; ///< This is included solely for purposes of interactive/dynamic support.
|
||||||
UINT16 Key; // Value to be passed to caller to identify this particular op-code
|
UINT16 Key; ///< Value to be passed to caller to identify this particular op-code
|
||||||
} FRAMEWORK_EFI_IFR_TEXT;
|
} FRAMEWORK_EFI_IFR_TEXT;
|
||||||
|
|
||||||
//
|
//
|
||||||
@ -153,9 +153,9 @@ typedef struct {
|
|||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
UINT16 FormId;
|
UINT16 FormId;
|
||||||
STRING_REF Prompt;
|
STRING_REF Prompt;
|
||||||
STRING_REF Help; // The string Token for the context-help
|
STRING_REF Help; ///< The string Token for the context-help
|
||||||
UINT8 Flags; // This is included solely for purposes of interactive/dynamic support.
|
UINT8 Flags; ///< This is included solely for purposes of interactive/dynamic support.
|
||||||
UINT16 Key; // Value to be passed to caller to identify this particular op-code
|
UINT16 Key; ///< Value to be passed to caller to identify this particular op-code
|
||||||
} FRAMEWORK_EFI_IFR_REF;
|
} FRAMEWORK_EFI_IFR_REF;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@ -172,49 +172,49 @@ typedef struct {
|
|||||||
//
|
//
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
UINT16 QuestionId; // The ID designating what the question is about...
|
UINT16 QuestionId; ///< The ID designating what the question is about...
|
||||||
UINT8 Width; // The Size of the Data being saved
|
UINT8 Width; ///< The Size of the Data being saved
|
||||||
STRING_REF Prompt; // The String Token for the Prompt
|
STRING_REF Prompt; ///< The String Token for the Prompt
|
||||||
STRING_REF Help; // The string Token for the context-help
|
STRING_REF Help; ///< The string Token for the context-help
|
||||||
} FRAMEWORK_EFI_IFR_ONE_OF;
|
} FRAMEWORK_EFI_IFR_ONE_OF;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
UINT16 QuestionId; // The offset in NV for storage of the data
|
UINT16 QuestionId; ///< The offset in NV for storage of the data
|
||||||
UINT8 MaxEntries; // The maximum number of options in the ordered list (=size of NVStore)
|
UINT8 MaxEntries; ///< The maximum number of options in the ordered list (=size of NVStore)
|
||||||
STRING_REF Prompt; // The string token for the prompt
|
STRING_REF Prompt; ///< The string token for the prompt
|
||||||
STRING_REF Help; // The string token for the context-help
|
STRING_REF Help; ///< The string token for the context-help
|
||||||
} FRAMEWORK_EFI_IFR_ORDERED_LIST;
|
} FRAMEWORK_EFI_IFR_ORDERED_LIST;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
UINT16 QuestionId; // The ID designating what the question is about...
|
UINT16 QuestionId; ///< The ID designating what the question is about...
|
||||||
UINT8 Width; // The Size of the Data being saved
|
UINT8 Width; ///< The Size of the Data being saved
|
||||||
STRING_REF Prompt; // The String Token for the Prompt
|
STRING_REF Prompt; ///< The String Token for the Prompt
|
||||||
STRING_REF Help; // The string Token for the context-help
|
STRING_REF Help; ///< The string Token for the context-help
|
||||||
UINT8 Flags; // If non-zero, means that it is the default option
|
UINT8 Flags; ///< If non-zero, means that it is the default option
|
||||||
UINT16 Key; // Value to be passed to caller to identify this particular op-code
|
UINT16 Key; ///< Value to be passed to caller to identify this particular op-code
|
||||||
} FRAMEWORK_EFI_IFR_CHECKBOX, FRAMEWORK_EFI_IFR_CHECK_BOX;
|
} FRAMEWORK_EFI_IFR_CHECKBOX, FRAMEWORK_EFI_IFR_CHECK_BOX;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
STRING_REF Option; // The string token describing the option
|
STRING_REF Option; ///< The string token describing the option
|
||||||
UINT16 Value; // The value associated with this option that is stored in the NVRAM
|
UINT16 Value; ///< The value associated with this option that is stored in the NVRAM
|
||||||
UINT8 Flags; // If non-zero, means that it is the default option
|
UINT8 Flags; ///< If non-zero, means that it is the default option
|
||||||
UINT16 Key; // Value to be passed to caller to identify this particular op-code
|
UINT16 Key; ///< Value to be passed to caller to identify this particular op-code
|
||||||
} FRAMEWORK_EFI_IFR_ONE_OF_OPTION;
|
} FRAMEWORK_EFI_IFR_ONE_OF_OPTION;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
UINT16 QuestionId; // The ID designating what the question is about...
|
UINT16 QuestionId; ///< The ID designating what the question is about...
|
||||||
UINT8 Width; // The Size of the Data being saved
|
UINT8 Width; ///< The Size of the Data being saved
|
||||||
STRING_REF Prompt; // The String Token for the Prompt
|
STRING_REF Prompt; ///< The String Token for the Prompt
|
||||||
STRING_REF Help; // The string Token for the context-help
|
STRING_REF Help; ///< The string Token for the context-help
|
||||||
UINT8 Flags; // This is included solely for purposes of interactive/dynamic support.
|
UINT8 Flags; ///< This is included solely for purposes of interactive/dynamic support.
|
||||||
UINT16 Key; // Value to be passed to caller to identify this particular op-code
|
UINT16 Key; ///< Value to be passed to caller to identify this particular op-code
|
||||||
UINT16 Minimum;
|
UINT16 Minimum;
|
||||||
UINT16 Maximum;
|
UINT16 Maximum;
|
||||||
UINT16 Step; // Zero means manual input, otherwise, arrow selection is called for
|
UINT16 Step; ///< Zero means manual input, otherwise, arrow selection is called for
|
||||||
UINT16 Default;
|
UINT16 Default;
|
||||||
} FRAMEWORK_EFI_IFR_NUMERIC;
|
} FRAMEWORK_EFI_IFR_NUMERIC;
|
||||||
|
|
||||||
@ -240,27 +240,27 @@ typedef struct {
|
|||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
UINT16 QuestionId;// The ID designating what the question is about...
|
UINT16 QuestionId;///< The ID designating what the question is about...
|
||||||
UINT8 Width; // The Size of the Data being saved
|
UINT8 Width; ///< The Size of the Data being saved
|
||||||
STRING_REF Prompt; // The String Token for the Prompt
|
STRING_REF Prompt; ///< The String Token for the Prompt
|
||||||
STRING_REF Help; // The string Token for the context-help
|
STRING_REF Help; ///< The string Token for the context-help
|
||||||
UINT8 Flags; // This is included solely for purposes of interactive/dynamic support.
|
UINT8 Flags; ///< This is included solely for purposes of interactive/dynamic support.
|
||||||
UINT16 Key; // Value to be passed to caller to identify this particular op-code
|
UINT16 Key; ///< Value to be passed to caller to identify this particular op-code
|
||||||
UINT8 MinSize; // Minimum allowable sized password
|
UINT8 MinSize; ///< Minimum allowable sized password
|
||||||
UINT8 MaxSize; // Maximum allowable sized password
|
UINT8 MaxSize; ///< Maximum allowable sized password
|
||||||
UINT16 Encoding;
|
UINT16 Encoding;
|
||||||
} FRAMEWORK_EFI_IFR_PASSWORD;
|
} FRAMEWORK_EFI_IFR_PASSWORD;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
UINT16 QuestionId; // The ID designating what the question is about...
|
UINT16 QuestionId; ///< The ID designating what the question is about...
|
||||||
UINT8 Width; // The Size of the Data being saved
|
UINT8 Width; ///< The Size of the Data being saved
|
||||||
STRING_REF Prompt; // The String Token for the Prompt
|
STRING_REF Prompt; ///< The String Token for the Prompt
|
||||||
STRING_REF Help; // The string Token for the context-help
|
STRING_REF Help; ///< The string Token for the context-help
|
||||||
UINT8 Flags; // This is included solely for purposes of interactive/dynamic support.
|
UINT8 Flags; ///< This is included solely for purposes of interactive/dynamic support.
|
||||||
UINT16 Key; // Value to be passed to caller to identify this particular op-code
|
UINT16 Key; ///< Value to be passed to caller to identify this particular op-code
|
||||||
UINT8 MinSize; // Minimum allowable sized password
|
UINT8 MinSize; ///< Minimum allowable sized password
|
||||||
UINT8 MaxSize; // Maximum allowable sized password
|
UINT8 MaxSize; ///< Maximum allowable sized password
|
||||||
} FRAMEWORK_EFI_IFR_STRING;
|
} FRAMEWORK_EFI_IFR_STRING;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@ -291,30 +291,30 @@ typedef struct {
|
|||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
UINT16 QuestionId; // offset into variable storage
|
UINT16 QuestionId; ///< offset into variable storage
|
||||||
UINT8 Width; // size of variable storage
|
UINT8 Width; ///< size of variable storage
|
||||||
UINT16 Value; // value to compare against
|
UINT16 Value; ///< value to compare against
|
||||||
} FRAMEWORK_EFI_IFR_EQ_ID_VAL;
|
} FRAMEWORK_EFI_IFR_EQ_ID_VAL;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
UINT16 QuestionId; // offset into variable storage
|
UINT16 QuestionId; ///< offset into variable storage
|
||||||
UINT8 Width; // size of variable storage
|
UINT8 Width; ///< size of variable storage
|
||||||
UINT16 ListLength;
|
UINT16 ListLength;
|
||||||
UINT16 ValueList[1];
|
UINT16 ValueList[1];
|
||||||
} FRAMEWORK_EFI_IFR_EQ_ID_LIST;
|
} FRAMEWORK_EFI_IFR_EQ_ID_LIST;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
UINT16 QuestionId1; // offset into variable storage for first value to compare
|
UINT16 QuestionId1; ///< offset into variable storage for first value to compare
|
||||||
UINT8 Width; // size of variable storage (must be same for both)
|
UINT8 Width; ///< size of variable storage (must be same for both)
|
||||||
UINT16 QuestionId2; // offset into variable storage for second value to compare
|
UINT16 QuestionId2; ///< offset into variable storage for second value to compare
|
||||||
} FRAMEWORK_EFI_IFR_EQ_ID_ID;
|
} FRAMEWORK_EFI_IFR_EQ_ID_ID;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
UINT16 VariableId; // offset into variable storage
|
UINT16 VariableId; ///< offset into variable storage
|
||||||
UINT16 Value; // value to compare against
|
UINT16 Value; ///< value to compare against
|
||||||
} FRAMEWORK_EFI_IFR_EQ_VAR_VAL;
|
} FRAMEWORK_EFI_IFR_EQ_VAR_VAL;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@ -346,43 +346,43 @@ typedef struct {
|
|||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
STRING_REF Help;
|
STRING_REF Help;
|
||||||
STRING_REF Text;
|
STRING_REF Text;
|
||||||
STRING_REF TextTwo; // optional text
|
STRING_REF TextTwo; ///< optional text
|
||||||
} FRAMEWORK_EFI_IFR_INVENTORY;
|
} FRAMEWORK_EFI_IFR_INVENTORY;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
EFI_GUID Guid; // GUID for the variable
|
EFI_GUID Guid; ///< GUID for the variable
|
||||||
UINT16 VarId; // variable store ID, as referenced elsewhere in the form
|
UINT16 VarId; ///< variable store ID, as referenced elsewhere in the form
|
||||||
UINT16 Size; // size of the variable storage
|
UINT16 Size; ///< size of the variable storage
|
||||||
} FRAMEWORK_EFI_IFR_VARSTORE;
|
} FRAMEWORK_EFI_IFR_VARSTORE;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
UINT16 VarId; // variable store ID, as referenced elsewhere in the form
|
UINT16 VarId; ///< variable store ID, as referenced elsewhere in the form
|
||||||
} FRAMEWORK_EFI_IFR_VARSTORE_SELECT;
|
} FRAMEWORK_EFI_IFR_VARSTORE_SELECT;
|
||||||
|
|
||||||
//
|
///
|
||||||
// Used for the ideqid VFR statement where two variable stores may be referenced in the
|
/// Used for the ideqid VFR statement where two variable stores may be referenced in the
|
||||||
// same VFR statement.
|
/// same VFR statement.
|
||||||
// A browser should treat this as an FRAMEWORK_EFI_IFR_VARSTORE_SELECT statement and assume that all following
|
/// A browser should treat this as an FRAMEWORK_EFI_IFR_VARSTORE_SELECT statement and assume that all following
|
||||||
// IFR opcodes use the VarId as defined here.
|
/// IFR opcodes use the VarId as defined here.
|
||||||
//
|
///
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
UINT16 VarId; // variable store ID, as referenced elsewhere in the form
|
UINT16 VarId; ///< variable store ID, as referenced elsewhere in the form
|
||||||
UINT16 SecondaryVarId; // variable store ID, as referenced elsewhere in the form
|
UINT16 SecondaryVarId; ///< variable store ID, as referenced elsewhere in the form
|
||||||
} FRAMEWORK_EFI_IFR_VARSTORE_SELECT_PAIR;
|
} FRAMEWORK_EFI_IFR_VARSTORE_SELECT_PAIR;
|
||||||
|
|
||||||
//
|
///
|
||||||
// Save defaults and restore defaults have same structure
|
/// Save defaults and restore defaults have same structure
|
||||||
//
|
///
|
||||||
#define FRAMEWORK_EFI_IFR_RESTORE_DEFAULTS FRAMEWORK_EFI_IFR_SAVE_DEFAULTS
|
#define FRAMEWORK_EFI_IFR_RESTORE_DEFAULTS FRAMEWORK_EFI_IFR_SAVE_DEFAULTS
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
FRAMEWORK_EFI_IFR_OP_HEADER Header;
|
||||||
STRING_REF Title; // The string token for the banner title
|
STRING_REF Title; ///< The string token for the banner title
|
||||||
UINT16 LineNumber; // 1-based line number
|
UINT16 LineNumber; ///< 1-based line number
|
||||||
UINT8 Alignment; // left, center, or right-aligned
|
UINT8 Alignment; ///< left, center, or right-aligned
|
||||||
} FRAMEWORK_EFI_IFR_BANNER;
|
} FRAMEWORK_EFI_IFR_BANNER;
|
||||||
|
|
||||||
#define FRAMEWORK_EFI_IFR_BANNER_ALIGN_LEFT 0
|
#define FRAMEWORK_EFI_IFR_BANNER_ALIGN_LEFT 0
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
This file defines the data structures per HOB specification v0.9.
|
This file defines the data structures per HOB specification v0.9.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -22,9 +22,9 @@
|
|||||||
|
|
||||||
#include <PiPei.h>
|
#include <PiPei.h>
|
||||||
|
|
||||||
//
|
///
|
||||||
// Capsule volume HOB -- identical to a firmware volume
|
/// Capsule volume HOB -- identical to a firmware volume
|
||||||
//
|
///
|
||||||
#define EFI_HOB_TYPE_CV 0x0008
|
#define EFI_HOB_TYPE_CV 0x0008
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
@ -73,8 +73,8 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
EFI_SMM_CPU_IO Read; ///> This service provides the various modalities of memory and I/O read.
|
EFI_SMM_CPU_IO Read; ///< This service provides the various modalities of memory and I/O read.
|
||||||
EFI_SMM_CPU_IO Write; ///> This service provides the various modalities of memory and I/O write.
|
EFI_SMM_CPU_IO Write; ///< This service provides the various modalities of memory and I/O write.
|
||||||
} EFI_SMM_IO_ACCESS;
|
} EFI_SMM_IO_ACCESS;
|
||||||
|
|
||||||
///
|
///
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
GUIDs used for EFI Capsule
|
GUIDs used for EFI Capsule
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -52,10 +52,10 @@
|
|||||||
// a capsule update.
|
// a capsule update.
|
||||||
//
|
//
|
||||||
typedef struct {
|
typedef struct {
|
||||||
UINT64 Length; // length of the data block
|
UINT64 Length; ///< length of the data block
|
||||||
EFI_PHYSICAL_ADDRESS Data; // physical address of the data block
|
EFI_PHYSICAL_ADDRESS Data; ///< physical address of the data block
|
||||||
UINT32 Signature; // CBDS
|
UINT32 Signature; ///< CBDS
|
||||||
UINT32 CheckSum; // to sum this structure to 0
|
UINT32 CheckSum; ///< to sum this structure to 0
|
||||||
} FRAMEWORK_EFI_CAPSULE_BLOCK_DESCRIPTOR;
|
} FRAMEWORK_EFI_CAPSULE_BLOCK_DESCRIPTOR;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
DataHubRecord.h include all data hub sub class GUID defitions.
|
DataHubRecord.h include all data hub sub class GUID defitions.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -33,10 +33,10 @@ extern EFI_GUID gEfiProcessorSubClassGuid;
|
|||||||
|
|
||||||
extern EFI_GUID gEfiCacheSubClassGuid;
|
extern EFI_GUID gEfiCacheSubClassGuid;
|
||||||
|
|
||||||
//
|
///
|
||||||
// The memory subclass belongs to the data class and is identified as the memory
|
/// The memory subclass belongs to the data class and is identified as the memory
|
||||||
// subclass by the GUID.
|
/// subclass by the GUID.
|
||||||
//
|
///
|
||||||
#define EFI_MEMORY_SUBCLASS_GUID \
|
#define EFI_MEMORY_SUBCLASS_GUID \
|
||||||
{0x4E8F4EBB, 0x64B9, 0x4e05, {0x9B, 0x18, 0x4C, 0xFE, 0x49, 0x23, 0x50, 0x97} }
|
{0x4E8F4EBB, 0x64B9, 0x4e05, {0x9B, 0x18, 0x4C, 0xFE, 0x49, 0x23, 0x50, 0x97} }
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Guid used to define the Firmware File System. See the Framework Firmware
|
Guid used to define the Firmware File System. See the Framework Firmware
|
||||||
File System Specification for more details.
|
File System Specification for more details.
|
||||||
|
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -23,9 +23,9 @@
|
|||||||
|
|
||||||
#include <PiPei.h>
|
#include <PiPei.h>
|
||||||
|
|
||||||
//
|
///
|
||||||
// GUIDs defined by the FFS specification.
|
/// GUIDs defined by the FFS specification.
|
||||||
//
|
///
|
||||||
#define EFI_FIRMWARE_FILE_SYSTEM_GUID \
|
#define EFI_FIRMWARE_FILE_SYSTEM_GUID \
|
||||||
{ 0x7A9354D9, 0x0468, 0x444a, {0x81, 0xCE, 0x0B, 0xF6, 0x17, 0xD8, 0x90, 0xDF }}
|
{ 0x7A9354D9, 0x0468, 0x444a, {0x81, 0xCE, 0x0B, 0xF6, 0x17, 0xD8, 0x90, 0xDF }}
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
GUID for use in reserving SMRAM regions.
|
GUID for use in reserving SMRAM regions.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -33,8 +33,8 @@
|
|||||||
// *******************************************************
|
// *******************************************************
|
||||||
//
|
//
|
||||||
typedef struct {
|
typedef struct {
|
||||||
EFI_PHYSICAL_ADDRESS PhysicalStart; // Phsyical location in DRAM
|
EFI_PHYSICAL_ADDRESS PhysicalStart; ///< Phsyical location in DRAM
|
||||||
EFI_PHYSICAL_ADDRESS CpuStart; // Address CPU uses to access the SMI handler
|
EFI_PHYSICAL_ADDRESS CpuStart; ///< Address CPU uses to access the SMI handler
|
||||||
// May or may not match PhysicalStart
|
// May or may not match PhysicalStart
|
||||||
//
|
//
|
||||||
UINT64 PhysicalSize;
|
UINT64 PhysicalSize;
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
This file declares BlockIo PPI used to access block-oriented storage devices
|
This file declares BlockIo PPI used to access block-oriented storage devices
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -132,24 +132,24 @@ EFI_STATUS
|
|||||||
OUT VOID *Buffer
|
OUT VOID *Buffer
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
@par Ppi Description:
|
/// EFI_PEI_RECOVERY_BLOCK_IO_PPI provides the services that are required
|
||||||
EFI_PEI_RECOVERY_BLOCK_IO_PPI provides the services that are required
|
/// to access a block I/O device during PEI recovery boot mode.
|
||||||
to access a block I/O device during PEI recovery boot mode.
|
///
|
||||||
|
|
||||||
@param GetNumberOfBlockDevices
|
|
||||||
Gets the number of block I/O devices that the specific block driver manages.
|
|
||||||
|
|
||||||
@param GetBlockDeviceMediaInfo
|
|
||||||
Gets the specified media information.
|
|
||||||
|
|
||||||
@param ReadBlocks
|
|
||||||
Reads the requested number of blocks from the specified block device.
|
|
||||||
|
|
||||||
**/
|
|
||||||
struct _EFI_PEI_RECOVERY_BLOCK_IO_PPI {
|
struct _EFI_PEI_RECOVERY_BLOCK_IO_PPI {
|
||||||
|
///
|
||||||
|
/// Gets the number of block I/O devices that the specific block driver manages.
|
||||||
|
///
|
||||||
EFI_PEI_GET_NUMBER_BLOCK_DEVICES GetNumberOfBlockDevices;
|
EFI_PEI_GET_NUMBER_BLOCK_DEVICES GetNumberOfBlockDevices;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Gets the specified media information.
|
||||||
|
///
|
||||||
EFI_PEI_GET_DEVICE_MEDIA_INFORMATION GetBlockDeviceMediaInfo;
|
EFI_PEI_GET_DEVICE_MEDIA_INFORMATION GetBlockDeviceMediaInfo;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Reads the requested number of blocks from the specified block device.
|
||||||
|
///
|
||||||
EFI_PEI_READ_BLOCKS ReadBlocks;
|
EFI_PEI_READ_BLOCKS ReadBlocks;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
execution, the PEIM looks for a relevant PPI that is available to execute it, rather than executing it
|
execution, the PEIM looks for a relevant PPI that is available to execute it, rather than executing it
|
||||||
by issuing the native IA-32 instruction.
|
by issuing the native IA-32 instruction.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -110,16 +110,11 @@ EFI_STATUS
|
|||||||
IN EFI_GUID *FvFile OPTIONAL
|
IN EFI_GUID *FvFile OPTIONAL
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
@par Ppi Description:
|
/// This PPI produces functions to interpret and execute the Framework boot script table.
|
||||||
This PPI produces functions to interpret and execute the Framework boot script table.
|
///
|
||||||
|
|
||||||
@param Execute
|
|
||||||
Executes a boot script table.
|
|
||||||
|
|
||||||
**/
|
|
||||||
struct _EFI_PEI_BOOT_SCRIPT_EXECUTER_PPI {
|
struct _EFI_PEI_BOOT_SCRIPT_EXECUTER_PPI {
|
||||||
EFI_PEI_BOOT_SCRIPT_EXECUTE Execute;
|
EFI_PEI_BOOT_SCRIPT_EXECUTE Execute; ///< Executes a boot script table.
|
||||||
};
|
};
|
||||||
|
|
||||||
extern EFI_GUID gEfiPeiBootScriptExecuterPpiGuid;
|
extern EFI_GUID gEfiPeiBootScriptExecuterPpiGuid;
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
module determines the internal search order, with capsule number 1 as the highest load priority and
|
module determines the internal search order, with capsule number 1 as the highest load priority and
|
||||||
number N as the lowest priority.
|
number N as the lowest priority.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -112,24 +112,24 @@ EFI_STATUS
|
|||||||
OUT VOID *Buffer
|
OUT VOID *Buffer
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
@par Ppi Description:
|
/// Presents a standard interface to EFI_PEI_DEVICE_RECOVERY_MODULE_PPI,
|
||||||
Presents a standard interface to EFI_PEI_DEVICE_RECOVERY_MODULE_PPI,
|
/// regardless of the underlying device(s).
|
||||||
regardless of the underlying device(s).
|
///
|
||||||
|
|
||||||
@param GetNumberRecoveryCapsules
|
|
||||||
Returns the number of DXE capsules that were found.
|
|
||||||
|
|
||||||
@param GetRecoveryCapsuleInfo
|
|
||||||
Returns the capsule image type and the size of a given image.
|
|
||||||
|
|
||||||
@param LoadRecoveryCapsule
|
|
||||||
Loads a DXE capsule into memory
|
|
||||||
|
|
||||||
**/
|
|
||||||
struct _EFI_PEI_DEVICE_RECOVERY_MODULE_PPI {
|
struct _EFI_PEI_DEVICE_RECOVERY_MODULE_PPI {
|
||||||
|
///
|
||||||
|
/// Returns the number of DXE capsules that were found.
|
||||||
|
///
|
||||||
EFI_PEI_DEVICE_GET_NUMBER_RECOVERY_CAPSULE GetNumberRecoveryCapsules;
|
EFI_PEI_DEVICE_GET_NUMBER_RECOVERY_CAPSULE GetNumberRecoveryCapsules;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Returns the capsule image type and the size of a given image.
|
||||||
|
///
|
||||||
EFI_PEI_DEVICE_GET_RECOVERY_CAPSULE_INFO GetRecoveryCapsuleInfo;
|
EFI_PEI_DEVICE_GET_RECOVERY_CAPSULE_INFO GetRecoveryCapsuleInfo;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Loads a DXE capsule into memory
|
||||||
|
///
|
||||||
EFI_PEI_DEVICE_LOAD_RECOVERY_CAPSULE LoadRecoveryCapsule;
|
EFI_PEI_DEVICE_LOAD_RECOVERY_CAPSULE LoadRecoveryCapsule;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
This file declares FindFv PPI used to locate FVs that contain PEIMs in PEI
|
This file declares FindFv PPI used to locate FVs that contain PEIMs in PEI
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -55,17 +55,12 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Ppi Description:
|
|
||||||
Hardware mechanisms for locating FVs in a platform vary widely.
|
Hardware mechanisms for locating FVs in a platform vary widely.
|
||||||
EFI_PEI_FIND_FV_PPI serves to abstract this variation so that the
|
EFI_PEI_FIND_FV_PPI serves to abstract this variation so that the
|
||||||
PEI Foundation can remain standard across a wide variety of platforms.
|
PEI Foundation can remain standard across a wide variety of platforms.
|
||||||
|
|
||||||
@param FindFv
|
|
||||||
Service that abstracts the location of additional firmware volumes.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_PEI_FIND_FV_PPI {
|
struct _EFI_PEI_FIND_FV_PPI {
|
||||||
EFI_PEI_FIND_FV_FINDFV FindFv;
|
EFI_PEI_FIND_FV_FINDFV FindFv; ///< Service that abstracts the location of additional firmware volumes.
|
||||||
};
|
};
|
||||||
|
|
||||||
extern EFI_GUID gEfiFindFvPpiGuid;
|
extern EFI_GUID gEfiFindFvPpiGuid;
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
Load image file from fv to memory.
|
Load image file from fv to memory.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -53,16 +53,15 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Ppi Description:
|
|
||||||
This PPI is a pointer to the Load File service. This service will be
|
This PPI is a pointer to the Load File service. This service will be
|
||||||
published by a PEIM.The PEI Foundation will use this service to
|
published by a PEIM.The PEI Foundation will use this service to
|
||||||
launch the known non-XIP PE/COFF PEIM images. This service may
|
launch the known non-XIP PE/COFF PEIM images. This service may
|
||||||
depend upon the presence of the EFI_PEI_PERMANENT_MEMORY_INSTALLED_PPI.
|
depend upon the presence of the EFI_PEI_PERMANENT_MEMORY_INSTALLED_PPI.
|
||||||
**/
|
**/
|
||||||
struct _EFI_PEI_FV_FILE_LOADER_PPI {
|
struct _EFI_PEI_FV_FILE_LOADER_PPI {
|
||||||
///
|
///
|
||||||
/// Loads a PEIM into memory for subsequent execution
|
/// Loads a PEIM into memory for subsequent execution
|
||||||
///
|
///
|
||||||
EFI_PEI_FV_LOAD_FILE FvLoadFile;
|
EFI_PEI_FV_LOAD_FILE FvLoadFile;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
This file declares PciCfg PPI used to access PCI configuration space in PEI
|
This file declares PciCfg PPI used to access PCI configuration space in PEI
|
||||||
|
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -90,20 +90,21 @@ EFI_STATUS
|
|||||||
/**
|
/**
|
||||||
The EFI_PEI_PCI_CFG_PPI interfaces are used to abstract accesses to PCI
|
The EFI_PEI_PCI_CFG_PPI interfaces are used to abstract accesses to PCI
|
||||||
controllers behind a PCI root bridge controller.
|
controllers behind a PCI root bridge controller.
|
||||||
|
|
||||||
@param Read
|
|
||||||
PCI read services. See the Read() function description.
|
|
||||||
|
|
||||||
@param Write
|
|
||||||
PCI write services. See the Write() function description.
|
|
||||||
|
|
||||||
@param Modify
|
|
||||||
PCI read-modify-write services. See the Modify() function description.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_PEI_PCI_CFG_PPI {
|
struct _EFI_PEI_PCI_CFG_PPI {
|
||||||
|
///
|
||||||
|
/// PCI read services. See the Read() function description.
|
||||||
|
///
|
||||||
EFI_PEI_PCI_CFG_PPI_IO Read;
|
EFI_PEI_PCI_CFG_PPI_IO Read;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// PCI write services. See the Write() function description.
|
||||||
|
///
|
||||||
EFI_PEI_PCI_CFG_PPI_IO Write;
|
EFI_PEI_PCI_CFG_PPI_IO Write;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// PCI read-modify-write services. See the Modify() function description.
|
||||||
|
///
|
||||||
EFI_PEI_PCI_CFG_PPI_RW Modify;
|
EFI_PEI_PCI_CFG_PPI_RW Modify;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
storage; as such, a write command to certain technologies would alter the contents of the entire part,
|
storage; as such, a write command to certain technologies would alter the contents of the entire part,
|
||||||
thus making the in situ PEIM execution not follow the required flow.
|
thus making the in situ PEIM execution not follow the required flow.
|
||||||
|
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -106,20 +106,12 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Ppi Description:
|
|
||||||
This PPI provides a lightweight, read-only variant of the full EFI
|
This PPI provides a lightweight, read-only variant of the full EFI
|
||||||
variable services.
|
variable services.
|
||||||
|
|
||||||
@param GetVariable
|
|
||||||
A service to ascertain a given variable name.
|
|
||||||
|
|
||||||
@param GetNextVariableName
|
|
||||||
A service to ascertain a variable based upon a given, known variable
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_PEI_READ_ONLY_VARIABLE_PPI {
|
struct _EFI_PEI_READ_ONLY_VARIABLE_PPI {
|
||||||
EFI_PEI_GET_VARIABLE PeiGetVariable;
|
EFI_PEI_GET_VARIABLE PeiGetVariable; ///< A service to ascertain a given variable name.
|
||||||
EFI_PEI_GET_NEXT_VARIABLE_NAME PeiGetNextVariableName;
|
EFI_PEI_GET_NEXT_VARIABLE_NAME PeiGetNextVariableName; ///< A service to ascertain a variable based upon a given, known variable
|
||||||
};
|
};
|
||||||
|
|
||||||
extern EFI_GUID gEfiPeiReadOnlyVariablePpiGuid;
|
extern EFI_GUID gEfiPeiReadOnlyVariablePpiGuid;
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
This file declares Recovery Module PPI.
|
This file declares Recovery Module PPI.
|
||||||
This PPI is used to find and load the recovery files.
|
This PPI is used to find and load the recovery files.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -51,15 +51,10 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Ppi Description:
|
|
||||||
Finds and loads the recovery files.
|
Finds and loads the recovery files.
|
||||||
|
|
||||||
@param LoadRecoveryCapsule
|
|
||||||
Loads a DXE binary capsule into memory.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_PEI_RECOVERY_MODULE_PPI {
|
struct _EFI_PEI_RECOVERY_MODULE_PPI {
|
||||||
EFI_PEI_LOAD_RECOVERY_CAPSULE LoadRecoveryCapsule;
|
EFI_PEI_LOAD_RECOVERY_CAPSULE LoadRecoveryCapsule; ///< Loads a DXE binary capsule into memory.
|
||||||
};
|
};
|
||||||
|
|
||||||
extern EFI_GUID gEfiPeiRecoveryModulePpiGuid;
|
extern EFI_GUID gEfiPeiRecoveryModulePpiGuid;
|
||||||
|
@ -64,15 +64,14 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Ppi Description:
|
|
||||||
EFI_PEI_S3_RESUME_PPI accomplishes the firmware S3 resume boot
|
EFI_PEI_S3_RESUME_PPI accomplishes the firmware S3 resume boot
|
||||||
path and transfers control to OS.
|
path and transfers control to OS.
|
||||||
**/
|
**/
|
||||||
struct _EFI_PEI_S3_RESUME_PPI {
|
struct _EFI_PEI_S3_RESUME_PPI {
|
||||||
///
|
///
|
||||||
/// Restores the platform to its preboot configuration for an S3 resume and
|
/// Restores the platform to its preboot configuration for an S3 resume and
|
||||||
/// jumps to the OS waking vector.
|
/// jumps to the OS waking vector.
|
||||||
///
|
///
|
||||||
EFI_PEI_S3_RESUME_PPI_RESTORE_CONFIG S3RestoreConfig;
|
EFI_PEI_S3_RESUME_PPI_RESTORE_CONFIG S3RestoreConfig;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -95,16 +95,11 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Ppi Description:
|
|
||||||
This PPI supports encapsulating sections, such as GUIDed sections used to
|
This PPI supports encapsulating sections, such as GUIDed sections used to
|
||||||
authenticate the file encapsulation of other domain-specific wrapping.
|
authenticate the file encapsulation of other domain-specific wrapping.
|
||||||
|
|
||||||
@param GetSection
|
|
||||||
Retrieves a section from within a section file.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_PEI_SECTION_EXTRACTION_PPI {
|
struct _EFI_PEI_SECTION_EXTRACTION_PPI {
|
||||||
EFI_PEI_GET_SECTION PeiGetSection;
|
EFI_PEI_GET_SECTION PeiGetSection; ///< Retrieves a section from within a section file.
|
||||||
};
|
};
|
||||||
|
|
||||||
extern EFI_GUID gEfiPeiSectionExtractionPpiGuid;
|
extern EFI_GUID gEfiPeiSectionExtractionPpiGuid;
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
This file declares Smbus PPI which provides the basic I/O interfaces that a PEIM
|
This file declares Smbus PPI which provides the basic I/O interfaces that a PEIM
|
||||||
uses to access its SMBus controller and the slave devices attached to it.
|
uses to access its SMBus controller and the slave devices attached to it.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -183,29 +183,30 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Ppi Description:
|
|
||||||
Provides the basic I/O interfaces that a PEIM uses to access
|
Provides the basic I/O interfaces that a PEIM uses to access
|
||||||
its SMBus controller and the slave devices attached to it.
|
its SMBus controller and the slave devices attached to it.
|
||||||
|
|
||||||
@param Execute
|
|
||||||
Executes the SMBus operation to an SMBus slave device.
|
|
||||||
|
|
||||||
@param ArpDevice
|
|
||||||
Allows an SMBus 2.0 device(s) to be Address Resolution Protocol (ARP)
|
|
||||||
|
|
||||||
@param GetArpMap
|
|
||||||
Allows a PEIM to retrieve the address that was allocated by the SMBus
|
|
||||||
host controller during enumeration/ARP.
|
|
||||||
|
|
||||||
@param Notify
|
|
||||||
Allows a driver to register for a callback to the SMBus host
|
|
||||||
controller driver when the bus issues a notification to the bus controller PEIM.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_PEI_SMBUS_PPI {
|
struct _EFI_PEI_SMBUS_PPI {
|
||||||
|
///
|
||||||
|
/// Executes the SMBus operation to an SMBus slave device.
|
||||||
|
///
|
||||||
EFI_PEI_SMBUS_PPI_EXECUTE_OPERATION Execute;
|
EFI_PEI_SMBUS_PPI_EXECUTE_OPERATION Execute;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows an SMBus 2.0 device(s) to be Address Resolution Protocol (ARP)
|
||||||
|
///
|
||||||
EFI_PEI_SMBUS_PPI_ARP_DEVICE ArpDevice;
|
EFI_PEI_SMBUS_PPI_ARP_DEVICE ArpDevice;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows a PEIM to retrieve the address that was allocated by the SMBus
|
||||||
|
/// host controller during enumeration/ARP.
|
||||||
|
///
|
||||||
EFI_PEI_SMBUS_PPI_GET_ARP_MAP GetArpMap;
|
EFI_PEI_SMBUS_PPI_GET_ARP_MAP GetArpMap;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows a driver to register for a callback to the SMBus host
|
||||||
|
/// controller driver when the bus issues a notification to the bus controller PEIM.
|
||||||
|
///
|
||||||
EFI_PEI_SMBUS_PPI_NOTIFY Notify;
|
EFI_PEI_SMBUS_PPI_NOTIFY Notify;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -95,7 +95,6 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
The EFI_ACPI_S3_SAVE_PROTOCOL is responsible for preparing all the information that the
|
The EFI_ACPI_S3_SAVE_PROTOCOL is responsible for preparing all the information that the
|
||||||
Framework needs to restore the platform's preboot state during an S3 resume boot. This
|
Framework needs to restore the platform's preboot state during an S3 resume boot. This
|
||||||
information can include the following:
|
information can include the following:
|
||||||
@ -114,16 +113,16 @@ EFI_STATUS
|
|||||||
that the target platform supports an S3 resume and then call EFI_ACPI_S3_SAVE_PROTOCOL
|
that the target platform supports an S3 resume and then call EFI_ACPI_S3_SAVE_PROTOCOL
|
||||||
to save the S3 resume information. The entire Framework boot script table will then be generated,
|
to save the S3 resume information. The entire Framework boot script table will then be generated,
|
||||||
assuming the platform currently is in the preboot state.
|
assuming the platform currently is in the preboot state.
|
||||||
|
|
||||||
@param GetLegacyMemorySize
|
|
||||||
Gets the size of legacy memory below 1 MB that is required for S3 resume.
|
|
||||||
|
|
||||||
@param S3Save
|
|
||||||
Prepare all information for an S3 resume.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_ACPI_S3_SAVE_PROTOCOL {
|
struct _EFI_ACPI_S3_SAVE_PROTOCOL {
|
||||||
|
///
|
||||||
|
/// Gets the size of legacy memory below 1 MB that is required for S3 resume.
|
||||||
|
///
|
||||||
EFI_ACPI_GET_LEGACY_MEMORY_SIZE GetLegacyMemorySize;
|
EFI_ACPI_GET_LEGACY_MEMORY_SIZE GetLegacyMemorySize;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Prepare all information for an S3 resume.
|
||||||
|
///
|
||||||
EFI_ACPI_S3_SAVE S3Save;
|
EFI_ACPI_S3_SAVE S3Save;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -149,17 +149,19 @@ EFI_STATUS
|
|||||||
to publish a set of tables.
|
to publish a set of tables.
|
||||||
**/
|
**/
|
||||||
struct _EFI_ACPI_SUPPORT_PROTOCOL {
|
struct _EFI_ACPI_SUPPORT_PROTOCOL {
|
||||||
///
|
///
|
||||||
/// Returns a table specified by an index if it exists.
|
/// Returns a table specified by an index if it exists.
|
||||||
///
|
///
|
||||||
EFI_ACPI_GET_ACPI_TABLE GetAcpiTable;
|
EFI_ACPI_GET_ACPI_TABLE GetAcpiTable;
|
||||||
///
|
|
||||||
/// Adds, removes, or updates ACPI tables
|
///
|
||||||
///
|
/// Adds, removes, or updates ACPI tables
|
||||||
|
///
|
||||||
EFI_ACPI_SET_ACPI_TABLE SetAcpiTable;
|
EFI_ACPI_SET_ACPI_TABLE SetAcpiTable;
|
||||||
///
|
|
||||||
/// Publishes the ACPI tables.
|
///
|
||||||
///
|
/// Publishes the ACPI tables.
|
||||||
|
///
|
||||||
EFI_ACPI_PUBLISH_TABLES PublishTables;
|
EFI_ACPI_PUBLISH_TABLES PublishTables;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
This protocol is used to store or record various boot scripts into boot
|
This protocol is used to store or record various boot scripts into boot
|
||||||
script tables.
|
script tables.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -85,20 +85,12 @@ EFI_STATUS
|
|||||||
// S3 Save Protocol data structure
|
// S3 Save Protocol data structure
|
||||||
//
|
//
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
The EFI_BOOT_SCRIPT_SAVE_PROTOCOL publishes the Framework boot script abstractions
|
The EFI_BOOT_SCRIPT_SAVE_PROTOCOL publishes the Framework boot script abstractions
|
||||||
to store or record various boot scripts into boot script tables.
|
to store or record various boot scripts into boot script tables.
|
||||||
|
|
||||||
@param Write
|
|
||||||
Writes various boot scripts to a boot script table.
|
|
||||||
|
|
||||||
@param CloseTable
|
|
||||||
Retrieves and closes a script table.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_BOOT_SCRIPT_SAVE_PROTOCOL {
|
struct _EFI_BOOT_SCRIPT_SAVE_PROTOCOL {
|
||||||
EFI_BOOT_SCRIPT_WRITE Write;
|
EFI_BOOT_SCRIPT_WRITE Write; ///< Writes various boot scripts to a boot script table.
|
||||||
EFI_BOOT_SCRIPT_CLOSE_TABLE CloseTable;
|
EFI_BOOT_SCRIPT_CLOSE_TABLE CloseTable; ///< Retrieves and closes a script table.
|
||||||
};
|
};
|
||||||
|
|
||||||
extern EFI_GUID gEfiBootScriptSaveProtocolGuid;
|
extern EFI_GUID gEfiBootScriptSaveProtocolGuid;
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
Volume Protocol also provides mechanisms for determining and modifying some
|
Volume Protocol also provides mechanisms for determining and modifying some
|
||||||
attributes of the firmware volume.
|
attributes of the firmware volume.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -288,38 +288,45 @@ EFI_STATUS
|
|||||||
// Protocol interface structure
|
// Protocol interface structure
|
||||||
//
|
//
|
||||||
struct _EFI_FIRMWARE_VOLUME_PROTOCOL {
|
struct _EFI_FIRMWARE_VOLUME_PROTOCOL {
|
||||||
///
|
///
|
||||||
/// Retrieves volume capabilities and current settings.
|
/// Retrieves volume capabilities and current settings.
|
||||||
///
|
///
|
||||||
FRAMEWORK_EFI_FV_GET_ATTRIBUTES GetVolumeAttributes;
|
FRAMEWORK_EFI_FV_GET_ATTRIBUTES GetVolumeAttributes;
|
||||||
///
|
|
||||||
/// Modifies the current settings of the firmware volume.
|
///
|
||||||
///
|
/// Modifies the current settings of the firmware volume.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_FV_SET_ATTRIBUTES SetVolumeAttributes;
|
FRAMEWORK_EFI_FV_SET_ATTRIBUTES SetVolumeAttributes;
|
||||||
///
|
|
||||||
/// Reads an entire file from the firmware volume.
|
///
|
||||||
///
|
/// Reads an entire file from the firmware volume.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_FV_READ_FILE ReadFile;
|
FRAMEWORK_EFI_FV_READ_FILE ReadFile;
|
||||||
///
|
|
||||||
/// Reads a single section from a file into a buffer.
|
///
|
||||||
///
|
/// Reads a single section from a file into a buffer.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_FV_READ_SECTION ReadSection;
|
FRAMEWORK_EFI_FV_READ_SECTION ReadSection;
|
||||||
///
|
|
||||||
/// Writes an entire file into the firmware volume.
|
///
|
||||||
///
|
/// Writes an entire file into the firmware volume.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_FV_WRITE_FILE WriteFile;
|
FRAMEWORK_EFI_FV_WRITE_FILE WriteFile;
|
||||||
///
|
|
||||||
/// Provides service to allow searching the firmware volume.
|
///
|
||||||
///
|
/// Provides service to allow searching the firmware volume.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_FV_GET_NEXT_FILE GetNextFile;
|
FRAMEWORK_EFI_FV_GET_NEXT_FILE GetNextFile;
|
||||||
///
|
|
||||||
/// Data field that indicates the size in bytes of the Key input buffer for
|
///
|
||||||
/// the GetNextFile() API.
|
/// Data field that indicates the size in bytes of the Key input buffer for
|
||||||
///
|
/// the GetNextFile() API.
|
||||||
UINT32 KeySize;
|
///
|
||||||
///
|
UINT32 KeySize;
|
||||||
/// Handle of the parent firmware volume.
|
|
||||||
///
|
///
|
||||||
|
/// Handle of the parent firmware volume.
|
||||||
|
///
|
||||||
EFI_HANDLE ParentHandle;
|
EFI_HANDLE ParentHandle;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
in packet of data. This will also allow the caller to post messages
|
in packet of data. This will also allow the caller to post messages
|
||||||
into the configuration drivers internal mailbox.
|
into the configuration drivers internal mailbox.
|
||||||
|
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -143,22 +143,21 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
The EFI_FORM_BROWSER_PROTOCOL is the interface to call for drivers to
|
The EFI_FORM_BROWSER_PROTOCOL is the interface to call for drivers to
|
||||||
leverage the EFI configuration driver interface.
|
leverage the EFI configuration driver interface.
|
||||||
|
|
||||||
@param SendForm
|
|
||||||
Provides direction to the configuration driver whether to use the HII
|
|
||||||
database or to use a passed-in set of data. This functions also establishes
|
|
||||||
a pointer to the calling driver's callback interface.
|
|
||||||
|
|
||||||
@param CreatePopUp
|
|
||||||
Routine used to abstract a generic dialog interface and return the
|
|
||||||
selected key or string.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_FORM_BROWSER_PROTOCOL {
|
struct _EFI_FORM_BROWSER_PROTOCOL {
|
||||||
|
///
|
||||||
|
/// Provides direction to the configuration driver whether to use the HII
|
||||||
|
/// database or to use a passed-in set of data. This functions also establishes
|
||||||
|
/// a pointer to the calling driver's callback interface.
|
||||||
|
///
|
||||||
EFI_SEND_FORM SendForm;
|
EFI_SEND_FORM SendForm;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Routine used to abstract a generic dialog interface and return the
|
||||||
|
/// selected key or string.
|
||||||
|
///
|
||||||
EFI_CREATE_POP_UP CreatePopUp;
|
EFI_CREATE_POP_UP CreatePopUp;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
specific drivers which want to export access to custom hardware storage or
|
specific drivers which want to export access to custom hardware storage or
|
||||||
publish IFR which has a requirement to call back the original driver.
|
publish IFR which has a requirement to call back the original driver.
|
||||||
|
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -183,27 +183,16 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
The EFI_FORM_CALLBACK_PROTOCOL is the defined interface for access to
|
The EFI_FORM_CALLBACK_PROTOCOL is the defined interface for access to
|
||||||
custom NVS devices as well as communication of user selections in a more
|
custom NVS devices as well as communication of user selections in a more
|
||||||
interactive environment. This protocol should be published by hardware-specific
|
interactive environment. This protocol should be published by hardware-specific
|
||||||
drivers that want to export access to custom hardware storage or publish IFR
|
drivers that want to export access to custom hardware storage or publish IFR
|
||||||
that has a requirement to call back the original driver.
|
that has a requirement to call back the original driver.
|
||||||
|
|
||||||
@param NvRead
|
|
||||||
The read operation to access the NV data serviced by a hardware-specific driver.
|
|
||||||
|
|
||||||
@param NvWrite
|
|
||||||
The write operation to access the NV data serviced by a hardware-specific driver.
|
|
||||||
|
|
||||||
@param Callback
|
|
||||||
The function that is called from the configuration browser to communicate key value pairs.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_FORM_CALLBACK_PROTOCOL {
|
struct _EFI_FORM_CALLBACK_PROTOCOL {
|
||||||
EFI_NV_READ NvRead;
|
EFI_NV_READ NvRead; ///< The read operation to access the NV data serviced by a hardware-specific driver.
|
||||||
EFI_NV_WRITE NvWrite;
|
EFI_NV_WRITE NvWrite; ///< The write operation to access the NV data serviced by a hardware-specific driver.
|
||||||
EFI_FORM_CALLBACK Callback;
|
EFI_FORM_CALLBACK Callback; ///< The function that is called from the configuration browser to communicate key value pairs.
|
||||||
};
|
};
|
||||||
|
|
||||||
extern EFI_GUID gEfiFormCallbackProtocolGuid;
|
extern EFI_GUID gEfiFormCallbackProtocolGuid;
|
||||||
|
@ -751,87 +751,98 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
The HII Protocol manages the HII database, which is a repository for data
|
The HII Protocol manages the HII database, which is a repository for data
|
||||||
having to do with fonts, strings, forms, keyboards, and other future human
|
having to do with fonts, strings, forms, keyboards, and other future human
|
||||||
interface items.
|
interface items.
|
||||||
|
|
||||||
@param NewPack
|
|
||||||
Extracts the various packs from a package list.
|
|
||||||
|
|
||||||
@param RemovePack
|
|
||||||
Removes a package from the HII database.
|
|
||||||
|
|
||||||
@param FindHandles
|
|
||||||
Determines the handles that are currently active in the database.
|
|
||||||
|
|
||||||
@param ExportDatabase
|
|
||||||
Export the entire contents of the database to a buffer.
|
|
||||||
|
|
||||||
@param TestString
|
|
||||||
Tests if all of the characters in a string have corresponding font characters.
|
|
||||||
|
|
||||||
@param GetGlyph
|
|
||||||
Translates a Unicode character into the corresponding font glyph.
|
|
||||||
|
|
||||||
@param GlyphToBlt
|
|
||||||
Converts a glyph value into a format that is ready for a UGA BLT command.
|
|
||||||
|
|
||||||
@param NewString
|
|
||||||
Allows a new string to be added to an already existing string package.
|
|
||||||
|
|
||||||
@param GetPrimaryLanguages
|
|
||||||
Allows a program to determine the primary languages that are supported
|
|
||||||
on a given handle.
|
|
||||||
|
|
||||||
@param GetSecondaryLanguages
|
|
||||||
Allows a program to determine which secondary languages are supported
|
|
||||||
on a given handle for a given primary language.
|
|
||||||
|
|
||||||
@param GetString
|
|
||||||
Extracts a string from a package that is already registered with the
|
|
||||||
EFI HII database.
|
|
||||||
|
|
||||||
@param ResetString
|
|
||||||
Remove any new strings that were added after the initial string export
|
|
||||||
for this handle.
|
|
||||||
|
|
||||||
@param GetLine
|
|
||||||
Allows a program to extract a part of a string of not more than a given width.
|
|
||||||
|
|
||||||
@param GetForms
|
|
||||||
Allows a program to extract a form or form package that has been previously registered.
|
|
||||||
|
|
||||||
@param GetDefaultImage
|
|
||||||
Allows a program to extract the nonvolatile image that represents the default storage image.
|
|
||||||
|
|
||||||
@param UpdateForm
|
|
||||||
Allows a program to update a previously registered form.
|
|
||||||
|
|
||||||
@param GetKeyboardLayout
|
|
||||||
Allows a program to extract the current keyboard layout.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_HII_PROTOCOL {
|
struct _EFI_HII_PROTOCOL {
|
||||||
|
///
|
||||||
|
/// Extracts the various packs from a package list.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_NEW_PACK NewPack;
|
FRAMEWORK_EFI_HII_NEW_PACK NewPack;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Removes a package from the HII database.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_REMOVE_PACK RemovePack;
|
FRAMEWORK_EFI_HII_REMOVE_PACK RemovePack;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Determines the handles that are currently active in the database.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_FIND_HANDLES FindHandles;
|
FRAMEWORK_EFI_HII_FIND_HANDLES FindHandles;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Export the entire contents of the database to a buffer.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_EXPORT ExportDatabase;
|
FRAMEWORK_EFI_HII_EXPORT ExportDatabase;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Tests if all of the characters in a string have corresponding font characters.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_TEST_STRING TestString;
|
FRAMEWORK_EFI_HII_TEST_STRING TestString;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Translates a Unicode character into the corresponding font glyph.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_GET_GLYPH GetGlyph;
|
FRAMEWORK_EFI_HII_GET_GLYPH GetGlyph;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Converts a glyph value into a format that is ready for a UGA BLT command.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_GLYPH_TO_BLT GlyphToBlt;
|
FRAMEWORK_EFI_HII_GLYPH_TO_BLT GlyphToBlt;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows a new string to be added to an already existing string package.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_NEW_STRING NewString;
|
FRAMEWORK_EFI_HII_NEW_STRING NewString;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows a program to determine the primary languages that are supported
|
||||||
|
/// on a given handle.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_GET_PRI_LANGUAGES GetPrimaryLanguages;
|
FRAMEWORK_EFI_HII_GET_PRI_LANGUAGES GetPrimaryLanguages;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows a program to determine which secondary languages are supported
|
||||||
|
/// on a given handle for a given primary language.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_GET_SEC_LANGUAGES GetSecondaryLanguages;
|
FRAMEWORK_EFI_HII_GET_SEC_LANGUAGES GetSecondaryLanguages;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extracts a string from a package that is already registered with the
|
||||||
|
/// EFI HII database.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_GET_STRING GetString;
|
FRAMEWORK_EFI_HII_GET_STRING GetString;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Remove any new strings that were added after the initial string export
|
||||||
|
/// for this handle.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_RESET_STRINGS ResetStrings;
|
FRAMEWORK_EFI_HII_RESET_STRINGS ResetStrings;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows a program to extract a part of a string of not more than a given width.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_GET_LINE GetLine;
|
FRAMEWORK_EFI_HII_GET_LINE GetLine;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows a program to extract a form or form package that has been previously registered.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_GET_FORMS GetForms;
|
FRAMEWORK_EFI_HII_GET_FORMS GetForms;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows a program to extract the nonvolatile image that represents the default storage image.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_GET_DEFAULT_IMAGE GetDefaultImage;
|
FRAMEWORK_EFI_HII_GET_DEFAULT_IMAGE GetDefaultImage;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows a program to update a previously registered form.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_UPDATE_FORM UpdateForm;
|
FRAMEWORK_EFI_HII_UPDATE_FORM UpdateForm;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows a program to extract the current keyboard layout.
|
||||||
|
///
|
||||||
FRAMEWORK_EFI_HII_GET_KEYBOARD_LAYOUT GetKeyboardLayout;
|
FRAMEWORK_EFI_HII_GET_KEYBOARD_LAYOUT GetKeyboardLayout;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
retrieve the EFI_IDE_CONTROLLER_INIT_PROTOCOL instance that is associated with the
|
retrieve the EFI_IDE_CONTROLLER_INIT_PROTOCOL instance that is associated with the
|
||||||
controller to be managed.
|
controller to be managed.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -31,15 +31,15 @@
|
|||||||
|
|
||||||
#include <PiDxe.h>
|
#include <PiDxe.h>
|
||||||
|
|
||||||
//
|
///
|
||||||
// Global ID for the EFI Platform IDE Protocol GUID
|
/// Global ID for the EFI Platform IDE Protocol GUID
|
||||||
//
|
///
|
||||||
#define EFI_IDE_CONTROLLER_INIT_PROTOCOL_GUID \
|
#define EFI_IDE_CONTROLLER_INIT_PROTOCOL_GUID \
|
||||||
{ 0xa1e37052, 0x80d9, 0x4e65, {0xa3, 0x17, 0x3e, 0x9a, 0x55, 0xc4, 0x3e, 0xc9 } }
|
{ 0xa1e37052, 0x80d9, 0x4e65, {0xa3, 0x17, 0x3e, 0x9a, 0x55, 0xc4, 0x3e, 0xc9 } }
|
||||||
|
|
||||||
//
|
///
|
||||||
// Forward reference for pure ANSI compatability
|
/// Forward reference for pure ANSI compatability
|
||||||
//
|
///
|
||||||
typedef struct _EFI_IDE_CONTROLLER_INIT_PROTOCOL EFI_IDE_CONTROLLER_INIT_PROTOCOL;
|
typedef struct _EFI_IDE_CONTROLLER_INIT_PROTOCOL EFI_IDE_CONTROLLER_INIT_PROTOCOL;
|
||||||
|
|
||||||
//
|
//
|
||||||
@ -133,19 +133,19 @@ typedef struct {
|
|||||||
#pragma pack(1)
|
#pragma pack(1)
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
UINT16 config; // General Configuration
|
UINT16 config; ///< General Configuration
|
||||||
UINT16 cylinders; // Number of Cylinders
|
UINT16 cylinders; ///< Number of Cylinders
|
||||||
UINT16 reserved_2;
|
UINT16 reserved_2;
|
||||||
UINT16 heads; //Number of logical heads
|
UINT16 heads; ///< Number of logical heads
|
||||||
UINT16 vendor_data1;
|
UINT16 vendor_data1;
|
||||||
UINT16 vendor_data2;
|
UINT16 vendor_data2;
|
||||||
UINT16 sectors_per_track;
|
UINT16 sectors_per_track;
|
||||||
UINT16 vendor_specific_7_9[3];
|
UINT16 vendor_specific_7_9[3];
|
||||||
CHAR8 SerialNo[20]; // ASCII
|
CHAR8 SerialNo[20]; ///< ASCII
|
||||||
UINT16 vendor_specific_20_21[2];
|
UINT16 vendor_specific_20_21[2];
|
||||||
UINT16 ecc_bytes_available;
|
UINT16 ecc_bytes_available;
|
||||||
CHAR8 FirmwareVer[8]; // ASCII
|
CHAR8 FirmwareVer[8]; ///< ASCII
|
||||||
CHAR8 ModelName[40]; // ASCII
|
CHAR8 ModelName[40]; ///< ASCII
|
||||||
UINT16 multi_sector_cmd_max_sct_cnt;
|
UINT16 multi_sector_cmd_max_sct_cnt;
|
||||||
UINT16 reserved_48;
|
UINT16 reserved_48;
|
||||||
UINT16 capabilities;
|
UINT16 capabilities;
|
||||||
@ -171,23 +171,23 @@ typedef struct {
|
|||||||
UINT16 reserved_69_79[11];
|
UINT16 reserved_69_79[11];
|
||||||
UINT16 major_version_no;
|
UINT16 major_version_no;
|
||||||
UINT16 minor_version_no;
|
UINT16 minor_version_no;
|
||||||
UINT16 command_set_supported_82; // word 82
|
UINT16 command_set_supported_82; ///< word 82
|
||||||
UINT16 command_set_supported_83; // word 83
|
UINT16 command_set_supported_83; ///< word 83
|
||||||
UINT16 command_set_feature_extn; // word 84
|
UINT16 command_set_feature_extn; ///< word 84
|
||||||
UINT16 command_set_feature_enb_85; // word 85
|
UINT16 command_set_feature_enb_85; ///< word 85
|
||||||
UINT16 command_set_feature_enb_86; // word 86
|
UINT16 command_set_feature_enb_86; ///< word 86
|
||||||
UINT16 command_set_feature_default; // word 87
|
UINT16 command_set_feature_default; ///< word 87
|
||||||
UINT16 ultra_dma_mode; // word 88
|
UINT16 ultra_dma_mode; ///< word 88
|
||||||
UINT16 reserved_89_105[17];
|
UINT16 reserved_89_105[17];
|
||||||
UINT16 phy_logic_sector_support; // word 106
|
UINT16 phy_logic_sector_support; ///< word 106
|
||||||
UINT16 reserved_107_116[10];
|
UINT16 reserved_107_116[10];
|
||||||
UINT16 logic_sector_size_lo; // word 117
|
UINT16 logic_sector_size_lo; ///< word 117
|
||||||
UINT16 logic_sector_size_hi; // word 118
|
UINT16 logic_sector_size_hi; ///< word 118
|
||||||
UINT16 reserved_119_127[9];
|
UINT16 reserved_119_127[9];
|
||||||
UINT16 security_status;
|
UINT16 security_status;
|
||||||
UINT16 vendor_data_129_159[31];
|
UINT16 vendor_data_129_159[31];
|
||||||
UINT16 reserved_160_208[49];
|
UINT16 reserved_160_208[49];
|
||||||
UINT16 alignment_logic_in_phy_blocks; // word 209
|
UINT16 alignment_logic_in_phy_blocks; ///< word 209
|
||||||
UINT16 reserved_210_255[46];
|
UINT16 reserved_210_255[46];
|
||||||
} EFI_ATA_IDENTIFY_DATA;
|
} EFI_ATA_IDENTIFY_DATA;
|
||||||
|
|
||||||
@ -199,7 +199,7 @@ typedef struct {
|
|||||||
//
|
//
|
||||||
#pragma pack(1)
|
#pragma pack(1)
|
||||||
typedef struct {
|
typedef struct {
|
||||||
UINT16 config; // General Configuration
|
UINT16 config; ///< General Configuration
|
||||||
UINT16 obsolete_1;
|
UINT16 obsolete_1;
|
||||||
UINT16 specific_config;
|
UINT16 specific_config;
|
||||||
UINT16 obsolete_3;
|
UINT16 obsolete_3;
|
||||||
@ -207,11 +207,11 @@ typedef struct {
|
|||||||
UINT16 obsolete_6;
|
UINT16 obsolete_6;
|
||||||
UINT16 cfa_reserved_7_8[2];
|
UINT16 cfa_reserved_7_8[2];
|
||||||
UINT16 retired_9;
|
UINT16 retired_9;
|
||||||
CHAR8 SerialNo[20]; // ASCII
|
CHAR8 SerialNo[20]; ///< ASCII
|
||||||
UINT16 retired_20_21[2];
|
UINT16 retired_20_21[2];
|
||||||
UINT16 obsolete_22;
|
UINT16 obsolete_22;
|
||||||
CHAR8 FirmwareVer[8]; // ASCII
|
CHAR8 FirmwareVer[8]; ///< ASCII
|
||||||
CHAR8 ModelName[40]; // ASCII
|
CHAR8 ModelName[40]; ///< ASCII
|
||||||
UINT16 multi_sector_cmd_max_sct_cnt;
|
UINT16 multi_sector_cmd_max_sct_cnt;
|
||||||
UINT16 reserved_48;
|
UINT16 reserved_48;
|
||||||
UINT16 capabilities_49;
|
UINT16 capabilities_49;
|
||||||
@ -425,46 +425,51 @@ EFI_STATUS
|
|||||||
// EFI_IDE_CONTROLLER_INIT_PROTOCOL instances.
|
// EFI_IDE_CONTROLLER_INIT_PROTOCOL instances.
|
||||||
//
|
//
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
Provides the basic interfaces to abstract an IDE controller.
|
Provides the basic interfaces to abstract an IDE controller.
|
||||||
|
|
||||||
@param GetChannelInfo
|
|
||||||
Returns the information about a specific channel.
|
|
||||||
|
|
||||||
@param NotifyPhase
|
|
||||||
The notification that the IDE bus driver is about to enter the
|
|
||||||
specified phase during the enumeration process.
|
|
||||||
|
|
||||||
@param SubmitData
|
|
||||||
Submits the Drive Identify data that was returned by the device.
|
|
||||||
|
|
||||||
@param DisqualifyMode
|
|
||||||
Submits information about modes that should be disqualified.
|
|
||||||
|
|
||||||
@param CalculateMode
|
|
||||||
Calculates and returns the optimum mode for a particular IDE device.
|
|
||||||
|
|
||||||
@param SetTiming
|
|
||||||
Programs the IDE controller hardware to the default timing or per the modes
|
|
||||||
that were returned by the last call to CalculateMode().
|
|
||||||
|
|
||||||
@param EnumAll
|
|
||||||
Set to TRUE if the enumeration group includes all the channels that are
|
|
||||||
produced by this controller. FALSE if an enumeration group consists of
|
|
||||||
only one channel.
|
|
||||||
|
|
||||||
@param ChannelCount
|
|
||||||
The number of channels that are produced by this controller.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_IDE_CONTROLLER_INIT_PROTOCOL {
|
struct _EFI_IDE_CONTROLLER_INIT_PROTOCOL {
|
||||||
|
///
|
||||||
|
/// Returns the information about a specific channel.
|
||||||
|
///
|
||||||
EFI_IDE_CONTROLLER_GET_CHANNEL_INFO GetChannelInfo;
|
EFI_IDE_CONTROLLER_GET_CHANNEL_INFO GetChannelInfo;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The notification that the IDE bus driver is about to enter the
|
||||||
|
/// specified phase during the enumeration process.
|
||||||
|
///
|
||||||
EFI_IDE_CONTROLLER_NOTIFY_PHASE NotifyPhase;
|
EFI_IDE_CONTROLLER_NOTIFY_PHASE NotifyPhase;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Submits the Drive Identify data that was returned by the device.
|
||||||
|
///
|
||||||
EFI_IDE_CONTROLLER_SUBMIT_DATA SubmitData;
|
EFI_IDE_CONTROLLER_SUBMIT_DATA SubmitData;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Submits information about modes that should be disqualified.
|
||||||
|
///
|
||||||
EFI_IDE_CONTROLLER_DISQUALIFY_MODE DisqualifyMode;
|
EFI_IDE_CONTROLLER_DISQUALIFY_MODE DisqualifyMode;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Calculates and returns the optimum mode for a particular IDE device.
|
||||||
|
///
|
||||||
EFI_IDE_CONTROLLER_CALCULATE_MODE CalculateMode;
|
EFI_IDE_CONTROLLER_CALCULATE_MODE CalculateMode;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Programs the IDE controller hardware to the default timing or per the modes
|
||||||
|
/// that were returned by the last call to CalculateMode().
|
||||||
|
///
|
||||||
EFI_IDE_CONTROLLER_SET_TIMING SetTiming;
|
EFI_IDE_CONTROLLER_SET_TIMING SetTiming;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Set to TRUE if the enumeration group includes all the channels that are
|
||||||
|
/// produced by this controller. FALSE if an enumeration group consists of
|
||||||
|
/// only one channel.
|
||||||
|
///
|
||||||
BOOLEAN EnumAll;
|
BOOLEAN EnumAll;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The number of channels that are produced by this controller.
|
||||||
|
///
|
||||||
UINT8 ChannelCount;
|
UINT8 ChannelCount;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
(DXE) driver and must be made available before the Boot Device Selection (BDS) phase. The PCI
|
(DXE) driver and must be made available before the Boot Device Selection (BDS) phase. The PCI
|
||||||
bus driver will look for the presence of this protocol before it begins PCI enumeration.
|
bus driver will look for the presence of this protocol before it begins PCI enumeration.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -71,15 +71,15 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
//
|
///
|
||||||
// Interface structure for the Incompatible PCI Device Support Protocol
|
/// Interface structure for the Incompatible PCI Device Support Protocol
|
||||||
//
|
///
|
||||||
struct _EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_PROTOCOL {
|
struct _EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_PROTOCOL {
|
||||||
///
|
///
|
||||||
/// Returns a list of ACPI resource descriptors that detail any special
|
/// Returns a list of ACPI resource descriptors that detail any special
|
||||||
/// resource configuration requirements if the specified device is a recognized
|
/// resource configuration requirements if the specified device is a recognized
|
||||||
/// incompatible PCI device.
|
/// incompatible PCI device.
|
||||||
///
|
///
|
||||||
EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_CHECK_DEVICE CheckDevice;
|
EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_CHECK_DEVICE CheckDevice;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
You most likely should not use this protocol! Find the EFI way to solve the
|
You most likely should not use this protocol! Find the EFI way to solve the
|
||||||
problem to make your code portable
|
problem to make your code portable
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -470,62 +470,71 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
Abstracts the traditional BIOS from the rest of EFI. The LegacyBoot()
|
Abstracts the traditional BIOS from the rest of EFI. The LegacyBoot()
|
||||||
member function allows the BDS to support booting a traditional OS.
|
member function allows the BDS to support booting a traditional OS.
|
||||||
EFI thunks drivers that make EFI bindings for BIOS INT services use
|
EFI thunks drivers that make EFI bindings for BIOS INT services use
|
||||||
all the other member functions.
|
all the other member functions.
|
||||||
|
|
||||||
@param Int86
|
|
||||||
Performs traditional software INT. See the Int86() function description.
|
|
||||||
|
|
||||||
@param FarCall86
|
|
||||||
Performs a far call into Compatibility16 or traditional OpROM code.
|
|
||||||
|
|
||||||
@param CheckPciRom
|
|
||||||
Checks if a traditional OpROM exists for this device.
|
|
||||||
|
|
||||||
@param InstallPciRom
|
|
||||||
Loads a traditional OpROM in traditional OpROM address space.
|
|
||||||
|
|
||||||
@param LegacyBoot
|
|
||||||
Boots a traditional OS.
|
|
||||||
|
|
||||||
@param UpdateKeyboardLedStatus
|
|
||||||
Updates BDA to reflect the current EFI keyboard LED status.
|
|
||||||
|
|
||||||
@param GetBbsInfo
|
|
||||||
Allows an external agent, such as BIOS Setup, to get the BBS data.
|
|
||||||
|
|
||||||
@param ShadowAllLegacyOproms
|
|
||||||
Causes all legacy OpROMs to be shadowed.
|
|
||||||
|
|
||||||
@param PrepareToBootEfi
|
|
||||||
Performs all actions prior to boot. Used when booting an EFI-aware OS
|
|
||||||
rather than a legacy OS.
|
|
||||||
|
|
||||||
@param GetLegacyRegion
|
|
||||||
Allows EFI to reserve an area in the 0xE0000 or 0xF0000 block.
|
|
||||||
|
|
||||||
@param CopyLegacyRegion
|
|
||||||
Allows EFI to copy data to the area specified by GetLegacyRegion.
|
|
||||||
|
|
||||||
@param BootUnconventionalDevice
|
|
||||||
Allows the user to boot off an unconventional device such as a PARTIES partition.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_LEGACY_BIOS_PROTOCOL {
|
struct _EFI_LEGACY_BIOS_PROTOCOL {
|
||||||
|
///
|
||||||
|
/// Performs traditional software INT. See the Int86() function description.
|
||||||
|
///
|
||||||
EFI_LEGACY_BIOS_INT86 Int86;
|
EFI_LEGACY_BIOS_INT86 Int86;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Performs a far call into Compatibility16 or traditional OpROM code.
|
||||||
|
///
|
||||||
EFI_LEGACY_BIOS_FARCALL86 FarCall86;
|
EFI_LEGACY_BIOS_FARCALL86 FarCall86;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Checks if a traditional OpROM exists for this device.
|
||||||
|
///
|
||||||
EFI_LEGACY_BIOS_CHECK_ROM CheckPciRom;
|
EFI_LEGACY_BIOS_CHECK_ROM CheckPciRom;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Loads a traditional OpROM in traditional OpROM address space.
|
||||||
|
///
|
||||||
EFI_LEGACY_BIOS_INSTALL_ROM InstallPciRom;
|
EFI_LEGACY_BIOS_INSTALL_ROM InstallPciRom;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Boots a traditional OS.
|
||||||
|
///
|
||||||
EFI_LEGACY_BIOS_BOOT LegacyBoot;
|
EFI_LEGACY_BIOS_BOOT LegacyBoot;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Updates BDA to reflect the current EFI keyboard LED status.
|
||||||
|
///
|
||||||
EFI_LEGACY_BIOS_UPDATE_KEYBOARD_LED_STATUS UpdateKeyboardLedStatus;
|
EFI_LEGACY_BIOS_UPDATE_KEYBOARD_LED_STATUS UpdateKeyboardLedStatus;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows an external agent, such as BIOS Setup, to get the BBS data.
|
||||||
|
///
|
||||||
EFI_LEGACY_BIOS_GET_BBS_INFO GetBbsInfo;
|
EFI_LEGACY_BIOS_GET_BBS_INFO GetBbsInfo;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Causes all legacy OpROMs to be shadowed.
|
||||||
|
///
|
||||||
EFI_LEGACY_BIOS_SHADOW_ALL_LEGACY_OPROMS ShadowAllLegacyOproms;
|
EFI_LEGACY_BIOS_SHADOW_ALL_LEGACY_OPROMS ShadowAllLegacyOproms;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Performs all actions prior to boot. Used when booting an EFI-aware OS
|
||||||
|
/// rather than a legacy OS.
|
||||||
|
///
|
||||||
EFI_LEGACY_BIOS_PREPARE_TO_BOOT_EFI PrepareToBootEfi;
|
EFI_LEGACY_BIOS_PREPARE_TO_BOOT_EFI PrepareToBootEfi;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows EFI to reserve an area in the 0xE0000 or 0xF0000 block.
|
||||||
|
///
|
||||||
EFI_LEGACY_BIOS_GET_LEGACY_REGION GetLegacyRegion;
|
EFI_LEGACY_BIOS_GET_LEGACY_REGION GetLegacyRegion;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows EFI to copy data to the area specified by GetLegacyRegion.
|
||||||
|
///
|
||||||
EFI_LEGACY_BIOS_COPY_LEGACY_REGION CopyLegacyRegion;
|
EFI_LEGACY_BIOS_COPY_LEGACY_REGION CopyLegacyRegion;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allows the user to boot off an unconventional device such as a PARTIES partition.
|
||||||
|
///
|
||||||
EFI_LEGACY_BIOS_BOOT_UNCONVENTIONAL_DEVICE BootUnconventionalDevice;
|
EFI_LEGACY_BIOS_BOOT_UNCONVENTIONAL_DEVICE BootUnconventionalDevice;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
This protocol abstracts the PIRQ programming from the generic EFI Compatibility Support Modules (CSMs).
|
This protocol abstracts the PIRQ programming from the generic EFI Compatibility Support Modules (CSMs).
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -103,21 +103,24 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
struct _EFI_LEGACY_INTERRUPT_PROTOCOL {
|
struct _EFI_LEGACY_INTERRUPT_PROTOCOL {
|
||||||
///
|
///
|
||||||
/// Gets the number of PIRQs supported.
|
/// Gets the number of PIRQs supported.
|
||||||
///
|
///
|
||||||
EFI_LEGACY_INTERRUPT_GET_NUMBER_PIRQS GetNumberPirqs;
|
EFI_LEGACY_INTERRUPT_GET_NUMBER_PIRQS GetNumberPirqs;
|
||||||
///
|
|
||||||
/// Gets the PCI bus, device, and function that associated with this protocol.
|
///
|
||||||
///
|
/// Gets the PCI bus, device, and function that associated with this protocol.
|
||||||
|
///
|
||||||
EFI_LEGACY_INTERRUPT_GET_LOCATION GetLocation;
|
EFI_LEGACY_INTERRUPT_GET_LOCATION GetLocation;
|
||||||
///
|
|
||||||
/// Reads the indicated PIRQ register.
|
///
|
||||||
///
|
/// Reads the indicated PIRQ register.
|
||||||
|
///
|
||||||
EFI_LEGACY_INTERRUPT_READ_PIRQ ReadPirq;
|
EFI_LEGACY_INTERRUPT_READ_PIRQ ReadPirq;
|
||||||
///
|
|
||||||
/// Writes to the indicated PIRQ register.
|
///
|
||||||
///
|
/// Writes to the indicated PIRQ register.
|
||||||
|
///
|
||||||
EFI_LEGACY_INTERRUPT_WRITE_PIRQ WritePirq;
|
EFI_LEGACY_INTERRUPT_WRITE_PIRQ WritePirq;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
This protocol manages the legacy memory regions between 0xc0000 - 0xfffff
|
This protocol manages the legacy memory regions between 0xc0000 - 0xfffff
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -112,29 +112,15 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
Abstracts the hardware control of the physical address region 0xC0000-C0xFFFFF
|
Abstracts the hardware control of the physical address region 0xC0000-C0xFFFFF
|
||||||
for the traditional BIOS.
|
for the traditional BIOS.
|
||||||
|
|
||||||
@param Decode
|
|
||||||
Specifies a region for the chipset to decode
|
|
||||||
|
|
||||||
@param Lock
|
|
||||||
Makes the specified OpROM region read only or locked.
|
|
||||||
|
|
||||||
@param BootLock
|
|
||||||
Sets a region to read only and ensures tat flash is locked from
|
|
||||||
inadvertent modification.
|
|
||||||
|
|
||||||
@param Unlock
|
|
||||||
Makes the specified OpROM region read-write or unlocked.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_LEGACY_REGION_PROTOCOL {
|
struct _EFI_LEGACY_REGION_PROTOCOL {
|
||||||
EFI_LEGACY_REGION_DECODE Decode;
|
EFI_LEGACY_REGION_DECODE Decode; ///< Specifies a region for the chipset to decode
|
||||||
EFI_LEGACY_REGION_LOCK Lock;
|
EFI_LEGACY_REGION_LOCK Lock; ///< Makes the specified OpROM region read only or locked.
|
||||||
EFI_LEGACY_REGION_BOOT_LOCK BootLock;
|
EFI_LEGACY_REGION_BOOT_LOCK BootLock; ///< Sets a region to read only and ensures tat flash is locked from
|
||||||
EFI_LEGACY_REGION_UNLOCK UnLock;
|
///< inadvertent modification.
|
||||||
|
EFI_LEGACY_REGION_UNLOCK UnLock; ///< Makes the specified OpROM region read-write or unlocked.
|
||||||
};
|
};
|
||||||
|
|
||||||
extern EFI_GUID gEfiLegacyRegionProtocolGuid;
|
extern EFI_GUID gEfiLegacyRegionProtocolGuid;
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
Provides the basic interfaces to abstract a PCI host bridge resource allocation. This protocol is
|
Provides the basic interfaces to abstract a PCI host bridge resource allocation. This protocol is
|
||||||
mandatory if the system includes PCI devices.
|
mandatory if the system includes PCI devices.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -35,19 +35,19 @@ typedef struct _EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL EFI_PCI_HOST_BR
|
|||||||
// EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_ATTRIBUTES
|
// EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_ATTRIBUTES
|
||||||
//
|
//
|
||||||
|
|
||||||
// If this bit is set, then the PCI Root Bridge does not
|
/// If this bit is set, then the PCI Root Bridge does not
|
||||||
// support separate windows for Non-prefetchable and Prefetchable
|
/// support separate windows for Non-prefetchable and Prefetchable
|
||||||
// memory. A PCI bus driver needs to include requests for Prefetchable
|
/// memory. A PCI bus driver needs to include requests for Prefetchable
|
||||||
// memory in the Non-prefetchable memory pool.
|
/// memory in the Non-prefetchable memory pool.
|
||||||
//
|
///
|
||||||
#define EFI_PCI_HOST_BRIDGE_COMBINE_MEM_PMEM 1
|
#define EFI_PCI_HOST_BRIDGE_COMBINE_MEM_PMEM 1
|
||||||
|
|
||||||
//
|
///
|
||||||
// If this bit is set, then the PCI Root Bridge supports
|
/// If this bit is set, then the PCI Root Bridge supports
|
||||||
// 64 bit memory windows. If this bit is not set,
|
/// 64 bit memory windows. If this bit is not set,
|
||||||
// the PCI bus driver needs to include requests for 64 bit
|
/// the PCI bus driver needs to include requests for 64 bit
|
||||||
// memory address in the corresponding 32 bit memory pool.
|
/// memory address in the corresponding 32 bit memory pool.
|
||||||
//
|
///
|
||||||
#define EFI_PCI_HOST_BRIDGE_MEM64_DECODE 2
|
#define EFI_PCI_HOST_BRIDGE_MEM64_DECODE 2
|
||||||
|
|
||||||
typedef UINT64 EFI_RESOURCE_ALLOCATION_STATUS;
|
typedef UINT64 EFI_RESOURCE_ALLOCATION_STATUS;
|
||||||
@ -63,79 +63,81 @@ typedef UINT64 EFI_RESOURCE_ALLOCATION_STATUS;
|
|||||||
// EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PHASE
|
// EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PHASE
|
||||||
//
|
//
|
||||||
typedef enum {
|
typedef enum {
|
||||||
|
///
|
||||||
|
/// Reset the host bridge PCI apertures and internal data structures.
|
||||||
|
/// PCI enumerator should issue this notification before starting fresh
|
||||||
|
/// enumeration process. Enumeration cannot be restarted after sending
|
||||||
|
/// any other notification such as EfiPciHostBridgeBeginBusAllocation.
|
||||||
|
///
|
||||||
EfiPciHostBridgeBeginEnumeration,
|
EfiPciHostBridgeBeginEnumeration,
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The bus allocation phase is about to begin. No specific action
|
||||||
|
/// is required here. This notification can be used to perform any
|
||||||
|
/// chipset specific programming.
|
||||||
|
///
|
||||||
EfiPciHostBridgeBeginBusAllocation,
|
EfiPciHostBridgeBeginBusAllocation,
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The bus allocation and bus programming phase is complete. No specific
|
||||||
|
/// action is required here. This notification can be used to perform any
|
||||||
|
/// chipset specific programming.
|
||||||
|
///
|
||||||
EfiPciHostBridgeEndBusAllocation,
|
EfiPciHostBridgeEndBusAllocation,
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The resource allocation phase is about to begin.No specific action is
|
||||||
|
/// required here. This notification can be used to perform any chipset specific programming.
|
||||||
|
///
|
||||||
EfiPciHostBridgeBeginResourceAllocation,
|
EfiPciHostBridgeBeginResourceAllocation,
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Allocate resources per previously submitted requests for all the PCI Root
|
||||||
|
/// Bridges. These resource settings are returned on the next call to
|
||||||
|
/// GetProposedResources().
|
||||||
|
///
|
||||||
EfiPciHostBridgeAllocateResources,
|
EfiPciHostBridgeAllocateResources,
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Program the Host Bridge hardware to decode previously allocated resources
|
||||||
|
/// (proposed resources) for all the PCI Root Bridges.
|
||||||
|
///
|
||||||
EfiPciHostBridgeSetResources,
|
EfiPciHostBridgeSetResources,
|
||||||
|
|
||||||
|
///
|
||||||
|
/// De-allocate previously allocated resources previously for all the PCI
|
||||||
|
/// Root Bridges and reset the I/O and memory apertures to initial state.
|
||||||
|
///
|
||||||
EfiPciHostBridgeFreeResources,
|
EfiPciHostBridgeFreeResources,
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The resource allocation phase is completed. No specific action is required
|
||||||
|
/// here. This notification can be used to perform any chipset specific programming.
|
||||||
|
///
|
||||||
EfiPciHostBridgeEndResourceAllocation
|
EfiPciHostBridgeEndResourceAllocation
|
||||||
} EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PHASE;
|
} EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PHASE;
|
||||||
|
|
||||||
//
|
///
|
||||||
// EfiPciHostBridgeBeginEnumeration
|
/// EFI_PCI_CONTROLLER_RESOURCE_ALLOCATION_PHASE
|
||||||
// Reset the host bridge PCI apertures and internal data structures.
|
///
|
||||||
// PCI enumerator should issue this notification before starting fresh
|
|
||||||
// enumeration process. Enumeration cannot be restarted after sending
|
|
||||||
// any other notification such as EfiPciHostBridgeBeginBusAllocation.
|
|
||||||
//
|
|
||||||
// EfiPciHostBridgeBeginBusAllocation
|
|
||||||
// The bus allocation phase is about to begin. No specific action
|
|
||||||
// is required here. This notification can be used to perform any
|
|
||||||
// chipset specific programming.
|
|
||||||
//
|
|
||||||
// EfiPciHostBridgeEndBusAllocation
|
|
||||||
// The bus allocation and bus programming phase is complete. No specific
|
|
||||||
// action is required here. This notification can be used to perform any
|
|
||||||
// chipset specific programming.
|
|
||||||
//
|
|
||||||
// EfiPciHostBridgeBeginResourceAllocation
|
|
||||||
// The resource allocation phase is about to begin.No specific action is
|
|
||||||
// required here. This notification can be used to perform any chipset specific programming.
|
|
||||||
//
|
|
||||||
// EfiPciHostBridgeAllocateResources
|
|
||||||
// Allocate resources per previously submitted requests for all the PCI Root
|
|
||||||
// Bridges. These resource settings are returned on the next call to
|
|
||||||
// GetProposedResources().
|
|
||||||
//
|
|
||||||
// EfiPciHostBridgeSetResources
|
|
||||||
// Program the Host Bridge hardware to decode previously allocated resources
|
|
||||||
// (proposed resources) for all the PCI Root Bridges.
|
|
||||||
//
|
|
||||||
// EfiPciHostBridgeFreeResources
|
|
||||||
// De-allocate previously allocated resources previously for all the PCI
|
|
||||||
// Root Bridges and reset the I/O and memory apertures to initial state.
|
|
||||||
//
|
|
||||||
// EfiPciHostBridgeEndResourceAllocation
|
|
||||||
// The resource allocation phase is completed. No specific action is required
|
|
||||||
// here. This notification can be used to perform any chipset specific programming.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//
|
|
||||||
// EFI_PCI_CONTROLLER_RESOURCE_ALLOCATION_PHASE
|
|
||||||
//
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
|
///
|
||||||
|
/// This notification is only applicable to PCI-PCI bridges and
|
||||||
|
/// indicates that the PCI enumerator is about to begin enumerating
|
||||||
|
/// the bus behind the PCI-PCI Bridge. This notification is sent after
|
||||||
|
/// the primary bus number, the secondary bus number and the subordinate
|
||||||
|
/// bus number registers in the PCI-PCI Bridge are programmed to valid
|
||||||
|
/// (not necessary final) values
|
||||||
|
///
|
||||||
EfiPciBeforeChildBusEnumeration,
|
EfiPciBeforeChildBusEnumeration,
|
||||||
|
|
||||||
|
///
|
||||||
|
/// This notification is sent before the PCI enumerator probes BAR registers
|
||||||
|
/// for every valid PCI function.
|
||||||
|
///
|
||||||
EfiPciBeforeResourceCollection
|
EfiPciBeforeResourceCollection
|
||||||
} EFI_PCI_CONTROLLER_RESOURCE_ALLOCATION_PHASE;
|
} EFI_PCI_CONTROLLER_RESOURCE_ALLOCATION_PHASE;
|
||||||
|
|
||||||
//
|
|
||||||
// EfiPciBeforeChildBusEnumeration
|
|
||||||
// This notification is only applicable to PCI-PCI bridges and
|
|
||||||
// indicates that the PCI enumerator is about to begin enumerating
|
|
||||||
// the bus behind the PCI-PCI Bridge. This notification is sent after
|
|
||||||
// the primary bus number, the secondary bus number and the subordinate
|
|
||||||
// bus number registers in the PCI-PCI Bridge are programmed to valid
|
|
||||||
// (not necessary final) values
|
|
||||||
//
|
|
||||||
// EfiPciBeforeResourceCollection
|
|
||||||
// This notification is sent before the PCI enumerator probes BAR registers
|
|
||||||
// for every valid PCI function.
|
|
||||||
//
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Enter a certain phase of the PCI enumeration process
|
Enter a certain phase of the PCI enumeration process
|
||||||
|
|
||||||
@ -327,47 +329,52 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
Provides the basic interfaces to abstract a PCI host bridge resource allocation.
|
Provides the basic interfaces to abstract a PCI host bridge resource allocation.
|
||||||
|
|
||||||
@param NotifyPhase
|
|
||||||
The notification from the PCI bus enumerator that it is about to enter
|
|
||||||
a certain phase during the enumeration process.
|
|
||||||
|
|
||||||
@param GetNextRootBridge
|
|
||||||
Retrieves the device handle for the next PCI root bridge that is produced by the
|
|
||||||
host bridge to which this instance of the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL is attached.
|
|
||||||
|
|
||||||
@param GetAllocAttributes
|
|
||||||
Retrieves the allocation-related attributes of a PCI root bridge.
|
|
||||||
|
|
||||||
@param StartBusEnumeration
|
|
||||||
Sets up a PCI root bridge for bus enumeration.
|
|
||||||
|
|
||||||
@param SetBusNumbers
|
|
||||||
Sets up the PCI root bridge so that it decodes a specific range of bus numbers.
|
|
||||||
|
|
||||||
@param SubmitResources
|
|
||||||
Submits the resource requirements for the specified PCI root bridge.
|
|
||||||
|
|
||||||
@param GetProposedResources
|
|
||||||
Returns the proposed resource assignment for the specified PCI root bridges.
|
|
||||||
|
|
||||||
@param PreprocessController
|
|
||||||
Provides hooks from the PCI bus driver to every PCI controller
|
|
||||||
(device/function) at various stages of the PCI enumeration process that
|
|
||||||
allow the host bridge driver to preinitialize individual PCI controllers
|
|
||||||
before enumeration.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL {
|
struct _EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL {
|
||||||
|
///
|
||||||
|
/// The notification from the PCI bus enumerator that it is about to enter
|
||||||
|
/// a certain phase during the enumeration process.
|
||||||
|
///
|
||||||
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_NOTIFY_PHASE NotifyPhase;
|
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_NOTIFY_PHASE NotifyPhase;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Retrieves the device handle for the next PCI root bridge that is produced by the
|
||||||
|
/// host bridge to which this instance of the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL is attached.
|
||||||
|
///
|
||||||
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_GET_NEXT_ROOT_BRIDGE GetNextRootBridge;
|
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_GET_NEXT_ROOT_BRIDGE GetNextRootBridge;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Retrieves the allocation-related attributes of a PCI root bridge.
|
||||||
|
///
|
||||||
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_GET_ATTRIBUTES GetAllocAttributes;
|
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_GET_ATTRIBUTES GetAllocAttributes;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Sets up a PCI root bridge for bus enumeration.
|
||||||
|
///
|
||||||
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_START_BUS_ENUMERATION StartBusEnumeration;
|
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_START_BUS_ENUMERATION StartBusEnumeration;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Sets up the PCI root bridge so that it decodes a specific range of bus numbers.
|
||||||
|
///
|
||||||
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_SET_BUS_NUMBERS SetBusNumbers;
|
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_SET_BUS_NUMBERS SetBusNumbers;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Submits the resource requirements for the specified PCI root bridge.
|
||||||
|
///
|
||||||
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_SUBMIT_RESOURCES SubmitResources;
|
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_SUBMIT_RESOURCES SubmitResources;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Returns the proposed resource assignment for the specified PCI root bridges.
|
||||||
|
///
|
||||||
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_GET_PROPOSED_RESOURCES GetProposedResources;
|
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_GET_PROPOSED_RESOURCES GetProposedResources;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Provides hooks from the PCI bus driver to every PCI controller
|
||||||
|
/// (device/function) at various stages of the PCI enumeration process that
|
||||||
|
/// allow the host bridge driver to preinitialize individual PCI controllers
|
||||||
|
/// before enumeration.
|
||||||
|
///
|
||||||
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_PREPROCESS_CONTROLLER PreprocessController;
|
EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_PREPROCESS_CONTROLLER PreprocessController;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
This protocol provides the necessary functionality to initialize the Hot Plug Controllers (HPCs) and
|
This protocol provides the necessary functionality to initialize the Hot Plug Controllers (HPCs) and
|
||||||
the buses that they control. This protocol also provides information regarding resource padding.
|
the buses that they control. This protocol also provides information regarding resource padding.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -143,24 +143,24 @@ EFI_STATUS
|
|||||||
//
|
//
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
This protocol provides the necessary functionality to initialize the
|
This protocol provides the necessary functionality to initialize the
|
||||||
Hot Plug Controllers (HPCs) and the buses that they control. This protocol
|
Hot Plug Controllers (HPCs) and the buses that they control. This protocol
|
||||||
also provides information regarding resource padding.
|
also provides information regarding resource padding.
|
||||||
|
|
||||||
@param GetRootHpcList
|
|
||||||
Returns a list of root HPCs and the buses that they control.
|
|
||||||
|
|
||||||
@param InitializeRootHpc
|
|
||||||
Initializes the specified root HPC.
|
|
||||||
|
|
||||||
@param GetResourcePadding
|
|
||||||
Returns the resource padding that is required by the HPC.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_PCI_HOT_PLUG_INIT_PROTOCOL {
|
struct _EFI_PCI_HOT_PLUG_INIT_PROTOCOL {
|
||||||
|
///
|
||||||
|
/// Returns a list of root HPCs and the buses that they control.
|
||||||
|
///
|
||||||
EFI_GET_ROOT_HPC_LIST GetRootHpcList;
|
EFI_GET_ROOT_HPC_LIST GetRootHpcList;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Initializes the specified root HPC.
|
||||||
|
///
|
||||||
EFI_INITIALIZE_ROOT_HPC InitializeRootHpc;
|
EFI_INITIALIZE_ROOT_HPC InitializeRootHpc;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Returns the resource padding that is required by the HPC.
|
||||||
|
///
|
||||||
EFI_GET_PCI_HOT_PLUG_PADDING GetResourcePadding;
|
EFI_GET_PCI_HOT_PLUG_PADDING GetResourcePadding;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
This interface provides a means of decoding a set of sections into a linked list of
|
This interface provides a means of decoding a set of sections into a linked list of
|
||||||
leaf sections. This provides for an extensible and flexible file format.
|
leaf sections. This provides for an extensible and flexible file format.
|
||||||
|
|
||||||
Copyright (c) 2006 - 2007, Intel Corporation
|
Copyright (c) 2006 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying
|
All rights reserved. This program and the accompanying
|
||||||
materials are licensed and made available under the terms and
|
materials are licensed and made available under the terms and
|
||||||
conditions of the BSD License which accompanies this
|
conditions of the BSD License which accompanies this
|
||||||
@ -140,18 +140,20 @@ EFI_STATUS
|
|||||||
// Protocol definition
|
// Protocol definition
|
||||||
//
|
//
|
||||||
struct _EFI_SECTION_EXTRACTION_PROTOCOL {
|
struct _EFI_SECTION_EXTRACTION_PROTOCOL {
|
||||||
///
|
///
|
||||||
/// Takes a bounded stream of sections and returns a section stream handle.
|
/// Takes a bounded stream of sections and returns a section stream handle.
|
||||||
///
|
///
|
||||||
EFI_OPEN_SECTION_STREAM OpenSectionStream;
|
EFI_OPEN_SECTION_STREAM OpenSectionStream;
|
||||||
///
|
|
||||||
/// Given a section stream handle, retrieves the requested section and
|
///
|
||||||
/// meta-data from the section stream.
|
/// Given a section stream handle, retrieves the requested section and
|
||||||
///
|
/// meta-data from the section stream.
|
||||||
|
///
|
||||||
EFI_GET_SECTION GetSection;
|
EFI_GET_SECTION GetSection;
|
||||||
///
|
|
||||||
/// Given a section stream handle, closes the section stream.
|
///
|
||||||
///
|
/// Given a section stream handle, closes the section stream.
|
||||||
|
///
|
||||||
EFI_CLOSE_SECTION_STREAM CloseSectionStream;
|
EFI_CLOSE_SECTION_STREAM CloseSectionStream;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
type of control. Because of the protected, distinguished class of memory for IA-32
|
type of control. Because of the protected, distinguished class of memory for IA-32
|
||||||
systems, the expectation is that this protocol would be supported only on IA-32 systems.
|
systems, the expectation is that this protocol would be supported only on IA-32 systems.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -128,35 +128,15 @@ EFI_STATUS
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
This protocol is used to control the visibility of the SMRAM on the platform.
|
This protocol is used to control the visibility of the SMRAM on the platform.
|
||||||
|
|
||||||
@param Open
|
|
||||||
Opens the SMRAM.
|
|
||||||
|
|
||||||
@param Close
|
|
||||||
Closes the SMRAM.
|
|
||||||
|
|
||||||
@param Lock
|
|
||||||
Locks the SMRAM.
|
|
||||||
|
|
||||||
@param GetCapabilities
|
|
||||||
Gets information on possible SMRAM regions.
|
|
||||||
|
|
||||||
@param LockState
|
|
||||||
Indicates the current state of the SMRAM. Set to TRUE if any region is locked.
|
|
||||||
|
|
||||||
@param OpenState
|
|
||||||
Indicates the current state of the SMRAM. Set to TRUE if any region is open.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_SMM_ACCESS_PROTOCOL {
|
struct _EFI_SMM_ACCESS_PROTOCOL {
|
||||||
EFI_SMM_OPEN Open;
|
EFI_SMM_OPEN Open; ///< Opens the SMRAM.
|
||||||
EFI_SMM_CLOSE Close;
|
EFI_SMM_CLOSE Close; ///< Closes the SMRAM.
|
||||||
EFI_SMM_LOCK Lock;
|
EFI_SMM_LOCK Lock; ///< Locks the SMRAM.
|
||||||
EFI_SMM_CAPABILITIES GetCapabilities;
|
EFI_SMM_CAPABILITIES GetCapabilities; ///< Gets information on possible SMRAM regions.
|
||||||
BOOLEAN LockState;
|
BOOLEAN LockState; ///< Indicates the current state of the SMRAM. Set to TRUE if any region is locked.
|
||||||
BOOLEAN OpenState;
|
BOOLEAN OpenState; ///< Indicates the current state of the SMRAM. Set to TRUE if any region is open.
|
||||||
};
|
};
|
||||||
|
|
||||||
extern EFI_GUID gEfiSmmAccessProtocolGuid;
|
extern EFI_GUID gEfiSmmAccessProtocolGuid;
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
The EFI_SMM_ICHN_DISPATCH_PROTOCOL provides the ability to install child handlers for
|
The EFI_SMM_ICHN_DISPATCH_PROTOCOL provides the ability to install child handlers for
|
||||||
the given event types.
|
the given event types.
|
||||||
|
|
||||||
Copyright (c) 2008, Intel Corporation
|
Copyright (c) 2008 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -180,19 +180,11 @@ EFI_STATUS
|
|||||||
// Interface structure for the SMM ICHN specific SMI Dispatch Protocol
|
// Interface structure for the SMM ICHN specific SMI Dispatch Protocol
|
||||||
//
|
//
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
Provides the parent dispatch service for a given SMI source generator.
|
Provides the parent dispatch service for a given SMI source generator.
|
||||||
|
|
||||||
@param Register
|
|
||||||
Installs a child service to be dispatched by this protocol.
|
|
||||||
|
|
||||||
@param UnRegister
|
|
||||||
Removes a child service dispatched by this protocol.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_SMM_ICHN_DISPATCH_PROTOCOL {
|
struct _EFI_SMM_ICHN_DISPATCH_PROTOCOL {
|
||||||
EFI_SMM_ICHN_REGISTER Register;
|
EFI_SMM_ICHN_REGISTER Register; ///< Installs a child service to be dispatched by this protocol.
|
||||||
EFI_SMM_ICHN_UNREGISTER UnRegister;
|
EFI_SMM_ICHN_UNREGISTER UnRegister; ///< Removes a child service dispatched by this protocol.
|
||||||
};
|
};
|
||||||
|
|
||||||
extern EFI_GUID gEfiSmmIchnDispatchProtocolGuid;
|
extern EFI_GUID gEfiSmmIchnDispatchProtocolGuid;
|
||||||
|
@ -156,22 +156,22 @@ EFI_STATUS
|
|||||||
// Interface structure for the SMM Periodic Timer Dispatch Protocol
|
// Interface structure for the SMM Periodic Timer Dispatch Protocol
|
||||||
//
|
//
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
Provides the parent dispatch service for the periodical timer SMI source generator.
|
Provides the parent dispatch service for the periodical timer SMI source generator.
|
||||||
|
|
||||||
@param Register
|
|
||||||
Installs a child service to be dispatched by this protocol.
|
|
||||||
|
|
||||||
@param UnRegister
|
|
||||||
Removes a child service dispatched by this protocol.
|
|
||||||
|
|
||||||
@param GetNextShorterInterval
|
|
||||||
Returns the next SMI tick period that is supported by the chipset.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_SMM_PERIODIC_TIMER_DISPATCH_PROTOCOL {
|
struct _EFI_SMM_PERIODIC_TIMER_DISPATCH_PROTOCOL {
|
||||||
|
///
|
||||||
|
/// Installs a child service to be dispatched by this protocol.
|
||||||
|
///
|
||||||
EFI_SMM_PERIODIC_TIMER_REGISTER Register;
|
EFI_SMM_PERIODIC_TIMER_REGISTER Register;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Removes a child service dispatched by this protocol.
|
||||||
|
///
|
||||||
EFI_SMM_PERIODIC_TIMER_UNREGISTER UnRegister;
|
EFI_SMM_PERIODIC_TIMER_UNREGISTER UnRegister;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Returns the next SMI tick period that is supported by the chipset.
|
||||||
|
///
|
||||||
EFI_SMM_PERIODIC_TIMER_INTERVAL GetNextShorterInterval;
|
EFI_SMM_PERIODIC_TIMER_INTERVAL GetNextShorterInterval;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
Provides the parent dispatch service for a given SMI source generator.
|
Provides the parent dispatch service for a given SMI source generator.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -123,23 +123,24 @@ EFI_STATUS
|
|||||||
// Interface structure for the SMM Software SMI Dispatch Protocol
|
// Interface structure for the SMM Software SMI Dispatch Protocol
|
||||||
//
|
//
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
Provides the parent dispatch service for a given SMI source generator.
|
Provides the parent dispatch service for a given SMI source generator.
|
||||||
**/
|
**/
|
||||||
struct _EFI_SMM_SW_DISPATCH_PROTOCOL {
|
struct _EFI_SMM_SW_DISPATCH_PROTOCOL {
|
||||||
///
|
///
|
||||||
/// Installs a child service to be dispatched by this protocol.
|
/// Installs a child service to be dispatched by this protocol.
|
||||||
///
|
///
|
||||||
EFI_SMM_SW_REGISTER Register;
|
EFI_SMM_SW_REGISTER Register;
|
||||||
///
|
|
||||||
/// Removes a child service dispatched by this protocol.
|
///
|
||||||
///
|
/// Removes a child service dispatched by this protocol.
|
||||||
|
///
|
||||||
EFI_SMM_SW_UNREGISTER UnRegister;
|
EFI_SMM_SW_UNREGISTER UnRegister;
|
||||||
///
|
|
||||||
/// A read-only field that describes the maximum value that can be used
|
///
|
||||||
/// in the EFI_SMM_SW_DISPATCH_PROTOCOL.Register() service.
|
/// A read-only field that describes the maximum value that can be used
|
||||||
///
|
/// in the EFI_SMM_SW_DISPATCH_PROTOCOL.Register() service.
|
||||||
UINTN MaximumSwiValue;
|
///
|
||||||
|
UINTN MaximumSwiValue;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern EFI_GUID gEfiSmmSwDispatchProtocolGuid;
|
extern EFI_GUID gEfiSmmSwDispatchProtocolGuid;
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
Provides the parent dispatch service for a given Sx-state source generator.
|
Provides the parent dispatch service for a given Sx-state source generator.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -140,19 +140,11 @@ EFI_STATUS
|
|||||||
// Interface structure for the SMM Child Dispatch Protocol
|
// Interface structure for the SMM Child Dispatch Protocol
|
||||||
//
|
//
|
||||||
/**
|
/**
|
||||||
@par Protocol Description:
|
|
||||||
Provides the parent dispatch service for a given Sx-state source generator.
|
Provides the parent dispatch service for a given Sx-state source generator.
|
||||||
|
|
||||||
@param Register
|
|
||||||
Installs a child service to be dispatched by this protocol.
|
|
||||||
|
|
||||||
@param UnRegister
|
|
||||||
Removes a child service dispatched by this protocol.
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
struct _EFI_SMM_SX_DISPATCH_PROTOCOL {
|
struct _EFI_SMM_SX_DISPATCH_PROTOCOL {
|
||||||
EFI_SMM_SX_REGISTER Register;
|
EFI_SMM_SX_REGISTER Register; ///< Installs a child service to be dispatched by this protocol.
|
||||||
EFI_SMM_SX_UNREGISTER UnRegister;
|
EFI_SMM_SX_UNREGISTER UnRegister; ///< Removes a child service dispatched by this protocol.
|
||||||
};
|
};
|
||||||
|
|
||||||
extern EFI_GUID gEfiSmmSxDispatchProtocolGuid;
|
extern EFI_GUID gEfiSmmSxDispatchProtocolGuid;
|
||||||
|
Reference in New Issue
Block a user