Grammatical and disclaimer changes (does not follow internal C coding stds.)

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10249 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
myronporter 2010-03-16 01:53:11 +00:00
parent a89fa50ccf
commit f22f941ed2
57 changed files with 1589 additions and 1497 deletions

View File

@ -2,14 +2,14 @@
This file contains the boot script defintions that are shared between the
Boot Script Executor PPI and the Boot Script Save Protocol.
Copyright (c) 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
@ -18,28 +18,28 @@
#include <PiDxe.h>
///
/// The framework implementation defines follow opcode which is different from PI specification:
/// To add FRAMEWORK_ prefix to avoid naming conflict.
/// The framework implementation defines follow opcode that are different from the PI specification:
/// Add FRAMEWORK_ prefix to avoid naming conflict.
///
/// S3 Boot Script Table identifier
/// S3 Boot Script Table identifier.
///
#define FRAMEWORK_EFI_ACPI_S3_RESUME_SCRIPT_TABLE 0x00
///
/// The opcode is to add a record for memory reads of the memory location and continues when the
/// exit criteria is satisfied or after a defined duration.
/// The opcode is used to add a record for memory reads of the memory location and continues when the
/// exit criteria is satisfied, or after a defined duration.
///
#define FRAMEWORK_EFI_BOOT_SCRIPT_MEM_POLL_OPCODE 0x09
///
/// The opcode is to add a record for dispatching specified arbitrary code into a specified
/// The opcode is used to add a record for dispatching specified arbitrary code into a specified
/// boot script table.
///
#define FRAMEWORK_EFI_BOOT_SCRIPT_DISPATCH_2_OPCODE 0x0D
///
/// The opcode indicate the start of the boot script table.
/// The opcode indicates the start of the boot script table.
///
#define FRAMEWORK_EFI_BOOT_SCRIPT_TABLE_OPCODE 0xAA
///
/// The opcode indicate the end of the boot script table.
/// The opcode indicates the end of the boot script table.
///
#define FRAMEWORK_EFI_BOOT_SCRIPT_TERMINATE_OPCODE 0xFF

View File

@ -2,14 +2,14 @@
Include file for definitions in the Intel Platform Innovation Framework for EFI
Driver Execution Environment Core Interface Specification (DXE CIS) Version 0.91.
Copyright (c) 2007 - 2010, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
@ -23,7 +23,7 @@
the SMM Services Table to execute a procedure on enabled APs. The context
the AP should use durng execution is specified by Buffer.
@param[in] Buffer Pointer to the procedure's argument.
@param[in] Buffer The pointer to the procedure's argument.
**/
typedef
@ -33,7 +33,7 @@ VOID
);
///
/// Framework EFI Runtime Services Table as extension to EFI 1.10 Runtime Services Table
/// The Framework EFI Runtime Services Table as an extension to the EFI 1.10 Runtime Services Table.
///
typedef struct {
//
@ -64,14 +64,14 @@ typedef struct {
EFI_GET_NEXT_HIGH_MONO_COUNT GetNextHighMonotonicCount;
EFI_RESET_SYSTEM ResetSystem;
///
/// Framework extension to EFI 1.10 runtime table
/// It was moved to a protocol to not conflict with UEFI 2.0
/// A Framework extension to the EFI 1.10 runtime table.
/// It was moved to a protocol to avoid conflict with UEFI 2.0.
///
EFI_REPORT_STATUS_CODE ReportStatusCode;
} FRAMEWORK_EFI_RUNTIME_SERVICES;
///
/// Framework EFI Boot Services Table which comply with DxeCis spec.
/// The Framework EFI Boot Services Table. Complies with the DxeCis specification.
///
typedef struct {
///

View File

@ -1,19 +1,19 @@
/** @file
Defines data structure that is the volume header found at the beginning of
Defines the data structure that is the volume header found at the beginning of
all firmware volumes that are either memory mapped or have an
associated FirmwareVolumeBlock protocol.
Copyright (c) 2006-2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
These definitions are from Firmware Volume Block Spec 0.9.
These definitions are from the Firmware Volume Block Spec 0.9.
**/
@ -21,7 +21,7 @@
#define __EFI_FIRMWARE_VOLUME_HEADER_H__
///
/// Firmware Volume Block Attributes bit definitions
/// Firmware Volume Block Attributes bit definitions.
///@{
#define EFI_FVB_READ_DISABLED_CAP 0x00000001
#define EFI_FVB_READ_ENABLED_CAP 0x00000002
@ -65,9 +65,9 @@
EFI_FVB_LOCK_CAP \
)
/** A parameterized macro defining a boolean expression which tests the state of a particular bit.
/** A parameterized macro defining a boolean expression that tests the state of a particular bit.
*
* @param FvbAttributes Indicates test for CLEAR if EFI_FVB_ERASE_POLARITY is 1, else test for SET
* @param FvbAttributes Indicates a test for CLEAR if EFI_FVB_ERASE_POLARITY is 1, else test for SET.
*
* @param TestAttributes The set of bits to test.
*
@ -79,7 +79,7 @@
((FvbAttributes & EFI_FVB_ERASE_POLARITY) ? (((~TestAttributes) & Bit) == Bit) : ((TestAttributes & Bit) == Bit)) \
)
/// A simple macro defined as the set of all FV Block Attribute bits which indicate status.
/// A simple macro defined as the set of all FV Block Attribute bits that indicate status.
#define EFI_FVB_STATUS (EFI_FVB_READ_STATUS | EFI_FVB_WRITE_STATUS | EFI_FVB_LOCK_STATUS)
#endif /* __EFI_FIRMWARE_VOLUME_HEADER_H__ */

View File

@ -3,17 +3,17 @@
images loaded via the FirmwareVolume protocol. The Firmware Volume specification
is the basis for these definitions.
Copyright (c) 2006, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
These definitions are from Firmware Volume Spec 0.9.
These definitions are from the Firmware Volume Spec 0.9.
**/

View File

@ -3,17 +3,17 @@
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
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
These definitions are from Framework Specification HII 0.92.
These definitions are from the Framework Specification HII 0.92.
**/
@ -33,7 +33,7 @@ typedef UINT16 STRING_REF;
#define FRAMEWORK_EFI_IFR_CHECKBOX_OP 0x06
#define FRAMEWORK_EFI_IFR_NUMERIC_OP 0x07
#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 EFI_IFR_END_FORM_OP 0x0B
#define EFI_IFR_HIDDEN_OP 0x0C
@ -49,7 +49,7 @@ typedef UINT16 STRING_REF;
#define FRAMEWORK_EFI_IFR_AND_OP 0x15
#define FRAMEWORK_EFI_IFR_OR_OP 0x16
#define FRAMEWORK_EFI_IFR_NOT_OP 0x17
#define EFI_IFR_END_IF_OP 0x18 ///< for endif of inconsistentif, suppressif, grayoutif
#define EFI_IFR_END_IF_OP 0x18 ///< For endif of inconsistentif, suppressif, grayoutif.
#define EFI_IFR_GRAYOUT_IF_OP 0x19
#define FRAMEWORK_EFI_IFR_DATE_OP 0x1A
#define FRAMEWORK_EFI_IFR_TIME_OP 0x1B
@ -79,7 +79,7 @@ typedef UINT16 STRING_REF;
#define EFI_IFR_FLAG_RESET_REQUIRED 0x10
#define 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_VIDEO_DEVICE_CLASS 0x02
#define EFI_NETWORK_DEVICE_CLASS 0x04
@ -90,11 +90,11 @@ typedef UINT16 STRING_REF;
#define EFI_SETUP_APPLICATION_SUBCLASS 0x00
#define EFI_GENERAL_APPLICATION_SUBCLASS 0x01
#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
/// and the browser since we need to distinguish between compiled NV map data and created data.
/// and the browser because 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, but we do need
/// 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
@ -120,7 +120,7 @@ typedef struct {
EFI_PHYSICAL_ADDRESS CallbackHandle;
UINT16 Class;
UINT16 SubClass;
UINT16 NvDataSize; ///< set once, size of the NV data as defined in the script
UINT16 NvDataSize; ///< Set once; the size of the NV data as defined in the script.
} FRAMEWORK_EFI_IFR_FORM_SET;
typedef struct {
@ -145,7 +145,7 @@ typedef struct {
STRING_REF Text;
STRING_REF TextTwo;
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; ///< The value to be passed to the caller to identify this particular op-code.
} FRAMEWORK_EFI_IFR_TEXT;
//
@ -155,9 +155,9 @@ typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
UINT16 FormId;
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.
UINT16 Key; ///< Value to be passed to caller to identify this particular op-code
UINT16 Key; ///< The value to be passed to the caller to identify this particular op-code.
} FRAMEWORK_EFI_IFR_REF;
typedef struct {
@ -175,48 +175,48 @@ typedef struct {
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
UINT16 QuestionId; ///< The ID designating what the question is about...
UINT8 Width; ///< The Size of the Data being saved
STRING_REF Prompt; ///< The String Token for the Prompt
STRING_REF Help; ///< The string Token for the context-help
UINT8 Width; ///< The Size of the Data being saved.
STRING_REF Prompt; ///< The String Token for the Prompt.
STRING_REF Help; ///< The string Token for the context-help.
} FRAMEWORK_EFI_IFR_ONE_OF;
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
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)
STRING_REF Prompt; ///< The string token for the prompt
STRING_REF Help; ///< The string token for the context-help
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).
STRING_REF Prompt; ///< The string token for the prompt.
STRING_REF Help; ///< The string token for the context-help.
} FRAMEWORK_EFI_IFR_ORDERED_LIST;
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
UINT16 QuestionId; ///< The ID designating what the question is about...
UINT8 Width; ///< The Size of the Data being saved
STRING_REF Prompt; ///< The String Token for the Prompt
STRING_REF Help; ///< The string Token for the context-help
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
UINT8 Width; ///< The Size of the Data being saved.
STRING_REF Prompt; ///< The String Token for the Prompt.
STRING_REF Help; ///< The string Token for the context-help.
UINT8 Flags; ///< If non-zero, it means that it is the default option.
UINT16 Key; ///< Value to be passed to caller to identify this particular op-code.
} FRAMEWORK_EFI_IFR_CHECKBOX, EFI_IFR_CHECK_BOX;
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
STRING_REF Option; ///< The string token describing the option
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
UINT16 Key; ///< Value to be passed to caller to identify this particular op-code
STRING_REF Option; ///< The string token describing the option.
UINT16 Value; ///< The value associated with this option that is stored in the NVRAM.
UINT8 Flags; ///< If non-zero, it means that it is the default option.
UINT16 Key; ///< Value to be passed to caller to identify this particular op-code.
} FRAMEWORK_EFI_IFR_ONE_OF_OPTION;
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
UINT16 QuestionId; ///< The ID designating what the question is about...
UINT8 Width; ///< The Size of the Data being saved
STRING_REF Prompt; ///< The String Token for the Prompt
STRING_REF Help; ///< The string Token for the context-help
UINT8 Width; ///< The Size of the Data being saved.
STRING_REF Prompt; ///< The String Token for the Prompt.
STRING_REF Help; ///< The string Token for the context-help.
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; ///< The value to be passed to caller to identify this particular op-code.
UINT16 Minimum;
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;
} FRAMEWORK_EFI_IFR_NUMERIC;
@ -243,26 +243,26 @@ typedef struct {
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
UINT16 QuestionId;///< The ID designating what the question is about...
UINT8 Width; ///< The Size of the Data being saved
STRING_REF Prompt; ///< The String Token for the Prompt
STRING_REF Help; ///< The string Token for the context-help
UINT8 Width; ///< The Size of the Data being saved.
STRING_REF Prompt; ///< The String Token for the Prompt.
STRING_REF Help; ///< The string Token for the context-help.
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
UINT8 MinSize; ///< Minimum allowable sized password
UINT8 MaxSize; ///< Maximum allowable sized password
UINT16 Key; ///< The value to be passed to caller to identify this particular op-code.
UINT8 MinSize; ///< Minimum allowable sized password.
UINT8 MaxSize; ///< Maximum allowable sized password.
UINT16 Encoding;
} FRAMEWORK_EFI_IFR_PASSWORD;
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
UINT16 QuestionId; ///< The ID designating what the question is about...
UINT8 Width; ///< The Size of the Data being saved
STRING_REF Prompt; ///< The String Token for the Prompt
STRING_REF Help; ///< The string Token for the context-help
UINT8 Width; ///< The Size of the Data being saved.
STRING_REF Prompt; ///< The String Token for the Prompt.
STRING_REF Help; ///< The string Token for the context-help.
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
UINT8 MinSize; ///< Minimum allowable sized password
UINT8 MaxSize; ///< Maximum allowable sized password
UINT16 Key; ///< The value to be passed to caller to identify this particular op-code.
UINT8 MinSize; ///< Minimum allowable sized password.
UINT8 MaxSize; ///< Maximum allowable sized password.
} FRAMEWORK_EFI_IFR_STRING;
typedef struct {
@ -277,7 +277,7 @@ typedef struct {
///
/// Inconsistent with specification here:
/// Following defintion may not comply with Framework Specification HII 0.92. To
/// The following defintion may not comply with Framework Specification HII 0.92. To
/// keep the inconsistant is for implementation needed.
///@{
typedef struct {
@ -298,30 +298,30 @@ typedef struct {
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
UINT16 QuestionId; ///< offset into variable storage
UINT8 Width; ///< size of variable storage
UINT16 Value; ///< value to compare against
UINT16 QuestionId; ///< The offset into variable storage.
UINT8 Width; ///< The size of variable storage.
UINT16 Value; ///< The value to compare against.
} FRAMEWORK_EFI_IFR_EQ_ID_VAL;
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
UINT16 QuestionId; ///< offset into variable storage
UINT8 Width; ///< size of variable storage
UINT16 QuestionId; ///< The offset into variable storage.
UINT8 Width; ///< The size of variable storage.
UINT16 ListLength;
UINT16 ValueList[1];
} FRAMEWORK_EFI_IFR_EQ_ID_LIST;
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
UINT16 QuestionId1; ///< offset into variable storage for first value to compare
UINT8 Width; ///< size of variable storage (must be same for both)
UINT16 QuestionId2; ///< offset into variable storage for second value to compare
UINT16 QuestionId1; ///< The offset into variable storage for first value to compare.
UINT8 Width; ///< The size of variable storage (must be same for both).
UINT16 QuestionId2; ///< The offset into variable storage for second value to compare.
} FRAMEWORK_EFI_IFR_EQ_ID_ID;
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
UINT16 VariableId; ///< offset into variable storage
UINT16 Value; ///< value to compare against
UINT16 VariableId; ///< The offset into variable storage.
UINT16 Value; ///< The value to compare against.
} EFI_IFR_EQ_VAR_VAL;
///@}
@ -354,19 +354,19 @@ typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
STRING_REF Help;
STRING_REF Text;
STRING_REF TextTwo; ///< optional text
STRING_REF TextTwo; ///< Optional text.
} EFI_IFR_INVENTORY;
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
EFI_GUID Guid; ///< GUID for the variable
UINT16 VarId; ///< variable store ID, as referenced elsewhere in the form
UINT16 Size; ///< size of the variable storage
EFI_GUID Guid; ///< GUID for the variable.
UINT16 VarId; ///< The variable store ID, as referenced elsewhere in the form.
UINT16 Size; ///< The size of the variable storage.
} FRAMEWORK_EFI_IFR_VARSTORE;
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
UINT16 VarId; ///< variable store ID, as referenced elsewhere in the form
UINT16 VarId; ///< The variable store ID, as referenced elsewhere in the form.
} EFI_IFR_VARSTORE_SELECT;
///
@ -377,20 +377,20 @@ typedef struct {
///
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
UINT16 VarId; ///< variable store ID, as referenced elsewhere in the form
UINT16 SecondaryVarId; ///< variable store ID, as referenced elsewhere in the form
UINT16 VarId; ///< The variable store ID, as referenced elsewhere in the form.
UINT16 SecondaryVarId; ///< The variable store ID, as referenced elsewhere in the form.
} EFI_IFR_VARSTORE_SELECT_PAIR;
///
/// Save defaults and restore defaults have same structure
/// Save defaults and restore defaults have same structure.
///
#define EFI_IFR_RESTORE_DEFAULTS EFI_IFR_SAVE_DEFAULTS
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
STRING_REF Title; ///< The string token for the banner title
UINT16 LineNumber; ///< 1-based line number
UINT8 Alignment; ///< left, center, or right-aligned
STRING_REF Title; ///< The string token for the banner title.
UINT16 LineNumber; ///< 1-based line number.
UINT8 Alignment; ///< Left, center, or right-aligned.
} EFI_IFR_BANNER;
#define EFI_IFR_BANNER_ALIGN_LEFT 0

View File

@ -1,17 +1,17 @@
/** @file
This file defines the data structures per HOB specification v0.9.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
These definitions are from HOB Spec 0.9 but not adopted by PI specs.
These definitions are from the HOB Spec 0.9 that were not adopted by the PI specifications.
**/
@ -19,9 +19,9 @@
#define _HOB_H_
///
/// Capsule volume HOB -- identical to a firmware volume
/// This macro is defined to comply with hob Framework Spec. And the marco has been
/// retired in PI1.0 spec.
/// Capsule volume HOB -- identical to a firmware volume.
/// This macro is defined to comply with the hob Framework Spec. And the marco was
/// retired in the PI1.0 specification.
///
#define EFI_HOB_TYPE_CV 0x0008

View File

@ -1,15 +1,15 @@
/** @file
Include file for definitions in the Intel Platform Innovation Framework for EFI
The Include file for definitions in the Intel Platform Innovation Framework for EFI
Pre-EFI Initialization Core Interface Specification (PEI CIS) Version 0.91.
Copyright (c) 2006 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
@ -38,7 +38,7 @@ typedef struct _FRAMEWORK_EFI_PEI_SERVICES FRAMEWORK_EFI_PEI_SERVICES;
The PEI Dispatcher will invoke each PEIM one time. During this pass, the PEI
Dispatcher will pass control to the PEIM at the AddressOfEntryPoint in the PE Header.
@param FfsHeader Pointer to the FFS file header.
@param FfsHeader The pointer to the FFS file header.
@param PeiServices Describes the list of possible PEI Services.
@return Status code
@ -59,7 +59,7 @@ EFI_STATUS
@param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation.
@param Instance This instance of the firmware volume to find. The value 0 is the Boot Firmware Volume (BFV).
@param FwVolHeader Pointer to the firmware volume header of the volume to return.
@param FwVolHeader The pointer to the firmware volume header of the volume to return.
@retval EFI_SUCCESS The volume was found.
@retval EFI_NOT_FOUND The volume was not found.
@ -82,10 +82,10 @@ EFI_STATUS
@param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation.
@param SearchType A filter to find files only of this type.
@param FwVolHeader Pointer to the firmware volume header of the volume to search. This parameter
@param FwVolHeader The pointer to the firmware volume header of the volume to search. This parameter
must point to a valid FFS volume.
@param FileHeader Pointer to the current file from which to begin searching. This pointer will be
updated upon return to reflect the file found.
@param FileHeader The pointer to the current file from which to begin searching. Upon return this pointer will be
updated to reflect the file found.
@retval EFI_SUCCESS The file was found.
@retval EFI_NOT_FOUND The file was not found.
@ -125,15 +125,15 @@ EFI_STATUS
///
/// FRAMEWORK_EFI_PEI_SERVICES is a collection of functions whose implementation is provided by the PEI
/// Foundation. The table is located in the temporary or permanent memory, depending upon the capabilities
/// Foundation. The table may be located in the temporary or permanent memory, depending upon the capabilities
/// and phase of execution of PEI.
///
/// These services fall into various classes, including the following:
/// - Managing the boot mode
/// - Allocating both early and permanent memory
/// - Supporting the Firmware File System (FFS)
/// - Abstracting the PPI database abstraction
/// - Creating Hand-Off Blocks (HOBs)
/// - Managing the boot mode.
/// - Allocating both early and permanent memory.
/// - Supporting the Firmware File System (FFS).
/// - Abstracting the PPI database abstraction.
/// - Creating Hand-Off Blocks (HOBs).
///
struct _FRAMEWORK_EFI_PEI_SERVICES {
EFI_TABLE_HEADER Hdr;
@ -179,7 +179,7 @@ struct _FRAMEWORK_EFI_PEI_SERVICES {
EFI_PEI_RESET_SYSTEM ResetSystem;
///
/// Inconsistent with specification here:
/// In Framework Spec, PeiCis0.91, CpuIo and PciCfg is NOT pointers.
/// In Framework Spec, PeiCis0.91, CpuIo and PciCfg are NOT pointers.
///
//
@ -189,7 +189,7 @@ struct _FRAMEWORK_EFI_PEI_SERVICES {
EFI_PEI_PCI_CFG_PPI *PciCfg;
};
///
/// Enumeration of reset types defined in Framework Spec PeiCis
/// Enumeration of reset types defined in the Framework Specification PeiCis.
///
typedef enum {
///

View File

@ -2,14 +2,14 @@
Include file for definitions in the Intel Platform Innovation Framework for EFI
System Management Mode Core Interface Specification (SMM CIS) version 0.91.
Copyright (c) 2007 - 2010, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
@ -30,13 +30,14 @@ typedef struct _EFI_SMM_SYSTEM_TABLE EFI_SMM_SYSTEM_TABLE;
#define EFI_SMM_SYSTEM_TABLE_REVISION (0 << 16) | (0x09)
/**
Allocates pool memory from SMRAM for IA-32 or runtime memory for
Allocates pool memory from SMRAM for IA-32, or runtime memory for
the Itanium processor family.
@param PoolType The type of pool to allocate. The only supported type is EfiRuntimeServicesData
@param PoolType The type of pool to allocate. The only supported type
is EfiRuntimeServicesData.
@param Size The number of bytes to allocate from the pool.
@param Buffer A pointer to a pointer to the allocated buffer if the call
succeeds; undefined otherwise.
@param Buffer A pointer to a pointer to the allocated buffer if the
call succeeds. Otherwise, undefined.
@retval EFI_SUCCESS The requested number of bytes was allocated.
@retval EFI_OUT_OF_RESOURCES The pool requested could not be allocated.
@ -56,7 +57,7 @@ EFI_STATUS
/**
Returns pool memory to the system.
@param Buffer Pointer to the buffer to free.
@param Buffer The pointer to the buffer to free.
@retval EFI_SUCCESS The memory was returned to the system.
@retval EFI_INVALID_PARAMETER Buffer was invalid.
@ -75,8 +76,8 @@ EFI_STATUS
Allocates memory pages from the system.
@param Type The type of allocation to perform.
@param MemoryType The only supported type is EfiRuntimeServicesData
@param NumberofPages The number of contiguous 4 KB pages to allocate
@param MemoryType The only supported type is EfiRuntimeServicesData.
@param NumberofPages The number of contiguous 4 KB pages to allocate.
@param Memory Pointer to a physical address. On input, the way in which
the address is used depends on the value of Type. On output, the address
is set to the base of the page range that was allocated.
@ -85,7 +86,7 @@ EFI_STATUS
@retval EFI_OUT_OF_RESOURCES The pages requested could not be allocated.
@retval EFI_NOT_FOUND The requested pages could not be found.
@retval EFI_INVALID_PARAMETER Type is not AllocateAnyPages or AllocateMaxAddress
or AllocateAddress. Or MemoryType is in the range EfiMaxMemoryType..0x7FFFFFFF.
or AllocateAddress. Or, MemoryType is in the range EfiMaxMemoryType..0x7FFFFFFF.
@note Inconsistent with specification here:
In the Framework Spec, this definition is named EFI_SMM_ALLOCATE_PAGES.
To avoid a naming conflict, the definition here is renamed.
@ -102,7 +103,7 @@ EFI_STATUS
/**
Frees memory pages for the system.
@param Memory The base physical address of the pages to be freed
@param Memory The base physical address of the pages to be freed.
@param NumberOfPages The number of contiguous 4 KB pages to free.
@retval EFI_SUCCESS The requested memory pages were freed.
@ -502,9 +503,9 @@ struct _EFI_SMM_SYSTEM_TABLE {
// MP service
//
///Inconsistent with specification here:
/// In Framework Spec, this definition does not exist. This method is introduced in PI1.1 spec for
/// implementation needed.
/// Inconsistent with specification here:
/// In Framework Spec, this definition does not exist. This method is introduced in PI1.1 specification for
/// the implementation needed.
EFI_SMM_STARTUP_THIS_AP SmmStartupThisAp;
//

View File

@ -2,14 +2,14 @@
Status Code Definitions, according to Intel Platform Innovation Framework
for EFI Status Codes Specification
Copyright (c) 2007, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
Intel Platform Innovation Framework for EFI Status Codes Specification

View File

@ -1,19 +1,19 @@
/** @file
The root header file that provides Framework extension to UEFI/PI for modules. It can be included by
DXE, RUNTIME and SMM type modules which uses Framework definitions.
DXE, RUNTIME and SMM type modules that use Framework definitions.
This header file includes Framework extension definitions common to DXE
modules.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
#ifndef _FRAMEWORK_DXE_H_

View File

@ -1,17 +1,17 @@
/** @file
Header file that supports Framework extension to UEFI/PI for PEI modules.
Header file that support Framework extension to UEFI/PI for PEI modules.
This header file must include Framework extension definitions common to PEI
modules.
Copyright (c) 2007, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/

View File

@ -1,17 +1,17 @@
/** @file
Header file that supports Framework extension to UEFI/PI for SMM modules.
Header file that support Framework extensions to UEFI/PI for SMM modules.
This header file must include Framework extension definitions common to DXE
modules.
Copyright (c) 2007, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/

View File

@ -9,17 +9,17 @@
the Framework DXE software stack, this Virtual Block I/O PEIM is actually
embodying the functionality of the partition driver. Thsi Virtual Block I/O
PEIM has to multiple the multiple possible instances of Block I/O and also know
how to parse at least El Torito for CD-ROM and perhaps Master Boot Record(MBR)
how to parse at least El Torito for CD-ROM, and perhaps Master Boot Record(MBR)
and GUID Partition Table(GPT) in the future.
Copyright (c) 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
These GUIDs are defined in Framework Recovery Specification Version 0.9
@ -30,7 +30,7 @@
#define _PEI_BLOCK_IO_GUID_H_
///
/// Global ID for an IDE class recovery device
/// Global ID for an IDE class recovery device.
///
#define EFI_PEI_IDE_BLOCK_IO_PPI \
{ \
@ -38,7 +38,7 @@
}
///
/// Global ID for a Floppy class recovery device
/// Global ID for a Floppy class recovery device.
///
#define EFI_PEI_144_FLOPPY_BLOCK_IO_PPI \
{ \

View File

@ -1,14 +1,14 @@
/** @file
Framework Capule related Definition.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
Capsule Spec Version 0.9
@ -35,7 +35,7 @@
}
///
/// Bits in the flags field of the capsule header
/// Bits in the flags field of the capsule header.
/// This flag is set if the capsule can support setup changes, and cleared if it cannot.
///
#define EFI_CAPSULE_HEADER_FLAG_SETUP 0x00000001
@ -47,10 +47,10 @@
// a capsule update.
//
typedef struct {
UINT64 Length; ///< length of the data block
EFI_PHYSICAL_ADDRESS Data; ///< physical address of the data block
UINT32 Signature; ///< CBDS
UINT32 CheckSum; ///< to sum this structure to 0
UINT64 Length; ///< Length of the data block.
EFI_PHYSICAL_ADDRESS Data; ///< Physical address of the data block.
UINT32 Signature; ///< CBDS.
UINT32 CheckSum; ///< To sum this structure to 0.
} FRAMEWORK_EFI_CAPSULE_BLOCK_DESCRIPTOR;
typedef struct {
@ -72,7 +72,7 @@ typedef struct {
UINT32 HeaderSize;
///
/// A bit-mapped list describing the capsule's attributes.
/// All undefined bits should be written as zero (0)
/// All undefined bits should be written as zero (0).
///
UINT32 Flags;
///

View File

@ -1,18 +1,18 @@
/** @file
DataHubRecord.h includes all data hub sub class GUID definitions.
DataHubRecord.h includes all data hub subclass GUID definitions.
This file includes all data hub sub class defitions from
Cache subclass spec 0.9, DataHub SubClass spec 0.9, Memory SubClass Spec 0.9,
Processor Subclass spec 0.9, and Misc SubClass spec 0.9.
Cache subclass specification 0.9, DataHub SubClass specification 0.9, Memory SubClass Spec 0.9,
Processor Subclass specification 0.9, and Misc SubClass specification 0.9.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
#ifndef _DATAHUB_RECORDS_GUID_H_
@ -51,7 +51,7 @@ extern EFI_GUID gEfiMiscSubClassGuid;
///
/// Inconsistent with specification here:
/// In ProcSubclass spec 0.9, the value is 0x0100.
/// In ProcSubclass specification 0.9, the value is 0x0100.
/// Keep it unchanged from the perspective of binary consistency.
///
#define EFI_PROCESSOR_SUBCLASS_VERSION 0x00010000
@ -146,7 +146,7 @@ typedef struct _FLOOPY_CONN_DEVICE_PATH {
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, this data structure and corrsponding fields are NOT defined.
/// In MiscSubclass specification 0.9, this data structure and corrsponding fields are NOT defined.
/// It's implementation-specific to simplify the code logic.
///
typedef union _EFI_MISC_PORT_DEVICE_PATH {
@ -167,7 +167,7 @@ typedef union _EFI_MISC_PORT_DEVICE_PATH {
/// String Token Definition
///
/// Inconsistent with specification here:
/// The macro isn't defined by any spec.
/// The macro isn't defined by any specification.
/// Keep it unchanged for backward compatibility.
///
#define EFI_STRING_TOKEN UINT16
@ -269,7 +269,7 @@ typedef EFI_EXP_BASE10_DATA EFI_PROCESSOR_CORE_FREQUENCY_DATA;
/// that the processor/driver supports automatic frequency selection.
///
/// Inconsistent with specification here:
/// According to MiscSubclass 0.9 spec, it should be a pointer since it refers to a list of frequencies.
/// According to MiscSubclass 0.9 specification, it should be a pointer since it refers to a list of frequencies.
///
typedef EFI_EXP_BASE10_DATA *EFI_PROCESSOR_CORE_FREQUENCY_LIST_DATA;
@ -302,7 +302,7 @@ typedef struct {
///
/// Inconsistent with specification here:
/// The name of third field in ProcSubClass spec0.9 is LogicalProcessorCount.
/// The name of third field in ProcSubClass specification 0.9 is LogicalProcessorCount.
/// Keep it unchanged for backward compatibility.
///
typedef struct {
@ -452,7 +452,7 @@ typedef enum {
EfiProcessorFamilyUltraSparcIII = 0x57,
///
/// Inconsistent with specification here:
/// This field in ProcSubClass spec 0.9 is defined as EfiProcessorFamilyUltraSparcIIi.
/// This field in ProcSubClass specification 0.9 is defined as EfiProcessorFamilyUltraSparcIIi.
/// Change it to EfiProcessorFamilyUltraSparcIIIi to avoid build break.
///
EfiProcessorFamilyUltraSparcIIIi = 0x58,
@ -494,37 +494,37 @@ typedef enum {
EfiProcessorFamilyIntelItanium2 = 0xB8,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyIntelPentiumM = 0xB9,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyIntelCeleronD = 0xBA,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyIntelPentiumD = 0xBB,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyIntelPentiumEx = 0xBC,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyIntelCoreSolo = 0xBD,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyReserved = 0xBE,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyIntelCore2 = 0xBF,
EfiProcessorFamilyIBM390 = 0xC8,
@ -532,44 +532,44 @@ typedef enum {
EfiProcessorFamilyG5 = 0xCA,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyG6 = 0xCB,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyzArchitectur = 0xCC,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyViaC7M = 0xD2,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyViaC7D = 0xD3,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyViaC7 = 0xD4,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyViaEden = 0xD5,
EfiProcessorFamilyi860 = 0xFA,
EfiProcessorFamilyi960 = 0xFB,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyIndicatorFamily2 = 0xFE,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorFamilyReserved1 = 0xFF
} EFI_PROCESSOR_FAMILY_DATA;
@ -661,22 +661,22 @@ typedef enum {
EfiProcessorSocket940 = 0x11,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorSocket939 = 0x12,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorSocketmPGA604 = 0x13,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorSocketLGA771 = 0x14,
///
/// Inconsistent with specification here:
/// This field is NOT defined in ProcSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in ProcSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiProcessorSocketLGA775 = 0x15
@ -686,7 +686,7 @@ typedef STRING_REF EFI_PROCESSOR_SOCKET_NAME_DATA;
///
/// Inconsistent with specification here:
/// In ProcSubclass spec 0.9, the naming is EFI_PROCESSOR_CACHE_ASSOCIATION_DATA.
/// In ProcSubclass specification 0.9, the naming is EFI_PROCESSOR_CACHE_ASSOCIATION_DATA.
/// Keep it unchanged for backward compatibilty.
///
typedef EFI_INTER_LINK_DATA EFI_CACHE_ASSOCIATION_DATA;
@ -695,7 +695,7 @@ typedef EFI_INTER_LINK_DATA EFI_CACHE_ASSOCIATION_DATA;
/// This data record refers to the health status of the processor.
///
/// Inconsistent with specification here:
/// In ProcSubclass spec 0.9, the naming is EFI_PROCESSOR_HEALTH_STATUS_DATA.
/// In ProcSubclass specification 0.9, the naming is EFI_PROCESSOR_HEALTH_STATUS_DATA.
/// Keep it unchanged for backward compatibilty.
///
typedef enum {
@ -713,8 +713,8 @@ typedef UINTN EFI_PROCESSOR_PACKAGE_NUMBER_DATA;
///
/// Inconsistent with specification here:
/// In ProcSubclass spec 0.9, the enumeration type data structure is NOT defined.
/// The equivalent in spec is
/// In ProcSubclass specification 0.9, the enumeration type data structure is NOT defined.
/// The equivalent in specification is
/// #define EFI_PROCESSOR_FREQUENCY_RECORD_NUMBER 0x00000001
/// #define EFI_PROCESSOR_BUS_FREQUENCY_RECORD_NUMBER 0x00000002
/// #define EFI_PROCESSOR_VERSION_RECORD_NUMBER 0x00000003
@ -770,7 +770,7 @@ typedef enum {
///
/// Inconsistent with specification here:
/// In ProcSubclass spec 0.9, the union type data structure is NOT defined.
/// In ProcSubclass specification 0.9, the union type data structure is NOT defined.
/// It's implementation-specific to simplify the code logic.
///
typedef union {
@ -809,7 +809,7 @@ typedef struct {
typedef EFI_EXP_BASE2_DATA EFI_CACHE_SIZE_DATA;
///
/// Inconsistent with specification here:
/// In CacheSubclass spec 0.9, the naming is EFI_CACHE_MAXIMUM_SIZE_DATA.
/// In CacheSubclass specification 0.9, the naming is EFI_CACHE_MAXIMUM_SIZE_DATA.
/// Keep it unchanged for backward compatibilty.
///
typedef EFI_EXP_BASE2_DATA EFI_MAXIMUM_CACHE_SIZE_DATA;
@ -859,8 +859,8 @@ typedef enum {
///
/// Inconsistent with specification here:
/// In CacheSubclass 0.9 spec. It defines the field type as UINT16.
/// In fact, it should be UINT32 type since it refers to a 32bit width data.
/// In CacheSubclass 0.9 specification. It defines the field type as UINT16.
/// In fact, it should be UINT32 type because it refers to a 32bit width data.
///
typedef struct {
UINT32 Level :3;
@ -901,8 +901,8 @@ typedef enum {
///
/// Inconsistent with specification here:
/// In CacheSubclass spec 0.9, the enumeration type data structure is NOT defined.
/// The equivalent in spec is
/// In CacheSubclass specification 0.9, the enumeration type data structure is NOT defined.
/// The equivalent in specification is
/// #define EFI_CACHE_SIZE_RECORD_NUMBER 0x00000001
/// #define EFI_CACHE_MAXIMUM_SIZE_RECORD_NUMBER 0x00000002
/// #define EFI_CACHE_SPEED_RECORD_NUMBER 0x00000003
@ -930,7 +930,7 @@ typedef enum {
///
/// Inconsistent with specification here:
/// In CacheSubclass spec0.9, the union type data structure is NOT defined.
/// In CacheSubclass specification 0.9, the union type data structure is NOT defined.
/// It's implementation-specific to simplify the code logic.
///
typedef union {
@ -1097,7 +1097,7 @@ typedef enum _EFI_MEMORY_FORM_FACTOR {
EfiMemoryFormFactorSrimm = 0x0E,
///
/// Inconsistent with specification here:
/// This field is NOT defined in MemSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in MemSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiMemoryFormFactorFbDimm = 0x0F
} EFI_MEMORY_FORM_FACTOR;
@ -1123,12 +1123,12 @@ typedef enum _EFI_MEMORY_ARRAY_TYPE {
EfiMemoryTypeDdr = 0x12,
///
/// Inconsistent with specification here:
/// This field is NOT defined in MemSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in MemSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiMemoryTypeDdr2 = 0x13,
///
/// Inconsistent with specification here:
/// This field is NOT defined in MemSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in MemSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiMemoryTypeDdr2FbDimm = 0x14
} EFI_MEMORY_ARRAY_TYPE;
@ -1159,7 +1159,7 @@ typedef enum {
EfiMemoryStateDisabled = 5,
///
/// Inconsistent with specification here:
/// This field is NOT defined in MemSubClass spec0.9. It's introduced for SMBIOS2.6 spec.
/// This field is NOT defined in MemSubClass specification 0.9. It's introduced for SMBIOS2.6 specification.
///
EfiMemoryStatePartial = 6
} EFI_MEMORY_STATE;
@ -1240,7 +1240,7 @@ typedef struct {
/// The memory speed in megahertz (MHz). A value of 0x00 denotes that
/// the speed is unknown.
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the naming is MemoryTypeSpeed.
/// In MemSubclass specification 0.9, the naming is MemoryTypeSpeed.
/// Keep it unchanged for backward compatibilty.
///
EFI_EXP_BASE10_DATA MemorySpeed;
@ -1389,14 +1389,14 @@ typedef struct {
//
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 5.
///
#define EFI_MEMORY_CONTROLLER_INFORMATION_RECORD_NUMBER 0x00000008
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 5.
///
typedef enum {
@ -1412,7 +1412,7 @@ typedef enum {
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 5.
///
typedef struct {
@ -1427,7 +1427,7 @@ typedef struct {
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 5.
///
typedef enum {
@ -1442,7 +1442,7 @@ typedef enum {
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 5.
///
typedef struct {
@ -1456,7 +1456,7 @@ typedef struct {
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 5.
///
typedef struct {
@ -1476,7 +1476,7 @@ typedef struct {
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 5.
///
typedef struct {
@ -1491,7 +1491,7 @@ typedef struct {
/// Use EFI_MEMORY_CONTROLLER_INFORMATION_DATA instead
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 5.
///
typedef struct {
@ -1510,7 +1510,7 @@ typedef struct {
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 5.
///
typedef struct {
@ -1531,13 +1531,13 @@ typedef struct {
/// Memory. Error Information - SMBIOS Type 18
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 18.
///
#define EFI_MEMORY_32BIT_ERROR_INFORMATION_RECORD_NUMBER 0x00000009
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 18.
///
typedef enum {
@ -1558,7 +1558,7 @@ typedef enum {
} EFI_MEMORY_ERROR_TYPE;
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 18.
///
typedef enum {
@ -1569,7 +1569,7 @@ typedef enum {
} EFI_MEMORY_ERROR_GRANULARITY_TYPE;
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 18.
///
typedef enum {
@ -1581,7 +1581,7 @@ typedef enum {
} EFI_MEMORY_ERROR_OPERATION_TYPE;
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 18.
///
typedef struct {
@ -1595,17 +1595,17 @@ typedef struct {
} EFI_MEMORY_32BIT_ERROR_INFORMATION;
///
/// Memory. Error Information - SMBIOS Type 33
/// Memory. Error Information - SMBIOS Type 33.
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 33.
///
#define EFI_MEMORY_64BIT_ERROR_INFORMATION_RECORD_NUMBER 0x0000000A
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 type 33.
///
typedef struct {
@ -1620,7 +1620,7 @@ typedef struct {
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It is implementation-specific to simplify the code logic.
///
typedef union _EFI_MEMORY_SUBCLASS_RECORDS {
@ -1721,26 +1721,26 @@ typedef struct {
BiosCharacteristics2;
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, this data structure and corrsponding fields are NOT defined.
/// It's introduced for SmBios 2.6 spec type 0.
/// In MiscSubclass specification 0.9, this data structure and corrsponding fields are NOT defined.
/// It's introduced for SmBios 2.6 specification type 0.
///
UINT8 BiosMajorRelease;
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, this data structure and corrsponding fields are NOT defined.
/// It's introduced for SmBios 2.6 spec type 0.
/// In MiscSubclass specification 0.9, this data structure and corrsponding fields are NOT defined.
/// It's introduced for SmBios 2.6 specification type 0.
///
UINT8 BiosMinorRelease;
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, this data structure and corrsponding fields are NOT defined.
/// It's introduced for SmBios 2.6 spec type 0.
/// In MiscSubclass specification 0.9, this data structure and corrsponding fields are NOT defined.
/// It's introduced for SmBios 2.6 specification type 0.
///
UINT8 BiosEmbeddedFirmwareMajorRelease;
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, this data structure and corrsponding fields are NOT defined.
/// It's introduced for SmBios 2.6 spec type 0.
/// In MiscSubclass specification 0.9, this data structure and corrsponding fields are NOT defined.
/// It's introduced for SmBios 2.6 specification type 0.
///
UINT8 BiosEmbeddedFirmwareMinorRelease;
} EFI_MISC_BIOS_VENDOR_DATA;
@ -1771,14 +1771,14 @@ typedef struct {
EFI_MISC_SYSTEM_WAKEUP_TYPE SystemWakeupType;
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, this data structure and corrsponding fields are NOT defined.
/// It's introduced for SmBios 2.6 spec type 1.
/// In MiscSubclass specification 0.9, this data structure and corrsponding fields are NOT defined.
/// It's introduced for SmBios 2.6 specification type 1.
///
STRING_REF SystemSKUNumber;
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, this data structure and corrsponding fields are NOT defined.
/// It's introduced for SmBios 2.6 spec type 1.
/// In MiscSubclass specification 0.9, this data structure and corrsponding fields are NOT defined.
/// It's introduced for SmBios 2.6 specification type 1.
///
STRING_REF SystemFamily;
} EFI_MISC_SYSTEM_MANUFACTURER_DATA;
@ -1863,7 +1863,7 @@ typedef enum {
typedef struct {
///
/// Inconsistent with specification here:
/// In MiscSubclass 0.9 spec, it has a wrong field name "EFI_MISC_CHASSIS_TYPE".
/// In MiscSubclass 0.9 specification, it has the incorrect field name "EFI_MISC_CHASSIS_TYPE".
/// Change it to "ChassisType" to pass build.
///
UINT32 ChassisType :16;
@ -2014,8 +2014,8 @@ typedef struct {
EFI_MISC_PORT_TYPE PortType;
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the type of this field are defined as EFI_DEVICE_PATH_PROTOCOL,
/// which causes the implementation has a little complexity. Keep it unchanged for backward
/// In MiscSubclass specification 0.9, this type of field is defined as EFI_DEVICE_PATH_PROTOCOL,
/// which causes the implementation some complexity. Keep it unchanged for backward
/// compatibility.
///
EFI_MISC_PORT_DEVICE_PATH PortPath;
@ -2044,7 +2044,7 @@ typedef enum {
EfiSlotTypeAgp = 0x0F,
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, its naming should be EfiSlotTypeAgp2X
/// In MiscSubclass specification 0.9, its naming should be EfiSlotTypeAgp2X
/// rather than EfiSlotTypeApg2X.
///
EfiSlotTypeAgp2X = 0x10,
@ -2058,8 +2058,8 @@ typedef enum {
EfiSlotTypePC98Card = 0xA4,
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, this field isn't defined.
/// It's introduced for SmBios 2.6 spec type 9.
/// In MiscSubclass specification 0.9, this field isn't defined.
/// It's introduced for SmBios 2.6 specification type 9.
///
EfiSlotTypePciExpress = 0xA5
} EFI_MISC_SLOT_TYPE;
@ -2139,7 +2139,7 @@ typedef struct {
STRING_REF OnBoardDeviceDescription;
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the naming is OnBoardDeviceType.
/// In MiscSubclass specification 0.9, the name is OnBoardDeviceType.
/// Keep it unchanged for backward compatibilty.
///
EFI_MISC_ONBOARD_DEVICE_STATUS OnBoardDeviceStatus;
@ -2256,15 +2256,15 @@ typedef struct {
//
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the naming is EFI_MISC_BATTERY_LOCATION_RECORD_NUMBER.
/// In MiscSubclass specification 0.9, the name is EFI_MISC_BATTERY_LOCATION_RECORD_NUMBER.
/// Keep it unchanged for backward compatibilty.
///
#define EFI_MISC_PORTABLE_BATTERY_RECORD_NUMBER 0x00000010
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the structure name is EFI_MISC_BATTERY_DEVICE_CHEMISTRY.
/// And all field namings are also different with spec.
/// In MiscSubclass specification 0.9, the structure name is EFI_MISC_BATTERY_DEVICE_CHEMISTRY.
/// And all field namings are also different with specification.
/// Keep it unchanged for backward compatibilty.
///
typedef enum {
@ -2280,8 +2280,8 @@ typedef enum {
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the structure name is EFI_MISC_BATTERY_LOCATION_DATA.
/// And the name and the order of the fields are also different with spec.
/// In MiscSubclass specification 0.9, the structure name is EFI_MISC_BATTERY_LOCATION_DATA.
/// Also, the name and the order of the fields vary with specifications.
/// Keep it unchanged for backward compatibilty.
///
typedef struct {
@ -2342,9 +2342,9 @@ typedef struct {
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, it only mention the possible value of each field in
/// The MiscSubclass specification 0.9 only mentions the possible value of each field in
/// EFI_MISC_HARDWARE_SECURITY_SETTINGS.
/// It's implementation-specific to simplify the code logic.
/// It's implementation-specific in order to to simplify the code logic.
///
typedef enum {
EfiHardwareSecurityStatusDisabled = 0,
@ -2520,7 +2520,7 @@ typedef struct {
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the structure name is EFI_MISC_BOOT_INFORMATION_STATUS_TYPE.
/// In MiscSubclass specification 0.9, the structure name is EFI_MISC_BOOT_INFORMATION_STATUS_TYPE.
/// Keep it unchanged for backward compatibilty.
///
typedef enum {
@ -2541,7 +2541,7 @@ typedef enum {
typedef struct {
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the field name is EFI_MISC_BOOT_INFORMATION_STATUS_TYPE.
/// In MiscSubclass specification 0.9, the field name is EFI_MISC_BOOT_INFORMATION_STATUS_TYPE.
/// Keep it unchanged for backward compatibilty.
///
EFI_MISC_BOOT_INFORMATION_STATUS_DATA_TYPE BootInformationStatus;
@ -2597,8 +2597,8 @@ typedef struct {
EFI_INTER_LINK_DATA ManagementDeviceComponentLink;
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, this field is NOT defined.
/// It's introduced for SmBios 2.6 spec type 35.
/// In MiscSubclass specification 0.9, this field is NOT defined.
/// It's introduced for SmBios 2.6 specification type 35.
///
EFI_INTER_LINK_DATA ManagementDeviceThresholdLink;
} EFI_MISC_MANAGEMENT_DEVICE_COMPONENT_DESCRIPTION_DATA;
@ -2635,7 +2635,7 @@ typedef struct {
/// System Power supply Record - SMBIOS Type 39
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the type of all fields are UINT32.
/// In MiscSubclass specification 0.9, the type of all fields are UINT32.
/// Keep it unchanged for backward compatibilty.
///
typedef struct {
@ -2650,7 +2650,7 @@ typedef struct {
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the structure name is EFI_MISC_POWER_SUPPLY_UNIT_GROUP_DATA.
/// In MiscSubclass specification 0.9, the structure name is EFI_MISC_POWER_SUPPLY_UNIT_GROUP_DATA.
/// Keep it unchanged for backward compatibilty.
///
typedef struct {
@ -2675,8 +2675,8 @@ typedef struct {
/// OEM Data Record - SMBIOS Type 0x80-0xFF
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the structure name is EFI_SMBIOS_STRUCTURE_HDR.
/// Due to this structure is commonly used by vendor to construct SmBios type 0x80~0xFF table,
/// In MiscSubclass specification 0.9, the structure name is EFI_SMBIOS_STRUCTURE_HDR.
/// Due to this, the structure is commonly used by vendors to construct SmBios type 0x80~0xFF table,
/// Keep it unchanged for backward compatibilty.
///
typedef struct {
@ -2688,7 +2688,7 @@ typedef struct {
typedef struct {
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the field name is EFI_SMBIOS_STRUCTURE_HDR.
/// In MiscSubclass specification 0.9, the field name is EFI_SMBIOS_STRUCTURE_HDR.
/// Keep it unchanged for backward compatibilty.
///
SMBIOS_STRUCTURE_HDR Header;
@ -2701,15 +2701,15 @@ typedef struct {
/// Misc. System Event Log - SMBIOS Type 15
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 spec type 15.
/// In MiscSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 specification type 15.
///
#define EFI_MISC_SYSTEM_EVENT_LOG_RECORD_NUMBER 0x00000020
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 spec type 15.
/// In MiscSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 specification type 15.
///
typedef struct {
UINT16 LogAreaLength;
@ -2740,14 +2740,14 @@ typedef struct {
/// Management Device Threshold Data Record - SMBIOS Type 36
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 spec type 36.
/// In MiscSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 specification type 36.
///
#define EFI_MISC_MANAGEMENT_DEVICE_THRESHOLD_RECORD_NUMBER 0x00000021
///
/// Inconsistent with specification here:
/// In MiscSubclass spec 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 spec type 36.
/// In MiscSubclass specification 0.9, the following data structures are NOT defined.
/// It's introduced for SmBios 2.6 specification type 36.
///
typedef struct {
UINT16 LowerThresNonCritical;
@ -2790,7 +2790,7 @@ typedef EFI_MISC_ELECTRICAL_CURRENT_PROBE_DESCRIPTION_DATA EFI_MISC_ELECTRICAL_C
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It is implementation-specific to simplify the code logic.
///
typedef union {
@ -2832,7 +2832,7 @@ typedef union {
///
/// Inconsistent with specification here:
/// In MemSubclass spec 0.9, the following data structures are NOT defined.
/// In MemSubclass specification 0.9, the following data structures are NOT defined.
/// It is implementation-specific to simplify the code logic.
///
typedef struct {
@ -2843,13 +2843,13 @@ typedef struct {
///
/// Inconsistent with specification here:
/// In DataHubSubclass spec 0.9 page 16, the following symbol is NOT defined.
/// In DataHubSubclass specification 0.9 page 16, the following symbol is NOT defined.
/// But value is meaningful, 0 means Reserved.
///
#define EFI_SUBCLASS_INSTANCE_RESERVED 0
///
/// Inconsistent with specification here:
/// In DataHubSubclass spec 0.9 page 16, the following symbol is NOT defined.
/// In DataHubSubclass specification 0.9 page 16, the following symbol is NOT defined.
/// But value is meaningful, -1 means Not Applicable.
///
#define EFI_SUBCLASS_INSTANCE_NON_APPLICABLE 0xFFFF

View File

@ -2,17 +2,17 @@
Guid used to define the Firmware File System. See the Framework Firmware
File System Specification for more details.
Copyright (c) 2006 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
Guids defined in Firmware File System Spec 0.9
Guids defined in Firmware File System Spec 0.9.
**/

View File

@ -1,18 +1,18 @@
/** @file
Definitions EFI_SMM_COMMUNICATE_HEADER used by EFI_SMM_BASE_PROTOCOL.Communicate()
functions
functions.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
GUIDs defined in SmmCis spec version 0.9
GUIDs defined in SmmCis spec version 0.9.
**/
@ -21,7 +21,7 @@
///
/// Inconsistent with specification here:
/// GUID definition format has been changed, because the GUID format in Framework spec is incorrect.
/// GUID definition format has been changed, because the GUID format in the Framework specification is incorrect.
///
#define SMM_COMMUNICATE_HEADER_GUID \
{ \

View File

@ -8,17 +8,17 @@
* the GUID specific data structure of HOB for reserving SMRAM regions.
This GUIDed HOB can be used to convey the existence of the T-SEG reservation and H-SEG usage
Copyright (c) 2007 - 2010, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
GUIDs defined in SmmCis spec version 0.9
GUIDs defined in SmmCis spec version 0.9.
**/

View File

@ -1,5 +1,5 @@
/** @file
This file declares Boot Script Executer PPI.
This file declares the Boot Script Executer PPI.
This PPI is published by a PEIM upon dispatch and provides an execution engine for the
Framework boot script. This PEIM should be platform neutral and have no specific knowledge of
@ -8,14 +8,14 @@
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.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This PPI is defined in Framework of EFI BootScript spec.
@ -39,16 +39,19 @@ typedef struct _EFI_PEI_BOOT_SCRIPT_EXECUTER_PPI EFI_PEI_BOOT_SCRIPT_EXECUTER_PP
@param PeiServices A pointer to the system PEI Services Table.
@param This A pointer to the EFI_PEI_BOOT_SCRIPT_EXECUTER_PPI instance.
@param Address The physical memory address where the table is stored.
It must be zero if the table to be executed is stored in a firmware volume file.
It must be zero if the table to be executed is stored in
a firmware volume file.
@param FvFile The firmware volume file name that contains the table to
be executed. It must be NULL if the table to be executed is stored in physical memory.
be executed. It must be NULL if the table to be executed
is stored in physical memory.
@retval EFI_SUCCESS The boot script table was executed successfully.
@retval EFI_INVALID_PARAMETER Address is zero and FvFile is NULL.
@retval EFI_NOT_FOUND The file name specified in FvFile cannot be found.
@retval EFI_UNSUPPORTED The format of the boot script table is invalid.
Or An unsupported opcode occurred in the table.
Or There were opcode execution errors, such as an insufficient dependency.
Or, an unsupported opcode occurred in the table.
Or there were opcode execution errors, such as an
insufficient dependency.
**/
typedef
@ -62,11 +65,11 @@ EFI_STATUS
///
/// EFI_PEI_BOOT_SCRIPT_EXECUTER_PPI produces the function which interprets and
/// executes the Framework boot script table
/// executes the Framework boot script table.
///
struct _EFI_PEI_BOOT_SCRIPT_EXECUTER_PPI {
///
/// Executes a boot script table
/// Executes a boot script table.
///
EFI_PEI_BOOT_SCRIPT_EXECUTE Execute;
};

View File

@ -1,18 +1,18 @@
/** @file
This file declares FindFv PPI used to locate FVs that contain PEIMs in PEI
This file declares FindFv PPI, which is used to locate FVs that contain PEIMs in PEI.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This PPI is defined in PEI CIS
Version 0.91
Version 0.91.
**/
@ -35,7 +35,7 @@ typedef struct _EFI_PEI_FIND_FV_PPI EFI_PEI_FIND_FV_PPI;
was passed in FvNumber. Once this function reports a firmware volume
index/base address pair, that index/address pairing must continue throughout PEI.
@param PeiServices Pointer to the PEI Services Table.
@param PeiServices The pointer to the PEI Services Table.
@param This Interface pointer that implements the Find FV service.
@param FvNumber The index of the firmware volume to locate.
@param FvAddress The address of the volume to discover.

View File

@ -1,14 +1,14 @@
/** @file
Load image file from fv to memory.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This PPI is defined in PEI CIS spec Version 0.91.
@ -29,10 +29,10 @@ typedef struct _EFI_PEI_FV_FILE_LOADER_PPI EFI_PEI_FV_FILE_LOADER_PPI;
Loads a PEIM into memory for subsequent execution.
@param This Interface pointer that implements the Load File PPI instance.
@param FfsHeader Pointer to the FFS header of the file to load.
@param ImageAddress Pointer to the address of the loaded Image
@param ImageSize Pointer to the size of the loaded image.
@param EntryPoint Pointer to the entry point of the image.
@param FfsHeader The pointer to the FFS header of the file to load.
@param ImageAddress The pointer to the address of the loaded Image
@param ImageSize The pointer to the size of the loaded image.
@param EntryPoint The pointer to the entry point of the image.
@retval EFI_SUCCESS The image was loaded successfully.
@retval EFI_OUT_OF_RESOURCES There was not enough memory.
@ -52,13 +52,13 @@ EFI_STATUS
/**
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
depend upon the presence of the EFI_PEI_PERMANENT_MEMORY_INSTALLED_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;
};

View File

@ -1,14 +1,14 @@
/** @file
This file declares the PciCfg PPI used to access the PCI configuration space in PEI
Copyright (c) 2006 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This PPI is defined in PEI CIS
@ -64,7 +64,7 @@ EFI_STATUS
@param PeiServices An indirect pointer to the PEI Services Table
published by the PEI Foundation.
@param This Pointer to local data for the interface.
@param This The pointer to local data for the interface.
@param Width The width of the access. Enumerated in bytes.
@param Address The physical address of the access.
@param SetBits Value of the bits to set.

View File

@ -4,17 +4,17 @@
These services provide a lightweight, read-only variant of the full EFI variable services. The
reason that these services are read-only is to reduce the complexity of flash management. Also,
some implementation of the PEI may use the same physical flash part for variable and PEIM
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.
storage. As such, a write command to certain technologies would alter the contents of the entire part,
making the PEIM execution in the original position not follow the required flow.
Copyright (c) 2006 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This PPI is defined in PEI CIS
@ -32,7 +32,7 @@
typedef struct _EFI_PEI_READ_ONLY_VARIABLE_PPI EFI_PEI_READ_ONLY_VARIABLE_PPI;
///
/// Variable attributes
/// Variable attributes.
///@{
#define EFI_VARIABLE_NON_VOLATILE 0x00000001
#define EFI_VARIABLE_BOOTSERVICE_ACCESS 0x00000002
@ -46,9 +46,10 @@ typedef struct _EFI_PEI_READ_ONLY_VARIABLE_PPI EFI_PEI_READ_ONLY_VARIABLE_PPI;
///@}
/**
Get Variable value by Name and GUID pair
Get Variable value by Name and GUID pair.
@param[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
@param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation.
@param[in] VariableName A NULL-terminated Unicode string that is the name of the vendor's variable.
@param[in] VendorGuid A unique identifier for the vendor.
@param[out] Attributes This OPTIONAL parameter may be either NULL or
@ -83,20 +84,23 @@ EFI_STATUS
and on output the interface returns the next variable name data. When the
entire variable list has been returned, the error EFI_NOT_FOUND is returned.
@param[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
@param[in] PeiServices An indirect pointer to the PEI Services Table
published by the PEI Foundation.
@param[in] VariableNameSize The size of the VariableName buffer.
@param[in] VariableName On input, supplies the last VariableName that was
returned by GetNextVariableName(). On output, returns the Null-terminated
Unicode string of the current variable.
returned by GetNextVariableName(). On output,
returns the Null-terminated Unicode string of the
current variable.
@param[in] VendorGuid On input, supplies the last VendorGuid that was
returned by GetNextVariableName(). On output, returns the VendorGuid
of the current variable.
returned by GetNextVariableName(). On output,
returns the VendorGuid of the current variable.
@retval EFI_SUCCESS The function completed successfully.
@retval EFI_NOT_FOUND The next variable was not found.
@retval EFI_BUFFER_TOO_SMALL The VariableNameSize is too small for the result.
@retval EFI_INVALID_PARAMETER One of the parameters has an invalid value.
@retval EFI_DEVICE_ERROR The variable name could not be retrieved due to a hardware error.
@retval EFI_DEVICE_ERROR The variable name could not be retrieved due to
a hardware error.
**/
typedef
@ -116,7 +120,7 @@ struct _EFI_PEI_READ_ONLY_VARIABLE_PPI {
///
/// Inconsistent with specification here:
/// In Framework Spec, PeiCis0.91, the field is named as GetVariable and GetNextVariableName.
/// Keeping this inconsistance is for backward compatibility.
/// Keeping this inconsistancy for backward compatibility.
///
EFI_PEI_GET_VARIABLE PeiGetVariable; ///< A service to ascertain a given variable name.
EFI_PEI_GET_NEXT_VARIABLE_NAME PeiGetNextVariableName; ///< A service to ascertain a variable based upon a given, known variable

View File

@ -8,7 +8,7 @@
EFI_ACPI_S3_SAVE_PROTOCOL. This presaved information can then be restored in the S3
resume boot path using EFI_PEI_S3_RESUME_PPI. Architecturally, the S3 resume PEIM is the
last PEIM to be dispatched in the S3 resume boot path.
Before using this PPI, the caller has to ensure the necessary information for the S3 resume, such as
Before using this PPI, the caller must ensure the necessary information for the S3 resume, such as
the following, is available for the S3 resume boot path:
- EFI_ACPI_S3_RESUME_SCRIPT_TABLE script table. Type
EFI_ACPI_S3_RESUME_SCRIPT_TABLE is defined in the Intel Platform Innovation
@ -17,14 +17,14 @@
- The reserved memory range to be used for the S3 resume.
Otherwise, the S3 resume boot path may fail.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This PPI is defined in Framework for EFI S3 Resume Boot Path spec.
@ -46,11 +46,11 @@ typedef struct _EFI_PEI_S3_RESUME_PPI EFI_PEI_S3_RESUME_PPI;
Restores the platform to its preboot configuration for an S3 resume and
jumps to the OS waking vector.
@param PeiServices Pointer to the PEI Services Table
@param PeiServices The pointer to the PEI Services Table
@retval EFI_ABORTED Execution of the S3 resume boot script table failed.
@retval EFI_NOT_FOUND Some necessary information that is used for
the S3 resume boot path could not be located.
@retval EFI_NOT_FOUND Could not be locate some necessary information that
is used for the S3 resume boot path d.
**/
typedef

View File

@ -1,17 +1,17 @@
/** @file
This file declares Section Extraction PPI.
This file declares the Section Extraction PPI.
This PPI is defined in PEI CIS version 0.91. It supports encapsulating sections,
such as GUIDed sections used to authenticate the file encapsulation of other domain-specific wrapping.
Copyright (c) 2006-2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
@ -38,38 +38,46 @@ typedef struct _EFI_PEI_SECTION_EXTRACTION_PPI EFI_PEI_SECTION_EXTRACTION_PPI;
It will retrieve both encapsulation sections and leaf sections in their entirety,
exclusive of the section header.
@param PeiServices Pointer to the PEI Services Table.
@param PeiServices The pointer to the PEI Services Table.
@param This Indicates the calling context
@param SectionType Pointer to an EFI_SECTION_TYPE. If SectionType == NULL,
the contents of the entire section are returned in Buffer. If SectionType
@param SectionType The pointer to an EFI_SECTION_TYPE. If
SectionType == NULL, the contents of the entire
section are returned in Buffer. If SectionType
is not NULL, only the requested section is returned.
@param SectionDefinitionGuid Pointer to an EFI_GUID.
If SectionType == EFI_SECTION_GUID_DEFINED, SectionDefinitionGuid
indicates for which section GUID to search.
If SectionType != EFI_SECTION_GUID_DEFINED, SectionDefinitionGuid
is unused and is ignored.
@param SectionDefinitionGuid The pointer to an EFI_GUID.
If SectionType == EFI_SECTION_GUID_DEFINED,
SectionDefinitionGuid indicates for which section
GUID to search. If SectionType != EFI_SECTION_GUID_DEFINED,
SectionDefinitionGuid is unused and is ignored.
@param SectionInstance If SectionType is not NULL, indicates which
instance of the requested section type to return.
@param Buffer Pointer to a pointer to a buffer in which the section
contents are returned.
@param BufferSize A pointer to a caller-allocated UINT32. On input, *BufferSize
indicates the size in bytes of the memory region pointed to by Buffer. On output,
*BufferSize contains the number of bytes required to read the section.
@param Buffer The pointer to a pointer to a buffer in which the
section contents are returned.
@param BufferSize A pointer to a caller-allocated UINT32. On input,
*BufferSize indicates the size in bytes of the
memory region pointed to by Buffer. On output,
*BufferSize contains the number of bytes required
to read the section.
@param AuthenticationStatus A pointer to a caller-allocated UINT32 in
which any metadata from encapsulating GUID-defined sections is returned.
which any metadata from encapsulating GUID-defined
sections is returned.
@retval EFI_SUCCESS The section was successfully processed and the section
@retval EFI_SUCCESS The section was successfully processed, and the section
contents were returned in Buffer.
@retval EFI_PROTOCOL_ERROR A GUID-defined section was encountered in
the file with its EFI_GUIDED_SECTION_PROCESSING_REQUIRED bit set, but
there was no corresponding GUIDed Section Extraction Protocol in the
handle database. *Buffer is unmodified.
@retval EFI_NOT_FOUND The requested section does not exist.*Buffer is unmodified.
@retval EFI_OUT_OF_RESOURCES The system has insufficient resources to process the request.
the file with its EFI_GUIDED_SECTION_PROCESSING_REQUIRED
bit set, but there was no corresponding GUIDed
Section Extraction Protocol in the handle database.
*Buffer is unmodified.
@retval EFI_NOT_FOUND The requested section does not exist.*Buffer is
unmodified.
@retval EFI_OUT_OF_RESOURCES The system has insufficient resources to process
the request.
@retval EFI_INVALID_PARAMETER The SectionStreamHandle does not exist.
@retval EFI_WARN_TOO_SMALL The size of the input buffer is insufficient to
contain the requested section. The input buffer is filled and contents are
section contents are truncated.
contain the requested section. The input buffer
is filled and contents are section contents are
truncated.
**/
typedef

View File

@ -1,18 +1,18 @@
/** @file
This file declares Security Architectural PPI.
This file declares the Security Architectural PPI.
This PPI is installed by some platform PEIM that abstracts the security policy to the PEI
This PPI is installed by a platform PEIM that abstracts the security policy to the PEI
Foundation, namely the case of a PEIM's authentication state being returned during the PEI section
extraction process.
Copyright (c) 2006, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This PPI is defined in PEI CIS.
@ -34,14 +34,17 @@ typedef struct _EFI_PEI_SECURITY_PPI EFI_PEI_SECURITY_PPI;
Allows the platform builder to implement a security policy in response
to varying file authentication states.
@param PeiServices Pointer to the PEI Services Table.
@param This Interface pointer that implements the particular EFI_PEI_SECURITY_PPI instance.
@param AuthenticationStatus Status returned by the verification service as part of section extraction.
@param FfsFileHeader Pointer to the file under review.
@param DeferExecution Pointer to a variable that alerts the PEI Foundation to defer execution of a PEIM.
@param PeiServices The pointer to the PEI Services Table.
@param This Interface pointer that implements the particular
EFI_PEI_SECURITY_PPI instance.
@param AuthenticationStatus Status returned by the verification service as
part of section extraction.
@param FfsFileHeader The pointer to the file under review.
@param DeferExecution The pointer to a variable that alerts the PEI
Foundation to defer execution of a PEIM.
@retval EFI_SUCCESS The service performed its action successfully.
@retval EFI_SECURITY_VIOLATION The object cannot be trusted
@retval EFI_SECURITY_VIOLATION The object cannot be trusted.
**/
typedef
EFI_STATUS

View File

@ -2,18 +2,18 @@
This file declares the 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.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This PPI is defined in Framework of EFI SmBus PPI spec.
Version 0.9
Version 0.9.
**/
@ -37,14 +37,15 @@ typedef struct _EFI_PEI_SMBUS_PPI EFI_PEI_SMBUS_PPI;
@param[in] SlaveAddress The SMBUS hardware address to which the SMBUS
device is preassigned or allocated.
@param[in] Command This command is transmitted by the SMBus host
controller to the SMBus slave device and the interpretation is
SMBus slave device specific.
controller to the SMBus slave device, and the
interpretation is SMBus slave device specific.
@param[in] Operation Signifies which particular SMBus hardware protocol
instance to use to execute the SMBus transactions.
@param[in] PecCheck Defines if Packet Error Code (PEC) checking is required
for this operation.
@param[in, out] Length The number of bytes for this operation
@param[in, out] Buffer Contains the value of data to execute to the SMBus slave device.
@param[in] PecCheck Defines if Packet Error Code (PEC) checking is
required for this operation.
@param[in, out] Length The number of bytes for this operation.
@param[in, out] Buffer Contains the value of data to execute to the SMBus
slave device.
@retval EFI_SUCCESS The last data that was returned from the access
matched the poll exit criteria.
@ -53,11 +54,12 @@ typedef struct _EFI_PEI_SMBUS_PPI EFI_PEI_SMBUS_PPI;
Timeout is determined by the SMBus host controller device.
@retval EFI_OUT_OF_RESOURCES The request could not be completed
due to a lack of resources.
@retval EFI_DEVICE_ERROR The request was not completed because
a failure was recorded in the Host Status Register bit.
@retval EFI_INVALID_PARAMETER Operation is not defined in EFI_SMBUS_OPERATION.
@retval EFI_INVALID_PARAMETER Length/Buffer is NULL for operations except for EfiSmbusQuickRead and
EfiSmbusQuickWrite. Length is outside the range of valid values.
@retval EFI_DEVICE_ERROR The request was not completed because a failure
was recorded in the Host Status Register bit.
@retval EFI_INVALID_PARAMETER The operation is not defined in EFI_SMBUS_OPERATION.
@retval EFI_INVALID_PARAMETER Length/Buffer is NULL for operations except for
EfiSmbusQuickRead and EfiSmbusQuickWrite. Length
is outside the range of valid values.
@retval EFI_UNSUPPORTED The SMBus operation or PEC is not supported.
@retval EFI_BUFFER_TOO_SMALL Buffer is not sufficient for this operation.
@ -103,13 +105,16 @@ EFI_STATUS
@param[in] PeiServices A pointer to the system PEI Services Table.
@param[in] This A pointer to the EFI_PEI_SMBUS_PPI instance.
@param[in] ArpAll A Boolean expression that indicates if the host drivers need
to enumerate all the devices or enumerate only the device that is identified
by SmbusUdid. If ArpAll is TRUE, SmbusUdid and SlaveAddress are optional and ignored if entered.
If ArpAll is FALSE, ArpDevice will enumerate SmbusUdid and the address
will be at SlaveAddress.
@param[in] ArpAll A Boolean expression that indicates if the host
drivers need to enumerate all the devices or to
enumerate only the device that is identified
by SmbusUdid. If ArpAll is TRUE, SmbusUdid and
SlaveAddress are optional and ignored if entered.
If ArpAll is FALSE, ArpDevice will enumerate
SmbusUdid, and the address will be at SlaveAddress.
@param[in] SmbusUdid The targeted SMBus Unique Device Identifier (UDID).
The UDID may not exist for SMBus devices with fixed addresses.
The UDID may not exist for SMBus devices with fixed
addresses.
@param[in, out] SlaveAddress The new SMBus address for the slave device for
which the operation is targeted.
This address may be NULL.
@ -121,7 +126,7 @@ EFI_STATUS
@retval EFI_TIMEOUT The SMBus slave device did not respond.
@retval EFI_DEVICE_ERROR The request was not completed because the transaction failed.
@retval EFI_UNSUPPORTED ArpDevice() is not implemented by this PEIM.
This return value is not defined in Framwork Specification.
This return value is not defined in the Framework Specification.
This return value was introduced in the PI Specification.
**/
@ -141,13 +146,13 @@ EFI_STATUS
@param[in] PeiServices A pointer to the system PEI Services Table.
@param[in] This A pointer to the EFI_PEI_SMBUS_PPI instance.
@param[in, out] Length Size of the buffer that contains the SMBus device map.
@param[in, out] Length The size of the buffer that contains the SMBus device map.
@param[in, out] SmbusDeviceMap The pointer to the device map as enumerated
by the SMBus controller driver.
@retval EFI_SUCCESS The device map was returned correctly in the buffer.
@retval EFI_UNSUPPORTED GetArpMap() are not implemented by this PEIM.
This return value was not defined in Framwork Specification.
This return value was not defined in the Framework Specification.
This return value was introduced in the PI Specification.
**/
@ -165,13 +170,13 @@ EFI_STATUS
propagate to other PEIMs that are registered for a callback.
The Notify() function registers all the callback functions to allow the
bus driver to call these functions when the SlaveAddress/Data pair happens.
bus driver to call these functions when the SlaveAddress/Data pair occur.
All functions to be registered with EFI_PEI_SMBUS_PPI_NOTIFY must be of type
EFI_PEI_SMBUS_NOTIFY_FUNCTION.
@param[in] PeiServices A pointer to the system PEI Services Table.
@param[in] This A pointer to the EFI_PEI_SMBUS_PPI instance.
@param[in] SlaveAddress Address that the host controller detects as
@param[in] SlaveAddress The address that the host controller detects as
sending a message and triggers all the registered functions.
@param[in] Data Data that the host controller detects as sending a message
and triggers all the registered functions.
@ -180,7 +185,7 @@ EFI_STATUS
@retval EFI_SUCCESS NotifyFunction has been registered.
@retval EFI_UNSUPPORTED Notify() are not implemented by this PEIM.
This return value is not defined in Framwork Specification.
This return value is not defined in the Framework Specification.
This return value was introduced in the PI Specification.
**/

View File

@ -2,14 +2,14 @@
This protocol is used to prepare all information that is needed for the S3 resume boot path. This
protocol is not required for all platforms.
Copyright (c) 2006 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This Protocol is defined in Framework of S3 Resume Boot Path Spec.
@ -79,9 +79,9 @@ EFI_STATUS
scope of this specification.
@param This A pointer to the EFI_ACPI_S3_SAVE_PROTOCOL instance.
@param Size The returned size of legacy memory below 1MB.
@param Size The returned size of legacy memory below 1MB.
@retval EFI_SUCCESS Size is successfully returned.
@retval EFI_SUCCESS Size was successfully returned.
@retval EFI_INVALID_PARAMETER The pointer Size is NULL.
**/
@ -96,9 +96,9 @@ EFI_STATUS
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
information can include the following:
- The Framework boot script table, containing all necessary operations to initialize the platform
- ACPI table information, such as RSDT, through which the OS waking vector can be located
- Range of reserved memory that can be used on the S3 resume boot path
- The Framework boot script table, containing all necessary operations to initialize the platform.
- ACPI table information, such as RSDT, through which the OS waking vector can be located.
- The range of reserved memory that can be used on the S3 resume boot path.
This protocol can be used after the Framework makes sure that the boot process is complete and
that no hardware has been left unconfigured. Where to call this protocol to save information is implementation-specific.
In the case of an EFI-aware OS, ExitBootServices() can be a choice to provide this hook.

View File

@ -2,20 +2,20 @@
This protocol provides some basic services to support publishing ACPI system tables. The
services handle many of the more mundane tasks that are required to publish a set of tables. The
services will:
- Generate common tables.
- Generate common tables.
- Update the table links.
- Ensure that tables are properly aligned and use correct types of memory.
- Update checksum values and IDs.
- Complete the final installation of the tables.
Copyright (c) 2007, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This Protocol is defined in Framework ACPI Specification.
@ -48,9 +48,9 @@ typedef struct _EFI_ACPI_SUPPORT_PROTOCOL EFI_ACPI_SUPPORT_PROTOCOL;
@param This A pointer to the EFI_ACPI_SUPPORT_PROTOCOL instance.
@param Index The zero-based index of the table to retrieve.
@param Table Pointer for returning the table buffer.
@param Table The pointer for returning the table buffer.
@param Version Updated with the ACPI versions to which this table belongs.
@param Handle Pointer for identifying the table.
@param Handle The pointer for identifying the table.
@retval EFI_SUCCESS The function completed successfully.
@retval EFI_NOT_FOUND The requested index is too large and a table was not found.
@ -70,11 +70,11 @@ EFI_STATUS
Used to add, remove, or update ACPI tables.
@param This A pointer to the EFI_ACPI_SUPPORT_PROTOCOL instance.
@param Table Pointer to the new table to add or update.
@param Table The pointer to the new table to add or update.
@param Checksum If TRUE, indicates that the checksum should be
calculated for this table.
@param Version Indicates to which version(s) of ACPI the table should be added.
@param Handle Pointer to the handle of the table to remove or update.
@param Handle The pointer to the handle of the table to remove or update.
@retval EFI_SUCCESS The function completed successfully.
@retval EFI_INVALID_PARAMETER *Handle was zero and Table was NULL.
@ -129,7 +129,7 @@ struct _EFI_ACPI_SUPPORT_PROTOCOL {
EFI_ACPI_GET_ACPI_TABLE GetAcpiTable;
///
/// Adds, removes, or updates ACPI tables
/// Adds, removes, or updates ACPI tables.
///
EFI_ACPI_SET_ACPI_TABLE SetAcpiTable;

View File

@ -2,14 +2,14 @@
This protocol is used to store or record various boot scripts into boot
script tables.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This protocol defined in the Boot Script Specification, Version 0.91.
@ -20,7 +20,7 @@
#define _BOOT_SCRIPT_SAVE_PROTOCOL_H_
///
/// S3 Save Protocol GUID
/// S3 Save Protocol GUID.
///
#define EFI_BOOT_SCRIPT_SAVE_PROTOCOL_GUID \
{ \
@ -33,13 +33,13 @@ typedef struct _EFI_BOOT_SCRIPT_SAVE_PROTOCOL EFI_BOOT_SCRIPT_SAVE_PROTOCOL;
Adds a record into a specified Framework boot script table.
@param This A pointer to the EFI_BOOT_SCRIPT_SAVE_PROTOCOL instance.
@param TableName Name of the script table. Currently, the only meaningful
@param TableName The name of the script table. Currently, the only meaningful
value is EFI_ACPI_S3_RESUME_SCRIPT_TABLE.
@param OpCode The operation code (opcode) number.
@param ... Argument list that is specific to each opcode.
@param ... The argument list that is specific to each opcode.
@retval EFI_SUCCESS The operation succeeded. A record was added into the specified script table.
@retval EFI_INVALID_PARAMETER The parameter is illegal or the given boot script is not supported.
@retval EFI_INVALID_PARAMETER The parameter is illegal, or the given boot script is not supported.
@retval EFI_OUT_OF_RESOURCES There is insufficient memory to store the boot script.
**/
@ -56,7 +56,7 @@ EFI_STATUS
Closes the specified script table.
@param This A pointer to the EFI_BOOT_SCRIPT_SAVE_PROTOCOL instance.
@param TableName Name of the script table.
@param TableName The name of the script table.
@param Address A pointer to the physical address where the table begins.
@retval EFI_SUCCESS The table was successfully returned.

View File

@ -6,18 +6,18 @@
It is different from the PI 1.2 CPU I/O 2 Protocol, which is a boot services only protocol
and may not be used by runtime drivers after ExitBootServices().
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
CPU IO Protocol is defined in Framework of EFI CPU IO Protocol Spec
Version 0.9
Version 0.9.
**/

View File

@ -3,14 +3,14 @@
data and those wishing to be made aware of all information that
has been logged.
Copyright (c) 2007 - 2010, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
The Data Hub Protocol is defined in Framework for EFI Data Hub Specification
@ -99,24 +99,27 @@ EFI_STATUS
@param This The EFI_DATA_HUB_PROTOCOL instance.
@param MonotonicCount On input, it specifies the Record to return.
An input of zero means to return the first record, as does an input of one.
@param FilterDriver If FilterDriver is not passed in a MonotonicCount of zero,
it means to return the first data record. If FilterDriver is passed in,
then a MonotonicCount of zero means to return the first data not yet read
An input of zero means to return the first record,
as does an input of one.
@param FilterDriver If FilterDriver is not passed in a MonotonicCount
of zero, it means to return the first data record.
If FilterDriver is passed in, then a MonotonicCount
of zero means to return the first data not yet read
by FilterDriver.
@param Record Returns a dynamically allocated memory buffer with a data
record that matches MonotonicCount.
@param Record Returns a dynamically allocated memory buffer with
a data record that matches MonotonicCount.
@retval EFI_SUCCESS Data was returned in Record.
@retval EFI_INVALID_PARAMETER FilterDriver was passed in but does not exist.
@retval EFI_NOT_FOUND MonotonicCount does not match any data record
in the system. If a MonotonicCount of zero was passed in, then no
data records exist in the system.
in the system. If a MonotonicCount of zero was
passed in, then no data records exist in the system.
@retval EFI_OUT_OF_RESOURCES Record was not returned due to lack
of system resources.
@note Inconsistent with specification here:
In Framework for EFI Data Hub Specification, Version 0.9, This definition is named as
EFI_DATA_HUB_GET_NEXT_DATA_RECORD. The inconsistency is maintained for backward compatibility.
In Framework for EFI Data Hub Specification, Version 0.9, This definition
is named as EFI_DATA_HUB_GET_NEXT_DATA_RECORD. The inconsistency is
maintained for backward compatibility.
**/
typedef
EFI_STATUS
@ -133,22 +136,28 @@ EFI_STATUS
@param This The EFI_DATA_HUB_PROTOCOL instance.
@param FilterEvent The EFI_EVENT to signal whenever data that matches
FilterClass is logged in the system.
@param FilterTpl The maximum EFI_TPL at which FilterEvent can be signaled.
It is strongly recommended that you use the lowest EFI_TPL possible.
@param FilterTpl The maximum EFI_TPL at which FilterEvent can be
signaled. It is strongly recommended that you use
the lowest EFI_TPL possible.
@param FilterClass FilterEvent will be signaled whenever a bit
in EFI_DATA_RECORD_HEADER.DataRecordClass is also set in FilterClass.
If FilterClass is zero, no class-based filtering will be performed.
in EFI_DATA_RECORD_HEADER.DataRecordClass is also
set in FilterClass. If FilterClass is zero, no
class-based filtering will be performed.
@param FilterDataRecordGuid FilterEvent will be signaled whenever
FilterDataRecordGuid matches EFI_DATA_RECORD_HEADER.DataRecordGuid.
If FilterDataRecordGuid is NULL, then no GUID-based filtering will be performed.
FilterDataRecordGuid matches
EFI_DATA_RECORD_HEADER.DataRecordGuid.
If FilterDataRecordGuid is NULL, then no GUID-based
filtering will be performed.
@retval EFI_SUCCESS The filter driver event was registered
@retval EFI_ALREADY_STARTED FilterEvent was previously registered and cannot be registered again.
@retval EFI_ALREADY_STARTED FilterEvent was previously registered and cannot
be registered again.
@retval EFI_OUT_OF_RESOURCES The filter driver event was not registered
due to lack of system resources.
@note Inconsistent with specification here:
In Framework for EFI Data Hub Specification, Version 0.9, This definition is named as
EFI_DATA_HUB_REGISTER_DATA_FILTER_DRIVER. The inconsistency is maintained for backward compatibility.
In Framework for EFI Data Hub Specification, Version 0.9, This definition
is named as EFI_DATA_HUB_REGISTER_DATA_FILTER_DRIVER. The inconsistency
is maintained for backward compatibility.
**/
typedef
EFI_STATUS
@ -170,8 +179,9 @@ EFI_STATUS
@retval EFI_SUCCESS The filter driver represented by FilterEvent was shut off.
@retval EFI_NOT_FOUND FilterEvent did not exist.
@note Inconsistent with specification here:
In Framework for EFI Data Hub Specification, Version 0.9, This definition is named as
EFI_DATA_HUB_UNREGISTER_DATA_FILTER_DRIVER. The inconsistency is maintained for backward compatibility.
In Framework for EFI Data Hub Specification, Version 0.9, This definition
is named as EFI_DATA_HUB_UNREGISTER_DATA_FILTER_DRIVER. The inconsistency
is maintained for backward compatibility.
**/
typedef
EFI_STATUS

View File

@ -7,18 +7,18 @@
Volume Protocol also provides mechanisms for determining and modifying some
attributes of the firmware volume.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This protocol is defined in Firmware Volume specification.
Version 0.9
Version 0.9.
**/
@ -84,10 +84,10 @@ typedef UINT64 FRAMEWORK_EFI_FV_ATTRIBUTES;
/**
Retrieves attributes, insures positive polarity of attribute bits, and returns
resulting attributes in output parameter
resulting attributes in an output parameter.
@param This Indicates the EFI_FIRMWARE_VOLUME_PROTOCOL instance.
@param Attributes Output buffer containing attributes
@param Attributes Output buffer containing attributes.
@retval EFI_SUCCESS The firmware volume attributes were returned.
**/
@ -109,7 +109,7 @@ EFI_STATUS
unsuccessful return, Attributes is not modified
and the firmware volume settings are not changed.
@retval EFI_INVALID_PARAMETER A bit in Attributes was invalid
@retval EFI_INVALID_PARAMETER A bit in Attributes was invalid.
@retval EFI_SUCCESS The requested firmware volume attributes were set
and the resulting EFI_FV_ATTRIBUTES is returned in
Attributes.
@ -128,28 +128,33 @@ EFI_STATUS
and returns data in Buffer.
@param This The EFI_FIRMWARE_VOLUME_PROTOCOL instance.
@param NameGuid Pointer to EFI_GUID, which is the filename of the file to read
@param Buffer Pointer to pointer to buffer in which contents of file are returned.
@param NameGuid The pointer to EFI_GUID, which is the filename of
the file to read.
@param Buffer The pointer to pointer to buffer in which contents of file are returned.
<br>
If Buffer is NULL, only type, attributes, and size are returned as
there is no output buffer.
If Buffer is NULL, only type, attributes, and size
are returned as there is no output buffer.
<br>
If Buffer != NULL and *Buffer == NULL, the output buffer is allocated
from BS pool by ReadFile
If Buffer != NULL and *Buffer == NULL, the output
buffer is allocated from BS pool by ReadFile.
<br>
If Buffer != NULL and *Buffer != NULL, the output buffer has been
allocated by the caller and is being passed in.
If Buffer != NULL and *Buffer != NULL, the output
buffer has been allocated by the caller and is being
passed in.
@param BufferSize On input: The buffer size. On output: The size
required to complete the read
@param FoundType Pointer to type of the file whose data is returned
@param FileAttributes Pointer to attributes of the file whose data is returned
@param AuthenticationStatus Pointer to authentication status of the data
required to complete the read.
@param FoundType The pointer to the type of the file whose data
is returned.
@param FileAttributes The pointer to attributes of the file whose data
is returned.
@param AuthenticationStatus The pointer to the authentication status of the data.
@retval EFI_SUCCESS The call completed successfully
@retval EFI_SUCCESS The call completed successfully.
@retval EFI_WARN_BUFFER_TOO_SMALL The buffer is too small to contain the requested output.
The buffer is filled and the output is truncated.
The buffer filled, and the output is truncated.
@retval EFI_NOT_FOUND NameGuid was not found in the firmware volume.
@retval EFI_DEVICE_ERROR A hardware error occurred when attempting to access the firmware volume.
@retval EFI_DEVICE_ERROR A hardware error occurred when attempting to
access the firmware volume.
@retval EFI_ACCESS_DENIED The firmware volume is configured to disallow reads.
@retval EFI_OUT_OF_RESOURCES An allocation failure occurred.
@ -170,29 +175,32 @@ EFI_STATUS
Read the requested section from the specified file and returns data in Buffer.
@param This Indicates the EFI_FIRMWARE_VOLUME_PROTOCOL instance.
@param NameGuid Filename identifying the file from which to read
@param SectionType The section type to retrieve
@param SectionInstance The instance of SectionType to retrieve
@param Buffer Pointer to pointer to buffer in which contents of file are returned.
@param NameGuid Filename identifying the file from which to read.
@param SectionType The section type to retrieve.
@param SectionInstance The instance of SectionType to retrieve.
@param Buffer Pointer to pointer to buffer in which contents of
a file are returned.
<br>
If Buffer is NULL, only type, attributes, and size are returned as
there is no output buffer.
If Buffer is NULL, only type, attributes, and size
are returned as there is no output buffer.
<br>
If Buffer != NULL and *Buffer == NULL, the output buffer is allocated
from BS pool by ReadFile
If Buffer != NULL and *Buffer == NULL, the output
buffer is allocated from BS pool by ReadFile.
<br>
If Buffer != NULL and *Buffer != NULL, the output buffer has been
allocated by the caller and is being passed in.
@param BufferSize Pointer to the buffer size passed in, and on output the size
required to complete the read
@param AuthenticationStatus Pointer to the authentication status of the data
If Buffer != NULL and *Buffer != NULL, the output
buffer has been allocated by the caller and is being
passed in.
@param BufferSize The pointer to the buffer size passed in, and on
output the size required to complete the read.
@param AuthenticationStatus The pointer to the authentication status of the data.
@retval EFI_SUCCESS The call completed successfully.
@retval EFI_WARN_BUFFER_TOO_SMALL The buffer is too small to contain the requested output.
The buffer is filled and the output is truncated.
@retval EFI_OUT_OF_RESOURCES An allocation failure occurred.
@retval EFI_NOT_FOUND Name was not found in the firmware volume.
@retval EFI_DEVICE_ERROR A hardware error occurred when attempting to access the firmware volume.
@retval EFI_NOT_FOUND The name was not found in the firmware volume.
@retval EFI_DEVICE_ERROR A hardware error occurred when attempting to
access the firmware volume.
@retval EFI_ACCESS_DENIED The firmware volume is configured to disallow reads.
**/
@ -225,19 +233,23 @@ typedef struct {
Write the supplied file (NameGuid) to the FV.
@param This Indicates the EFI_FIRMWARE_VOLUME_PROTOCOL instance.
@param NumberOfFiles Indicates the number of file records pointed to by FileData
@param WritePolicy Indicates the level of reliability of the write with respect to
things like power failure events.
@param FileData A pointer to an array of EFI_FV_WRITE_FILE_DATA structures. Each
element in the array indicates a file to write, and there are
NumberOfFiles elements in the input array.
@param NumberOfFiles Indicates the number of file records pointed to
by FileData.
@param WritePolicy Indicates the level of reliability of the write
with respect to things like power failure events.
@param FileData A pointer to an array of EFI_FV_WRITE_FILE_DATA
structures. Each element in the array indicates
a file to write, and there are NumberOfFiles
elements in the input array.
@retval EFI_SUCCESS The write completed successfully.
@retval EFI_OUT_OF_RESOURCES The firmware volume does not have enough free space to store file(s).
@retval EFI_DEVICE_ERROR A hardware error occurred when attempting to access the firmware volume.
@retval EFI_OUT_OF_RESOURCES The firmware volume does not have enough free
space to store file(s).
@retval EFI_DEVICE_ERROR A hardware error occurred when attempting to
access the firmware volume.
@retval EFI_WRITE_PROTECTED The firmware volume is configured to disallow writes.
@retval EFI_NOT_FOUND A delete was requested, but the requested file was not
found in the firmware volume.
@retval EFI_NOT_FOUND A delete was requested, but the requested file was
not found in the firmware volume.
@retval EFI_INVALID_PARAMETER A delete was requested with a multiple file write.
An unsupported WritePolicy was requested.
An unknown file type was specified.
@ -256,13 +268,13 @@ EFI_STATUS
Given the input key, search for the next matching file in the volume.
@param This Indicates the EFI_FIRMWARE_VOLUME_PROTOCOL instance.
@param Key Pointer to a caller allocated buffer that contains an implementation
specific key that is used to track where to begin searching on
successive calls.
@param FileType Pointer to the file type to filter for
@param NameGuid Pointer to Guid filename of the file found
@param Attributes Pointer to Attributes of the file found
@param Size Pointer to Size in bytes of the file found
@param Key Pointer to a caller allocated buffer that contains
an implementation-specific key that is used to track
where to begin searching on successive calls.
@param FileType The pointer to the file type to filter for.
@param NameGuid The pointer to Guid filename of the file found.
@param Attributes The pointer to Attributes of the file found.
@param Size The pointer to Size in bytes of the file found.
@retval EFI_SUCCESS The output parameters are filled with data obtained from
the first matching file that was found.

View File

@ -1,17 +1,17 @@
/** @file
This file provides control over block-oriented firmware devices.
Copyright (c) 2006 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This protocol is defined in framework spec: Firmware Volume Block specification
This protocol is defined in framework spec: Firmware Volume Block Specification.
**/
@ -23,7 +23,7 @@
typedef struct _FRAMEWORK_EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL FRAMEWORK_EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL;
///
/// type of EFI FVB attribute per Framework spec
/// The type of EFI FVB attribute per the Framework specification.
///
typedef UINT32 EFI_FVB_ATTRIBUTES;
@ -112,17 +112,17 @@ EFI_STATUS
@param Lba Indicates the block for which to return the size.
@param BlockSize Pointer to a caller-allocated UINTN in which
@param BlockSize The pointer to a caller-allocated UINTN in which
the size of the block is returned.
@param NumberOfBlocks Pointer to a caller-allocated UINTN in
@param NumberOfBlocks The pointer to a caller-allocated UINTN in
which the number of consecutive blocks,
starting with Lba, is returned. All
blocks in this range have a size of
BlockSize.
@retval EFI_SUCCESS The firmware volume base address is returned.
@retval EFI_SUCCESS The firmware volume base address was returned.
@retval EFI_INVALID_PARAMETER The requested LBA is out of range.
@ -160,18 +160,18 @@ EFI_STATUS
@param Offset Offset into the block at which to begin reading.
@param NumBytes Pointer to a UINTN. At entry, *NumBytes
@param NumBytes The pointer to a UINTN. At entry, *NumBytes
contains the total size of the buffer. At
exit, *NumBytes contains the total number of
bytes read.
@param Buffer Pointer to a caller-allocated buffer that will
@param Buffer The pointer to a caller-allocated buffer that will
be used to hold the data that is read.
@retval EFI_SUCCESS The firmware volume was read successfully
and contents are in Buffer.
@retval EFI_BAD_BUFFER_SIZE Read attempted across an LBA
@retval EFI_BAD_BUFFER_SIZE A read was attempted across an LBA
boundary. On output, NumBytes
contains the total number of bytes
returned in Buffer.
@ -210,8 +210,8 @@ EFI_STATUS
EraseBlocks() function first to erase the specified block to
write. A block erase cycle will transition bits from the
(NOT)EFI_FVB_ERASE_POLARITY state back to the
EFI_FVB_ERASE_POLARITY state. Implementations should be
mindful that the firmware volume might be in the WriteDisabled
EFI_FVB_ERASE_POLARITY state. Implementors should note
that the firmware volume might be in the WriteDisabled
state. If it is in this state, the Write() function must
return the status code EFI_ACCESS_DENIED without modifying the
contents of the firmware volume. The Write() function must
@ -230,10 +230,10 @@ EFI_STATUS
@param Offset Offset into the block at which to begin writing.
@param NumBytes Pointer to a UINTN. Input: the total size of the buffer.
@param NumBytes The pointer to a UINTN. Input: the total size of the buffer.
Output: the total number of bytes actually written.
@param Buffer Pointer to a caller-allocated buffer that
@param Buffer The pointer to a caller-allocated buffer that
contains the source for the write.
@retval EFI_SUCCESS The firmware volume was written successfully.
@ -265,7 +265,7 @@ EFI_STATUS
///
/// EFI_LBA_LIST_TERMINATOR
/// EFI_LBA_LIST_TERMINATOR.
///
#define FRAMEWORK_EFI_LBA_LIST_TERMINATOR 0xFFFFFFFFFFFFFFFFULL
@ -280,7 +280,7 @@ EFI_STATUS
volume (it has a larger index than the last block of the
firmware volume), the EraseBlocks() function must return the
status code EFI_INVALID_PARAMETER without modifying the contents
of the firmware volume. Implementations should be mindful that
of the firmware volume. Implementors should note that
the firmware volume might be in the WriteDisabled state. If it
is in this state, the EraseBlocks() function must return the
status code EFI_ACCESS_DENIED without modifying the contents of
@ -304,7 +304,7 @@ EFI_STATUS
(5-7 and 10-11) are to be erased: EraseBlocks
(This, 5, 3, 10, 2, EFI_LBA_LIST_TERMINATOR);
@retval EFI_SUCCESS The erase request was successfully
@retval EFI_SUCCESS The erase request successfully
completed.
@retval EFI_ACCESS_DENIED The firmware volume is in the
@ -343,7 +343,7 @@ struct _FRAMEWORK_EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL {
FRAMEWORK_EFI_FVB_WRITE Write;
FRAMEWORK_EFI_FVB_ERASE_BLOCKS EraseBlocks;
///
/// Handle of the parent firmware volume.
/// The handle of the parent firmware volume.
///
EFI_HANDLE ParentHandle;
};

View File

@ -5,14 +5,14 @@
packet of data. This will also allow the caller to post messages
into the configuration drivers internal mailbox.
Copyright (c) 2006 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Module Name: FrameworkFormBrowser.h
@ -64,32 +64,37 @@ typedef struct {
@param This A pointer to the EFI_FORM_BROWSER_PROTOCOL instance.
@param UseDatabase Determines whether the HII database is to be
used to gather information. If the value is FALSE, the configuration
driver will get the information provided in the passed-in Packet parameters.
@param Handle A pointer to an array of HII handles to display. This value
should correspond to the value of the HII form package that is required to
be displayed.
used to gather information. If the value is FALSE,
the configuration driver will get the information
provided in the passed-in Packet parameters.
@param Handle A pointer to an array of HII handles to display.
This value should correspond to the value of the
HII form package that is required to be displayed.
@param HandleCount The number of handles in the array specified by Handle.
@param Packet A pointer to a set of data containing pointers to IFR
and/or string data.
@param CallbackHandle The handle to the driver's callback interface.
This parameter is used only when the UseDatabase parameter is FALSE
and an application wants to register a callback with the browser
This parameter is used only when the UseDatabase
parameter is FALSE and an application wants to
register a callback with the browser.
@param NvMapOverride This buffer is used only when there is no NV variable
to define the current settings and the caller needs to provide to the browser
the current settings for the "fake" NV variable.
to define the current settings and the caller needs
to provide to the browser the current settings for
the "fake" NV variable.
@param ScreenDimensions Allows the browser to be called so that it occupies
a portion of the physical screen instead of dynamically determining the
screen dimensions.
@param ResetRequired This BOOLEAN value denotes whether a reset
is required based on the data that might have been changed. The ResetRequired
parameter is primarily applicable for configuration applications, and is an
a portion of the physical screen instead of dynamically
determining the screen dimensions.
@param ResetRequired This BOOLEAN value denotes whether a reset is required
based on the data that might have been changed.
The ResetRequired parameter is primarily applicable
for configuration applications, and is an
optional parameter.
@retval EFI_SUCCESS The function completed successfully
@retval EFI_SUCCESS The function completed successfully.
@retval EFI_NOT_FOUND The variable was not found.
@retval EFI_BUFFER_TOO_SMALL The DataSize is too small for the result.
DataSize has been updated with the size needed to complete the request.
DataSize has been updated with the size needed to
complete the request.
@retval EFI_INVALID_PARAMETER One of the parameters has an invalid value.
@retval EFI_DEVICE_ERROR The variable could not be saved due to a hardware failure.
@ -114,9 +119,11 @@ EFI_STATUS
@param NumberOfLines The number of lines for the dialog box.
@param HotKey Defines whether a single character is parsed (TRUE)
and returned in KeyValue or if a string is returned in StringBuffer.
and returned in KeyValue, or if a string is returned
in StringBuffer.
@param MaximumStringSize The maximum size in bytes of a typed-in string.
Because each character is a CHAR16, the minimum string returned is two bytes.
Because each character is a CHAR16, the minimum
string returned is two bytes.
@param StringBuffer The passed-in pointer to the buffer that will hold
the typed in string if HotKey is FALSE.
@param KeyValue The EFI_INPUT_KEY value returned if HotKey is TRUE.

View File

@ -5,14 +5,14 @@
specific drivers that want to export access to custom hardware storage or
publish IFR that need to call back the original driver.
Copyright (c) 2006 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This protocol is defined in HII spec 0.92.
@ -41,46 +41,46 @@ typedef struct _EFI_FORM_CALLBACK_PROTOCOL EFI_FORM_CALLBACK_PROTOCOL;
/// defined in HII specification. These Flags of EFI_IFR_DATA_ENTRY should be defined
/// to describe the standard behavior of the browser after the callback.
///
/// If this flag is set, the browser will exit and reset after processing callback results
/// If this flag is set, the browser will exit and reset after processing callback results.
///
#define RESET_REQUIRED 1
///
/// If this flag is set, the browser will exit after processing callback results
/// If this flag is set, the browser will exit after processing callback results.
///
#define EXIT_REQUIRED 2
///
/// If this flag is set, the browser will save the NV data after processing callback results
/// If this flag is set, the browser will save the NV data after processing callback results.
///
#define SAVE_REQUIRED 4
///
/// If this flag is set, the browser will turn the NV flag on after processing callback results
/// If this flag is set, the browser will turn the NV flag on after processing callback results.
///
#define NV_CHANGED 8
///
/// If this flag is set, the browser will turn the NV flag off after processing callback results
/// If this flag is set, the browser will turn the NV flag off after processing callback results.
///
#define NV_NOT_CHANGED 16
#pragma pack(1)
typedef struct {
UINT8 OpCode; ///< Likely a string, numeric, or one-of
UINT8 Length; ///< Length of the EFI_IFR_DATA_ENTRY packet
UINT16 Flags; ///< Flags settings to determine what behavior is desired from the browser after the callback
VOID *Data; ///< The data in the form based on the op-code type - this is not a pointer to the data, the data follows immediately
UINT8 Length; ///< Length of the EFI_IFR_DATA_ENTRY packet.
UINT16 Flags; ///< Flags settings to determine what behavior is desired from the browser after the callback.
VOID *Data; ///< The data in the form based on the op-code type. This is not a pointer to the data; the data follows immediately.
///
/// If the OpCode is a OneOf or Numeric type - Data is a UINT16 value
/// If the OpCode is a String type - Data is a CHAR16[x] type
/// If the OpCode is a Checkbox type - Data is a UINT8 value
/// If the OpCode is a NV Access type - Data is a EFI_IFR_NV_DATA structure
/// If the OpCode is a OneOf or Numeric type - Data is a UINT16 value.
/// If the OpCode is a String type - Data is a CHAR16[x] type.
/// If the OpCode is a Checkbox type - Data is a UINT8 value.
/// If the OpCode is a NV Access type - Data is a EFI_IFR_NV_DATA structure.
///
} EFI_IFR_DATA_ENTRY;
typedef struct {
VOID *NvRamMap; ///< If the flag of the op-code specified retrieval of a copy of the NVRAM map,
VOID *NvRamMap; ///< If the flag of the op-code specified retrieval of a copy of the NVRAM map.
//
// this is a pointer to a buffer copy
//
UINT32 EntryCount; ///< How many EFI_IFR_DATA_ENTRY entries
UINT32 EntryCount; ///< Number of EFI_IFR_DATA_ENTRY entries.
//
// EFI_IFR_DATA_ENTRY Data[1]; // The in-line Data entries.
//
@ -88,15 +88,15 @@ typedef struct {
typedef union {
EFI_IFR_DATA_ARRAY DataArray; ///< Primarily used by those who call back to their drivers and use HII as a repository
EFI_IFR_PACKET DataPacket; ///< Primarily used by those which do not use HII as a repository
CHAR16 String[1]; ///< If returning an error - fill the string with null-terminated contents
EFI_IFR_DATA_ARRAY DataArray; ///< Primarily used by those that call back to their drivers and use HII as a repository.
EFI_IFR_PACKET DataPacket; ///< Primarily used by those that do not use HII as a repository.
CHAR16 String[1]; ///< If returning an error - fill the string with null-terminated contents.
} EFI_HII_CALLBACK_PACKET;
typedef struct {
FRAMEWORK_EFI_IFR_OP_HEADER Header;
UINT16 QuestionId; ///< Offset into the map
UINT8 StorageWidth; ///< Width of the value
UINT16 QuestionId; ///< Offset into the map.
UINT8 StorageWidth; ///< Width of the value.
//
// CHAR8 Data[1]; // The Data itself
//
@ -143,19 +143,21 @@ EFI_STATUS
@param This A pointer to the EFI_FORM_CALLBACK_PROTOCOL instance.
@param VariableName A NULL-terminated Unicode string that is the
name of the vendor's variable. Each VariableName is unique for each VendorGuid.
name of the vendor's variable. Each VariableName
is unique for each VendorGuid.
@param VendorGuid A unique identifier for the vendor.
@param Attributes Attributes bit-mask to set for the variable.
Inconsistent with specification here:
Attributes data type has been changed from UINT32 * to UINT32,
because the input paramter is not necessary to use pointer date type.
Attributes data type has been changed from
UINT32 * to UINT32, because the input paramter is
not necessary to use a pointer date type.
@param DataSize The size in bytes of the Buffer. A size of zero causes
the variable to be deleted.
@param Buffer The buffer containing the contents of the variable.
@param ResetRequired Returns a value from the driver that abstracts
this information and will enable a system to know if a system reset
is required to achieve the configuration changes being enabled through
this function.
@param ResetRequired Returns a value from the driver that abstracts this
information and will enable a system to know if a
system reset is required to achieve the configuration
changes being enabled through this function.
@retval EFI_SUCCESS The firmware has successfully stored the variable and
its data as defined by the Attributes.
@ -183,10 +185,11 @@ EFI_STATUS
@param This A pointer to the EFI_FORM_CALLBACK_PROTOCOL instance.
@param KeyValue A unique value which is sent to the original exporting
driver so that it can identify the type of data to expect. The format of
the data tends to vary based on the opcode that generated the callback.
driver so that it can identify the type of data
to expect. The format of the data tends to vary based
on the opcode that generated the callback.
@param Data A pointer to the data being sent to the original exporting driver.
@param Packet A pointer to a packet of information which a driver passes
@param Packet A pointer to a packet of information that a driver passes
back to the browser.
@return Status Code

View File

@ -3,14 +3,14 @@
used by resources that want to publish IFR/Font/String data and have it
collected by the Configuration engine.
Copyright (c) 2007 - 2010, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This protocol is defined in Framework for EFI Human Interface Infrastructure
@ -26,14 +26,14 @@
//
#include <Protocol/GraphicsOutput.h>
///
/// In both EDK and EDK II, incompatbile change is done to Framework HII protocol.
/// This change should cause a change of GUID in both of code and HII spec. But we
/// update the GUID in code in EDK and EDK II. The 0.92 spec is not updated. This
/// In both EDK and EDK II, there is an incompatbile change in the Framework HII protocol.
/// This change should cause a change of GUID in both of code and HII specification. But we
/// updated the GUID in code in EDK and EDK II. The 0.92 specification is not updated. This
/// is a known issue.
///
///
/// Note that EFI_HII_PROTOCOL_GUID is different from that defined in the Framework HII
/// 0.92 spec because the spec changed part of HII interfaces but did not update the protocol
/// 0.92 specification because the specification changed part of HII interfaces but did not update the protocol
/// GUID.
///
#define EFI_HII_PROTOCOL_GUID \
@ -51,9 +51,9 @@ typedef UINT32 RELOFST;
typedef struct _EFI_HII_PROTOCOL EFI_HII_PROTOCOL;
///
/// Note: Name difference between code and the Framework HII 0.92 spec.
/// Add FRAMEWORK_ prefix to avoid name confict with EFI_HII_HANDLE defined in the
/// UEFI 2.1d spec.
/// Note: Name difference between code and the Framework HII 0.92 specificaiton.
/// Add FRAMEWORK_ prefix to avoid a name confict with EFI_HII_HANDLE, defined in the
/// UEFI 2.1d specification.
///
typedef UINT16 FRAMEWORK_EFI_HII_HANDLE;
@ -91,7 +91,7 @@ typedef struct {
} EFI_HII_PACK_HEADER;
///
/// IFR package structure.
/// The IFR package structure.
/// Immediately following the EFI_HII_IFR_PACK structure will be a series of IFR opcodes.
///
typedef struct {
@ -105,48 +105,48 @@ typedef struct {
///
/// Header of the package.
///
EFI_HII_PACK_HEADER Header; ///< Must be filled in
EFI_HII_PACK_HEADER Header; ///< Must be filled in.
///
/// The image handle of the driver to which the package is referring.
///
EFI_HANDLE ImageHandle; ///< Must be filled in
EFI_HANDLE ImageHandle; ///< Must be filled in.
///
/// The handle of the device that is being described by this package.
///
EFI_HANDLE DeviceHandle; ///< Optional
EFI_HANDLE DeviceHandle; ///< Optional.
///
/// The handle of the parent of the device that is being described by this package.
///
EFI_HANDLE ControllerHandle; ///< Optional
EFI_HANDLE ControllerHandle; ///< Optional.
///
/// The handle that was registered to receive EFI_FORM_CALLBACK_PROTOCOL calls from other drivers.
///
EFI_HANDLE CallbackHandle; ///< Optional
EFI_HANDLE CallbackHandle; ///< Optional.
///
/// Note this field is not defined in the Framework HII 0.92 spec.
/// Note this field is not defined in the Framework HII 0.92 specificaiton.
/// Unused. Reserved for source code compatibility.
///
EFI_HANDLE COBExportHandle; ///< Optional
EFI_HANDLE COBExportHandle; ///< Optional.
} EFI_HII_HANDLE_PACK;
///
/// Variable package structure.
/// The variable package structure.
///
typedef struct {
///
/// Header of the package.
/// The header of the package.
///
EFI_HII_PACK_HEADER Header;
///
/// GUID of the EFI variable
/// The GUID of the EFI variable.
///
EFI_GUID VariableGuid;
///
/// Length in bytes of the EFI variable
/// The length in bytes of the EFI variable.
///
UINT32 VariableNameLength;
///
/// The unique value for this variable
/// The unique value for this variable.
///
UINT16 VariableId;
//
@ -155,11 +155,11 @@ typedef struct {
} EFI_HII_VARIABLE_PACK;
///
/// Device path package structure.
/// The device path package structure.
///
typedef struct {
///
/// Header of the package.
/// The header of the package.
///
EFI_HII_PACK_HEADER Header;
//
@ -169,7 +169,7 @@ typedef struct {
typedef struct {
///
/// Unique value that correlates to the original HII handle.
/// A unique value that correlates to the original HII handle.
///
FRAMEWORK_EFI_HII_HANDLE HiiHandle;
///
@ -179,31 +179,31 @@ typedef struct {
///
EFI_GUID PackageGuid;
///
/// Size of the EFI_HII_DATA_TABLE in bytes.
/// The size of the EFI_HII_DATA_TABLE in bytes.
///
UINT32 DataTableSize;
///
/// Byte offset from the start of this structure to the IFR data.
/// The byte offset from the start of this structure to the IFR data.
/// If the offset value is 0, then no IFR data is enclosed.
///
UINT32 IfrDataOffset;
///
/// Byte offset from the start of this structure to the string data.
/// The byte offset from the start of this structure to the string data.
/// If the offset value is 0, then no string data is enclosed.
///
UINT32 StringDataOffset;
///
/// Byte offset from the start of this structure to the variable data.
/// The byte offset from the start of this structure to the variable data.
/// If the offset value is 0, then no variable data is enclosed.
///
UINT32 VariableDataOffset;
///
/// Byte offset from the start of this structure to the device path data.
/// The byte offset from the start of this structure to the device path data.
/// If the offset value is 0, then no DevicePath data is enclosed.
///
UINT32 DevicePathOffset;
///
/// Number of VariableData[] elements in the array.
/// The number of VariableData[] elements in the array.
///
UINT32 NumberOfVariableData;
///
@ -219,7 +219,7 @@ typedef struct {
} EFI_HII_DATA_TABLE;
///
/// Structure defining format for exporting data from the HII Database.
/// The structure defining the format for exporting data from the HII Database.
///
typedef struct {
///
@ -236,7 +236,7 @@ typedef struct {
} EFI_HII_EXPORT_TABLE;
///
/// Structure used to pass data to update a form or form package
/// The structure used to pass data to update a form or form package
/// that has previously been registered with the EFI HII database.
///
typedef struct {
@ -286,19 +286,19 @@ typedef struct {
/// string references in forms and in programs. These tokens are
/// language agnostic. When paired with a language pack (directly
/// or indirectly), the string token resolves into an actual
/// UNICODE string. The NumStringPointers determines how many
/// StringPointers (offset values) there are as well as the total
/// UNICODE string. NumStringPointers determines how many
/// StringPointers (offset values) there are, as well as the total
/// number of Strings that are defined.
///
typedef struct {
///
/// Header of the package.
/// The header of the package.
///
EFI_HII_PACK_HEADER Header;
///
/// The string containing one or more ISO 639-2 three-character designator(s)
/// of the language or languages whose translations are contained in this language pack.
/// The first designator indicates the primary language while the others are secondary languages.
/// The first designator indicates the primary language, while the others are secondary languages.
///
RELOFST LanguageNameString;
///
@ -327,7 +327,7 @@ typedef struct {
///
typedef struct {
///
/// Header of the package.
/// The header of the package.
///
EFI_HII_PACK_HEADER Header;
///
@ -345,9 +345,9 @@ typedef struct {
///
/// The definition of a specific physical key
///
/// Note: Name difference between code and the Framework HII 0.92 spec.
/// Note: The name difference between code and the Framework HII 0.92 specification.
/// Add FRAMEWORK_ prefix to avoid name confict with EFI_KEY_DESCRIPTOR defined in the
/// UEFI 2.1d spec.
/// UEFI 2.1d specification.
///
typedef struct {
///
@ -355,18 +355,18 @@ typedef struct {
///
EFI_KEY Key;
///
/// Unicode value for the Key.
/// The Unicode value for the Key.
CHAR16 Unicode;
///
/// Unicode value for the key with the shift key being held down.
/// The Unicode value for the key with the shift key being held down.
///
CHAR16 ShiftedUnicode;
///
/// Unicode value for the key with the Alt-GR being held down.
/// The Unicode value for the key with the Alt-GR being held down.
///
CHAR16 AltGrUnicode;
///
/// Unicode value for the key with the Alt-GR and shift keys being held down.
/// The Unicode value for the key with the Alt-GR and shift keys being held down.
///
CHAR16 ShiftedAltGrUnicode;
///
@ -391,7 +391,7 @@ typedef struct {
///
typedef struct {
///
/// Header of the package.
/// The header of the package.
EFI_HII_PACK_HEADER Header;
///
/// A pointer to a buffer containing an array of EFI_KEY_DESCRIPTOR entries.
@ -430,7 +430,7 @@ typedef struct {
} EFI_HII_PACKAGES;
///
/// Packed link list that contains all the discernable defaults of variables
/// The packed link list that contains all the discernable defaults of variables
/// for the opcodes that are defined in this Handle's domain of data.
///
typedef struct _EFI_HII_VARIABLE_PACK_LIST {
@ -473,8 +473,8 @@ EFI_STATUS
Removes a package from the HII database.
@param This A pointer to the EFI_HII_PROTOCOL instance.
@param Handle The handle that was registered to the data that is requested
for removal.
@param Handle The handle that was registered to the data that
is requested for removal.
@retval EFI_SUCCESS The data associated with the Handle was removed
from the HII database.
@ -560,13 +560,15 @@ EFI_STATUS
@param This A pointer to the EFI_HII_PROTOCOL instance.
@param StringToTest A pointer to a Unicode string.
@param FirstMissing A pointer to an index into the string. On input,
the index of the first character in the StringToTest to examine. On exit,
the index of the first character encountered for which a glyph is unavailable.
If all glyphs in the string are available, the index is the index of the
terminator of the string.
the index of the first character in the StringToTest
to examine. On exit, the index of the first character
encountered for which a glyph is unavailable.
If all glyphs in the string are available, the
index is the index of the terminator of the string.
@param GlyphBufferSize A pointer to a value. On output, if the function
returns EFI_SUCCESS, it contains the amount of memory that is required to
store the string's glyph equivalent.
returns EFI_SUCCESS, it contains the amount of
memory that is required to store the string's
glyph equivalent.
@retval EFI_SUCCESS All glyphs are available. Note that an empty string
always returns this value.
@ -585,24 +587,28 @@ EFI_STATUS
/**
Translates a Unicode character into the corresponding font glyph.
Note that this function prototype name is different from that in the Framework HII 0.92 spec
to avoid name confict with EFI_HII_GET_GLYPH defined in the UEFI 2.1d spec.
Note that this function prototype name is different from that in the Framework HII 0.92 specification
to avoid name confict with EFI_HII_GET_GLYPH defined in the UEFI 2.1d specification.
@param This A pointer to the EFI_HII_PROTOCOL instance.
@param Source A pointer to a Unicode string.
@param Index On input, the offset into the string from which to fetch
the character. On successful completion, the index is updated to the first
character past the character(s) making up the just extracted glyph.
@param Index On input, the offset into the string from which to
fetch the character. On successful completion, the
index is updated to the first character past the
character(s) making up the just extracted glyph.
@param GlyphBuffer Pointer to an array where the glyphs corresponding
to the characters in the source may be stored. GlyphBuffer is assumed
to be wide enough to accept a wide glyph character.
to the characters in the source may be stored.
GlyphBuffer is assumed to be wide enough to accept
a wide glyph character.
@param BitWidth If EFI_SUCCESS was returned, the UINT16 pointed to by
this value is filled with the length of the glyph in pixels. It is unchanged
if the call was unsuccessful.
this value is filled with the length of the glyph in
pixels. It is unchanged if the call was unsuccessful.
@param InternalStatus The cell pointed to by this parameter must be
initialized to zero prior to invoking the call the first time for any string.
initialized to zero prior to invoking the call the
first time for any string.
@retval EFI_SUCCESS It worked.
@retval EFI_SUCCESS Found the corresponding font glyph for a Unicode
character.
@retval EFI_NOT_FOUND A glyph for a character was not found.
**/
@ -633,11 +639,12 @@ EFI_STATUS
@param BltBuffer A pointer to the buffer that contains the data that is
ready to be used by the UGA BLT routines.
@retval EFI_SUCCESS It worked.
@retval EFI_SUCCESS Successfully translated a glyph into the required
format for input to UGA BLT routines.
@retval EFI_NOT_FOUND A glyph for a character was not found.
@note Inconsistent with specification here:
In Framework Spec, HII spec 0.92. The type of 3rd, 4th and 8th parameter is EFI_UGA_PIXEL.
Here the definition uses the EFI_GRAPHICS_OUTPUT_BLT_PIXEL, which is defined in UEFI 2.1 spec
In Framework Spec, HII specification 0.92. The type of 3rd, 4th and 8th parameter is EFI_UGA_PIXEL.
Here the definition uses the EFI_GRAPHICS_OUTPUT_BLT_PIXEL, which is defined in UEFI 2.1 specification.
**/
typedef
EFI_STATUS
@ -655,17 +662,20 @@ EFI_STATUS
/**
Allows a new string to be added to an already existing string package.
Note that this function prototype name is different from that in the Framework HII 0.92 spec
to avoid name confict with EFI_HII_NEW_STRING defined in the UEFI 2.1d spec.
Note that this function prototype name is different from that in the Framework HII 0.92 specification
to avoid name confict with EFI_HII_NEW_STRING defined in the UEFI 2.1d specification.
@param This A pointer to the EFI_HII_PROTOCOL instance.
@param Pointer to a NULL-terminated string containing a single ISO 639-2
language identifier, indicating the language in which the string is translated.
@param Handle The handle of the language pack to which the string is to be added.
@param Reference The identifier of the string to be added. If the reference
value is zero, then the string will be assigned a new identifier on that
handle for the language specified. Otherwise, the string will be updated
with the NewString Value.
@param Pointer to a NULL-terminated string containing a single
ISO 639-2 language identifier, indicating the language
in which the string is translated.
@param Handle The handle of the language pack to which the string
is to be added.
@param Reference The identifier of the string to be added. If the
reference value is zero, then the string will be
assigned a new identifier on that handle for
the language specified. Otherwise, the string will
be updated with the NewString Value.
@param NewString The string to be added.
@retval EFI_SUCCESS The string was effectively registered.
@ -689,7 +699,8 @@ EFI_STATUS
@param This A pointer to the EFI_HII_PROTOCOL instance.
@param Handle The handle on which the strings reside.
@param LanguageString A string allocated by GetPrimaryLanguages() that
contains a list of all primary languages registered on the handle.
contains a list of all primary languages registered
on the handle.
@retval EFI_SUCCESS LanguageString was correctly returned.
@retval EFI_INVALID_PARAMETER The Handle was unknown.
@ -709,10 +720,12 @@ EFI_STATUS
@param This A pointer to the EFI_HII_PROTOCOL instance.
@param Handle The handle on which the strings reside.
@param PrimaryLanguage Pointer to a NULL-terminated string containing a single
ISO 639-2 language identifier, indicating the primary language.
@param PrimaryLanguage Pointer to a NULL-terminated string containing a
single ISO 639-2 language identifier, indicating
the primary language.
@param LanguageString A string allocated by GetSecondaryLanguages()
containing a list of all secondary languages registered on the handle.
containing a list of all secondary languages
registered on the handle.
@retval EFI_SUCCESS LanguageString was correctly returned.
@retval EFI_INVALID_PARAMETER The Handle was unknown.
@ -730,19 +743,21 @@ EFI_STATUS
/**
Extracts a string from a package already registered with the EFI HII database.
Note that this function prototype name is different from that in the Framework HII 0.92 spec
to avoid name confict with EFI_HII_GET_STRING defined in the UEFI 2.1d spec.
Note that this function prototype name is different from that in the Framework HII 0.92 specification
to avoid name confict with EFI_HII_GET_STRING defined in the UEFI 2.1d specification.
@param This A pointer to the EFI_HII_PROTOCOL instance.
@param Handle The handle on which the string resides.
@param Token The string token assigned to the string.
@param Raw If TRUE, the string is returned unedited in the internal
storage format. If false, the string returned is edited
by replacing <cr> with <space> and by removing special characters such
as the <wide> prefix.
@param Raw If TRUE, the string is returned unedited in the
internal storage format. If false, the string
returned is edited by replacing <cr> with <space>
and by removing special characters such as the
<wide> prefix.
@param LanguageString Pointer to a NULL-terminated string containing a
single ISO 639-2 language identifier, indicating the language to print.
If the LanguageString is empty (starts with a NULL), the default system
single ISO 639-2 language identifier, indicating
the language to print. If the LanguageString is
empty (starts with a NULL), the default system
language will be used to determine the language.
@param BufferLength Length of the StringBuffer.
@param StringBuffer The buffer designed to receive the characters in the string.
@ -771,16 +786,20 @@ EFI_STATUS
@param This A pointer to the EFI_HII_PROTOCOL instance.
@param Handle The handle on which the string resides.
@param Token The string token assigned to the string.
@param Index On input, the offset into the string where the line is to start.
On output, the index is updated to point to beyond the last character returned
in the call.
@param Index On input, the offset into the string where the
line is to start. On output, the index is updated
to point beyond the last character returned in
the call.
@param LineWidth The maximum width of the line in units of narrow glyphs.
@param LanguageString Pointer to a NULL-terminated string containing a
single ISO 639-2 language identifier, indicating the language to print.
@param BufferLength Pointer to the length of the StringBuffer.
@param StringBuffer The buffer designed to receive the characters in the string.
@param LanguageString The pointer to a NULL-terminated string containing a
single ISO 639-2 language identifier, indicating
the language to print.
@param BufferLength The pointer to the length of the StringBuffer.
@param StringBuffer The buffer designed to receive the characters in
the string.
@retval EFI_SUCCESS StringBuffer filled with characters that will fit on the line.
@retval EFI_SUCCESS StringBuffer filled with characters that will fit
on the line.
@retval EFI_NOT_FOUND The font glyph for at least one of the characters in
the string is not in the font database.
@retval EFI_BUFFER_TOO_SMALL The buffer provided was not large enough
@ -836,16 +855,16 @@ EFI_STATUS
@param This A pointer to the EFI_HII_PROTOCOL instance.
@param Handle The HII handle from which will have default data retrieved.
@param DefaultMask The mask used to specify some type of default override when extracting
the default image data.
@param VariablePackList An indirect pointer to the first entry of a link list with
type EFI_HII_VARIABLE_PACK_LIST.
@param DefaultMask The mask used to specify some type of default
override when extracting the default image data.
@param VariablePackList An indirect pointer to the first entry of a link
list with type EFI_HII_VARIABLE_PACK_LIST.
@retval EFI_SUCCESS The VariablePackList was populated with the appropriate
default setting data.
@retval EFI_NOT_FOUND The IFR does not have any explicit or default map(s).
@retval EFI_INVALID_PARAMETER The HII database entry associated with Handle
contain invalid data.
contains invalid data.
**/
typedef
@ -887,14 +906,15 @@ EFI_STATUS
/**
Retrieves the current keyboard layout.
Note that this function prototype name is different from that in the Framework HII 0.92 spec
to avoid name confict with EFI_HII_GET_KEYBOARD_LAYOUT defined in the UEFI 2.1d spec.
Note that this function prototype name is different from that in the Framework HII 0.92 specification
to avoid name confict with EFI_HII_GET_KEYBOARD_LAYOUT defined in the UEFI 2.1d specification.
@param This A pointer to the EFI_HII_PROTOCOL instance.
@param DescriptorCount A pointer to the number of Descriptor entries being
described in the keyboard layout being retrieved.
@param Descriptor A pointer to a buffer containing an array of FRAMEWORK_EFI_KEY_DESCRIPTOR
entries. Each entry will reflect the definition of a specific physical key.
@param Descriptor A pointer to a buffer containing an array of
FRAMEWORK_EFI_KEY_DESCRIPTOR entries. Each entry
will reflect the definition of a specific physical key.
@retval EFI_SUCCESS The keyboard layout was retrieved successfully.
@ -929,7 +949,7 @@ struct _EFI_HII_PROTOCOL {
EFI_HII_FIND_HANDLES FindHandles;
///
/// Export the entire contents of the database to a buffer.
/// Exports the entire contents of the database to a buffer.
///
EFI_HII_EXPORT ExportDatabase;
@ -972,10 +992,10 @@ struct _EFI_HII_PROTOCOL {
FRAMEWORK_EFI_HII_GET_STRING GetString;
///
/// Remove any new strings that were added after the initial string export
/// Removes any new strings that were added after the initial string export
/// for this handle.
///
/// Note this function is not defined in the Framework HII 0.92 spec.
/// Note this function is not defined in the Framework HII 0.92 specification.
///
EFI_HII_RESET_STRINGS ResetStrings;

View File

@ -33,14 +33,14 @@
APs to help test system memory in parallel with other device initialization.
Diagnostics applications may also use this protocol for multi-processor.
Copyright (c) 1999 - 2010, Intel Corporation.<BR>
All rights reserved. This program and the accompanying materials
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<BR>
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 1999 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
@ -50,7 +50,7 @@
#include <FrameworkDxe.h>
///
/// Global ID for the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
/// Global ID for the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL.
///
#define FRAMEWORK_EFI_MP_SERVICES_PROTOCOL_GUID \
{ \
@ -58,68 +58,68 @@
}
///
/// Forward declaration for the EFI_MP_SERVICES_PROTOCOL
/// Forward declaration for the EFI_MP_SERVICES_PROTOCOL.
///
typedef struct _FRAMEWORK_EFI_MP_SERVICES_PROTOCOL FRAMEWORK_EFI_MP_SERVICES_PROTOCOL;
///
/// Fixed delivery mode that may be used as the DeliveryMode parameter in SendIpi()
/// Fixed delivery mode that may be used as the DeliveryMode parameter in SendIpi().
///
#define DELIVERY_MODE_FIXED 0x0
///
/// Lowest priority delivery mode that may be used as the DeliveryMode parameter in SendIpi()
/// Lowest priority delivery mode that may be used as the DeliveryMode parameter in SendIpi().
///
#define DELIVERY_MODE_LOWEST_PRIORITY 0x1
///
/// SMI delivery mode that may be used as the DeliveryMode parameter in SendIpi()
/// SMI delivery mode that may be used as the DeliveryMode parameter in SendIpi().
///
#define DELIVERY_MODE_SMI 0x2
///
/// Remote read delivery mode that may be used as the DeliveryMode parameter in SendIpi()
/// Remote read delivery mode that may be used as the DeliveryMode parameter in SendIpi().
///
#define DELIVERY_MODE_REMOTE_READ 0x3
///
/// NMI delivery mode that may be used as the DeliveryMode parameter in SendIpi()
/// NMI delivery mode that may be used as the DeliveryMode parameter in SendIpi().
///
#define DELIVERY_MODE_NMI 0x4
///
/// INIT delivery mode that may be used as the DeliveryMode parameter in SendIpi()
/// INIT delivery mode that may be used as the DeliveryMode parameter in SendIpi().
///
#define DELIVERY_MODE_INIT 0x5
///
/// Startup IPI delivery mode that may be used as the DeliveryMode parameter in SendIpi()
/// Startup IPI delivery mode that may be used as the DeliveryMode parameter in SendIpi().
///
#define DELIVERY_MODE_SIPI 0x6
///
/// The DeliveryMode parameter in SendIpi() bust be less than this maximum value
/// The DeliveryMode parameter in SendIpi() must be less than this maximum value.
///
#define DELIVERY_MODE_MAX 0x7
///
/// IPF specific value for the state field of the Self Test State Parameter
/// IPF specific value for the state field of the Self Test State Parameter.
///
#define EFI_MP_HEALTH_FLAGS_STATUS_HEALTHY 0x0
///
/// IPF specific value for the state field of the Self Test State Parameter
/// IPF specific value for the state field of the Self Test State Parameter.
///
#define EFI_MP_HEALTH_FLAGS_STATUS_PERFORMANCE_RESTRICTED 0x1
///
/// IPF specific value for the state field of the Self Test State Parameter
/// IPF specific value for the state field of the Self Test State Parameter.
///
#define EFI_MP_HEALTH_FLAGS_STATUS_FUNCTIONALLY_RESTRICTED 0x2
typedef union {
///
/// Bitfield structure for the IPF Self Test State Parameter
/// Bitfield structure for the IPF Self Test State Parameter.
///
struct {
UINT32 Status:2;
@ -132,7 +132,7 @@ typedef union {
UINT32 Reserved2:12;
} Bits;
///
/// IA32 and X64 BIST data of the processor
/// IA32 and X64 BIST data of the processor.
///
UINT32 Uint32;
} EFI_MP_HEALTH_FLAGS;
@ -140,10 +140,10 @@ typedef union {
typedef struct {
///
/// @par IA32, X64:
/// BIST (built-in self test) data of the processor.
/// BIST (built-in self-test) data of the processor.
///
/// @par IPF:
/// Lower 32 bits of self test state parameter. For definition of self test
/// Lower 32 bits of the self-test state parameter. For definition of self-test
/// state parameter, please refer to Intel(R) Itanium(R) Architecture Software
/// Developer's Manual, Volume 2: System Architecture.
///
@ -159,8 +159,8 @@ typedef struct {
} EFI_MP_HEALTH;
typedef enum {
EfiCpuAP = 0, ///< The CPU is an AP (Application Processor)
EfiCpuBSP, ///< The CPU is the BSP (Boot-Strap Processor)
EfiCpuAP = 0, ///< The CPU is an AP (Application Processor).
EfiCpuBSP, ///< The CPU is the BSP (Boot-Strap Processor).
EfiCpuDesignationMaximum
} EFI_CPU_DESIGNATION;
@ -235,15 +235,15 @@ typedef struct {
- Rendezvous interrupt number (IPF-specific)
- Length of the rendezvous procedure.
@param[in] This Pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
@param[in] This The pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
instance.
@param[out] NumberOfCPUs Pointer to the total number of logical processors
@param[out] NumberOfCPUs The pointer to the total number of logical processors
in the system, including the BSP and disabled
APs. If NULL, this parameter is ignored.
@param[out] MaximumNumberOfCPUs Pointer to the maximum number of processors
supported by the system. If NULL, this
parameter is ignored.
@param[out] NumberOfEnabledCPUs Pointer to the number of enabled logical
@param[out] NumberOfEnabledCPUs The pointer to the number of enabled logical
processors that exist in system, including
the BSP. If NULL, this parameter is ignored.
@param[out] RendezvousIntNumber This parameter is only meaningful for IPF.
@ -251,12 +251,12 @@ typedef struct {
If NULL, this parameter is ignored.
- IPF: Pointer to the rendezvous interrupt
number that is used for AP wake-up.
@param[out] RendezvousProcLength Pointer to the length of rendezvous procedure.
@param[out] RendezvousProcLength The pointer to the length of rendezvous procedure.
- IA32, X64: The returned value is 0x1000.
If NULL, this parameter is ignored.
- IPF: The returned value is zero.
@retval EFI_SUCCESS Multiprocessor general information successfully retrieved.
@retval EFI_SUCCESS Multiprocessor general information was successfully retrieved.
**/
typedef
@ -281,7 +281,7 @@ EFI_STATUS
slot numbers is all considered platform-related information and will not be
presented here.
@param[in] This Pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
@param[in] This The pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
instance.
@param[in] ProcessorNumber The handle number of the processor. The range
is from 0 to the total number of logical
@ -296,20 +296,20 @@ EFI_STATUS
If the size of ProcessorContextBuffer is
sufficient, the value is not changed from
input.
@param[out] ProcessorContextBuffer Pointer to the buffer where the data of
@param[out] ProcessorContextBuffer The pointer to the buffer where the data of
requested processor will be deposited.
The buffer is allocated by caller.
@retval EFI_SUCCESS Processor information successfully returned.
@retval EFI_SUCCESS Processor information was successfully returned.
@retval EFI_BUFFER_TOO_SMALL The size of ProcessorContextBuffer is too small.
Value pointed by BufferLength has been updated
The value pointed by BufferLength has been updated
to size in bytes that is needed.
@retval EFI_INVALID_PARAMETER IA32, X64:BufferLength is NULL.
@retval EFI_INVALID_PARAMETER IA32, X64:ProcessorContextBuffer is NULL.
@retval EFI_INVALID_PARAMETER IA32, X64:Processor with the handle specified by
ProcessorNumber does not exist
ProcessorNumber does not exist.
@retval EFI_NOT_FOUND IPF: Processor with the handle specified by
ProcessorNumber does not exist
ProcessorNumber does not exist.
**/
typedef
@ -333,7 +333,7 @@ EFI_STATUS
controlled exclusive code. EFI services and protocols may not be called by APs
unless otherwise specified.
@param[in] This Pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
@param[in] This The pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
instance.
@param[in] Procedure A pointer to the function to be run on enabled
APs of the system.
@ -400,7 +400,7 @@ EFI_STATUS
If the value is non-zero, the BSP waits
until dispatched AP finishes and then
dispatch the next.
@param[in] ProcedureArgument Pointer to the optional parameter of the
@param[in] ProcedureArgument The pointer to the optional parameter of the
function specified by Procedure.
@param[out] FailedCPUList List of APs that did not finish.
- IA32, X64:
@ -424,7 +424,7 @@ EFI_STATUS
before the timeout expires.
@retval EFI_SUCCESS IA32, X64: Only 1 logical processor exists
in system.
@retval EFI_INVALID_PARAMETER IA32, X64: Procedure is NULL.
@retval EFI_INVALID_PARAMETER IA32, X64: Procedure is NULL.
@retval EFI_TIMEOUT IA32, X64: The timeout expires before all
dispatched APs have finished.
@retval EFI_SUCCESS IPF: This function always returns EFI_SUCCESS.
@ -447,7 +447,7 @@ EFI_STATUS
the caller. The caller can request the BSP to either wait for the AP or just
proceed with the next task.
@param[in] This Pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
@param[in] This The pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
instance.
@param[in] Procedure A pointer to the function to be run on the
designated AP.
@ -486,7 +486,7 @@ EFI_STATUS
time interval. If the value is zero, the length
of time interval is 10ms. If the value is
non-zero, the BSP waits until the AP finishes.
@param[in] ProcedureArgument Pointer to the optional parameter of the
@param[in] ProcedureArgument The pointer to the optional parameter of the
function specified by Procedure.
@retval EFI_SUCCESS Specified AP has finished before the timeout
@ -521,7 +521,7 @@ EFI_STATUS
from where the old one left off. This call can only be performed by the
current BSP.
@param[in] This Pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
@param[in] This The pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
instance.
@param[in] ProcessorNumber The handle number of AP. The range is from 0 to
the total number of logical processors minus 1.
@ -531,7 +531,7 @@ EFI_STATUS
enabled AP. Otherwise, it will be disabled.
@retval EFI_SUCCESS BSP successfully switched.
@retval EFI_INVALID_PARAMETER Processor with the handle specified by
@retval EFI_INVALID_PARAMETER The processor with the handle specified by
ProcessorNumber does not exist.
@retval EFI_INVALID_PARAMETER ProcessorNumber specifies the BSP.
@retval EFI_NOT_READY IA32, X64: Specified AP is busy or disabled.
@ -552,16 +552,16 @@ EFI_STATUS
This service sends an IPI to a specified AP. Caller can specify vector number
and delivery mode of the interrupt.
@param[in] This Pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
@param[in] This The pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
instance.
@param[in] ProcessorNumber The handle number of AP. The range is from 0 to
the total number of logical processors minus 1.
The total number of logical processors can be
retrieved by GetGeneralMPInfo().
@param[in] VectorNumber Vector number of the interrupt.
@param[in] DeliveryMode Delivery mode of the interrupt.
@param[in] VectorNumber The vector number of the interrupt.
@param[in] DeliveryMode The delivery mode of the interrupt.
@retval EFI_SUCCESS IPI is successfully sent.
@retval EFI_SUCCESS IPI was successfully sent.
@retval EFI_INVALID_PARAMETER ProcessorNumber specifies the BSP.
@retval EFI_INVALID_PARAMETER IA32, X64: Processor with the handle specified
by ProcessorNumber does not exist.
@ -589,7 +589,7 @@ EFI_STATUS
specify the health status of the AP by Health. It is usually used to update the
health status of the processor after some processor test.
@param[in] This Pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
@param[in] This The pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
instance.
@param[in] ProcessorNumber The handle number of AP. The range is from 0 to
the total number of logical processors minus 1.
@ -626,7 +626,7 @@ EFI_STATUS
processors can be retrieved by GetGeneralMPInfo(). This service may be called
from the BSP and APs.
@param[in] This Pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
@param[in] This The pointer to the FRAMEWORK_EFI_MP_SERVICES_PROTOCOL
instance.
@param[out] ProcessorNumber A pointer to the handle number of AP. The range is
from 0 to the total number of logical processors
@ -644,7 +644,7 @@ EFI_STATUS
);
///
/// Framework MP Services Protocol structure
/// Framework MP Services Protocol structure.
///
struct _FRAMEWORK_EFI_MP_SERVICES_PROTOCOL {
EFI_MP_SERVICES_GET_GENERAL_MP_INFO GetGeneralMPInfo;

View File

@ -2,14 +2,14 @@
This protocol abstracts the 8259 interrupt controller. This includes
PCI IRQ routing needed to program the PCI Interrupt Line register.
Copyright (c) 2007, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This protocol is defined in Framework for EFI Compatibility Support Module spec
@ -59,12 +59,12 @@ typedef enum {
the legacy mode mask and the protected mode mask. The base address for the 8259
is different for legacy and protected mode, so two masks are required.
@param This Protocol instance pointer.
@param MasterBase The base vector for the Master PIC in the 8259 controller
@param SlaveBase The base vector for the Slave PIC in the 8259 controller
@param This The protocol instance pointer.
@param MasterBase The base vector for the Master PIC in the 8259 controller.
@param SlaveBase The base vector for the Slave PIC in the 8259 controller.
@retval EFI_SUCCESS The new bases were programmed
@retval EFI_DEVICE_ERROR A device error occured programming the vector bases
@retval EFI_SUCCESS The new bases were programmed.
@retval EFI_DEVICE_ERROR A device error occured programming the vector bases.
**/
typedef
@ -80,14 +80,14 @@ EFI_STATUS
the legacy mode mask and the protected mode mask. The base address for the 8259
is different for legacy and protected mode, so two masks are required.
@param This Protocol instance pointer.
@param LegacyMask Bit 0 is Irq0 - Bit 15 is Irq15
@param LegacyEdgeLevel Bit 0 is Irq0 - Bit 15 is Irq15
@param ProtectedMask Bit 0 is Irq0 - Bit 15 is Irq15
@param ProtectedEdgeLevel Bit 0 is Irq0 - Bit 15 is Irq15
@param This The protocol instance pointer.
@param LegacyMask Bit 0 is Irq0 - Bit 15 is Irq15.
@param LegacyEdgeLevel Bit 0 is Irq0 - Bit 15 is Irq15.
@param ProtectedMask Bit 0 is Irq0 - Bit 15 is Irq15.
@param ProtectedEdgeLevel Bit 0 is Irq0 - Bit 15 is Irq15.
@retval EFI_SUCCESS 8259 status returned
@retval EFI_DEVICE_ERROR Error reading 8259
@retval EFI_SUCCESS 8259 status returned.
@retval EFI_DEVICE_ERROR Error reading 8259.
**/
typedef
@ -106,14 +106,14 @@ EFI_STATUS
is different for legacy and protected mode, so two masks are required.
Also set the edge/level masks.
@param This Protocol instance pointer.
@param LegacyMask Bit 0 is Irq0 - Bit 15 is Irq15
@param LegacyEdgeLevel Bit 0 is Irq0 - Bit 15 is Irq15
@param ProtectedMask Bit 0 is Irq0 - Bit 15 is Irq15
@param ProtectedEdgeLevel Bit 0 is Irq0 - Bit 15 is Irq15
@param This The protocol instance pointer.
@param LegacyMask Bit 0 is Irq0 - Bit 15 is Irq15.
@param LegacyEdgeLevel Bit 0 is Irq0 - Bit 15 is Irq15.
@param ProtectedMask Bit 0 is Irq0 - Bit 15 is Irq15.
@param ProtectedEdgeLevel Bit 0 is Irq0 - Bit 15 is Irq15.
@retval EFI_SUCCESS 8259 status returned
@retval EFI_DEVICE_ERROR Error writing 8259
@retval EFI_SUCCESS 8259 status returned.
@retval EFI_DEVICE_ERROR Error writing 8259.
**/
typedef
@ -135,13 +135,13 @@ EFI_STATUS
mask for the new mode is Mask, or if Mask does not exist the previously saved
mask is used.
@param This Protocol instance pointer.
@param Mode Mode of operation. i.e. real mode or protected mode
@param This The protocol instance pointer.
@param Mode The mode of operation. i.e. the real mode or protected mode.
@param Mask Optional interupt mask for the new mode.
@param EdgeLevel Optional trigger mask for the new mode.
@retval EFI_SUCCESS 8259 programmed
@retval EFI_DEVICE_ERROR Error writing to 8259
@retval EFI_SUCCESS 8259 programmed.
@retval EFI_DEVICE_ERROR Error writing to 8259.
**/
typedef
@ -156,12 +156,12 @@ EFI_STATUS
/**
Convert from IRQ to processor interrupt vector number.
@param This Protocol instance pointer.
@param Irq 8259 IRQ0 - IRQ15
@param Vector Processor vector number that matches Irq
@param This The protocol instance pointer.
@param Irq 8259 IRQ0 - IRQ15.
@param Vector The processor vector number that matches an Irq.
@retval EFI_SUCCESS The Vector matching Irq is returned
@retval EFI_INVALID_PARAMETER Irq not valid
@retval EFI_SUCCESS The Vector matching Irq is returned.
@retval EFI_INVALID_PARAMETER The Irq not valid.
**/
typedef
@ -175,12 +175,12 @@ EFI_STATUS
/**
Enable Irq by unmasking interrupt in 8259
@param This Protocol instance pointer.
@param Irq 8259 IRQ0 - IRQ15
@param This The protocol instance pointer.
@param Irq 8259 IRQ0 - IRQ15.
@param LevelTriggered TRUE if level triggered. FALSE if edge triggered.
@retval EFI_SUCCESS Irq enabled on 8259
@retval EFI_INVALID_PARAMETER Irq not valid
@retval EFI_SUCCESS The Irq was enabled on 8259.
@retval EFI_INVALID_PARAMETER The Irq is not valid.
**/
typedef
@ -194,11 +194,11 @@ EFI_STATUS
/**
Disable Irq by masking interrupt in 8259
@param This Protocol instance pointer.
@param Irq 8259 IRQ0 - IRQ15
@param This The protocol instance pointer.
@param Irq 8259 IRQ0 - IRQ15.
@retval EFI_SUCCESS Irq disabled on 8259
@retval EFI_INVALID_PARAMETER Irq not valid
@retval EFI_SUCCESS The Irq was disabled on 8259.
@retval EFI_INVALID_PARAMETER The Irq is not valid.
**/
typedef
@ -214,12 +214,12 @@ EFI_STATUS
that is programmed into the Interrupt Line (from the PCI config space)
register.
@param This Protocol instance pointer.
@param PciHandle PCI function to return vector for
@param Vector Vector for fucntion that matches
@param This The protocol instance pointer.
@param PciHandle The PCI function to return the vector for.
@param Vector The vector for the function it matches.
@retval EFI_SUCCESS A valid Vector is returned
@retval EFI_INVALID_PARAMETER PciHandle not valid
@retval EFI_SUCCESS A valid Vector was returned.
@retval EFI_INVALID_PARAMETER PciHandle not valid.
**/
typedef
@ -233,11 +233,11 @@ EFI_STATUS
/**
Send an EOI to 8259
@param This Protocol instance pointer.
@param Irq 8259 IRQ0 - IRQ15
@param This The protocol instance pointer.
@param Irq 8259 IRQ0 - IRQ15.
@retval EFI_SUCCESS EOI successfully sent to 8259
@retval EFI_INVALID_PARAMETER Irq not valid
@retval EFI_SUCCESS EOI was successfully sent to 8259.
@retval EFI_INVALID_PARAMETER The Irq isnot valid.
**/
typedef

View File

@ -9,14 +9,14 @@
Thunk is the code that switches from 32-bit protected environment into the 16-bit real-mode
environment. Reverse thunk is the code that does the opposite.
Copyright (c) 2007 - 2010, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This protocol is defined in Framework for EFI Compatibility Support Module spec
@ -98,18 +98,20 @@ typedef struct {
UINT16 Compatibility16CallOffset;
///
/// The segment of the entry point within the traditional BIOS for EfiCompatibility to invoke the PnP installation check.
/// The segment of the entry point within the traditional BIOS for EfiCompatibility
/// to invoke the PnP installation check.
///
UINT16 PnPInstallationCheckSegment;
///
/// The Offset of the entry point within the traditional BIOS for EfiCompatibility to invoke the PnP installation check.
/// The Offset of the entry point within the traditional BIOS for EfiCompatibility
/// to invoke the PnP installation check.
///
UINT16 PnPInstallationCheckOffset;
///
/// EFI system resources table. Type EFI_SYSTEM_TABLE is defined in the IntelPlatform Innovation Framework for EFI
/// Driver Execution Environment Core Interface Specification (DXE CIS).
/// EFI system resources table. Type EFI_SYSTEM_TABLE is defined in the IntelPlatform
///Innovation Framework for EFI Driver Execution Environment Core Interface Specification (DXE CIS).
///
UINT32 EfiSystemTable;
@ -157,7 +159,8 @@ typedef struct {
///
/// The 32-bit physical address where the MP table is stored in the traditional BIOS.
/// The EfiCompatibility code will fill in the MpTablePtr value and copy the data to the indicated area.
/// The EfiCompatibility code will fill in the MpTablePtr value and copy the data
/// to the indicated area.
///
UINT32 MpTablePtr;
@ -231,8 +234,9 @@ typedef struct {
/// Functions provided by the CSM binary which communicate between the EfiCompatibility
/// and Compatability16 code.
///
/// Inconsistent with specification here:
/// The member's name started with "Compatibility16" [defined in Intel Framework Compatibility Support Module Specification / 0.97 version]
/// Inconsistent with the specification here:
/// The member's name started with "Compatibility16" [defined in Intel Framework
/// Compatibility Support Module Specification / 0.97 version]
/// has been changed to "Legacy16" since keeping backward compatible.
///
typedef enum {
@ -345,15 +349,15 @@ typedef enum {
/// EFI_DISPATCH_OPROM_TABLE
///
typedef struct {
UINT16 PnPInstallationCheckSegment; ///< Pointer to the PnpInstallationCheck data structure.
UINT16 PnPInstallationCheckOffset; ///< Pointer to the PnpInstallationCheck data structure.
UINT16 PnPInstallationCheckSegment; ///< A pointer to the PnpInstallationCheck data structure.
UINT16 PnPInstallationCheckOffset; ///< A pointer to the PnpInstallationCheck data structure.
UINT16 OpromSegment; ///< The segment where the OpROM was placed. Offset is assumed to be 3.
UINT8 PciBus; ///< The PCI bus.
UINT8 PciDeviceFunction; ///< The PCI device * 0x08 | PCI function.
UINT8 NumberBbsEntries; ///< The number of valid BBS table entries upon entry and exit. The IBV code may
///< increase this number, if BBS-compliant devices also hook INTs in order to force the
///< OpROM BIOS Setup to be executed.
VOID *BbsTablePointer; ///< Pointer to the BBS table.
VOID *BbsTablePointer; ///< A pointer to the BBS table.
UINT16 RuntimeSegment; ///< The segment where the OpROM can be relocated to. If this value is 0x0000, this
///< means that the relocation of this run time code is not supported.
///< Inconsistent with specification here:
@ -372,12 +376,12 @@ typedef struct {
UINT32 BiosLessThan1MB;
///
/// Starting address of the high memory block.
/// The starting address of the high memory block.
///
UINT32 HiPmmMemory;
///
/// Length of high memory block.
/// The length of high memory block.
///
UINT32 HiPmmMemorySizeInBytes;
@ -417,22 +421,22 @@ typedef struct {
UINT32 LowPmmMemory;
///
/// Length of low Memory block.
/// The length of low Memory block.
///
UINT32 LowPmmMemorySizeInBytes;
} EFI_TO_COMPATIBILITY16_INIT_TABLE;
///
/// DEVICE_PRODUCER_SERIAL
/// DEVICE_PRODUCER_SERIAL.
///
typedef struct {
UINT16 Address; ///< I/O address assigned to the serial port
UINT16 Address; ///< I/O address assigned to the serial port.
UINT8 Irq; ///< IRQ assigned to the serial port.
SERIAL_MODE Mode; ///< Mode of serial port. Values are defined below.
} DEVICE_PRODUCER_SERIAL;
///
/// DEVICE_PRODUCER_SERIAL's modes
/// DEVICE_PRODUCER_SERIAL's modes.
///@{
#define DEVICE_SERIAL_MODE_NORMAL 0x00
#define DEVICE_SERIAL_MODE_IRDA 0x01
@ -442,17 +446,17 @@ typedef struct {
///@)
///
/// DEVICE_PRODUCER_PARALLEL
/// DEVICE_PRODUCER_PARALLEL.
///
typedef struct {
UINT16 Address; ///< I/O address assigned to the parallel port
UINT16 Address; ///< I/O address assigned to the parallel port.
UINT8 Irq; ///< IRQ assigned to the parallel port.
UINT8 Dma; ///< DMA assigned to the parallel port.
PARALLEL_MODE Mode; ///< Mode of the parallel port. Values are defined below.
} DEVICE_PRODUCER_PARALLEL;
///
/// DEVICE_PRODUCER_PARALLEL's modes
/// DEVICE_PRODUCER_PARALLEL's modes.
///@{
#define DEVICE_PARALLEL_MODE_MODE_OUTPUT_ONLY 0x00
#define DEVICE_PARALLEL_MODE_MODE_BIDIRECTIONAL 0x01
@ -464,7 +468,7 @@ typedef struct {
/// DEVICE_PRODUCER_FLOPPY
///
typedef struct {
UINT16 Address; ///< I/O address assigned to the floppy
UINT16 Address; ///< I/O address assigned to the floppy.
UINT8 Irq; ///< IRQ assigned to the floppy.
UINT8 Dma; ///< DMA assigned to the floppy.
UINT8 NumberOfFloppy; ///< Number of floppies in the system.
@ -534,14 +538,14 @@ typedef struct {
UINT16 ControlBaseAddress;
///
/// Bus master address
/// Bus master address.
///
UINT16 BusMasterAddress;
UINT8 HddIrq;
///
/// Data that identifies the drive data, one per possible attached drive
/// Data that identifies the drive data; one per possible attached drive.
///
ATAPI_IDENTIFY IdentifyDrive[2];
} HDD_INFO;
@ -559,7 +563,7 @@ typedef struct {
#define HDD_SLAVE_ATAPI_ZIPDISK 0x80
///
/// BBS_STATUS_FLAGS
/// BBS_STATUS_FLAGS;\.
///
typedef struct {
UINT16 OldPosition : 4; ///< Prior priority.
@ -580,7 +584,7 @@ typedef struct {
} BBS_STATUS_FLAGS;
///
/// BBS_TABLE, device type values & boot priority values
/// BBS_TABLE, device type values & boot priority values.
///
typedef struct {
///
@ -727,12 +731,12 @@ typedef struct {
UINT16 Type : 3;
///
/// Size of "port" in bits. Defined values are below.
/// The size of "port" in bits. Defined values are below.
///
UINT16 PortGranularity : 3;
///
/// Size of data in bits. Defined values are below.
/// The size of data in bits. Defined values are below.
///
UINT16 DataGranularity : 3;
@ -743,14 +747,14 @@ typedef struct {
} SMM_ATTRIBUTES;
///
/// SMM_ATTRIBUTES type values
/// SMM_ATTRIBUTES type values.
///@{
#define STANDARD_IO 0x00
#define STANDARD_MEMORY 0x01
///@}
///
/// SMM_ATTRIBUTES port size constants
/// SMM_ATTRIBUTES port size constants.
///@{
#define PORT_SIZE_8 0x00
#define PORT_SIZE_16 0x01
@ -759,7 +763,7 @@ typedef struct {
///@}
///
/// SMM_ATTRIBUTES data size constants
/// SMM_ATTRIBUTES data size constants.
///@{
#define DATA_SIZE_8 0x00
#define DATA_SIZE_16 0x01
@ -768,7 +772,7 @@ typedef struct {
///@}
///
/// SMM_FUNCTION & relating constants
/// SMM_FUNCTION & relating constants.
///
typedef struct {
UINT16 Function : 15;
@ -776,7 +780,7 @@ typedef struct {
} SMM_FUNCTION;
///
/// SMM_FUNCTION Function constants
/// SMM_FUNCTION Function constants.
///@{
#define INT15_D042 0x0000
#define GET_USB_BOOT_INFO 0x0001
@ -784,7 +788,7 @@ typedef struct {
///@}
///
/// SMM_FUNCTION Owner constants
/// SMM_FUNCTION Owner constants.
///@{
#define STANDARD_OWNER 0x0
#define OEM_OWNER 0x1
@ -807,12 +811,12 @@ typedef struct {
SMM_FUNCTION SmmFunction;
///
/// SmmPort size depends upon SmmAttributes and ranges from2 bytes to 16 bytes
/// SmmPort size depends upon SmmAttributes and ranges from2 bytes to 16 bytes.
///
UINT8 SmmPort;
///
/// SmmData size depends upon SmmAttributes and ranges from2 bytes to 16 bytes
/// SmmData size depends upon SmmAttributes and ranges from2 bytes to 16 bytes.
///
UINT8 SmmData;
} SMM_ENTRY;
@ -905,8 +909,8 @@ typedef struct {
typedef struct {
UINT16 MajorVersion; ///< The EfiCompatibility major version number.
UINT16 MinorVersion; ///< The EfiCompatibility minor version number.
UINT32 AcpiTable; ///< Location of the RSDT ACPI table. < 4G range
UINT32 SmbiosTable; ///< Location of the SMBIOS table in EFI memory. < 4G range
UINT32 AcpiTable; ///< The location of the RSDT ACPI table. < 4G range.
UINT32 SmbiosTable; ///< The location of the SMBIOS table in EFI memory. < 4G range.
UINT32 SmbiosTableLength;
//
// Legacy SIO state
@ -921,8 +925,8 @@ typedef struct {
//
HDD_INFO HddInfo[MAX_IDE_CONTROLLER]; ///< Hard disk drive information, including raw Identify Drive data.
UINT32 NumberBbsEntries; ///< Number of entries in the BBS table
UINT32 BbsTable; ///< Pointer to the BBS table. Type BBS_TABLE is defined below.
UINT32 SmmTable; ///< Pointer to the SMM table. Type SMM_TABLE is defined below.
UINT32 BbsTable; ///< A pointer to the BBS table. Type BBS_TABLE is defined below.
UINT32 SmmTable; ///< A pointer to the SMM table. Type SMM_TABLE is defined below.
UINT32 OsMemoryAbove1Mb; ///< The amount of usable memory above 1 MB, i.e. E820 type 1 memory. This value can
///< differ from the value in EFI_TO_COMPATIBILITY16_INIT_TABLE as more
///< memory may have been discovered.
@ -971,12 +975,12 @@ typedef struct {
typedef struct _EFI_LEGACY_BIOS_PROTOCOL EFI_LEGACY_BIOS_PROTOCOL;
///
/// Flags returned by CheckPciRom()
/// Flags returned by CheckPciRom().
///
#define NO_ROM 0x00
#define ROM_FOUND 0x01
#define VALID_LEGACY_ROM 0x02
#define ROM_WITH_CONFIG 0x04 ///< Not defined in the Framework CSM Specification
#define ROM_WITH_CONFIG 0x04 ///< Not defined in the Framework CSM Specification.
///
/// The following macros do not appear in the Framework CSM Specification and
@ -1113,10 +1117,10 @@ typedef union {
of BiosInt. Regs will contain the 16-bit register context on entry and
exit.
@param[in] This Protocol instance pointer.
@param[in] BiosInt Processor interrupt vector to invoke
@param[in] This The protocol instance pointer.
@param[in] BiosInt The processor interrupt vector to invoke.
@param[in,out] Reg Register contexted passed into (and returned) from thunk to
16-bit mode
16-bit mode.
@retval TRUE Thunk completed with no BIOS errors in the target code. See Regs for status.
@retval FALSE There was a BIOS error in the target code.
@ -1134,13 +1138,13 @@ BOOLEAN
16-bit register context on entry and exit. Arguments can be passed on
the Stack argument
@param[in] This Protocol instance pointer.
@param[in] Segment Segemnt of 16-bit mode call
@param[in] Offset Offset of 16-bit mdoe call
@param[in] This The protocol instance pointer.
@param[in] Segment The segemnt of 16-bit mode call.
@param[in] Offset The offset of 16-bit mdoe call.
@param[in] Reg Register contexted passed into (and returned) from thunk to
16-bit mode
@param[in] Stack Caller allocated stack used to pass arguments
@param[in] StackSize Size of Stack in bytes
16-bit mode.
@param[in] Stack The caller allocated stack used to pass arguments.
@param[in] StackSize The size of Stack in bytes.
@retval FALSE Thunk completed with no BIOS errors in the target code. See Regs for status. @retval TRUE There was a BIOS error in the target code.
**/
@ -1159,17 +1163,17 @@ BOOLEAN
Test to see if a legacy PCI ROM exists for this device. Optionally return
the Legacy ROM instance for this PCI device.
@param[in] This Protocol instance pointer.
@param[in] This The protocol instance pointer.
@param[in] PciHandle The PCI PC-AT OPROM from this devices ROM BAR will be loaded
@param[out] RomImage Return the legacy PCI ROM for this device
@param[out] RomSize Size of ROM Image
@param[out] RomImage Return the legacy PCI ROM for this device.
@param[out] RomSize The size of ROM Image.
@param[out] Flags Indicates if ROM found and if PC-AT. Multiple bits can be set as follows:
- 00 = No ROM
- 01 = ROM Found
- 02 = ROM is a valid legacy ROM
- 00 = No ROM.
- 01 = ROM Found.
- 02 = ROM is a valid legacy ROM.
@retval EFI_SUCCESS Legacy Option ROM availible for this device
@retval EFI_UNSUPPORTED Legacy Option ROM not supported.
@retval EFI_SUCCESS The Legacy Option ROM availible for this device
@retval EFI_UNSUPPORTED The Legacy Option ROM is not supported.
**/
typedef
@ -1187,7 +1191,7 @@ EFI_STATUS
about how many disks were added by the OPROM and the shadow address and
size. DiskStart & DiskEnd are INT 13h drive letters. Thus 0x80 is C:
@param[in] This Protocol instance pointer.
@param[in] This The protocol instance pointer.
@param[in] PciHandle The PCI PC-AT OPROM from this devices ROM BAR will be loaded.
This value is NULL if RomImage is non-NULL. This is the normal
case.
@ -1199,11 +1203,11 @@ EFI_STATUS
- 00 = No ROM.
- 01 = ROM found.
- 02 = ROM is a valid legacy ROM.
@param[out] DiskStart Disk number of first device hooked by the ROM. If DiskStart
@param[out] DiskStart The disk number of first device hooked by the ROM. If DiskStart
is the same as DiskEnd no disked were hooked.
@param[out] DiskEnd disk number of the last device hooked by the ROM.
@param[out] RomShadowAddress Shadow address of PC-AT ROM
@param[out] RomShadowSize Size of RomShadowAddress in bytes
@param[out] RomShadowAddress Shadow address of PC-AT ROM.
@param[out] RomShadowSize Size of RomShadowAddress in bytes.
@retval EFI_SUCCESS Thunk completed, see Regs for status.
@retval EFI_INVALID_PARAMETER PciHandle not found
@ -1246,10 +1250,10 @@ EFI_STATUS
manner--meaning that the EFI code is still valid. An ungraceful boot failure causes a reset because the state
of EFI code is unknown.
@param[in] This Protocol instance pointer.
@param[in] BootOption EFI Device Path from BootXXXX variable.
@param[in] LoadOptionSize Size of LoadOption in size.
@param[in] LoadOption LoadOption from BootXXXX variable
@param[in] This The protocol instance pointer.
@param[in] BootOption The EFI Device Path from BootXXXX variable.
@param[in] LoadOptionSize The size of LoadOption in size.
@param[in] LoadOption LThe oadOption from BootXXXX variable.
@retval EFI_DEVICE_ERROR Failed to boot from any boot device and memory is uncorrupted. Note: This function normally does not returns. It will either boot the OS or reset the system if memory has been "corrupted" by loading a boot sector and passing control to it.
**/
@ -1269,11 +1273,11 @@ EFI_STATUS
keyboard options such as boot with NUM LOCK on/off. This function does not
touch the keyboard or keyboard LEDs but only the BDA.
@param[in] This Protocol instance pointer.
@param[in] Leds Status of current Scroll, Num & Cap lock LEDS
- Bit 0 is Scroll Lock 0 = Not locked
- Bit 1 is Num Lock
- Bit 2 is Caps Lock
@param[in] This The protocol instance pointer.
@param[in] Leds The status of current Scroll, Num & Cap lock LEDS:
- Bit 0 is Scroll Lock 0 = Not locked.
- Bit 1 is Num Lock.
- Bit 2 is Caps Lock.
@retval EFI_SUCCESS The BDA was updated successfully.
@ -1288,13 +1292,13 @@ EFI_STATUS
/**
Retrieve legacy BBS info and assign boot priority.
@param[in] This Protocol instance pointer.
@param[out] HddCount Number of HDD_INFO structures
@param[out] HddInfo Onboard IDE controller information
@param[out] BbsCount Number of BBS_TABLE structures
@param[in,out] BbsTable Point to List of BBS_TABLE
@param[in] This The protocol instance pointer.
@param[out] HddCount The number of HDD_INFO structures.
@param[out] HddInfo Onboard IDE controller information.
@param[out] BbsCount The number of BBS_TABLE structures.
@param[in,out] BbsTable Points to List of BBS_TABLE.
@retval EFI_SUCCESS Tables returned
@retval EFI_SUCCESS Tables were returned.
**/
typedef
@ -1311,11 +1315,11 @@ EFI_STATUS
Assign drive number to legacy HDD drives prior to booting an EFI
aware OS so the OS can access drives without an EFI driver.
@param[in] This Protocol instance pointer.
@param[out] BbsCount Number of BBS_TABLE structures
@param[out] BbsTable List BBS entries
@param[in] This The protocol instance pointer.
@param[out] BbsCount The number of BBS_TABLE structures
@param[out] BbsTable List of BBS entries
@retval EFI_SUCCESS Drive numbers assigned
@retval EFI_SUCCESS Drive numbers assigned.
**/
typedef
@ -1330,12 +1334,12 @@ EFI_STATUS
To boot from an unconventional device like parties and/or execute
HDD diagnostics.
@param[in] This Protocol instance pointer.
@param[in] Attributes How to interpret the other input parameters
@param[in] This The protocol instance pointer.
@param[in] Attributes How to interpret the other input parameters.
@param[in] BbsEntry The 0-based index into the BbsTable for the parent
device.
@param[in] BeerData Pointer to the 128 bytes of ram BEER data.
@param[in] ServiceAreaData Pointer to the 64 bytes of raw Service Area data. The
@param[in] BeerData A pointer to the 128 bytes of ram BEER data.
@param[in] ServiceAreaData A pointer to the 64 bytes of raw Service Area data. The
caller must provide a pointer to the specific Service
Area and not the start all Service Areas.
@ -1355,12 +1359,12 @@ EFI_STATUS
/**
Shadow all legacy16 OPROMs that haven't been shadowed.
Warning: Use this with caution. This routine disconnects all EFI
drivers. If used externally then caller must re-connect EFI
drivers. If used externally, then the caller must re-connect EFI
drivers.
@param[in] This Protocol instance pointer.
@param[in] This The protocol instance pointer.
@retval EFI_SUCCESS OPROMs shadowed
@retval EFI_SUCCESS OPROMs were shadowed.
**/
typedef
@ -1372,19 +1376,19 @@ EFI_STATUS
/**
Get a region from the LegacyBios for S3 usage.
@param[in] This Protocol instance pointer.
@param[in] LegacyMemorySize Size of required region
@param[in] Region Region to use.
00 = Either 0xE0000 or 0xF0000 block
- Bit0 = 1 0xF0000 block
- Bit1 = 1 0xE0000 block
@param[in] Alignment Address alignment. Bit mapped. First non-zero
@param[in] This The protocol instance pointer.
@param[in] LegacyMemorySize The size of required region.
@param[in] Region The region to use.
00 = Either 0xE0000 or 0xF0000 block.
- Bit0 = 1 0xF0000 block.
- Bit1 = 1 0xE0000 block.
@param[in] Alignment Address alignment. Bit mapped. The first non-zero
bit from right is alignment.
@param[out] LegacyMemoryAddress Region Assigned
@param[out] LegacyMemoryAddress The Region Assigned
@retval EFI_SUCCESS Region assigned
@retval EFI_SUCCESS The Region was assigned.
@retval EFI_ACCESS_DENIED The function was previously invoked.
@retval Other Region not assigned
@retval Other The Region was not assigned.
**/
typedef
@ -1400,15 +1404,15 @@ EFI_STATUS
/**
Get a region from the LegacyBios for Tiano usage. Can only be invoked once.
@param[in] This Protocol instance pointer.
@param[in] LegacyMemorySize Size of data to copy
@param[in] LegacyMemoryAddress Legacy Region destination address
@param[in] This The protocol instance pointer.
@param[in] LegacyMemorySize The size of data to copy.
@param[in] LegacyMemoryAddress The Legacy Region destination address.
Note: must be in region assigned by
LegacyBiosGetLegacyRegion
@param[in] LegacyMemorySourceAddress Source of the data to copy.
LegacyBiosGetLegacyRegion.
@param[in] LegacyMemorySourceAddress The source of the data to copy.
@retval EFI_SUCCESS Region assigned
@retval EFI_ACCESS_DENIED Destination outside assigned region
@retval EFI_SUCCESS The Region assigned.
@retval EFI_ACCESS_DENIED Destination was outside an assigned region.
**/
typedef

View File

@ -4,14 +4,14 @@
the Legacy BIOS protocol is generic and consumes this protocol.
A driver that matches the Legacy16 produces this protocol
Copyright (c) 2007 - 2009 Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This protocol is defined in Framework for EFI Compatibility Support Module spec
@ -238,17 +238,17 @@ EfiGetPlatformBinaryOem32Data = 3,
///
/// The function parameters associated with this mode are:
///
/// System ROM image for the platform
/// System ROM image for the platform.
///
/// TableSize Size of Table in bytes
/// TableSize Size of Table in bytes.
///
/// Location Ignored
/// Location Ignored.
///
/// Alignment Ignored
/// Alignment Ignored.
///
/// LegacySegment Ignored
/// LegacySegment Ignored.
///
/// LegacyOffset Ignored
/// LegacyOffset Ignored.
///
/// The return values associated with this mode are:
///
@ -263,17 +263,17 @@ EfiGetPlatformBinaryOem32Data = 3,
///
/// The function parameters associated with this mode are:
///
/// Table System ROM image for the platform
/// Table System ROM image for the platform.
///
/// TableSize Size of Table in bytes
/// TableSize Size of Table in bytes.
///
/// Location Ignored
/// Location Ignored.
///
/// Alignment Ignored
/// Alignment Ignored.
///
/// LegacySegment Ignored
/// LegacySegment Ignored.
///
/// LegacyOffset Ignored
/// LegacyOffset Ignored.
///
/// The return values associated with this mode are:
///
@ -290,7 +290,7 @@ EfiGetPlatformBinaryOem32Data = 3,
} EFI_GET_PLATFORM_INFO_MODE;
/**
This enum specifies the Mode param values for GetPlatformHandle()
This enum specifies the Mode param values for GetPlatformHandle().
**/
typedef enum {
///
@ -299,13 +299,13 @@ typedef enum {
///
/// The function parameters associated with this mode are:
///
/// Type 0x00
/// Type 0x00.
///
/// HandleBuffer Buffer of all VGA handles found.
///
/// HandleCount Number of VGA handles found.
///
/// AdditionalData NULL
/// AdditionalData NULL.
///
EfiGetPlatformVgaHandle = 0,
///
@ -314,11 +314,11 @@ typedef enum {
///
/// The function parameters associated with this mode are:
///
/// Type 0x00
/// Type 0x00.
///
/// HandleBuffer Buffer of all IDE handles found.
///
/// HandleCount Number of IDE handles found
/// HandleCount Number of IDE handles found.
///
/// AdditionalData Pointer to HddInfo.
/// Information about all onboard IDE controllers.
@ -330,13 +330,13 @@ typedef enum {
///
/// The function parameters associated with this mode are:
///
/// Type 0x00
/// Type 0x00.
///
/// HandleBuffer Buffer of all ISA bus handles found.
///
/// HandleCount Number of ISA bus handles found.
///
/// AdditionalData NULL
/// AdditionalData NULL.
///
EfiGetPlatformIsaBusHandle = 2,
///
@ -345,20 +345,20 @@ typedef enum {
///
/// The function parameters associated with this mode are:
///
/// Type 0x00
/// Type 0x00.
///
/// HandleBuffer Buffer of all USB handles found.
///
/// HandleCount Number of USB bus handles found.
///
/// AdditionalData NULL
/// AdditionalData NULL.
///
EfiGetPlatformUsbHandle = 3
} EFI_GET_PLATFORM_HANDLE_MODE;
/**
This enum specifies the Mode param values for PlatformHooks()
Note: Any OEM defined hooks start with 0x8000
This enum specifies the Mode param values for PlatformHooks().
Note: Any OEM defined hooks start with 0x8000.
**/
typedef enum {
///
@ -366,15 +366,15 @@ typedef enum {
///
/// The function parameters associated with this mode are:
///
/// Type 0
/// Type 0.
///
/// DeviceHandle Handle of device OpROM is associated with.
///
/// ShadowAddress Address where OpROM is shadowed.
///
/// Compatibility16Table NULL
/// Compatibility16Table NULL.
///
/// AdditionalData NULL
/// AdditionalData NULL.
///
EfiPlatformHookPrepareToScanRom = 0,
///
@ -383,15 +383,15 @@ typedef enum {
///
/// The function parameters associated with this mode are:
///
/// Type 0
/// Type 0.
///
/// DeviceHandle 0
/// DeviceHandle 0.
///
/// ShadowAddress First free OpROM area, after other OpROMs have been dispatched..
///
/// Compatibility16Table Pointer to the Compatability16 Table.
///
/// AdditionalData NULL
/// AdditionalData NULL.
///
EfiPlatformHookShadowServiceRoms= 1,
///
@ -400,15 +400,15 @@ typedef enum {
///
/// The function parameters associated with this mode are:
///
/// Type 0
/// Type 0.
///
/// DeviceHandle Handle of device OpROM is associated with.
///
/// ShadowAddress Address where OpROM is shadowed.
///
/// Compatibility16Table NULL
/// Compatibility16Table NULL.
///
/// AdditionalData NULL
/// AdditionalData NULL.
///
EfiPlatformHookAfterRomInit = 2
} EFI_GET_PLATFORM_HOOK_MODE;
@ -550,7 +550,7 @@ typedef struct {
/**
Finds the binary data or other platform information.
@param This Protocol instance pointer.
@param This The protocol instance pointer.
@param Mode Specifies what data to return. See See EFI_GET_PLATFORM_INFO_MODE enum.
@param Table Mode specific. See EFI_GET_PLATFORM_INFO_MODE enum.
@param TableSize Mode specific. See EFI_GET_PLATFORM_INFO_MODE enum.
@ -559,7 +559,7 @@ typedef struct {
@param LegacySegment Mode specific. See EFI_GET_PLATFORM_INFO_MODE enum.
@param LegacyOffset Mode specific. See EFI_GET_PLATFORM_INFO_MODE enum.
@retval EFI_SUCCESS Data was returned successfully.
@retval EFI_SUCCESS Data returned successfully.
@retval EFI_UNSUPPORTED Mode is not supported on the platform.
@retval EFI_NOT_FOUND Binary image or table not found.
@ -580,16 +580,16 @@ EFI_STATUS
/**
Returns a buffer of handles for the requested subfunction.
@param This Protocol instance pointer.
@param This The protocol instance pointer.
@param Mode Specifies what handle to return. See EFI_GET_PLATFORM_HANDLE_MODE enum.
@param Type Mode specific. See EFI_GET_PLATFORM_HANDLE_MODE enum.
@param HandleBuffer Mode specific. See EFI_GET_PLATFORM_HANDLE_MODE enum.
@param HandleCount Mode specific. See EFI_GET_PLATFORM_HANDLE_MODE enum.
@param AdditionalData Mode specific. See EFI_GET_PLATFORM_HANDLE_MODE enum.
@retval EFI_SUCCESS Handle is valid
@retval EFI_SUCCESS Handle is valid.
@retval EFI_UNSUPPORTED Mode is not supported on the platform.
@retval EFI_NOT_FOUND Handle is not known
@retval EFI_NOT_FOUND Handle is not known.
**/
typedef
@ -606,8 +606,8 @@ EFI_STATUS
/**
Load and initialize the Legacy BIOS SMM handler.
@param This Protocol instance pointer.
@param EfiToLegacy16BootTable Pointer to Legacy16 boot table.
@param This The protocol instance pointer.
@param EfiToLegacy16BootTable A pointer to Legacy16 boot table.
@retval EFI_SUCCESS SMM code loaded.
@retval EFI_DEVICE_ERROR SMM code failed to load
@ -624,7 +624,7 @@ EFI_STATUS
Allows platform to perform any required action after a LegacyBios operation.
Invokes the specific sub function specified by Mode.
@param This Protocol instance pointer.
@param This The protocol instance pointer.
@param Mode Specifies what handle to return. See EFI_GET_PLATFORM_HOOK_MODE enum.
@param Type Mode specific. See EFI_GET_PLATFORM_HOOK_MODE enum.
@param DeviceHandle Mode specific. See EFI_GET_PLATFORM_HOOK_MODE enum.
@ -632,7 +632,7 @@ EFI_STATUS
@param Compatibility16Table Mode specific. See EFI_GET_PLATFORM_HOOK_MODE enum.
@param AdditionalData Mode specific. See EFI_GET_PLATFORM_HOOK_MODE enum.
@retval EFI_SUCCESS The operation performed successfully, Mode specific.
@retval EFI_SUCCESS The operation performed successfully. Mode specific.
@retval EFI_UNSUPPORTED Mode is not supported on the platform.
**/
@ -651,18 +651,18 @@ EFI_STATUS
/**
Returns information associated with PCI IRQ routing.
This function returns the following information associated with PCI IRQ routing:
* An IRQ routing table and number of entries in the table
* The $PIR table and its size
* A list of PCI IRQs and the priority order to assign them
* An IRQ routing table and number of entries in the table.
* The $PIR table and its size.
* A list of PCI IRQs and the priority order to assign them.
@param This Protocol instance pointer.
@param RoutingTable Pointer to PCI IRQ Routing table.
@param This The protocol instance pointer.
@param RoutingTable The pointer to PCI IRQ Routing table.
This location is the $PIR table minus the header.
@param RoutingTableEntries Number of entries in table.
@param LocalPirqTable $PIR table
@param PirqTableSize $PIR table size
@param LocalIrqPriorityTable List of interrupts in priority order to assign
@param IrqPriorityTableEntries Number of entries in priority table
@param RoutingTableEntries The number of entries in table.
@param LocalPirqTable $PIR table.
@param PirqTableSize $PIR table size.
@param LocalIrqPriorityTable A list of interrupts in priority order to assign.
@param IrqPriorityTableEntries The number of entries in the priority table.
@retval EFI_SUCCESS Data was successfully returned.
@ -680,16 +680,16 @@ EFI_STATUS
);
/**
Translates the given PIRQ accounting for bridge
Translates the given PIRQ accounting for bridge.
This function translates the given PIRQ back through all buses, if required,
and returns the true PIRQ and associated IRQ.
@param This Protocol instance pointer.
@param PciBus PCI bus number for this device.
@param PciDevice PCI device number for this device.
@param PciFunction PCI function number for this device.
@param Pirq Input is PIRQ reported by device, output is true PIRQ.
@param PciIrq The IRQ already assigned to the PIRQ or the IRQ to be
@param This The protocol instance pointer.
@param PciBus The PCI bus number for this device.
@param PciDevice The PCI device number for this device.
@param PciFunction The PCI function number for this device.
@param Pirq Input is PIRQ reported by device, and output is true PIRQ.
@param PciIrq The IRQ already assigned to the PIRQ, or the IRQ to be
assigned to the PIRQ.
@retval EFI_SUCCESS The PIRQ was translated.
@ -710,12 +710,12 @@ EFI_STATUS
Attempt to legacy boot the BootOption. If the EFI contexted has been
compromised this function will not return.
@param This Protocol instance pointer.
@param BbsDevicePath EFI Device Path from BootXXXX variable.
@param BbsTable Internal BBS table.
@param LoadOptionSize Size of LoadOption in size.
@param LoadOption LoadOption from BootXXXX variable
@param EfiToLegacy16BootTable Pointer to BootTable structure
@param This The protocol instance pointer.
@param BbsDevicePath The EFI Device Path from BootXXXX variable.
@param BbsTable The Internal BBS table.
@param LoadOptionSize The size of LoadOption in size.
@param LoadOption The LoadOption from BootXXXX variable
@param EfiToLegacy16BootTable A pointer to BootTable structure
@retval EFI_SUCCESS Ready to boot.

View File

@ -1,17 +1,17 @@
/** @file
This protocol abstracts the PIRQ programming from the generic EFI Compatibility Support Modules (CSMs).
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This protocol is defined in Framework for EFI Compatibility Support Module spec
This protocol is defined in Framework for the EFI Compatibility Support Module specification.
Version 0.97.
**/
@ -30,8 +30,8 @@ typedef struct _EFI_LEGACY_INTERRUPT_PROTOCOL EFI_LEGACY_INTERRUPT_PROTOCOL;
/**
Get the number of PIRQs this hardware supports.
@param This Protocol instance pointer.
@param NumberPirsq Number of PIRQs that are supported.
@param This The protocol instance pointer.
@param NumberPirsq The number of PIRQs that are supported.
@retval EFI_SUCCESS The number of PIRQs was returned successfully.
@ -46,12 +46,12 @@ EFI_STATUS
/**
Gets the PCI location associated with this protocol.
@param This Protocol instance pointer.
@param Bus PCI Bus
@param Device PCI Device
@param Function PCI Function
@param This The Protocol instance pointer.
@param Bus The PCI Bus.
@param Device The PCI Device.
@param Function The PCI Function.
@retval EFI_SUCCESS The Bus, Device, and Function were returned successfully
@retval EFI_SUCCESS The Bus, Device, and Function were returned successfully.
**/
typedef
@ -66,12 +66,12 @@ EFI_STATUS
/**
Read the PIRQ register and return the data
@param This Protocol instance pointer.
@param PirqNumber PIRQ register to read
@param PirqData Data read
@param This The protocol instance pointer.
@param PirqNumber The PIRQ register to read.
@param PirqData The data read.
@retval EFI_SUCCESS Data was read
@retval EFI_INVALID_PARAMETER Invalid PIRQ number
@retval EFI_SUCCESS The data was read.
@retval EFI_INVALID_PARAMETER Invalid PIRQ number.
**/
typedef
@ -85,12 +85,12 @@ EFI_STATUS
/**
Write the specified PIRQ register with the given data.
@param This Protocol instance pointer.
@param PirqNumber PIRQ register to read.
@param PirqData Data to write.
@param This The protocol instance pointer.
@param PirqNumber A PIRQ register to read.
@param PirqData The data to write.
@retval EFI_SUCCESS The PIRQ was programmed
@retval EFI_INVALID_PARAMETER Invalid PIRQ number
@retval EFI_SUCCESS The PIRQ was programmed.
@retval EFI_INVALID_PARAMETER Invalid PIRQ number.
**/
typedef
@ -108,7 +108,7 @@ struct _EFI_LEGACY_INTERRUPT_PROTOCOL {
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 is associated with this protocol.
///
EFI_LEGACY_INTERRUPT_GET_LOCATION GetLocation;

View File

@ -1,14 +1,14 @@
/** @file
This protocol manages the legacy memory regions between 0xc0000 - 0xfffff
This protocol manages the legacy memory regions between 0xc0000 - 0xfffff.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This protocol is defined in Framework for EFI Compatibility Support Module spec
@ -31,11 +31,11 @@ typedef struct _EFI_LEGACY_REGION_PROTOCOL EFI_LEGACY_REGION_PROTOCOL;
Sets hardware to decode or not decode a region.
@param This Indicates the EFI_LEGACY_REGION_PROTOCOL instance
@param Start Start of region to decode.
@param Length Size in bytes of the region.
@param On Decode/nondecode flag.
@param Start The start of the region to decode.
@param Length The size in bytes of the region.
@param On The decode/nondecode flag.
@retval EFI_SUCCESS Decode range successfully changed.
@retval EFI_SUCCESS The decode range successfully changed.
**/
typedef
@ -50,9 +50,9 @@ EFI_STATUS
/**
Sets a region to read only.
@param This Indicates the EFI_LEGACY_REGION_PROTOCOL instance
@param Start Start of region to lock.
@param Length Size in bytes of the region.
@param This Indicates the EFI_LEGACY_REGION_PROTOCOL instance.
@param Start The start of region to lock.
@param Length The size in bytes of the region.
@param Granularity Lock attribute affects this granularity in bytes.
@retval EFI_SUCCESS The region was made read only.
@ -72,8 +72,8 @@ EFI_STATUS
inadvertently modified.
@param This Indicates the EFI_LEGACY_REGION_PROTOCOL instance
@param Start Start of region to lock.
@param Length Size in bytes of the region.
@param Start The start of region to lock.
@param Length The size in bytes of the region.
@param Granularity Lock attribute affects this granularity in bytes.
@retval EFI_SUCCESS The region was made read only and flash is locked.
@ -92,8 +92,8 @@ EFI_STATUS
Sets a region to read-write.
@param This Indicates the EFI_LEGACY_REGION_PROTOCOL instance
@param Start Start of region to lock.
@param Length Size in bytes of the region.
@param Start The start of region to lock.
@param Length The size in bytes of the region.
@param Granularity Lock attribute affects this granularity in bytes.
@retval EFI_SUCCESS The region was successfully made read-write.
@ -113,9 +113,9 @@ EFI_STATUS
for the traditional BIOS.
**/
struct _EFI_LEGACY_REGION_PROTOCOL {
EFI_LEGACY_REGION_DECODE Decode; ///< Specifies a region for the chipset to decode
EFI_LEGACY_REGION_DECODE Decode; ///< Specifies a region for the chipset to decode.
EFI_LEGACY_REGION_LOCK Lock; ///< Makes the specified OpROM region read only or locked.
EFI_LEGACY_REGION_BOOT_LOCK BootLock; ///< Sets a region to read only and ensures tat flash is locked from
EFI_LEGACY_REGION_BOOT_LOCK BootLock; ///< Sets a region to read only and ensures tat flash is locked from.
///< inadvertent modification.
EFI_LEGACY_REGION_UNLOCK UnLock; ///< Makes the specified OpROM region read-write or unlocked.
};

View File

@ -4,19 +4,18 @@
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.
Copyright (c) 2006 - 2009, Intel Corporation
All rights reserved. This program and the accompanying
materials 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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This protocol is defined in Firmware Volume Specification.
Version 0.9
Version 0.9.
**/
@ -40,12 +39,12 @@ typedef struct _EFI_SECTION_EXTRACTION_PROTOCOL EFI_SECTION_EXTRACTION_PROTOCOL;
Creates and returns a new section stream handle to represent the new section stream.
@param This Indicates the EFI_SECTION_EXTRACTION_PROTOCOL instance.
@param SectionStreamLength Size in bytes of the section stream.
@param SectionStream Buffer containing the new section stream.
@param SectionStreamLength The size in bytes of the section stream.
@param SectionStream A buffer containing the new section stream.
@param SectionStreamHandle A pointer to a caller-allocated UINTN that,
on output, contains the new section stream handle.
@retval EFI_SUCCESS The SectionStream was successfully processed and
@retval EFI_SUCCESS The SectionStream was successfully processed, and
the section stream handle was returned.
@retval EFI_OUT_OF_RESOURCES The system has insufficient resources to
process the request.
@ -67,13 +66,16 @@ EFI_STATUS
@param This Indicates the EFI_SECTION_EXTRACTION_PROTOCOL instance.
@param SectionStreamHandle Indicates from which section stream to read.
@param SectionType Pointer to an EFI_SECTION_TYPE. If SectionType == NULL, the contents of the
entire section stream are returned in Buffer. If SectionType is not NULL,
only the requested section is returned. EFI_SECTION_ALL matches all section
types and can be used as a wild card to extract all sections in order.
@param SectionDefinitionGuid Pointer to an EFI_GUID. If SectionType ==
EFI_SECTION_GUID_DEFINED, SectionDefinitionGuid indicates what section GUID
to search for. If SectionType !=EFI_SECTION_GUID_DEFINED, then
@param SectionType The pointer to an EFI_SECTION_TYPE. If SectionType == NULL,
the contents of the entire section stream are returned
in Buffer. If SectionType is not NULL, only the
requested section is returned. EFI_SECTION_ALL
matches all section types and can be used as a
wild card to extract all sections in order.
@param SectionDefinitionGuid The pointer to an EFI_GUID. If SectionType ==
EFI_SECTION_GUID_DEFINED, SectionDefinitionGuid
indicates what section GUID to search for. If
SectionType !=EFI_SECTION_GUID_DEFINED, then
SectionDefinitionGuid is unused and is ignored.
@param SectionInstance Indicates which instance of the requested section
type to return when SectionType is not NULL.
@ -81,24 +83,26 @@ EFI_STATUS
contains the new section stream handle.
@param Buffer Pointer to a pointer to a buffer in which the section
contents are returned.
@param BufferSize Pointer to a caller-allocated UINTN.
@param AuthenticationStatus Pointer to a caller-allocated UINT32 in
which any meta-data from encapsulation GUID-defined sections is returned.
@param BufferSize A pointer to a caller-allocated UINTN.
@param AuthenticationStatus A pointer to a caller-allocated UINT32 in
which any meta-data from encapsulation GUID-defined
sections is returned.
@retval EFI_SUCCESS The SectionStream was successfully processed and
the section contents were returned in Buffer.
@retval EFI_PROTOCOL_ERROR A GUID-defined section was encountered in
the section stream with its EFI_GUIDED_SECTION_PROCESSING_REQUIRED bit set,
but there was no corresponding GUIDed Section Extraction Protocol in
the handle database.
@retval EFI_PROTOCOL_ERROR A GUID-defined section was encountered inthe section
stream with its EFI_GUIDED_SECTION_PROCESSING_REQUIRED
bit set, but there was no corresponding GUIDed
Section Extraction Protocol in the handle database.
@retval EFI_NOT_FOUND An error was encountered when parsing the SectionStream,
which indicates that the SectionStream is not correctly formatted.
Or The requested section does not exist.
which indicates that the SectionStream is not
correctly formatted. Or, the requested section does not exist.
@retval EFI_OUT_OF_RESOURCES The system has insufficient resources to process
the request.
@retval EFI_INVALID_PARAMETER The SectionStreamHandle does not exist.
@retval EFI_WARN_BUFFER_TOO_SMALL The size of the input buffer is insufficient to contain the requested
section. The input buffer is filled and section contents are truncated.
@retval EFI_WARN_BUFFER_TOO_SMALL The size of the input buffer is insufficient
to contain the requested section. The input
buffer is filled and section contents are truncated.
**/
typedef

View File

@ -6,14 +6,14 @@
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.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This Protocol is defined in Framework of EFI SMM Core Interface Spec

View File

@ -19,14 +19,14 @@
workarounds for the century rollover in CMOS should provide commensurate services throughout
preboot and OS runtime.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This Protocol is defined in Framework of EFI SMM Core Interface Spec
@ -44,7 +44,7 @@
#include <Protocol/SmmCommunication.h>
///
/// Global ID for the EFI_SMM_BASE_PROTOCOL
/// Global ID for the EFI_SMM_BASE_PROTOCOL.
///
#define EFI_SMM_BASE_PROTOCOL_GUID \
{ \
@ -52,7 +52,7 @@
}
///
/// Forward declaration for EFI_SMM_BASE_PROTOCOL
/// Forward declaration for EFI_SMM_BASE_PROTOCOL.
///
typedef struct _EFI_SMM_BASE_PROTOCOL EFI_SMM_BASE_PROTOCOL;
@ -72,8 +72,10 @@ typedef struct _EFI_SMM_BASE_PROTOCOL EFI_SMM_BASE_PROTOCOL;
@param[in] SmmImageHandle A handle allocated by the SMM infrastructure code
to uniquely designate a specific DXE SMM driver.
@param[in] CommunicationBuffer A pointer to a collection of data in memory
that will be conveyed from a non-SMM environment into an SMM environment.
The buffer must be contiguous and physically mapped, and must be a physical address.
that will be conveyed from a non-SMM environment
into an SMM environment. The buffer must be
contiguous and physically mapped, and must be
a physical address.
@param[in] SourceSize The size of the CommunicationBuffer.
@return Status code
@ -94,13 +96,13 @@ EFI_STATUS
Register a given driver into SMRAM. This is the equivalent of performing
the LoadImage/StartImage into System Management Mode.
@param[in] This Protocol instance pointer.
@param[in] FilePath Location of the image to be installed as the handler.
@param[in] SourceBuffer Optional source buffer in case the image file
@param[in] This The protocol instance pointer.
@param[in] FilePath The location of the image to be installed as the handler.
@param[in] SourceBuffer An optional source buffer in case the image file
is in memory.
@param[in] SourceSize Size of the source image file, if in memory.
@param[in] SourceSize The size of the source image file, if in memory.
@param[out] ImageHandle The handle that the base driver uses to decode
the handler. Unique among SMM handlers only,
the handler. Unique among SMM handlers only;
not unique across DXE/EFI.
@param[in] LegacyIA32Binary An optional parameter specifying that the associated
file is a real-mode IA-32 binary.
@ -108,8 +110,8 @@ EFI_STATUS
@retval EFI_SUCCESS The operation was successful.
@retval EFI_OUT_OF_RESOURCES There were no additional SMRAM resources to load the handler
@retval EFI_UNSUPPORTED This platform does not support 16-bit handlers.
@retval EFI_UNSUPPORTED Platform is in runtime.
@retval EFI_INVALID_PARAMETER The handlers was not the correct image type
@retval EFI_UNSUPPORTED The platform is in runtime.
@retval EFI_INVALID_PARAMETER The handlers were not the correct image type.
**/
typedef
@ -127,12 +129,12 @@ EFI_STATUS
Removes a handler from execution within SMRAM. This is the equivalent of performing
the UnloadImage in System Management Mode.
@param[in] This Protocol instance pointer.
@param[in] This The protocol instance pointer.
@param[in] ImageHandle The handler to be removed.
@retval EFI_SUCCESS The operation was successful
@retval EFI_INVALID_PARAMETER The handler did not exist
@retval EFI_UNSUPPORTED Platform is in runtime.
@retval EFI_SUCCESS The operation was successful.
@retval EFI_INVALID_PARAMETER The handler did not exist.
@retval EFI_UNSUPPORTED The platform is in runtime.
**/
typedef
@ -148,15 +150,15 @@ EFI_STATUS
EFI service. The BASE protocol driver is responsible for doing
any of the copies such that the data lives in boot-service-accessible RAM.
@param[in] This Protocol instance pointer.
@param[in] This The protocol instance pointer.
@param[in] ImageHandle The handle of the registered driver.
@param[in,out] CommunicationBuffer Pointer to the buffer to convey into SMRAM.
@param[in,out] CommunicationBuffer The pointer to the buffer to convey into SMRAM.
@param[in,out] SourceSize The size of the data buffer being passed in.
On exit, the size of data being returned.
Zero if the handler does not wish to reply with any data.
@retval EFI_SUCCESS The message was successfully posted
@retval EFI_INVALID_PARAMETER The buffer was NULL
@retval EFI_SUCCESS The message was successfully posted.
@retval EFI_INVALID_PARAMETER The buffer was NULL.
**/
typedef
@ -182,9 +184,9 @@ EFI_STATUS
the floating point register state. If any handler
require this, the state will be saved for all handlers.
@retval EFI_SUCCESS The operation was successful
@retval EFI_OUT_OF_RESOURCES Not enough space in the dispatch queue
@retval EFI_UNSUPPORTED Platform is in runtime.
@retval EFI_SUCCESS The operation was successful.
@retval EFI_OUT_OF_RESOURCES Not enough space in the dispatch queue.
@retval EFI_UNSUPPORTED The platform is in runtime.
@retval EFI_UNSUPPORTED The caller is not in SMM.
**/
@ -216,7 +218,7 @@ EFI_STATUS
@retval EFI_SUCCESS The requested number of bytes was allocated.
@retval EFI_OUT_OF_RESOURCES The pool requested could not be allocated.
@retval EFI_UNSUPPORTED Platform is in runtime.
@retval EFI_UNSUPPORTED The platform is in runtime.
**/
typedef
@ -233,12 +235,12 @@ EFI_STATUS
On return, the memory's type is EFI SMRAM Memory. The Buffer that is freed must
have been allocated by SmmAllocatePool().
@param[in] This Protocol instance pointer.
@param[in] Buffer Pointer to the buffer allocation.
@param[in] This The protocol instance pointer.
@param[in] Buffer The pointer to the buffer allocation.
@retval EFI_SUCCESS The memory was returned to the system.
@retval EFI_INVALID_PARAMETER Buffer was invalid.
@retval EFI_UNSUPPORTED Platform is in runtime.
@retval EFI_INVALID_PARAMETER The buffer was invalid.
@retval EFI_UNSUPPORTED The platform is in runtime.
**/
typedef
@ -251,12 +253,12 @@ EFI_STATUS
/**
This routine tells caller if execution context is SMM or not.
@param[in] This Protocol instance pointer.
@param[in] This The protocol instance pointer.
@param[out] InSmm Whether the caller is inside SMM for IA-32
or servicing a PMI for the Itanium processor
family.
@retval EFI_SUCCESS The operation was successful
@retval EFI_SUCCESS The operation was successful.
@retval EFI_INVALID_PARAMETER InSmm was NULL.
**/
@ -273,8 +275,8 @@ EFI_STATUS
location of the SMST in its entry point and then cache it in some driver
global variable so that the SMST can be invoked in subsequent callbacks.
@param[in] This Protocol instance pointer.
@param[in] Smst Pointer to the SMST.
@param[in] This The protocol instance pointer.
@param[in] Smst The pointer to the SMST.
@retval EFI_SUCCESS The operation was successful
@retval EFI_INVALID_PARAMETER Smst was invalid.

View File

@ -8,14 +8,14 @@
event from a platform chipset agent is an optional capability for both IA-32 and Itanium-based
systems.
Copyright (c) 2007,2009 Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This Protocol is defined in Framework of EFI SMM Core Interface Spec
@ -56,10 +56,10 @@ typedef struct {
Invokes SMI activation from either the preboot or runtime environment.
@param This The EFI_SMM_CONTROL_PROTOCOL instance.
@param ArgumentBuffer Optional sized data to pass into the protocol activation.
@param ArgumentBufferSize Optional size of the data.
@param Periodic Optional mechanism to periodically repeat activation.
@param ActivationInterval Optional parameter to repeat at this period one
@param ArgumentBuffer The optional sized data to pass into the protocol activation.
@param ArgumentBufferSize The optional size of the data.
@param Periodic An optional mechanism to periodically repeat activation.
@param ActivationInterval An optional parameter to repeat at this period one
time or, if the Periodic Boolean is set, periodically.
@retval EFI_SUCCESS The SMI/PMI has been engendered.
@ -101,7 +101,7 @@ EFI_STATUS
Provides information on the source register used to generate the SMI.
@param This The EFI_SMM_CONTROL_PROTOCOL instance.
@param SmiRegister Pointer to the SMI register description structure
@param SmiRegister A pointer to the SMI register description structure.
@retval EFI_SUCCESS The register structure has been returned.
@retval EFI_DEVICE_ERROR The source could not be cleared.
@ -140,9 +140,9 @@ EFI_STATUS
/**
This protocol is used to initiate SMI/PMI activations.
This protocol could be published by either:
- A processor driver to abstract the SMI/PMI IPI
- The driver that abstracts the ASIC that is supporting the APM port, such as the ICH in an Intel chipset
Because of the possibility of performing SMI or PMI IPI transactions, the ability to generate this
- A processor driver to abstract the SMI/PMI IPI.
- The driver that abstracts the ASIC that is supporting the APM port, such as the ICH in an Intel chipset.
Because of the possibility of performing SMI or PMI IPI transactions, the ability to generate this.
The EFI_SMM_CONTROL_PROTOCOL is used by the platform chipset or processor driver. This
protocol is usable both in boot services and at runtime. The runtime aspect enables an

View File

@ -3,14 +3,14 @@
This protocol provides CPU I/O and memory access within SMM.
Copyright (c) 2009 - 2010, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
@ -36,7 +36,7 @@ typedef struct _EFI_SMM_CPU_IO_INTERFACE EFI_SMM_CPU_IO_INTERFACE;
@param[in] This The EFI_SMM_CPU_IO_INTERFACE instance.
@param[in] Width Signifies the width of the I/O operations.
@param[in] Address The base address of the I/O operations. The caller is
responsible for aligning the Address if required.
responsible for aligning the Address, if required.
@param[in] Count The number of I/O operations to perform.
@param[in,out] Buffer For read operations, the destination buffer to store
the results. For write operations, the source buffer

View File

@ -2,14 +2,14 @@
This file declares the SMM CPU Save State protocol, which provides the processor
save-state information for IA-32 and Itanium processors.
Copyright (c) 2010, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This Protocol is defined in Framework of EFI SMM Core Interface Spec
@ -41,7 +41,7 @@ typedef struct _EFI_SMM_CPU_SAVE_STATE_PROTOCOL EFI_SMM_CPU_SAVE_STATE_PROTOCOL
/// union.
///
/// This struct declaration does not exctly match the Framework SMM CIS 0.91 because
/// The Framework SMM CIS 0.91 uses ASM_XXX for base types in this structure. These
/// the Framework SMM CIS 0.91 uses ASM_XXX for base types in this structure. These
/// have been changed to use the base types defined in the UEFI Specification.
///
typedef struct {
@ -81,7 +81,7 @@ typedef struct {
///
/// This struct declaration does not exctly match the Framework SMM CIS 0.91 because
/// The Framework SMM CIS 0.91 uses ASM_XXX for base types in this structure. These
/// the Framework SMM CIS 0.91 uses ASM_XXX for base types in this structure. These
/// have been changed to use the base types defined in the UEFI Specification.
///
typedef struct {
@ -165,7 +165,7 @@ typedef union {
///
struct _EFI_SMM_CPU_SAVE_STATE_PROTOCOL {
///
/// Reference to a list of save states
/// Reference to a list of save states.
///
EFI_SMM_CPU_STATE **CpuSaveState;
};

View File

@ -1,19 +1,19 @@
/** @file
This file declares Smm Gpi Smi Child Protocol.
This file declares the Smm Gpi Smi Child Protocol.
The EFI_SMM_GPI_DISPATCH_PROTOCOL is defined in Framework of EFI SMM Core Interface Spec
Version 0.9. It provides the ability to install child handlers for the given event types.
Several inputs can be enabled. This purpose of this interface is to generate an
SMI in response to any of these inputs having a true value provided.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
@ -54,10 +54,11 @@ typedef struct {
/**
Dispatch function for a GPI SMI handler.
@param DispatchHandle Handle of this dispatch function.
@param DispatchContext Pointer to the dispatch function's context.
The DispatchContext fields are filled in by the dispatching driver prior to
invoking this dispatch function.
@param DispatchHandle The handle of this dispatch function.
@param DispatchContext The pointer to the dispatch function's context.
The DispatchContext fields are filled in by the
dispatching driver prior to invoking this dispatch
function.
**/
typedef
VOID
@ -69,17 +70,17 @@ VOID
/**
Register a child SMI source dispatch function with a parent SMM driver
@param This Pointer to the EFI_SMM_GPI_DISPATCH_PROTOCOL instance.
@param This The pointer to the EFI_SMM_GPI_DISPATCH_PROTOCOL instance.
@param DispatchFunction Function to install.
@param DispatchContext Pointer to the dispatch function's context.
@param DispatchContext The pointer to the dispatch function's context.
Indicates to the register
function the GPI(s) for which the dispatch function
should be invoked.
@param DispatchHandle Handle generated by the dispatcher to track the
@param DispatchHandle The handle generated by the dispatcher to track the
function instance.
@retval EFI_SUCCESS The dispatch function has been successfully
registered and the SMI source has been enabled.
registered, and the SMI source has been enabled.
@retval EFI_DEVICE_ERROR The driver was unable to enable the SMI source.
@retval EFI_OUT_OF_RESOURCES Not enough memory (system or SMM) to manage this
child.
@ -99,11 +100,11 @@ EFI_STATUS
/**
Unregisters a General Purpose Input (GPI) service.
@param This Pointer to the EFI_SMM_GPI_DISPATCH_PROTOCOL instance.
@param DispatchHandle Handle of the service to remove.
@param This The pointer to the EFI_SMM_GPI_DISPATCH_PROTOCOL instance.
@param DispatchHandle The handle of the service to remove.
@retval EFI_SUCCESS The dispatch function has been successfully
unregistered and the SMI source has been disabled
unregistered, and the SMI source has been disabled,
if there are no other registered child dispatch
functions for this SMI source.
@retval EFI_INVALID_PARAMETER DispatchHandle is invalid.

View File

@ -3,14 +3,14 @@
The EFI_SMM_ICHN_DISPATCH_PROTOCOL provides the ability to install child handlers for
the given event types.
Copyright (c) 2008 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2008 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This Protocol is defined in Framework of EFI SMM Core Interface Spec
@ -106,8 +106,8 @@ typedef struct {
/**
Dispatch function for a ICHN specific SMI handler.
@param DispatchHandle Handle of this dispatch function.
@param DispatchContext Pointer to the dispatch function's context.
@param DispatchHandle The handle of this dispatch function.
@param DispatchContext The pointer to the dispatch function's context.
The DispatchContext fields are filled in
by the dispatching driver prior to
invoking this dispatch function.
@ -123,16 +123,16 @@ VOID
);
/**
Register a child SMI source dispatch function with a parent SMM driver
Register a child SMI source dispatch function with a parent SMM driver.
@param This Pointer to the EFI_SMM_ICHN_DISPATCH_PROTOCOL instance.
@param DispatchFunction Function to install.
@param DispatchContext Pointer to the dispatch function's context.
@param This The pointer to the EFI_SMM_ICHN_DISPATCH_PROTOCOL instance.
@param DispatchFunction The function to install.
@param DispatchContext The pointer to the dispatch function's context.
The caller fills in this context before calling
the register function to indicate to the register
function the ICHN SMI source for which the dispatch
function should be invoked.
@param DispatchHandle Handle generated by the dispatcher to track the function
@param DispatchHandle The handle generated by the dispatcher to track the function
instance.
@retval EFI_SUCCESS The dispatch function has been successfully
@ -156,14 +156,14 @@ EFI_STATUS
/**
Unregister a child SMI source dispatch function with a parent SMM driver
@param This Pointer to the EFI_SMM_ICHN_DISPATCH_PROTOCOL instance.
@param DispatchHandle Handle of the service to remove.
@param This The pointer to the EFI_SMM_ICHN_DISPATCH_PROTOCOL instance.
@param DispatchHandle The handle of the service to remove.
@retval EFI_SUCCESS The dispatch function has been successfully
unregistered and the SMI source has been disabled
unregistered, and the SMI source has been disabled,
if there are no other registered child dispatch
functions for this SMI source.
@retval EFI_INVALID_PARAMETER Handle is invalid.
@retval EFI_INVALID_PARAMETER The handle is invalid.
**/
typedef

View File

@ -1,14 +1,14 @@
/** @file
Provides the parent dispatch service for the periodical timer SMI source generator.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This Protocol is defined in Framework of EFI SMM Core Interface Spec
@ -36,7 +36,7 @@ typedef struct _EFI_SMM_PERIODIC_TIMER_DISPATCH_PROTOCOL EFI_SMM_PERIODIC_TIMER
typedef struct {
///
/// The minimum period of time that child gets called, in 100 nanosecond units.
/// The minimum period of time that the child gets called, in 100 nanosecond units.
/// The child will be called back after a time greater than the time Period.
///
UINT64 Period;
@ -61,8 +61,8 @@ typedef struct {
/**
Dispatch function for a Periodic Timer SMI handler.
@param DispatchHandle Handle of this dispatch function.
@param DispatchContext Pointer to the dispatch function's context.
@param DispatchHandle The handle of this dispatch function.
@param DispatchContext The pointer to the dispatch function's context.
The DispatchContext fields are filled in
by the dispatching driver prior to
invoking this dispatch function.
@ -81,8 +81,8 @@ VOID
Returns the next SMI tick period supported by the chipset. The order
returned is from longest to shortest interval period.
@param This Protocol instance pointer.
@param SmiTickInterval Pointer to pointer of next shorter SMI interval
@param This The protocol instance pointer.
@param SmiTickInterval The pointer to pointer of next shorter SMI interval
period supported by the child. This parameter works as a get-first,
get-next field. The first time this function is called, *SmiTickInterval
should be set to NULL to get the longest SMI interval. The returned
@ -102,16 +102,16 @@ EFI_STATUS
/**
Register a child SMI source dispatch function with a parent SMM driver
@param This Pointer to the EFI_SMM_PERIODIC_TIMER_DISPATCH_PROTOCOL instance.
@param DispatchFunction Function to install.
@param DispatchContext Pointer to the dispatch function's context.
@param This The pointer to the EFI_SMM_PERIODIC_TIMER_DISPATCH_PROTOCOL instance.
@param DispatchFunction The function to install.
@param DispatchContext The pointer to the dispatch function's context.
Indicates to the register
function the period at which the dispatch function
should be invoked.
@param DispatchHandle Handle generated by the dispatcher to track the function instance.
@param DispatchHandle The handle generated by the dispatcher to track the function instance.
@retval EFI_SUCCESS The dispatch function has been successfully
registered and the SMI source has been enabled.
registered, and the SMI source has been enabled.
@retval EFI_DEVICE_ERROR The driver was unable to enable the SMI source.
@retval EFI_OUT_OF_RESOURCES Not enough memory (system or SMM) to manage this
child.
@ -131,14 +131,14 @@ EFI_STATUS
/**
Unregisters a periodic timer service.
@param This Pointer to the EFI_SMM_PERIODIC_TIMER_DISPATCH_PROTOCOL instance.
@param DispatchHandle Handle of the service to remove.
@param This The pointer to the EFI_SMM_PERIODIC_TIMER_DISPATCH_PROTOCOL instance.
@param DispatchHandle The handle of the service to remove.
@retval EFI_SUCCESS The dispatch function has been successfully
unregistered and the SMI source has been disabled
unregistered, and the SMI source has been disabled
if there are no other registered child dispatch
functions for this SMI source.
@retval EFI_INVALID_PARAMETER Handle is invalid.
@retval EFI_INVALID_PARAMETER The handle is invalid.
**/
typedef

View File

@ -1,14 +1,14 @@
/** @file
Provides the parent dispatch service for the power button SMI source generator.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This Protocol is defined in Framework of EFI SMM Core Interface Spec
@ -53,8 +53,8 @@ typedef struct {
/**
Dispatch function for a Power Button SMI handler.
@param[in] DispatchHandle Handle of this dispatch function.
@param[in] DispatchContext Pointer to the dispatch function's context.
@param[in] DispatchHandle The handle of this dispatch function.
@param[in] DispatchContext The pointer to the dispatch function's context.
The DispatchContext fields are filled in
by the dispatching driver prior to
invoking this dispatch function.
@ -70,13 +70,15 @@ VOID
/**
Provides the parent dispatch service for a given SMI source generator
@param[in] This Pointer to the EFI_SMM_POWER_BUTTON_DISPATCH_PROTOCOL instance.
@param[in] DispatchFunction Function to install.
@param[in] DispatchContext Pointer to the dispatch function's context.
@param[in] This The pointer to the
EFI_SMM_POWER_BUTTON_DISPATCH_PROTOCOL instance.
@param[in] DispatchFunction The function to install.
@param[in] DispatchContext The pointer to the dispatch function's context.
Indicates to the register
function the Power Button SMI phase for which to invoke the dispatch
function.
@param[out] DispatchHandle Handle generated by the dispatcher to track the function instance.
function the Power Button SMI phase for which
to invoke the dispatch function.
@param[out] DispatchHandle Handle generated by the dispatcher to track
the function instance.
@retval EFI_SUCCESS The dispatch function has been successfully
registered and the SMI source has been enabled.
@ -99,15 +101,15 @@ EFI_STATUS
/**
Unregisters a power-button service.
@param[in] This Pointer to the EFI_SMM_POWER_BUTTON_DISPATCH_PROTOCOL instance.
@param[in] DispatchHandle Handle of the service to remove.
@param[in] This The pointer to the EFI_SMM_POWER_BUTTON_DISPATCH_PROTOCOL instance.
@param[in] DispatchHandle The handle of the service to remove.
@retval EFI_SUCCESS The dispatch function has been successfully
unregistered and the SMI source has been
disabled if there are no other registered
unregistered, and the SMI source has been
disabled, if there are no other registered
child dispatch functions for this SMI
source.
@retval EFI_INVALID_PARAMETER Handle is invalid.
@retval EFI_INVALID_PARAMETER The handle is invalid.
**/
typedef

View File

@ -5,14 +5,14 @@
the Intel Platform Innovation Framework for EFI SMM Core Interface Specification
(SMM CIS) Version 0.9.
Copyright (c) 2007, 2009 Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This Protocol is defined in Framework of EFI SMM Core Interface Spec
@ -56,8 +56,8 @@ typedef struct {
/**
Dispatch function for a Standby Button SMI handler.
@param DispatchHandle Handle of this dispatch function.
@param DispatchContext Pointer to the dispatch function's context.
@param DispatchHandle The handle of this dispatch function.
@param DispatchContext The pointer to the dispatch function's context.
The DispatchContext fields are filled in
by the dispatching driver prior to
invoking this dispatch function.
@ -73,16 +73,17 @@ VOID
/**
Provides the parent dispatch service for a given SMI source generator
@param This Pointer to the EFI_SMM_STANDBY_BUTTON_DISPATCH_PROTOCOL instance.
@param DispatchFunction Function to install.
@param DispatchContext Pointer to the dispatch function's context.
Indicates to the register
function the Standby Button SMI phase for which to invoke the dispatch
@param This The pointer to the EFI_SMM_STANDBY_BUTTON_DISPATCH_PROTOCOL instance.
@param DispatchFunction The function to install.
@param DispatchContext The pointer to the dispatch function's context.
Indicates to the register function the Standby
Button SMI phase for which to invoke the dispatch
function.
@param DispatchHandle Handle generated by the dispatcher to track the function instance.
@param DispatchHandle The handle generated by the dispatcher to track the
function instance.
@retval EFI_SUCCESS The dispatch function has been successfully
registered and the SMI source has been enabled.
registered, and the SMI source has been enabled.
@retval EFI_DEVICE_ERROR The driver could not enable the SMI source.
@retval EFI_OUT_OF_RESOURCES Not enough memory (system or SMM) to manage this
child.
@ -100,16 +101,16 @@ EFI_STATUS
);
/**
Unregister a child SMI source dispatch function with a parent SMM driver
Unregister a child SMI source dispatch function with a parent SMM driver.
@param This Pointer to the EFI_SMM_STANDBY_BUTTON_DISPATCH_PROTOCOL instance.
@param DispatchHandle Handle of the service to remove.
@param This The pointer to the EFI_SMM_STANDBY_BUTTON_DISPATCH_PROTOCOL instance.
@param DispatchHandle The handle of the service to remove.
@retval EFI_SUCCESS The dispatch function has been successfully
unregistered and the SMI source has been disabled
unregistered, and the SMI source has been disabled,
if there are no other registered child dispatch
functions for this SMI source.
@retval EFI_INVALID_PARAMETER Handle is invalid.
@retval EFI_INVALID_PARAMETER The handle is invalid.
**/
typedef

View File

@ -1,14 +1,14 @@
/** @file
Provides the parent dispatch service for a given SMI source generator.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This Protocol is defined in Framework for EFI SMM Core Interface Spec
@ -48,8 +48,8 @@ typedef struct {
/**
Dispatch function for a Software SMI handler.
@param DispatchHandle Handle of this dispatch function.
@param DispatchContext Pointer to the dispatch function's context.
@param DispatchHandle The handle of this dispatch function.
@param DispatchContext The pointer to the dispatch function's context.
The SwSmiInputValue field is filled in
by the software dispatch driver prior to
invoking this dispatch function.
@ -67,15 +67,16 @@ VOID
);
/**
Register a child SMI source dispatch function with a parent SMM driver
Register a child SMI source dispatch function with a parent SMM driver.
@param This Pointer to the EFI_SMM_SW_DISPATCH_PROTOCOL instance.
@param DispatchFunction Function to install.
@param DispatchContext Pointer to the dispatch function's context.
@param This The pointer to the EFI_SMM_SW_DISPATCH_PROTOCOL instance.
@param DispatchFunction The function to install.
@param DispatchContext The pointer to the dispatch function's context.
Indicates to the register
function the Software SMI input value for which to invoke the
dispatch function.
@param DispatchHandle Handle generated by the dispatcher to track the function instance.
function the Software SMI input value for which
to invoke the dispatch function.
@param DispatchHandle The handle generated by the dispatcher to track
the function instance.
@retval EFI_SUCCESS The dispatch function has been successfully
registered and the SMI source has been enabled.
@ -98,14 +99,14 @@ EFI_STATUS
/**
Unregister a child SMI source dispatch function with a parent SMM driver
@param This Pointer to the EFI_SMM_SW_DISPATCH_PROTOCOL instance.
@param DispatchHandle Handle of the service to remove.
@param This The pointer to the EFI_SMM_SW_DISPATCH_PROTOCOL instance.
@param DispatchHandle The handle of the service to remove.
@retval EFI_SUCCESS The dispatch function has been successfully
unregistered and the SMI source has been disabled
if there are no other registered child dispatch
functions for this SMI source.
@retval EFI_INVALID_PARAMETER Handle is invalid.
@retval EFI_INVALID_PARAMETER The handle is invalid.
**/
typedef
@ -123,8 +124,9 @@ EFI_STATUS
Provides the parent dispatch service for a given SMI source generator.
**/
///
/// Inconsistent with specification here:
/// In framework spec SmmCis, this definition is named as _EFI_SMM_ICHN_DISPATCH_PROTOCOL by mistake.
/// Inconsistent with the specification here:
/// In The Framework specification SmmCis, this definition is named as
/// _EFI_SMM_ICHN_DISPATCH_PROTOCOL by mistake.
///
struct _EFI_SMM_SW_DISPATCH_PROTOCOL {
///

View File

@ -1,14 +1,14 @@
/** @file
Provides the parent dispatch service for a given Sx-state source generator.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This Protocol is defined in Framework of EFI SMM Core Interface Spec
@ -45,13 +45,13 @@ typedef struct {
/**
Dispatch function for a Sx state SMI handler.
@param DispatchHandle Handle of this dispatch function.
@param DispatchContext Pointer to the dispatch function's context.
@param DispatchHandle The handle of this dispatch function.
@param DispatchContext The pointer to the dispatch function's context.
The Type and Phase fields are filled in by the Sx dispatch driver
prior to invoking this dispatch function. For this interface,
the Sx driver will call the dispatch function for all Sx type
and phases, so the Sx state handler(s) must check the Type and
Phase field of EFI_SMM_SX_DISPATCH_CONTEXT and act accordingly.
Phase field of EFI_SMM_SX_DISPATCH_CONTEXT, and act accordingly.
@return None
@ -64,11 +64,11 @@ VOID
);
/**
Register a child SMI source dispatch function with a parent SMM driver
Register a child SMI source dispatch function with a parent SMM driver.
@param This Pointer to the EFI_SMM_SX_DISPATCH_PROTOCOL instance.
@param DispatchFunction Function to install.
@param DispatchContext Pointer to the dispatch function's context.
@param This The pointer to the EFI_SMM_SX_DISPATCH_PROTOCOL instance.
@param DispatchFunction The function to install.
@param DispatchContext The pointer to the dispatch function's context.
The caller fills in this context before calling
the register function to indicates to the register
function which Sx state type and phase the caller
@ -76,8 +76,8 @@ VOID
the Sx driver will call the registered handlers for
all Sx type and phases, so the Sx state handler(s)
must check the Type and Phase field of the Dispatch
context and act accordingly.
@param DispatchHandle Handle of dispatch function, for interfacing
context, and act accordingly.
@param DispatchHandle The handle of dispatch function, for interfacing
with the parent Sx state SMM driver.
@retval EFI_SUCCESS The dispatch function has been successfully
@ -88,7 +88,7 @@ VOID
@retval EFI_OUT_OF_RESOURCES Not enough memory (system or SMM) to manage this
child.
@retval EFI_INVALID_PARAMETER DispatchContext is invalid. Type & Phase are not
within valid range.
within a valid range.
**/
typedef
@ -103,11 +103,11 @@ EFI_STATUS
/**
Unregisters an Sx-state service
@param This Pointer to the EFI_SMM_SX_DISPATCH_PROTOCOL instance.
@param DispatchHandle Handle of the service to remove.
@param This The pointer to the EFI_SMM_SX_DISPATCH_PROTOCOL instance.
@param DispatchHandle The handle of the service to remove.
@retval EFI_SUCCESS The dispatch function has been successfully unregistered and the
SMI source has been disabled if there are no other registered child
@retval EFI_SUCCESS The dispatch function has been successfully unregistered, and the
SMI source has been disabled, if there are no other registered child
dispatch functions for this SMI source.
@retval EFI_INVALID_PARAMETER Handle is invalid.

View File

@ -1,14 +1,14 @@
/** @file
Provides the parent dispatch service for the USB SMI source generator.
Copyright (c) 2007 - 2009, Intel Corporation
All rights reserved. This program and the accompanying materials
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
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference:
This Protocol is defined in Framework of EFI SMM Core Interface Spec
@ -73,15 +73,15 @@ VOID
/**
Register a child SMI source dispatch function with a parent SMM driver.
@param[in] This Pointer to the EFI_SMM_USB_DISPATCH_PROTOCOL instance.
@param[in] DispatchFunction Pointer to dispatch function to be invoked
@param[in] This The pointer to the EFI_SMM_USB_DISPATCH_PROTOCOL instance.
@param[in] DispatchFunction The pointer to dispatch function to be invoked
for this SMI source.
@param[in] DispatchContext Pointer to the dispatch function's context.
@param[in] DispatchContext The pointer to the dispatch function's context.
The caller fills this context in before calling
the register function to indicate to the register
function the USB SMI types for which the dispatch
function should be invoked.
@param[out] DispatchHandle Handle generated by the dispatcher to track the
@param[out] DispatchHandle The handle generated by the dispatcher to track the
function instance.
@retval EFI_SUCCESS The dispatch function has been successfully
@ -105,7 +105,7 @@ EFI_STATUS
/**
Unregisters a USB service.
@param[in] This Pointer to the EFI_SMM_USB_DISPATCH_PROTOCOL instance.
@param[in] This The pointer to the EFI_SMM_USB_DISPATCH_PROTOCOL instance.
@param[in] DispatchHandle Handle of the service to remove.
@retval EFI_SUCCESS The dispatch function has been successfully