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

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10235 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
myronporter 2010-03-12 22:19:12 +00:00
parent 636f2be673
commit af2dc6a70b
85 changed files with 2610 additions and 2573 deletions

View File

@ -6,12 +6,12 @@
environment. There are a set of base libraries in the Mde Package that can environment. There are a set of base libraries in the Mde Package that can
be used to implement base modules. be used to implement base modules.
Copyright (c) 2006 - 2009, Intel Corporation<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
Portions copyright (c) 2008-2009 Apple Inc. All rights reserved.<BR> Portions copyright (c) 2008-2009 Apple Inc. All rights reserved.<BR>
All rights reserved. This program and the accompanying materials All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at which accompanies this distribution. The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@ -60,8 +60,8 @@ extern UINT8 _VerifySizeOfChar16 [(sizeof(CHAR16) == 2) / (sizeof(CHAR16) ==
#define GLOBAL_REMOVE_IF_UNREFERENCED __declspec(selectany) #define GLOBAL_REMOVE_IF_UNREFERENCED __declspec(selectany)
#else #else
/// ///
/// Remove global variable from the linked image if there are no references to /// Remove the global variable from the linked image if there are no references
/// it after all compiler and linker optimizations have been performed. /// to it after all compiler and linker optimizations have been performed.
/// ///
/// ///
#define GLOBAL_REMOVE_IF_UNREFERENCED #define GLOBAL_REMOVE_IF_UNREFERENCED
@ -138,17 +138,17 @@ struct _LIST_ENTRY {
// //
/// ///
/// Datum is read-only /// Datum is read-only.
/// ///
#define CONST const #define CONST const
/// ///
/// Datum is scoped to the current file or function /// Datum is scoped to the current file or function.
/// ///
#define STATIC static #define STATIC static
/// ///
/// Undeclared type /// Undeclared type.
/// ///
#define VOID void #define VOID void
@ -158,18 +158,18 @@ struct _LIST_ENTRY {
// //
/// ///
/// Datum is passed to the function /// Datum is passed to the function.
/// ///
#define IN #define IN
/// ///
/// Datum is returned from the function /// Datum is returned from the function.
/// ///
#define OUT #define OUT
/// ///
/// Passing the datum to the function is optional, and a NULL /// Passing the datum to the function is optional, and a NULL
/// be passed if the value is not supplied. /// is passed if the value is not supplied.
/// ///
#define OPTIONAL #define OPTIONAL
@ -414,9 +414,9 @@ struct _LIST_ENTRY {
/** /**
Return the size of argument that has been aligned to sizeof (UINTN). Return the size of argument that has been aligned to sizeof (UINTN).
@param n The parameter size is to be aligned. @param n The parameter size to be aligned.
@return The aligned size @return The aligned size.
**/ **/
#define _INT_SIZE_OF(n) ((sizeof (n) + sizeof (UINTN) - 1) &~(sizeof (UINTN) - 1)) #define _INT_SIZE_OF(n) ((sizeof (n) + sizeof (UINTN) - 1) &~(sizeof (UINTN) - 1))
@ -468,14 +468,15 @@ typedef __builtin_va_list VA_LIST;
typedef CHAR8 *VA_LIST; typedef CHAR8 *VA_LIST;
/** /**
Retrieves a pointer to the beginning of a variable argument list based on Retrieves a pointer to the beginning of a variable argument list, based on
the name of the parameter that immediately precedes the variable argument list. the name of the parameter that immediately precedes the variable argument list.
This function initializes Marker to point to the beginning of the variable argument This function initializes Marker to point to the beginning of the variable
list that immediately follows Parameter. The method for computing the pointer to the argument list that immediately follows Parameter. The method for computing the
next argument in the argument list is CPU specific following the EFIAPI ABI. pointer to the next argument in the argument list is CPU-specific following the
EFIAPI ABI.
@param Marker VA_LIST used to traverse the list of arguments. @param Marker The VA_LIST used to traverse the list of arguments.
@param Parameter The name of the parameter that immediately precedes @param Parameter The name of the parameter that immediately precedes
the variable argument list. the variable argument list.
@ -491,7 +492,7 @@ typedef CHAR8 *VA_LIST;
This function returns an argument of the type specified by TYPE from the beginning This function returns an argument of the type specified by TYPE from the beginning
of the variable argument list specified by Marker. Marker is then updated to point of the variable argument list specified by Marker. Marker is then updated to point
to the next argument in the variable argument list. The method for computing the to the next argument in the variable argument list. The method for computing the
pointer to the next argument in the argument list is CPU specific following the EFIAPI ABI. pointer to the next argument in the argument list is CPU-specific following the EFIAPI ABI.
@param Marker VA_LIST used to traverse the list of arguments. @param Marker VA_LIST used to traverse the list of arguments.
@param TYPE The type of argument to retrieve from the beginning @param TYPE The type of argument to retrieve from the beginning
@ -506,7 +507,7 @@ typedef CHAR8 *VA_LIST;
Terminates the use of a variable argument list. Terminates the use of a variable argument list.
This function initializes Marker so it can no longer be used with VA_ARG(). This function initializes Marker so it can no longer be used with VA_ARG().
After this macro is used, the only way to access the variable argument list again is After this macro is used, the only way to access the variable argument list is
by using VA_START() again. by using VA_START() again.
@param Marker VA_LIST used to traverse the list of arguments. @param Marker VA_LIST used to traverse the list of arguments.
@ -539,7 +540,7 @@ typedef UINTN *BASE_LIST;
to the next argument in the variable argument list. The method for computing the to the next argument in the variable argument list. The method for computing the
pointer to the next argument in the argument list is CPU specific following the EFIAPI ABI. pointer to the next argument in the argument list is CPU specific following the EFIAPI ABI.
@param Marker Pointer to the beginning of a variable argument list. @param Marker The pointer to the beginning of a variable argument list.
@param TYPE The type of argument to retrieve from the beginning @param TYPE The type of argument to retrieve from the beginning
of the variable argument list. of the variable argument list.
@ -549,7 +550,7 @@ typedef UINTN *BASE_LIST;
#define BASE_ARG(Marker, TYPE) (*(TYPE *) ((Marker += _BASE_INT_SIZE_OF (TYPE)) - _BASE_INT_SIZE_OF (TYPE))) #define BASE_ARG(Marker, TYPE) (*(TYPE *) ((Marker += _BASE_INT_SIZE_OF (TYPE)) - _BASE_INT_SIZE_OF (TYPE)))
/** /**
Macro that returns the byte offset of a field in a data structure. The macro that returns the byte offset of a field in a data structure.
This function returns the offset, in bytes, of field specified by Field from the This function returns the offset, in bytes, of field specified by Field from the
beginning of the data structure specified by TYPE. If TYPE does not contain Field, beginning of the data structure specified by TYPE. If TYPE does not contain Field,
@ -689,7 +690,7 @@ typedef UINTN RETURN_STATUS;
/** /**
Returns TRUE if a specified RETURN_STATUS code is an error code. Returns TRUE if a specified RETURN_STATUS code is an error code.
This function returns TRUE if StatusCode has the high bit set. Otherwise FALSE is returned. This function returns TRUE if StatusCode has the high bit set. Otherwise, FALSE is returned.
@param StatusCode The status code value to evaluate. @param StatusCode The status code value to evaluate.
@ -847,7 +848,7 @@ typedef UINTN RETURN_STATUS;
#define RETURN_CRC_ERROR ENCODE_ERROR (27) #define RETURN_CRC_ERROR ENCODE_ERROR (27)
/// ///
/// Beginning or end of media was reached. /// The beginning or end of media was reached.
/// ///
#define RETURN_END_OF_MEDIA ENCODE_ERROR (28) #define RETURN_END_OF_MEDIA ENCODE_ERROR (28)

View File

@ -4,14 +4,14 @@
We currently only have one EBC compiler so there may be some Intel compiler We currently only have one EBC compiler so there may be some Intel compiler
specific functions in this file. specific functions in this file.
Copyright (c) 2006 - 2009, Intel Corporation<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -37,19 +37,19 @@ typedef char INT8;
/// ///
typedef unsigned char BOOLEAN; typedef unsigned char BOOLEAN;
/// ///
/// 1-byte unsigned value /// 1-byte unsigned value.
/// ///
typedef unsigned char UINT8; typedef unsigned char UINT8;
/// ///
/// 1-byte Character /// 1-byte Character.
/// ///
typedef char CHAR8; typedef char CHAR8;
/// ///
/// 2-byte signed value /// 2-byte signed value.
/// ///
typedef short INT16; typedef short INT16;
/// ///
/// 2-byte unsigned value /// 2-byte unsigned value.
/// ///
typedef unsigned short UINT16; typedef unsigned short UINT16;
/// ///
@ -58,19 +58,19 @@ typedef unsigned short UINT16;
/// ///
typedef unsigned short CHAR16; typedef unsigned short CHAR16;
/// ///
/// 4-byte signed value /// 4-byte signed value.
/// ///
typedef int INT32; typedef int INT32;
/// ///
/// 4-byte unsigned value /// 4-byte unsigned value.
/// ///
typedef unsigned int UINT32; typedef unsigned int UINT32;
/// ///
/// 8-byte signed value /// 8-byte signed value.
/// ///
typedef __int64 INT64; typedef __int64 INT64;
/// ///
/// 8-byte unsigned value /// 8-byte unsigned value.
/// ///
typedef unsigned __int64 UINT64; typedef unsigned __int64 UINT64;
@ -81,20 +81,20 @@ typedef unsigned __int64 UINT64;
/// ///
typedef long INTN; typedef long INTN;
/// ///
/// Unsigned value of native width. (4 bytes on supported 32-bit processor instructions, /// The unsigned value of native width. (4 bytes on supported 32-bit processor instructions;
/// 8 bytes on supported 64-bit processor instructions) /// 8 bytes on supported 64-bit processor instructions)
/// "long" type scales to the processor native size with EBC compiler /// "long" type scales to the processor native size with the EBC compiler.
/// ///
typedef unsigned long UINTN; typedef unsigned long UINTN;
/// ///
/// A value of native width with the highest bit set. /// A value of native width with the highest bit set.
/// Scalable macro to set the most significant bit in a natural number /// Scalable macro to set the most significant bit in a natural number.
/// ///
#define MAX_BIT (1ULL << (sizeof (INTN) * 8 - 1)) #define MAX_BIT (1ULL << (sizeof (INTN) * 8 - 1))
/// ///
/// A value of native width with the two highest bits set. /// A value of native width with the two highest bits set.
/// Scalable macro to set the most 2 significant bits in a natural number /// Scalable macro to set the most 2 significant bits in a natural number.
/// ///
#define MAX_2_BITS (3ULL << (sizeof (INTN) * 8 - 2)) #define MAX_2_BITS (3ULL << (sizeof (INTN) * 8 - 2))

View File

@ -1,14 +1,14 @@
/** @file /** @file
GUIDs for gBS->CreateEventEx Event Groups. Defined in UEFI spec 2.0 and PI 1.2. GUIDs for gBS->CreateEventEx Event Groups. Defined in UEFI spec 2.0 and PI 1.2.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/

View File

@ -3,14 +3,14 @@
and EFI_FILE_PROTOCOL.GetInfo() to set or get generic file information. and EFI_FILE_PROTOCOL.GetInfo() to set or get generic file information.
This GUID is defined in UEFI specification. This GUID is defined in UEFI specification.
Copyright (c) 2006 - 2008, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -24,7 +24,7 @@
typedef struct { typedef struct {
/// ///
/// Size of the EFI_FILE_INFO structure, including the Null-terminated FileName string. /// The size of the EFI_FILE_INFO structure, including the Null-terminated FileName string.
/// ///
UINT64 Size; UINT64 Size;
/// ///

View File

@ -3,14 +3,14 @@
or EFI_FILE_PROTOCOL.SetInfo() to get or set information about the system's volume. or EFI_FILE_PROTOCOL.SetInfo() to get or set information about the system's volume.
This GUID is defined in UEFI specification. This GUID is defined in UEFI specification.
Copyright (c) 2006 - 2008, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -24,7 +24,7 @@
typedef struct { typedef struct {
/// ///
/// Size of the EFI_FILE_SYSTEM_INFO structure, including the Null-terminated VolumeLabel string. /// The size of the EFI_FILE_SYSTEM_INFO structure, including the Null-terminated VolumeLabel string.
/// ///
UINT64 Size; UINT64 Size;
/// ///

View File

@ -2,14 +2,14 @@
GUID indicates that the form set contains forms designed to be used GUID indicates that the form set contains forms designed to be used
for platform configuration and this form set will be displayed. for platform configuration and this form set will be displayed.
Copyright (c) 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
GUID defined in UEFI 2.1. GUID defined in UEFI 2.1.

View File

@ -1,14 +1,14 @@
/** @file /** @file
ACPI 1.0b definitions from the ACPI Specification, revision 1.0b ACPI 1.0b definitions from the ACPI Specification, revision 1.0b
Copyright (c) 2006 - 2008, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
#ifndef _ACPI_1_0_H_ #ifndef _ACPI_1_0_H_
@ -16,7 +16,7 @@
/// ///
/// Common table header, this prefaces all ACPI tables, including FACS, but /// Common table header, this prefaces all ACPI tables, including FACS, but
/// excluding the RSD PTR structure /// excluding the RSD PTR structure.
/// ///
typedef struct { typedef struct {
UINT32 Signature; UINT32 Signature;
@ -25,7 +25,7 @@ typedef struct {
#pragma pack(1) #pragma pack(1)
/// ///
/// Common ACPI description table header. This structure prefaces most ACPI tables. /// The common ACPI description table header. This structure prefaces most ACPI tables.
/// ///
typedef struct { typedef struct {
UINT32 Signature; UINT32 Signature;
@ -54,7 +54,7 @@ typedef struct {
#define ACPI_ADDRESS_SPACE_TYPE_BUS 0x02 #define ACPI_ADDRESS_SPACE_TYPE_BUS 0x02
/// ///
/// Power Management Timer frequency is fixed at 3.579545MHz /// Power Management Timer frequency is fixed at 3.579545MHz.
/// ///
#define ACPI_TIMER_FREQUENCY 3579545 #define ACPI_TIMER_FREQUENCY 3579545
@ -65,7 +65,7 @@ typedef struct {
/// ///
/// The commond definition of QWORD, DWORD, and WORD /// The commond definition of QWORD, DWORD, and WORD
/// Address Space Descriptors /// Address Space Descriptors.
/// ///
typedef PACKED struct { typedef PACKED struct {
UINT8 Desc; UINT8 Desc;
@ -83,7 +83,7 @@ typedef PACKED struct {
#pragma pack() #pragma pack()
/// ///
/// the End tag identifies an end of resource data. /// The End tag identifies an end of resource data.
/// ///
typedef struct { typedef struct {
UINT8 Desc; UINT8 Desc;
@ -135,7 +135,7 @@ typedef struct {
// //
/// ///
/// Root System Description Pointer Structure /// Root System Description Pointer Structure.
/// ///
typedef struct { typedef struct {
UINT64 Signature; UINT64 Signature;
@ -152,12 +152,12 @@ typedef struct {
// //
/// ///
/// RSDT Revision (as defined in ACPI 1.0b spec.) /// RSDT Revision (as defined in ACPI 1.0b specification).
/// ///
#define EFI_ACPI_1_0_ROOT_SYSTEM_DESCRIPTION_TABLE_REVISION 0x01 #define EFI_ACPI_1_0_ROOT_SYSTEM_DESCRIPTION_TABLE_REVISION 0x01
/// ///
/// Fixed ACPI Description Table Structure (FADT) /// Fixed ACPI Description Table Structure (FADT).
/// ///
typedef struct { typedef struct {
EFI_ACPI_DESCRIPTION_HEADER Header; EFI_ACPI_DESCRIPTION_HEADER Header;
@ -203,7 +203,7 @@ typedef struct {
} EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE; } EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE;
/// ///
/// FADT Version (as defined in ACPI 1.0b spec.) /// FADT Version (as defined in ACPI 1.0b specification).
/// ///
#define EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE_REVISION 0x01 #define EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE_REVISION 0x01
@ -223,7 +223,7 @@ typedef struct {
#define EFI_ACPI_1_0_DCK_CAP BIT9 #define EFI_ACPI_1_0_DCK_CAP BIT9
/// ///
/// Firmware ACPI Control Structure /// Firmware ACPI Control Structure.
/// ///
typedef struct { typedef struct {
UINT32 Signature; UINT32 Signature;
@ -236,14 +236,14 @@ typedef struct {
} EFI_ACPI_1_0_FIRMWARE_ACPI_CONTROL_STRUCTURE; } EFI_ACPI_1_0_FIRMWARE_ACPI_CONTROL_STRUCTURE;
/// ///
/// Firmware Control Structure Feature Flags /// Firmware Control Structure Feature Flags.
/// All other bits are reserved and must be set to 0. /// All other bits are reserved and must be set to 0.
/// ///
#define EFI_ACPI_1_0_S4BIOS_F BIT0 #define EFI_ACPI_1_0_S4BIOS_F BIT0
/// ///
/// Multiple APIC Description Table header definition. The rest of the table /// Multiple APIC Description Table header definition. The rest of the table
/// must be defined in a platform specific manner. /// must be defined in a platform-specific manner.
/// ///
typedef struct { typedef struct {
EFI_ACPI_DESCRIPTION_HEADER Header; EFI_ACPI_DESCRIPTION_HEADER Header;
@ -252,7 +252,7 @@ typedef struct {
} EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER; } EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER;
/// ///
/// MADT Revision (as defined in ACPI 1.0b spec.) /// MADT Revision (as defined in ACPI 1.0b specification).
/// ///
#define EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION 0x01 #define EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION 0x01
@ -278,7 +278,7 @@ typedef struct {
// //
/// ///
/// Processor Local APIC Structure Definition /// Processor Local APIC Structure Definition.
/// ///
typedef struct { typedef struct {
UINT8 Type; UINT8 Type;
@ -294,7 +294,7 @@ typedef struct {
#define EFI_ACPI_1_0_LOCAL_APIC_ENABLED BIT0 #define EFI_ACPI_1_0_LOCAL_APIC_ENABLED BIT0
/// ///
/// IO APIC Structure /// IO APIC Structure.
/// ///
typedef struct { typedef struct {
UINT8 Type; UINT8 Type;
@ -306,7 +306,7 @@ typedef struct {
} EFI_ACPI_1_0_IO_APIC_STRUCTURE; } EFI_ACPI_1_0_IO_APIC_STRUCTURE;
/// ///
/// Interrupt Source Override Structure /// Interrupt Source Override Structure.
/// ///
typedef struct { typedef struct {
UINT8 Type; UINT8 Type;
@ -318,7 +318,7 @@ typedef struct {
} EFI_ACPI_1_0_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE; } EFI_ACPI_1_0_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE;
/// ///
/// Non-Maskable Interrupt Source Structure /// Non-Maskable Interrupt Source Structure.
/// ///
typedef struct { typedef struct {
UINT8 Type; UINT8 Type;
@ -328,7 +328,7 @@ typedef struct {
} EFI_ACPI_1_0_NON_MASKABLE_INTERRUPT_SOURCE_STRUCTURE; } EFI_ACPI_1_0_NON_MASKABLE_INTERRUPT_SOURCE_STRUCTURE;
/// ///
/// Local APIC NMI Structure /// Local APIC NMI Structure.
/// ///
typedef struct { typedef struct {
UINT8 Type; UINT8 Type;
@ -353,47 +353,47 @@ typedef struct {
// //
/// ///
/// "RSD PTR " Root System Description Pointer /// "RSD PTR " Root System Description Pointer.
/// ///
#define EFI_ACPI_1_0_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE SIGNATURE_64('R', 'S', 'D', ' ', 'P', 'T', 'R', ' ') #define EFI_ACPI_1_0_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE SIGNATURE_64('R', 'S', 'D', ' ', 'P', 'T', 'R', ' ')
/// ///
/// "APIC" Multiple APIC Description Table /// "APIC" Multiple APIC Description Table.
/// ///
#define EFI_ACPI_1_0_APIC_SIGNATURE SIGNATURE_32('A', 'P', 'I', 'C') #define EFI_ACPI_1_0_APIC_SIGNATURE SIGNATURE_32('A', 'P', 'I', 'C')
/// ///
/// "DSDT" Differentiated System Description Table /// "DSDT" Differentiated System Description Table.
/// ///
#define EFI_ACPI_1_0_DIFFERENTIATED_SYSTEM_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('D', 'S', 'D', 'T') #define EFI_ACPI_1_0_DIFFERENTIATED_SYSTEM_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('D', 'S', 'D', 'T')
/// ///
/// "FACS" Firmware ACPI Control Structure /// "FACS" Firmware ACPI Control Structure.
/// ///
#define EFI_ACPI_1_0_FIRMWARE_ACPI_CONTROL_STRUCTURE_SIGNATURE SIGNATURE_32('F', 'A', 'C', 'S') #define EFI_ACPI_1_0_FIRMWARE_ACPI_CONTROL_STRUCTURE_SIGNATURE SIGNATURE_32('F', 'A', 'C', 'S')
/// ///
/// "FACP" Fixed ACPI Description Table /// "FACP" Fixed ACPI Description Table.
/// ///
#define EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('F', 'A', 'C', 'P') #define EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('F', 'A', 'C', 'P')
/// ///
/// "PSDT" Persistent System Description Table /// "PSDT" Persistent System Description Table.
/// ///
#define EFI_ACPI_1_0_PERSISTENT_SYSTEM_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('P', 'S', 'D', 'T') #define EFI_ACPI_1_0_PERSISTENT_SYSTEM_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('P', 'S', 'D', 'T')
/// ///
/// "RSDT" Root System Description Table /// "RSDT" Root System Description Table.
/// ///
#define EFI_ACPI_1_0_ROOT_SYSTEM_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('R', 'S', 'D', 'T') #define EFI_ACPI_1_0_ROOT_SYSTEM_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('R', 'S', 'D', 'T')
/// ///
/// "SBST" Smart Battery Specification Table /// "SBST" Smart Battery Specification Table.
/// ///
#define EFI_ACPI_1_0_SMART_BATTERY_SPECIFICATION_TABLE_SIGNATURE SIGNATURE_32('S', 'B', 'S', 'T') #define EFI_ACPI_1_0_SMART_BATTERY_SPECIFICATION_TABLE_SIGNATURE SIGNATURE_32('S', 'B', 'S', 'T')
/// ///
/// "SSDT" Secondary System Description Table /// "SSDT" Secondary System Description Table.
/// ///
#define EFI_ACPI_1_0_SECONDARY_SYSTEM_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('S', 'S', 'D', 'T') #define EFI_ACPI_1_0_SECONDARY_SYSTEM_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('S', 'S', 'D', 'T')

View File

@ -2,13 +2,13 @@
This file contains just some basic definitions that are needed by drivers This file contains just some basic definitions that are needed by drivers
that dealing with ATA/ATAPI interface. that dealing with ATA/ATAPI interface.
Copyright (c) 2007 - 2010, Intel Corporation Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -19,16 +19,16 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#pragma pack(1) #pragma pack(1)
/// ///
/// ATA5_IDENTIFY_DATA is defined in ATA-5 /// ATA5_IDENTIFY_DATA is defined in ATA-5.
/// (This structure is provided here mainly for backward-compatibility support. /// (This structure is provided mainly for backward-compatibility support.
/// Old drivers may reference some field that is marked "obsolete" in /// Old drivers may reference fields that are marked "obsolete" in
/// ATA_IDENTIFY_DATA, which current conforms to ATA-8) /// ATA_IDENTIFY_DATA, which currently conforms to ATA-8.)
/// ///
typedef struct { typedef struct {
UINT16 config; ///< General Configuration UINT16 config; ///< General Configuration.
UINT16 cylinders; ///< Number of Cylinders UINT16 cylinders; ///< Number of Cylinders.
UINT16 reserved_2; UINT16 reserved_2;
UINT16 heads; ///< Number of logical heads UINT16 heads; ///< Number of logical heads.
UINT16 vendor_data1; UINT16 vendor_data1;
UINT16 vendor_data2; UINT16 vendor_data2;
UINT16 sectors_per_track; UINT16 sectors_per_track;
@ -77,14 +77,14 @@ typedef struct {
} ATA5_IDENTIFY_DATA; } ATA5_IDENTIFY_DATA;
/// ///
/// ATA_IDENTIFY_DATA is strictly complied with ATA/ATAPI-8 Spec /// ATA_IDENTIFY_DATA strictly complies with ATA/ATAPI-8 Spec
/// to define the data returned by an ATA device upon successful /// to define the data returned by an ATA device upon successful
/// completion of the ATA IDENTIFY_DEVICE command /// completion of the ATA IDENTIFY_DEVICE command.
/// ///
typedef struct { typedef struct {
UINT16 config; ///< General Configuration UINT16 config; ///< General Configuration.
UINT16 obsolete_1; UINT16 obsolete_1;
UINT16 specific_config; ///< Specific Configuration UINT16 specific_config; ///< Specific Configuration.
UINT16 obsolete_3; UINT16 obsolete_3;
UINT16 retired_4_5[2]; UINT16 retired_4_5[2];
UINT16 obsolete_6; UINT16 obsolete_6;
@ -114,7 +114,7 @@ typedef struct {
UINT16 min_pio_cycle_time_with_flow_control; UINT16 min_pio_cycle_time_with_flow_control;
UINT16 reserved_69_74[6]; UINT16 reserved_69_74[6];
UINT16 queue_depth; UINT16 queue_depth;
UINT16 reserved_76_79[4]; ///< reserved for Serial ATA UINT16 reserved_76_79[4]; ///< Reserved for Serial ATA.
UINT16 major_version_no; UINT16 major_version_no;
UINT16 minor_version_no; UINT16 minor_version_no;
UINT16 command_set_supported_82; ///< word 82 UINT16 command_set_supported_82; ///< word 82
@ -176,14 +176,14 @@ typedef struct {
} ATA_IDENTIFY_DATA; } ATA_IDENTIFY_DATA;
/// ///
/// ATAPI_IDENTIFY_DATA is strictly complied with ATA/ATAPI-8 Spec /// ATAPI_IDENTIFY_DATA strictly complies with ATA/ATAPI-8 Spec
/// to define the data returned by an ATAPI device upon successful /// to define the data returned by an ATAPI device upon successful
/// completion of the ATA IDENTIFY_PACKET_DEVICE command /// completion of the ATA IDENTIFY_PACKET_DEVICE command.
/// ///
typedef struct { typedef struct {
UINT16 config; ///< General Configuration UINT16 config; ///< General Configuration.
UINT16 reserved_1; UINT16 reserved_1;
UINT16 specific_config; ///< Specific Configuration UINT16 specific_config; ///< Specific Configuration.
UINT16 reserved_3_9[7]; UINT16 reserved_3_9[7];
CHAR8 SerialNo[20]; ///< word 10~19 CHAR8 SerialNo[20]; ///< word 10~19
UINT16 reserved_20_22[3]; UINT16 reserved_20_22[3];
@ -239,14 +239,14 @@ typedef struct {
/// ///
/// Standard Quiry Data format, defined in SFF-8070i(ATAPI Removable Rewritable Specification) /// Standard Quiry Data format, defined in SFF-8070i(ATAPI Removable Rewritable Specification).
/// ///
typedef struct { typedef struct {
UINT8 peripheral_type; UINT8 peripheral_type;
UINT8 RMB; UINT8 RMB;
UINT8 version; UINT8 version;
UINT8 response_data_format; UINT8 response_data_format;
UINT8 addnl_length; ///< n - 4, Numbers of bytes following this one UINT8 addnl_length; ///< n - 4, Numbers of bytes following this one.
UINT8 reserved_5; UINT8 reserved_5;
UINT8 reserved_6; UINT8 reserved_6;
UINT8 reserved_7; UINT8 reserved_7;
@ -256,14 +256,14 @@ typedef struct {
UINT8 vendor_specific_36_55[55 - 36 + 1]; UINT8 vendor_specific_36_55[55 - 36 + 1];
UINT8 reserved_56_95[95 - 56 + 1]; UINT8 reserved_56_95[95 - 56 + 1];
/// ///
/// Vendor specific parameters fields, the sizeof (ATAPI_INQUIRY_DATA) is 254 /// Vendor-specific parameters fields. The sizeof (ATAPI_INQUIRY_DATA) is 254
/// since allocation_length is one byte in ATAPI_INQUIRY_CMD. /// since allocation_length is one byte in ATAPI_INQUIRY_CMD.
/// ///
UINT8 vendor_specific_96_253[253 - 96 + 1]; UINT8 vendor_specific_96_253[253 - 96 + 1];
} ATAPI_INQUIRY_DATA; } ATAPI_INQUIRY_DATA;
/// ///
/// Request Sense Standard Data, defined in SFF-8070i(ATAPI Removable Rewritable Specification) /// Request Sense Standard Data, defined in SFF-8070i(ATAPI Removable Rewritable Specification).
/// ///
typedef struct { typedef struct {
UINT8 error_code : 7; UINT8 error_code : 7;
@ -291,7 +291,7 @@ typedef struct {
} ATAPI_REQUEST_SENSE_DATA; } ATAPI_REQUEST_SENSE_DATA;
/// ///
/// READ CAPACITY Data, defined in SFF-8070i(ATAPI Removable Rewritable Specification) /// READ CAPACITY Data, defined in SFF-8070i(ATAPI Removable Rewritable Specification).
/// ///
typedef struct { typedef struct {
UINT8 LastLba3; UINT8 LastLba3;
@ -306,7 +306,7 @@ typedef struct {
/// ///
/// Capacity List Header + Current/Maximum Capacity Descriptor, /// Capacity List Header + Current/Maximum Capacity Descriptor,
/// defined in SFF-8070i(ATAPI Removable Rewritable Specification) /// defined in SFF-8070i(ATAPI Removable Rewritable Specification).
/// ///
typedef struct { typedef struct {
UINT8 reserved_0; UINT8 reserved_0;
@ -325,7 +325,7 @@ typedef struct {
} ATAPI_READ_FORMAT_CAPACITY_DATA; } ATAPI_READ_FORMAT_CAPACITY_DATA;
/// ///
/// Test Unit Ready Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification) /// Test Unit Ready Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification).
/// ///
typedef struct { typedef struct {
UINT8 opcode; UINT8 opcode;
@ -343,7 +343,7 @@ typedef struct {
} ATAPI_TEST_UNIT_READY_CMD; } ATAPI_TEST_UNIT_READY_CMD;
/// ///
/// INQUIRY Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification) /// INQUIRY Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification).
/// ///
typedef struct { typedef struct {
UINT8 opcode; UINT8 opcode;
@ -362,7 +362,7 @@ typedef struct {
} ATAPI_INQUIRY_CMD; } ATAPI_INQUIRY_CMD;
/// ///
/// REQUEST SENSE Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification) /// REQUEST SENSE Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification).
/// ///
typedef struct { typedef struct {
UINT8 opcode; UINT8 opcode;
@ -381,7 +381,7 @@ typedef struct {
} ATAPI_REQUEST_SENSE_CMD; } ATAPI_REQUEST_SENSE_CMD;
/// ///
/// READ (10) Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification) /// READ (10) Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification).
/// ///
typedef struct { typedef struct {
UINT8 opcode; UINT8 opcode;
@ -400,7 +400,7 @@ typedef struct {
} ATAPI_READ10_CMD; } ATAPI_READ10_CMD;
/// ///
/// READ Format Capacity Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification) /// READ Format Capacity Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification).
/// ///
typedef struct { typedef struct {
UINT8 opcode; UINT8 opcode;
@ -419,7 +419,7 @@ typedef struct {
} ATAPI_READ_FORMAT_CAP_CMD; } ATAPI_READ_FORMAT_CAP_CMD;
/// ///
/// MODE SENSE Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification) /// MODE SENSE Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification).
/// ///
typedef struct { typedef struct {
UINT8 opcode; UINT8 opcode;
@ -439,8 +439,8 @@ typedef struct {
} ATAPI_MODE_SENSE_CMD; } ATAPI_MODE_SENSE_CMD;
/// ///
/// ATAPI_PACKET_COMMAND is not defined in ATA specification. /// ATAPI_PACKET_COMMAND is not defined in the ATA specification.
/// We add it here for the convenience for ATA/ATAPI module writer. /// We add it here for the convenience of ATA/ATAPI module writers.
/// ///
typedef union { typedef union {
UINT16 Data16[6]; UINT16 Data16[6];
@ -547,13 +547,13 @@ typedef union {
#define ATA_CMD_WRITE_DMA_EXT 0x35 ///< defined from ATA-6 #define ATA_CMD_WRITE_DMA_EXT 0x35 ///< defined from ATA-6
/// ///
/// default content of device control register, disable INT, /// Default content of device control register, disable INT,
/// Bit3 is set to 1 according ATA-1 /// Bit3 is set to 1 according ATA-1
/// ///
#define ATA_DEFAULT_CTL (0x0a) #define ATA_DEFAULT_CTL (0x0a)
/// ///
/// default context of Device/Head Register, /// Default context of Device/Head Register,
/// Bit7 and Bit5 are set to 1 for back-compatibilities /// Bit7 and Bit5 are set to 1 for back-compatibilities.
/// ///
#define ATA_DEFAULT_CMD (0xa0) #define ATA_DEFAULT_CMD (0xa0)
@ -598,7 +598,7 @@ typedef union {
#define ATA_ASC_INVALID_FIELD (0x24) #define ATA_ASC_INVALID_FIELD (0x24)
#define ATA_ASC_WRITE_PROTECTED (0x27) #define ATA_ASC_WRITE_PROTECTED (0x27)
#define ATA_ASC_MEDIA_CHANGE (0x28) #define ATA_ASC_MEDIA_CHANGE (0x28)
#define ATA_ASC_RESET (0x29) ///< Power On Reset or Bus Reset occurred #define ATA_ASC_RESET (0x29) ///< Power On Reset or Bus Reset occurred.
#define ATA_ASC_ILLEGAL_FIELD (0x26) #define ATA_ASC_ILLEGAL_FIELD (0x26)
#define ATA_ASC_NO_MEDIA (0x3A) #define ATA_ASC_NO_MEDIA (0x3A)
#define ATA_ASC_ILLEGAL_MODE_FOR_THIS_TRACK (0x64) #define ATA_ASC_ILLEGAL_MODE_FOR_THIS_TRACK (0x64)
@ -636,8 +636,8 @@ typedef union {
// //
// Device Control Register // Device Control Register
// //
#define ATA_CTLREG_SRST BIT2 ///< Software Reset #define ATA_CTLREG_SRST BIT2 ///< Software Reset.
#define ATA_CTLREG_IEN_L BIT1 ///< Interrupt Enable # #define ATA_CTLREG_IEN_L BIT1 ///< Interrupt Enable #.
#endif #endif

View File

@ -1,11 +1,14 @@
/** @file /** @file
Support for the latest PCI standard. Support for the latest PCI standard.
Copyright (c) 2006 - 2008, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php 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.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

View File

@ -1,11 +1,11 @@
/** @file /** @file
Support for PCI 2.3 standard. Support for PCI 2.3 standard.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at which accompanies this distribution. The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@ -18,7 +18,7 @@
#include <IndustryStandard/Pci22.h> #include <IndustryStandard/Pci22.h>
/// ///
/// PCI_CLASS_MASS_STORAGE, Base Class 01h /// PCI_CLASS_MASS_STORAGE, Base Class 01h.
/// ///
///@{ ///@{
#define PCI_CLASS_MASS_STORAGE_ATA 0x05 #define PCI_CLASS_MASS_STORAGE_ATA 0x05
@ -27,7 +27,7 @@
///@} ///@}
/// ///
/// PCI_CLASS_SERIAL, Base Class 0Ch /// PCI_CLASS_SERIAL, Base Class 0Ch.
/// ///
///@{ ///@{
#define PCI_IF_EHCI 0x20 #define PCI_IF_EHCI 0x20
@ -40,14 +40,14 @@
#define PCI_EXP_MAX_CONFIG_OFFSET 0x1000 #define PCI_EXP_MAX_CONFIG_OFFSET 0x1000
/// ///
/// PCI Capability List IDs and records /// PCI Capability List IDs and records.
/// ///
#define EFI_PCI_CAPABILITY_ID_PCIX 0x07 #define EFI_PCI_CAPABILITY_ID_PCIX 0x07
#pragma pack(1) #pragma pack(1)
/// ///
/// PCI-X Capabilities List, /// PCI-X Capabilities List,
/// Section 7.2, PCI-X Addendum to the PCI Local Bus Specification, Revision 1.0b /// Section 7.2, PCI-X Addendum to the PCI Local Bus Specification, Revision 1.0b.
/// ///
typedef struct { typedef struct {
EFI_PCI_CAPABILITY_HDR Hdr; EFI_PCI_CAPABILITY_HDR Hdr;
@ -57,7 +57,7 @@ typedef struct {
/// ///
/// PCI-X Bridge Capabilities List, /// PCI-X Bridge Capabilities List,
/// Section 8.6.2, PCI-X Addendum to the PCI Local Bus Specification, Revision 1.0b /// Section 8.6.2, PCI-X Addendum to the PCI Local Bus Specification, Revision 1.0b.
/// ///
typedef struct { typedef struct {
EFI_PCI_CAPABILITY_HDR Hdr; EFI_PCI_CAPABILITY_HDR Hdr;

View File

@ -7,15 +7,15 @@
Common Object File Format Specification, Revision 8.0 - May 16, 2006. Common Object File Format Specification, Revision 8.0 - May 16, 2006.
This file also includes some definitions in PI Specification, Revision 1.0. This file also includes some definitions in PI Specification, Revision 1.0.
Copyright (c) 2006 - 2009, Intel Corporation<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
Portions copyright (c) 2008-2009 Apple Inc. All rights reserved.<BR> Portions copyright (c) 2008-2009 Apple Inc. All rights reserved.<BR>
All rights reserved. This program and the accompanying materials All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at which accompanies this distribution. The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -53,29 +53,29 @@
/// under DOS it can print an error message. /// under DOS it can print an error message.
/// ///
typedef struct { typedef struct {
UINT16 e_magic; ///< Magic number UINT16 e_magic; ///< Magic number.
UINT16 e_cblp; ///< Bytes on last page of file UINT16 e_cblp; ///< Bytes on last page of file.
UINT16 e_cp; ///< Pages in file UINT16 e_cp; ///< Pages in file.
UINT16 e_crlc; ///< Relocations UINT16 e_crlc; ///< Relocations.
UINT16 e_cparhdr; ///< Size of header in paragraphs UINT16 e_cparhdr; ///< Size of header in paragraphs.
UINT16 e_minalloc; ///< Minimum extra paragraphs needed UINT16 e_minalloc; ///< Minimum extra paragraphs needed.
UINT16 e_maxalloc; ///< Maximum extra paragraphs needed UINT16 e_maxalloc; ///< Maximum extra paragraphs needed.
UINT16 e_ss; ///< Initial (relative) SS value UINT16 e_ss; ///< Initial (relative) SS value.
UINT16 e_sp; ///< Initial SP value UINT16 e_sp; ///< Initial SP value.
UINT16 e_csum; ///< Checksum UINT16 e_csum; ///< Checksum.
UINT16 e_ip; ///< Initial IP value UINT16 e_ip; ///< Initial IP value.
UINT16 e_cs; ///< Initial (relative) CS value UINT16 e_cs; ///< Initial (relative) CS value.
UINT16 e_lfarlc; ///< File address of relocation table UINT16 e_lfarlc; ///< File address of relocation table.
UINT16 e_ovno; ///< Overlay number UINT16 e_ovno; ///< Overlay number.
UINT16 e_res[4]; ///< Reserved words UINT16 e_res[4]; ///< Reserved words.
UINT16 e_oemid; ///< OEM identifier (for e_oeminfo) UINT16 e_oemid; ///< OEM identifier (for e_oeminfo).
UINT16 e_oeminfo; ///< OEM information; e_oemid specific UINT16 e_oeminfo; ///< OEM information; e_oemid specific.
UINT16 e_res2[10]; ///< Reserved words UINT16 e_res2[10]; ///< Reserved words.
UINT32 e_lfanew; ///< File address of new exe header UINT32 e_lfanew; ///< File address of new exe header.
} EFI_IMAGE_DOS_HEADER; } EFI_IMAGE_DOS_HEADER;
/// ///
/// COFF File Header (Object and Image) /// COFF File Header (Object and Image).
/// ///
typedef struct { typedef struct {
UINT16 Machine; UINT16 Machine;
@ -88,7 +88,7 @@ typedef struct {
} EFI_IMAGE_FILE_HEADER; } EFI_IMAGE_FILE_HEADER;
/// ///
/// Size of EFI_IMAGE_FILE_HEADER /// Size of EFI_IMAGE_FILE_HEADER.
/// ///
#define EFI_IMAGE_SIZEOF_FILE_HEADER 20 #define EFI_IMAGE_SIZEOF_FILE_HEADER 20
@ -101,13 +101,13 @@ typedef struct {
#define EFI_IMAGE_FILE_LOCAL_SYMS_STRIPPED BIT3 ///< 0x0008 Local symbols stripped from file. #define EFI_IMAGE_FILE_LOCAL_SYMS_STRIPPED BIT3 ///< 0x0008 Local symbols stripped from file.
#define EFI_IMAGE_FILE_BYTES_REVERSED_LO BIT7 ///< 0x0080 Bytes of machine word are reversed. #define EFI_IMAGE_FILE_BYTES_REVERSED_LO BIT7 ///< 0x0080 Bytes of machine word are reversed.
#define EFI_IMAGE_FILE_32BIT_MACHINE BIT8 ///< 0x0100 32 bit word machine. #define EFI_IMAGE_FILE_32BIT_MACHINE BIT8 ///< 0x0100 32 bit word machine.
#define EFI_IMAGE_FILE_DEBUG_STRIPPED BIT9 ///< 0x0200 Debugging info stripped from file in .DBG file #define EFI_IMAGE_FILE_DEBUG_STRIPPED BIT9 ///< 0x0200 Debugging info stripped from file in .DBG file.
#define EFI_IMAGE_FILE_SYSTEM BIT12 ///< 0x1000 System File. #define EFI_IMAGE_FILE_SYSTEM BIT12 ///< 0x1000 System File.
#define EFI_IMAGE_FILE_DLL BIT13 ///< 0x2000 File is a DLL. #define EFI_IMAGE_FILE_DLL BIT13 ///< 0x2000 File is a DLL.
#define EFI_IMAGE_FILE_BYTES_REVERSED_HI BIT15 ///< 0x8000 Bytes of machine word are reversed. #define EFI_IMAGE_FILE_BYTES_REVERSED_HI BIT15 ///< 0x8000 Bytes of machine word are reversed.
/// ///
/// Header Data Directories /// Header Data Directories.
/// ///
typedef struct { typedef struct {
UINT32 VirtualAddress; UINT32 VirtualAddress;
@ -140,7 +140,7 @@ typedef struct {
#define EFI_IMAGE_NT_OPTIONAL_HDR32_MAGIC 0x10b #define EFI_IMAGE_NT_OPTIONAL_HDR32_MAGIC 0x10b
/// ///
/// Optional Header Standard Fields for PE32 /// Optional Header Standard Fields for PE32.
/// ///
typedef struct { typedef struct {
/// ///
@ -154,7 +154,7 @@ typedef struct {
UINT32 SizeOfUninitializedData; UINT32 SizeOfUninitializedData;
UINT32 AddressOfEntryPoint; UINT32 AddressOfEntryPoint;
UINT32 BaseOfCode; UINT32 BaseOfCode;
UINT32 BaseOfData; ///< PE32 contains this additional field, which is absent in PE32+ UINT32 BaseOfData; ///< PE32 contains this additional field, which is absent in PE32+.
/// ///
/// Optional Header Windows-Specific Fields. /// Optional Header Windows-Specific Fields.
/// ///
@ -191,7 +191,7 @@ typedef struct {
#define EFI_IMAGE_NT_OPTIONAL_HDR64_MAGIC 0x20b #define EFI_IMAGE_NT_OPTIONAL_HDR64_MAGIC 0x20b
/// ///
/// Optional Header Standard Fields for PE32+ /// Optional Header Standard Fields for PE32+.
/// ///
typedef struct { typedef struct {
/// ///
@ -273,7 +273,7 @@ typedef struct {
#define EFI_IMAGE_SIZEOF_SHORT_NAME 8 #define EFI_IMAGE_SIZEOF_SHORT_NAME 8
/// ///
/// Section Table, this table immediately follows the optional header /// Section Table. This table immediately follows the optional header.
/// ///
typedef struct { typedef struct {
UINT8 Name[EFI_IMAGE_SIZEOF_SHORT_NAME]; UINT8 Name[EFI_IMAGE_SIZEOF_SHORT_NAME];
@ -292,7 +292,7 @@ typedef struct {
} EFI_IMAGE_SECTION_HEADER; } EFI_IMAGE_SECTION_HEADER;
/// ///
/// Size of EFI_IMAGE_SECTION_HEADER /// Size of EFI_IMAGE_SECTION_HEADER.
/// ///
#define EFI_IMAGE_SIZEOF_SECTION_HEADER 40 #define EFI_IMAGE_SIZEOF_SECTION_HEADER 40
@ -326,7 +326,7 @@ typedef struct {
#define EFI_IMAGE_SCN_MEM_WRITE BIT31 ///< 0x80000000 #define EFI_IMAGE_SCN_MEM_WRITE BIT31 ///< 0x80000000
/// ///
/// Size of a Symbol Table Record /// Size of a Symbol Table Record.
/// ///
#define EFI_IMAGE_SIZEOF_SYMBOL 18 #define EFI_IMAGE_SIZEOF_SYMBOL 18
@ -439,15 +439,15 @@ typedef struct {
// //
// I386 relocation types. // I386 relocation types.
// //
#define EFI_IMAGE_REL_I386_ABSOLUTE 0x0000 ///< Reference is absolute, no relocation is necessary #define EFI_IMAGE_REL_I386_ABSOLUTE 0x0000 ///< Reference is absolute, no relocation is necessary.
#define EFI_IMAGE_REL_I386_DIR16 0x0001 ///< Direct 16-bit reference to the symbols virtual address #define EFI_IMAGE_REL_I386_DIR16 0x0001 ///< Direct 16-bit reference to the symbols virtual address.
#define EFI_IMAGE_REL_I386_REL16 0x0002 ///< PC-relative 16-bit reference to the symbols virtual address #define EFI_IMAGE_REL_I386_REL16 0x0002 ///< PC-relative 16-bit reference to the symbols virtual address.
#define EFI_IMAGE_REL_I386_DIR32 0x0006 ///< Direct 32-bit reference to the symbols virtual address #define EFI_IMAGE_REL_I386_DIR32 0x0006 ///< Direct 32-bit reference to the symbols virtual address.
#define EFI_IMAGE_REL_I386_DIR32NB 0x0007 ///< Direct 32-bit reference to the symbols virtual address, base not included #define EFI_IMAGE_REL_I386_DIR32NB 0x0007 ///< Direct 32-bit reference to the symbols virtual address, base not included.
#define EFI_IMAGE_REL_I386_SEG12 0x0009 ///< Direct 16-bit reference to the segment-selector bits of a 32-bit virtual address #define EFI_IMAGE_REL_I386_SEG12 0x0009 ///< Direct 16-bit reference to the segment-selector bits of a 32-bit virtual address.
#define EFI_IMAGE_REL_I386_SECTION 0x000A #define EFI_IMAGE_REL_I386_SECTION 0x000A
#define EFI_IMAGE_REL_I386_SECREL 0x000B #define EFI_IMAGE_REL_I386_SECREL 0x000B
#define EFI_IMAGE_REL_I386_REL32 0x0014 ///< PC-relative 32-bit reference to the symbols virtual address #define EFI_IMAGE_REL_I386_REL32 0x0014 ///< PC-relative 32-bit reference to the symbols virtual address.
// //
// x64 processor relocation types. // x64 processor relocation types.
@ -479,7 +479,7 @@ typedef struct {
} EFI_IMAGE_BASE_RELOCATION; } EFI_IMAGE_BASE_RELOCATION;
/// ///
/// Size of EFI_IMAGE_BASE_RELOCATION /// Size of EFI_IMAGE_BASE_RELOCATION.
/// ///
#define EFI_IMAGE_SIZEOF_BASE_RELOCATION 8 #define EFI_IMAGE_SIZEOF_BASE_RELOCATION 8
@ -508,7 +508,7 @@ typedef struct {
} EFI_IMAGE_LINENUMBER; } EFI_IMAGE_LINENUMBER;
/// ///
/// Size of EFI_IMAGE_LINENUMBER /// Size of EFI_IMAGE_LINENUMBER.
/// ///
#define EFI_IMAGE_SIZEOF_LINENUMBER 6 #define EFI_IMAGE_SIZEOF_LINENUMBER 6
@ -532,11 +532,11 @@ typedef struct {
UINT8 GroupID[6]; ///< File member group id - decimal. UINT8 GroupID[6]; ///< File member group id - decimal.
UINT8 Mode[8]; ///< File member mode - octal. UINT8 Mode[8]; ///< File member mode - octal.
UINT8 Size[10]; ///< File member size - decimal. UINT8 Size[10]; ///< File member size - decimal.
UINT8 EndHeader[2]; ///< String to end header. (0x60 0x0A) UINT8 EndHeader[2]; ///< String to end header. (0x60 0x0A).
} EFI_IMAGE_ARCHIVE_MEMBER_HEADER; } EFI_IMAGE_ARCHIVE_MEMBER_HEADER;
/// ///
/// Size of EFI_IMAGE_ARCHIVE_MEMBER_HEADER /// Size of EFI_IMAGE_ARCHIVE_MEMBER_HEADER.
/// ///
#define EFI_IMAGE_SIZEOF_ARCHIVE_MEMBER_HDR 60 #define EFI_IMAGE_SIZEOF_ARCHIVE_MEMBER_HDR 60
@ -546,7 +546,7 @@ typedef struct {
// //
/// ///
/// Export Directory Table /// Export Directory Table.
/// ///
typedef struct { typedef struct {
UINT32 Characteristics; UINT32 Characteristics;
@ -563,7 +563,7 @@ typedef struct {
} EFI_IMAGE_EXPORT_DIRECTORY; } EFI_IMAGE_EXPORT_DIRECTORY;
/// ///
/// Hint/Name Table /// Hint/Name Table.
/// ///
typedef struct { typedef struct {
UINT16 Hint; UINT16 Hint;
@ -571,7 +571,7 @@ typedef struct {
} EFI_IMAGE_IMPORT_BY_NAME; } EFI_IMAGE_IMPORT_BY_NAME;
/// ///
/// Import Address Table RVA (Thunk Table) /// Import Address Table RVA (Thunk Table).
/// ///
typedef struct { typedef struct {
union { union {
@ -581,7 +581,7 @@ typedef struct {
} u1; } u1;
} EFI_IMAGE_THUNK_DATA; } EFI_IMAGE_THUNK_DATA;
#define EFI_IMAGE_ORDINAL_FLAG BIT31 ///< Flag for PE32 #define EFI_IMAGE_ORDINAL_FLAG BIT31 ///< Flag for PE32.
#define EFI_IMAGE_SNAP_BY_ORDINAL(Ordinal) ((Ordinal & EFI_IMAGE_ORDINAL_FLAG) != 0) #define EFI_IMAGE_SNAP_BY_ORDINAL(Ordinal) ((Ordinal & EFI_IMAGE_ORDINAL_FLAG) != 0)
#define EFI_IMAGE_ORDINAL(Ordinal) (Ordinal & 0xffff) #define EFI_IMAGE_ORDINAL(Ordinal) (Ordinal & 0xffff)
@ -598,7 +598,7 @@ typedef struct {
/// ///
/// Debug Directory Format /// Debug Directory Format.
/// ///
typedef struct { typedef struct {
UINT32 Characteristics; UINT32 Characteristics;
@ -607,14 +607,14 @@ typedef struct {
UINT16 MinorVersion; UINT16 MinorVersion;
UINT32 Type; UINT32 Type;
UINT32 SizeOfData; UINT32 SizeOfData;
UINT32 RVA; ///< The address of the debug data when loaded, relative to the image base UINT32 RVA; ///< The address of the debug data when loaded, relative to the image base.
UINT32 FileOffset; ///< The file pointer to the debug data UINT32 FileOffset; ///< The file pointer to the debug data.
} EFI_IMAGE_DEBUG_DIRECTORY_ENTRY; } EFI_IMAGE_DEBUG_DIRECTORY_ENTRY;
#define EFI_IMAGE_DEBUG_TYPE_CODEVIEW 2 ///< The Visual C++ debug information #define EFI_IMAGE_DEBUG_TYPE_CODEVIEW 2 ///< The Visual C++ debug information.
/// ///
/// Debug Data Structure defined in Microsoft C++ /// Debug Data Structure defined in Microsoft C++.
/// ///
#define CODEVIEW_SIGNATURE_NB10 SIGNATURE_32('N', 'B', '1', '0') #define CODEVIEW_SIGNATURE_NB10 SIGNATURE_32('N', 'B', '1', '0')
typedef struct { typedef struct {
@ -628,11 +628,11 @@ typedef struct {
} EFI_IMAGE_DEBUG_CODEVIEW_NB10_ENTRY; } EFI_IMAGE_DEBUG_CODEVIEW_NB10_ENTRY;
/// ///
/// Debug Data Structure defined in Microsoft C++ /// Debug Data Structure defined in Microsoft C++.
/// ///
#define CODEVIEW_SIGNATURE_RSDS SIGNATURE_32('R', 'S', 'D', 'S') #define CODEVIEW_SIGNATURE_RSDS SIGNATURE_32('R', 'S', 'D', 'S')
typedef struct { typedef struct {
UINT32 Signature; ///< "RSDS" UINT32 Signature; ///< "RSDS".
UINT32 Unknown; UINT32 Unknown;
UINT32 Unknown2; UINT32 Unknown2;
UINT32 Unknown3; UINT32 Unknown3;
@ -645,11 +645,11 @@ typedef struct {
/// ///
/// Debug Data Structure defined by Apple Mach-O to Coff utility /// Debug Data Structure defined by Apple Mach-O to Coff utility.
/// ///
#define CODEVIEW_SIGNATURE_MTOC SIGNATURE_32('M', 'T', 'O', 'C') #define CODEVIEW_SIGNATURE_MTOC SIGNATURE_32('M', 'T', 'O', 'C')
typedef struct { typedef struct {
UINT32 Signature; ///< "MTOC" UINT32 Signature; ///< "MTOC".
GUID MachOUuid; GUID MachOUuid;
// //
// Filename of .DLL (Mach-O with debug info) goes here // Filename of .DLL (Mach-O with debug info) goes here
@ -710,18 +710,18 @@ typedef struct {
} EFI_IMAGE_RESOURCE_DATA_ENTRY; } EFI_IMAGE_RESOURCE_DATA_ENTRY;
/// ///
/// Header format for TE images, defined in PI Specification, 1.0 /// Header format for TE images, defined in the PI Specification, 1.0.
/// ///
typedef struct { typedef struct {
UINT16 Signature; ///< signature for TE format = "VZ" UINT16 Signature; ///< The signature for TE format = "VZ".
UINT16 Machine; ///< from the original file header UINT16 Machine; ///< From the original file header.
UINT8 NumberOfSections; ///< from the original file header UINT8 NumberOfSections; ///< From the original file header.
UINT8 Subsystem; ///< from original optional header UINT8 Subsystem; ///< From original optional header.
UINT16 StrippedSize; ///< how many bytes we removed from the header UINT16 StrippedSize; ///< Number of bytes we removed from the header.
UINT32 AddressOfEntryPoint; ///< offset to entry point -- from original optional header UINT32 AddressOfEntryPoint; ///< Offset to entry point -- from original optional header.
UINT32 BaseOfCode; ///< from original image -- required for ITP debug UINT32 BaseOfCode; ///< From original image -- required for ITP debug.
UINT64 ImageBase; ///< from original file header UINT64 ImageBase; ///< From original file header.
EFI_IMAGE_DATA_DIRECTORY DataDirectory[2]; ///< only base relocation and debug directory EFI_IMAGE_DATA_DIRECTORY DataDirectory[2]; ///< Only base relocation and debug directory.
} EFI_TE_IMAGE_HEADER; } EFI_TE_IMAGE_HEADER;
@ -735,7 +735,7 @@ typedef struct {
/// ///
/// Union of PE32, PE32+, and TE headers /// Union of PE32, PE32+, and TE headers.
/// ///
typedef union { typedef union {
EFI_IMAGE_NT_HEADERS32 Pe32; EFI_IMAGE_NT_HEADERS32 Pe32;

View File

@ -2,14 +2,14 @@
Main SAL API's defined in Intel Itanium Processor Family System Abstraction Main SAL API's defined in Intel Itanium Processor Family System Abstraction
Layer Specification Revision 3.2 (December 2003) Layer Specification Revision 3.2 (December 2003)
Copyright (c) 2006 - 2008, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -26,7 +26,7 @@ typedef INTN EFI_SAL_STATUS;
/// ///
#define EFI_SAL_SUCCESS ((EFI_SAL_STATUS) 0) #define EFI_SAL_SUCCESS ((EFI_SAL_STATUS) 0)
/// ///
/// Call completed without error but some information was lost due to overflow. /// Call completed without error, but some information was lost due to overflow.
/// ///
#define EFI_SAL_OVERFLOW ((EFI_SAL_STATUS) 1) #define EFI_SAL_OVERFLOW ((EFI_SAL_STATUS) 1)
/// ///
@ -63,23 +63,23 @@ typedef INTN EFI_SAL_STATUS;
#define EFI_SAL_NOT_ENOUGH_SCRATCH ((EFI_SAL_STATUS) - 9) #define EFI_SAL_NOT_ENOUGH_SCRATCH ((EFI_SAL_STATUS) - 9)
/// ///
/// Return registers from SAL /// Return registers from SAL.
/// ///
typedef struct { typedef struct {
/// ///
/// SAL return status value in r8 /// SAL return status value in r8.
/// ///
EFI_SAL_STATUS Status; EFI_SAL_STATUS Status;
/// ///
/// SAL returned value in r9 /// SAL returned value in r9.
/// ///
UINTN r9; UINTN r9;
/// ///
/// SAL returned value in r10 /// SAL returned value in r10.
/// ///
UINTN r10; UINTN r10;
/// ///
/// SAL returned value in r11 /// SAL returned value in r11.
/// ///
UINTN r11; UINTN r11;
} SAL_RETURN_REGS; } SAL_RETURN_REGS;
@ -96,11 +96,11 @@ typedef struct {
0x04XXXXXX to 0xFFFFFFFF - Reserved. 0x04XXXXXX to 0xFFFFFFFF - Reserved.
@param Arg1 The first parameter of the architected/OEM specific SAL functions. @param Arg1 The first parameter of the architected/OEM specific SAL functions.
@param Arg2 The second parameter of the architected/OEM specific SAL functions. @param Arg2 The second parameter of the architected/OEM specific SAL functions.
@param Arg3 The third parameter passed to the ESAL function based @param Arg3 The third parameter passed to the ESAL function based.
@param Arg4 The fourth parameter passed to the ESAL function based @param Arg4 The fourth parameter passed to the ESAL function based.
@param Arg5 The fifth parameter passed to the ESAL function based @param Arg5 The fifth parameter passed to the ESAL function based.
@param Arg6 The sixth parameter passed to the ESAL function @param Arg6 The sixth parameter passed to the ESAL function.
@param Arg7 The seventh parameter passed to the ESAL function based @param Arg7 The seventh parameter passed to the ESAL function based.
@return r8 Return status: positive number indicates successful, @return r8 Return status: positive number indicates successful,
negative number indicates failure. negative number indicates failure.
@ -201,7 +201,7 @@ SAL_RETURN_REGS
#define EFI_SAL_SET_INIT_VECTOR 0x1 #define EFI_SAL_SET_INIT_VECTOR 0x1
#define EFI_SAL_SET_BOOT_RENDEZ_VECTOR 0x2 #define EFI_SAL_SET_BOOT_RENDEZ_VECTOR 0x2
/// ///
/// Format of length_cs_n argument. /// The format of a length_cs_n argument.
/// ///
typedef struct { typedef struct {
UINT64 Length : 32; UINT64 Length : 32;
@ -267,7 +267,7 @@ typedef struct {
#define EFI_SAL_PCI_COMPATIBLE_ADDRESS 0x0 #define EFI_SAL_PCI_COMPATIBLE_ADDRESS 0x0
#define EFI_SAL_PCI_EXTENDED_REGISTER_ADDRESS 0x1 #define EFI_SAL_PCI_EXTENDED_REGISTER_ADDRESS 0x1
/// ///
/// Format of PCI Compatible Address /// The format of PCI Compatible Address.
/// ///
typedef struct { typedef struct {
UINT64 Register : 8; UINT64 Register : 8;
@ -278,7 +278,7 @@ typedef struct {
UINT64 Reserved : 32; UINT64 Reserved : 32;
} SAL_PCI_ADDRESS; } SAL_PCI_ADDRESS;
/// ///
/// Format of Extended Register Address /// The format of Extended Register Address.
/// ///
typedef struct { typedef struct {
UINT64 Register : 8; UINT64 Register : 8;
@ -327,7 +327,7 @@ typedef struct {
UINT8 Reserved2[40]; UINT8 Reserved2[40];
} SAL_UPDATE_PAL_DATA_BLOCK; } SAL_UPDATE_PAL_DATA_BLOCK;
/// ///
/// Data structure pointed by parameter param_buf. /// Data structure pointed by the parameter param_buf.
/// It is a 16-byte aligned data structure in memory with a length of 32 bytes /// It is a 16-byte aligned data structure in memory with a length of 32 bytes
/// that describes the new firmware. This information is organized in the form /// that describes the new firmware. This information is organized in the form
/// of a linked list with each element describing one firmware component. /// of a linked list with each element describing one firmware component.
@ -340,12 +340,12 @@ typedef struct _SAL_UPDATE_PAL_INFO_BLOCK {
} SAL_UPDATE_PAL_INFO_BLOCK; } SAL_UPDATE_PAL_INFO_BLOCK;
/// ///
/// SAL System Table Definitions /// SAL System Table Definitions.
/// ///
#pragma pack(1) #pragma pack(1)
typedef struct { typedef struct {
/// ///
/// The ASCII string representation of "SST_" which confirms the presence of the table. /// The ASCII string representation of "SST_" that confirms the presence of the table.
/// ///
UINT32 Signature; UINT32 Signature;
/// ///
@ -355,7 +355,7 @@ typedef struct {
UINT32 Length; UINT32 Length;
/// ///
/// The revision number of the Itanium Processor Family System Abstraction Layer /// The revision number of the Itanium Processor Family System Abstraction Layer
/// Specification supported by the SAL implementation in binary coded decimal (BCD) format. /// Specification supported by the SAL implementation, in binary coded decimal (BCD) format.
/// ///
UINT16 SalRevision; UINT16 SalRevision;
/// ///
@ -417,10 +417,10 @@ typedef struct {
#define EFI_SAL_ST_AP_WAKEUP_SIZE 16 #define EFI_SAL_ST_AP_WAKEUP_SIZE 16
/// ///
/// Format of Entrypoint Descriptor Entry /// Format of Entrypoint Descriptor Entry.
/// ///
typedef struct { typedef struct {
UINT8 Type; ///< Type here should be 0 UINT8 Type; ///< Type here should be 0.
UINT8 Reserved[7]; UINT8 Reserved[7];
UINT64 PalProcEntry; UINT64 PalProcEntry;
UINT64 SalProcEntry; UINT64 SalProcEntry;
@ -429,10 +429,10 @@ typedef struct {
} SAL_ST_ENTRY_POINT_DESCRIPTOR; } SAL_ST_ENTRY_POINT_DESCRIPTOR;
/// ///
/// Format of Platform Features Descriptor Entry /// Format of Platform Features Descriptor Entry.
/// ///
typedef struct { typedef struct {
UINT8 Type; ///< Type here should be 2 UINT8 Type; ///< Type here should be 2.
UINT8 PlatformFeatures; UINT8 PlatformFeatures;
UINT8 Reserved[14]; UINT8 Reserved[14];
} SAL_ST_PLATFORM_FEATURES; } SAL_ST_PLATFORM_FEATURES;
@ -445,10 +445,10 @@ typedef struct {
#define SAL_PLAT_FEAT_PROC_IPI_HINT 0x04 #define SAL_PLAT_FEAT_PROC_IPI_HINT 0x04
/// ///
/// Format of Translation Register Descriptor Entry /// Format of Translation Register Descriptor Entry.
/// ///
typedef struct { typedef struct {
UINT8 Type; ///< Type here should be 3 UINT8 Type; ///< Type here should be 3.
UINT8 TRType; UINT8 TRType;
UINT8 TRNumber; UINT8 TRNumber;
UINT8 Reserved[5]; UINT8 Reserved[5];
@ -464,7 +464,7 @@ typedef struct {
#define EFI_SAL_ST_TR_USAGE_DATA 01 #define EFI_SAL_ST_TR_USAGE_DATA 01
/// ///
/// Definition of Coherence Domain Information /// Definition of Coherence Domain Information.
/// ///
typedef struct { typedef struct {
UINT64 NumberOfProcessors; UINT64 NumberOfProcessors;
@ -472,27 +472,27 @@ typedef struct {
} SAL_COHERENCE_DOMAIN_INFO; } SAL_COHERENCE_DOMAIN_INFO;
/// ///
/// Format of Purge Translation Cache Coherence Domain Entry /// Format of Purge Translation Cache Coherence Domain Entry.
/// ///
typedef struct { typedef struct {
UINT8 Type; ///< Type here should be 4 UINT8 Type; ///< Type here should be 4.
UINT8 Reserved[3]; UINT8 Reserved[3];
UINT32 NumberOfDomains; UINT32 NumberOfDomains;
SAL_COHERENCE_DOMAIN_INFO *DomainInformation; SAL_COHERENCE_DOMAIN_INFO *DomainInformation;
} SAL_ST_CACHE_COHERENCE_DECRIPTOR; } SAL_ST_CACHE_COHERENCE_DECRIPTOR;
/// ///
/// Format of Application Processor Wake-Up Descriptor Entry /// Format of Application Processor Wake-Up Descriptor Entry.
/// ///
typedef struct { typedef struct {
UINT8 Type; ///< Type here should be 5 UINT8 Type; ///< Type here should be 5.
UINT8 WakeUpType; UINT8 WakeUpType;
UINT8 Reserved[6]; UINT8 Reserved[6];
UINT64 ExternalInterruptVector; UINT64 ExternalInterruptVector;
} SAL_ST_AP_WAKEUP_DECRIPTOR; } SAL_ST_AP_WAKEUP_DECRIPTOR;
/// ///
/// Format of Firmware Interface Table (FIT) Entry /// Format of Firmware Interface Table (FIT) Entry.
/// ///
typedef struct { typedef struct {
UINT64 Address; UINT64 Address;
@ -532,7 +532,7 @@ typedef struct {
// //
/// ///
/// Format of TimeStamp field in Record Header /// Format of TimeStamp field in Record Header.
/// ///
typedef struct { typedef struct {
UINT8 Seconds; UINT8 Seconds;
@ -545,7 +545,7 @@ typedef struct {
UINT8 Century; UINT8 Century;
} SAL_TIME_STAMP; } SAL_TIME_STAMP;
/// ///
/// Definition of Record Header /// Definition of Record Header.
/// ///
typedef struct { typedef struct {
UINT64 RecordId; UINT64 RecordId;
@ -557,7 +557,7 @@ typedef struct {
UINT8 OemPlatformId[16]; UINT8 OemPlatformId[16];
} SAL_RECORD_HEADER; } SAL_RECORD_HEADER;
/// ///
/// Definition of Section Header /// Definition of Section Header.
/// ///
typedef struct { typedef struct {
GUID Guid; GUID Guid;
@ -568,7 +568,7 @@ typedef struct {
} SAL_SEC_HEADER; } SAL_SEC_HEADER;
/// ///
/// GUID of Processor Machine Check Errors /// GUID of Processor Machine Check Errors.
/// ///
#define SAL_PROCESSOR_ERROR_RECORD_INFO \ #define SAL_PROCESSOR_ERROR_RECORD_INFO \
{ \ { \
@ -583,7 +583,7 @@ typedef struct {
#define TARGER_ID_VALID_BIT_MASK 0x8 #define TARGER_ID_VALID_BIT_MASK 0x8
#define PRECISE_IP_VALID_BIT_MASK 0x10 #define PRECISE_IP_VALID_BIT_MASK 0x10
/// ///
/// Definition of MOD_ERROR_INFO_STRUCT /// Definition of MOD_ERROR_INFO_STRUCT.
/// ///
typedef struct { typedef struct {
UINT64 InfoValid : 1; UINT64 InfoValid : 1;
@ -599,7 +599,7 @@ typedef struct {
UINT64 Ip; UINT64 Ip;
} MOD_ERROR_INFO; } MOD_ERROR_INFO;
/// ///
/// Definition of CPUID_INFO_STRUCT /// Definition of CPUID_INFO_STRUCT.
/// ///
typedef struct { typedef struct {
UINT8 CpuidInfo[40]; UINT8 CpuidInfo[40];
@ -620,7 +620,7 @@ typedef struct {
#define RR_VALID_BIT_MASK 0x10 #define RR_VALID_BIT_MASK 0x10
#define FR_VALID_BIT_MASK 0x20 #define FR_VALID_BIT_MASK 0x20
/// ///
/// Definition of PSI_STATIC_STRUCT /// Definition of PSI_STATIC_STRUCT.
/// ///
typedef struct { typedef struct {
UINT64 ValidFieldBits; UINT64 ValidFieldBits;
@ -640,7 +640,7 @@ typedef struct {
#define PROC_STATIC_STRUCT_VALID_BIT_MASK 0x8 #define PROC_STATIC_STRUCT_VALID_BIT_MASK 0x8
#define CPU_INFO_VALID_BIT_MASK 0x1000000 #define CPU_INFO_VALID_BIT_MASK 0x1000000
/// ///
/// Definition of Processor Machine Check Error Record /// Definition of Processor Machine Check Error Record.
/// ///
typedef struct { typedef struct {
SAL_SEC_HEADER SectionHeader; SAL_SEC_HEADER SectionHeader;
@ -658,7 +658,7 @@ typedef struct {
} SAL_PROCESSOR_ERROR_RECORD; } SAL_PROCESSOR_ERROR_RECORD;
/// ///
/// GUID of Platform Memory Device Error Info /// GUID of Platform Memory Device Error Info.
/// ///
#define SAL_MEMORY_ERROR_RECORD_INFO \ #define SAL_MEMORY_ERROR_RECORD_INFO \
{ \ { \
@ -685,7 +685,7 @@ typedef struct {
#define MEMORY_PLATFORM_OEM_ID_VALID_BIT_MASK 0x8000 #define MEMORY_PLATFORM_OEM_ID_VALID_BIT_MASK 0x8000
#define MEMORY_PLATFORM_OEM_DATA_STRUCT_VALID_BIT_MASK 0x10000 #define MEMORY_PLATFORM_OEM_DATA_STRUCT_VALID_BIT_MASK 0x10000
/// ///
/// Definition of Platform Memory Device Error Info Record /// Definition of Platform Memory Device Error Info Record.
/// ///
typedef struct { typedef struct {
SAL_SEC_HEADER SectionHeader; SAL_SEC_HEADER SectionHeader;
@ -709,7 +709,7 @@ typedef struct {
} SAL_MEMORY_ERROR_RECORD; } SAL_MEMORY_ERROR_RECORD;
/// ///
/// GUID of Platform PCI Bus Error Info /// GUID of Platform PCI Bus Error Info.
/// ///
#define SAL_PCI_BUS_ERROR_RECORD_INFO \ #define SAL_PCI_BUS_ERROR_RECORD_INFO \
{ \ { \
@ -731,7 +731,7 @@ typedef struct {
#define PCI_BUS_OEM_DATA_STRUCT_VALID_BIT_MASK 0x400 #define PCI_BUS_OEM_DATA_STRUCT_VALID_BIT_MASK 0x400
/// ///
/// Designated PCI Bus identifier /// Designated PCI Bus identifier.
/// ///
typedef struct { typedef struct {
UINT8 BusNumber; UINT8 BusNumber;
@ -739,7 +739,7 @@ typedef struct {
} PCI_BUS_ID; } PCI_BUS_ID;
/// ///
/// Definition of Platform PCI Bus Error Info Record /// Definition of Platform PCI Bus Error Info Record.
/// ///
typedef struct { typedef struct {
SAL_SEC_HEADER SectionHeader; SAL_SEC_HEADER SectionHeader;
@ -758,7 +758,7 @@ typedef struct {
} SAL_PCI_BUS_ERROR_RECORD; } SAL_PCI_BUS_ERROR_RECORD;
/// ///
/// GUID of Platform PCI Component Error Info /// GUID of Platform PCI Component Error Info.
/// ///
#define SAL_PCI_COMP_ERROR_RECORD_INFO \ #define SAL_PCI_COMP_ERROR_RECORD_INFO \
{ \ { \
@ -774,7 +774,7 @@ typedef struct {
#define PCI_COMP_REG_DATA_PAIR_VALID_BIT_MASK 0x10 #define PCI_COMP_REG_DATA_PAIR_VALID_BIT_MASK 0x10
#define PCI_COMP_OEM_DATA_STRUCT_VALID_BIT_MASK 0x20 #define PCI_COMP_OEM_DATA_STRUCT_VALID_BIT_MASK 0x20
/// ///
/// Format of PCI Component Information to identify the device /// Format of PCI Component Information to identify the device.
/// ///
typedef struct { typedef struct {
UINT16 VendorId; UINT16 VendorId;
@ -787,7 +787,7 @@ typedef struct {
UINT8 Reserved[5]; UINT8 Reserved[5];
} PCI_COMP_INFO; } PCI_COMP_INFO;
/// ///
/// Definition of Platform PCI Component Error Info /// Definition of Platform PCI Component Error Info.
/// ///
typedef struct { typedef struct {
SAL_SEC_HEADER SectionHeader; SAL_SEC_HEADER SectionHeader;
@ -800,7 +800,7 @@ typedef struct {
} SAL_PCI_COMPONENT_ERROR_RECORD; } SAL_PCI_COMPONENT_ERROR_RECORD;
/// ///
/// Platform SEL Device Error Info /// Platform SEL Device Error Info.
/// ///
#define SAL_SEL_DEVICE_ERROR_RECORD_INFO \ #define SAL_SEL_DEVICE_ERROR_RECORD_INFO \
{ \ { \
@ -820,7 +820,7 @@ typedef struct {
#define SEL_EVENT_DATA2_VALID_BIT_MASK 0x100; #define SEL_EVENT_DATA2_VALID_BIT_MASK 0x100;
#define SEL_EVENT_DATA3_VALID_BIT_MASK 0x200; #define SEL_EVENT_DATA3_VALID_BIT_MASK 0x200;
/// ///
/// Definition of Platform SEL Device Error Info Record /// Definition of Platform SEL Device Error Info Record.
/// ///
typedef struct { typedef struct {
SAL_SEC_HEADER SectionHeader; SAL_SEC_HEADER SectionHeader;
@ -839,7 +839,7 @@ typedef struct {
} SAL_SEL_DEVICE_ERROR_RECORD; } SAL_SEL_DEVICE_ERROR_RECORD;
/// ///
/// GUID of Platform SMBIOS Device Error Info /// GUID of Platform SMBIOS Device Error Info.
/// ///
#define SAL_SMBIOS_ERROR_RECORD_INFO \ #define SAL_SMBIOS_ERROR_RECORD_INFO \
{ \ { \
@ -853,7 +853,7 @@ typedef struct {
#define SMBIOS_TIME_STAMP_VALID_BIT_MASK 0x4 #define SMBIOS_TIME_STAMP_VALID_BIT_MASK 0x4
#define SMBIOS_DATA_VALID_BIT_MASK 0x8 #define SMBIOS_DATA_VALID_BIT_MASK 0x8
/// ///
/// Definition of Platform SMBIOS Device Error Info Record /// Definition of Platform SMBIOS Device Error Info Record.
/// ///
typedef struct { typedef struct {
SAL_SEC_HEADER SectionHeader; SAL_SEC_HEADER SectionHeader;
@ -864,7 +864,7 @@ typedef struct {
} SAL_SMBIOS_DEVICE_ERROR_RECORD; } SAL_SMBIOS_DEVICE_ERROR_RECORD;
/// ///
/// GUID of Platform Specific Error Info /// GUID of Platform Specific Error Info.
/// ///
#define SAL_PLATFORM_ERROR_RECORD_INFO \ #define SAL_PLATFORM_ERROR_RECORD_INFO \
{ \ { \
@ -882,7 +882,7 @@ typedef struct {
#define PLATFORM_OEM_DATA_STRUCT_VALID_BIT_MASK 0x40 #define PLATFORM_OEM_DATA_STRUCT_VALID_BIT_MASK 0x40
#define PLATFORM_OEM_DEVICE_PATH_VALID_BIT_MASK 0x80 #define PLATFORM_OEM_DEVICE_PATH_VALID_BIT_MASK 0x80
/// ///
/// Definition of Platform Specific Error Info Record /// Definition of Platform Specific Error Info Record.
/// ///
typedef struct { typedef struct {
SAL_SEC_HEADER SectionHeader; SAL_SEC_HEADER SectionHeader;
@ -896,7 +896,7 @@ typedef struct {
} SAL_PLATFORM_SPECIFIC_ERROR_RECORD; } SAL_PLATFORM_SPECIFIC_ERROR_RECORD;
/// ///
/// Union of all the possible SAL Error Record Types /// Union of all the possible SAL Error Record Types.
/// ///
typedef union { typedef union {
SAL_RECORD_HEADER *RecordHeader; SAL_RECORD_HEADER *RecordHeader;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -5,11 +5,11 @@
These functions should be used in place of coding your own loops to do equivalent common functions. These functions should be used in place of coding your own loops to do equivalent common functions.
This allows optimized library implementations to help increase performance. This allows optimized library implementations to help increase performance.
Copyright (c) 2006 - 2008, Intel Corporation<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@ -29,9 +29,9 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
If Length is greater than (MAX_ADDRESS - DestinationBuffer + 1), then ASSERT(). If Length is greater than (MAX_ADDRESS - DestinationBuffer + 1), then ASSERT().
If Length is greater than (MAX_ADDRESS - SourceBuffer + 1), then ASSERT(). If Length is greater than (MAX_ADDRESS - SourceBuffer + 1), then ASSERT().
@param DestinationBuffer Pointer to the destination buffer of the memory copy. @param DestinationBuffer The pointer to the destination buffer of the memory copy.
@param SourceBuffer Pointer to the source buffer of the memory copy. @param SourceBuffer The pointer to the source buffer of the memory copy.
@param Length Number of bytes to copy from SourceBuffer to DestinationBuffer. @param Length The number of bytes to copy from SourceBuffer to DestinationBuffer.
@return DestinationBuffer. @return DestinationBuffer.
@ -51,9 +51,9 @@ CopyMem (
If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT().
@param Buffer Memory to set. @param Buffer The memory to set.
@param Length Number of bytes to set. @param Length The number of bytes to set.
@param Value Value with which to fill Length bytes of Buffer. @param Value The value with which to fill Length bytes of Buffer.
@return Buffer. @return Buffer.
@ -78,9 +78,9 @@ SetMem (
If Buffer is not aligned on a 16-bit boundary, then ASSERT(). If Buffer is not aligned on a 16-bit boundary, then ASSERT().
If Length is not aligned on a 16-bit boundary, then ASSERT(). If Length is not aligned on a 16-bit boundary, then ASSERT().
@param Buffer Pointer to the target buffer to fill. @param Buffer The pointer to the target buffer to fill.
@param Length Number of bytes in Buffer to fill. @param Length The number of bytes in Buffer to fill.
@param Value Value with which to fill Length bytes of Buffer. @param Value The value with which to fill Length bytes of Buffer.
@return Buffer. @return Buffer.
@ -105,9 +105,9 @@ SetMem16 (
If Buffer is not aligned on a 32-bit boundary, then ASSERT(). If Buffer is not aligned on a 32-bit boundary, then ASSERT().
If Length is not aligned on a 32-bit boundary, then ASSERT(). If Length is not aligned on a 32-bit boundary, then ASSERT().
@param Buffer Pointer to the target buffer to fill. @param Buffer The pointer to the target buffer to fill.
@param Length Number of bytes in Buffer to fill. @param Length The number of bytes in Buffer to fill.
@param Value Value with which to fill Length bytes of Buffer. @param Value The value with which to fill Length bytes of Buffer.
@return Buffer. @return Buffer.
@ -132,9 +132,9 @@ SetMem32 (
If Buffer is not aligned on a 64-bit boundary, then ASSERT(). If Buffer is not aligned on a 64-bit boundary, then ASSERT().
If Length is not aligned on a 64-bit boundary, then ASSERT(). If Length is not aligned on a 64-bit boundary, then ASSERT().
@param Buffer Pointer to the target buffer to fill. @param Buffer The pointer to the target buffer to fill.
@param Length Number of bytes in Buffer to fill. @param Length The number of bytes in Buffer to fill.
@param Value Value with which to fill Length bytes of Buffer. @param Value The value with which to fill Length bytes of Buffer.
@return Buffer. @return Buffer.
@ -159,9 +159,9 @@ SetMem64 (
If Buffer is not aligned on a UINTN boundary, then ASSERT(). If Buffer is not aligned on a UINTN boundary, then ASSERT().
If Length is not aligned on a UINTN boundary, then ASSERT(). If Length is not aligned on a UINTN boundary, then ASSERT().
@param Buffer Pointer to the target buffer to fill. @param Buffer The pointer to the target buffer to fill.
@param Length Number of bytes in Buffer to fill. @param Length The number of bytes in Buffer to fill.
@param Value Value with which to fill Length bytes of Buffer. @param Value The value with which to fill Length bytes of Buffer.
@return Buffer. @return Buffer.
@ -182,8 +182,8 @@ SetMemN (
If Length > 0 and Buffer is NULL, then ASSERT(). If Length > 0 and Buffer is NULL, then ASSERT().
If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT().
@param Buffer Pointer to the target buffer to fill with zeros. @param Buffer The pointer to the target buffer to fill with zeros.
@param Length Number of bytes in Buffer to fill with zeros. @param Length The number of bytes in Buffer to fill with zeros.
@return Buffer. @return Buffer.
@ -208,9 +208,9 @@ ZeroMem (
If Length is greater than (MAX_ADDRESS - DestinationBuffer + 1), then ASSERT(). If Length is greater than (MAX_ADDRESS - DestinationBuffer + 1), then ASSERT().
If Length is greater than (MAX_ADDRESS - SourceBuffer + 1), then ASSERT(). If Length is greater than (MAX_ADDRESS - SourceBuffer + 1), then ASSERT().
@param DestinationBuffer Pointer to the destination buffer to compare. @param DestinationBuffer The pointer to the destination buffer to compare.
@param SourceBuffer Pointer to the source buffer to compare. @param SourceBuffer The pointer to the source buffer to compare.
@param Length Number of bytes to compare. @param Length The number of bytes to compare.
@return 0 All Length bytes of the two buffers are identical. @return 0 All Length bytes of the two buffers are identical.
@retval Non-zero The first mismatched byte in SourceBuffer subtracted from the first @retval Non-zero The first mismatched byte in SourceBuffer subtracted from the first
@ -237,11 +237,11 @@ CompareMem (
If Length > 0 and Buffer is NULL, then ASSERT(). If Length > 0 and Buffer is NULL, then ASSERT().
If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT().
@param Buffer Pointer to the target buffer to scan. @param Buffer The pointer to the target buffer to scan.
@param Length Number of bytes in Buffer to scan. @param Length The number of bytes in Buffer to scan.
@param Value Value to search for in the target buffer. @param Value The value to search for in the target buffer.
@return A pointer to the matching byte in the target buffer or NULL otherwise. @return A pointer to the matching byte in the target buffer, otherwise NULL.
**/ **/
VOID * VOID *
@ -266,11 +266,11 @@ ScanMem8 (
If Length is not aligned on a 16-bit boundary, then ASSERT(). If Length is not aligned on a 16-bit boundary, then ASSERT().
If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT().
@param Buffer Pointer to the target buffer to scan. @param Buffer The pointer to the target buffer to scan.
@param Length Number of bytes in Buffer to scan. @param Length The number of bytes in Buffer to scan.
@param Value Value to search for in the target buffer. @param Value The value to search for in the target buffer.
@return A pointer to the matching byte in the target buffer or NULL otherwise. @return A pointer to the matching byte in the target buffer, otherwise NULL.
**/ **/
VOID * VOID *
@ -295,11 +295,11 @@ ScanMem16 (
If Length is not aligned on a 32-bit boundary, then ASSERT(). If Length is not aligned on a 32-bit boundary, then ASSERT().
If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT().
@param Buffer Pointer to the target buffer to scan. @param Buffer The pointer to the target buffer to scan.
@param Length Number of bytes in Buffer to scan. @param Length The number of bytes in Buffer to scan.
@param Value Value to search for in the target buffer. @param Value The value to search for in the target buffer.
@return A pointer to the matching byte in the target buffer or NULL otherwise. @return A pointer to the matching byte in the target buffer, otherwise NULL.
**/ **/
VOID * VOID *
@ -324,11 +324,11 @@ ScanMem32 (
If Length is not aligned on a 64-bit boundary, then ASSERT(). If Length is not aligned on a 64-bit boundary, then ASSERT().
If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT().
@param Buffer Pointer to the target buffer to scan. @param Buffer The pointer to the target buffer to scan.
@param Length Number of bytes in Buffer to scan. @param Length The number of bytes in Buffer to scan.
@param Value Value to search for in the target buffer. @param Value The value to search for in the target buffer.
@return A pointer to the matching byte in the target buffer or NULL otherwise. @return A pointer to the matching byte in the target buffer, otherwise NULL.
**/ **/
VOID * VOID *
@ -353,11 +353,11 @@ ScanMem64 (
If Length is not aligned on a UINTN boundary, then ASSERT(). If Length is not aligned on a UINTN boundary, then ASSERT().
If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT().
@param Buffer Pointer to the target buffer to scan. @param Buffer The pointer to the target buffer to scan.
@param Length Number of bytes in Buffer to scan. @param Length The number of bytes in Buffer to scan.
@param Value Value to search for in the target buffer. @param Value The value to search for in the target buffer.
@return A pointer to the matching byte in the target buffer or NULL otherwise. @return A pointer to the matching byte in the target buffer, otherwise NULL.
**/ **/
VOID * VOID *
@ -377,8 +377,8 @@ ScanMemN (
If DestinationGuid is NULL, then ASSERT(). If DestinationGuid is NULL, then ASSERT().
If SourceGuid is NULL, then ASSERT(). If SourceGuid is NULL, then ASSERT().
@param DestinationGuid Pointer to the destination GUID. @param DestinationGuid The pointer to the destination GUID.
@param SourceGuid Pointer to the source GUID. @param SourceGuid The pointer to the source GUID.
@return DestinationGuid. @return DestinationGuid.
@ -428,11 +428,11 @@ CompareGuid (
If Length is not aligned on a 128-bit boundary, then ASSERT(). If Length is not aligned on a 128-bit boundary, then ASSERT().
If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT().
@param Buffer Pointer to the target buffer to scan. @param Buffer The pointer to the target buffer to scan.
@param Length Number of bytes in Buffer to scan. @param Length The number of bytes in Buffer to scan.
@param Guid Value to search for in the target buffer. @param Guid The value to search for in the target buffer.
@return A pointer to the matching Guid in the target buffer or NULL otherwise. @return A pointer to the matching Guid in the target buffer, otherwise NULL.
**/ **/
VOID * VOID *

View File

@ -8,11 +8,11 @@
of size reduction when compiler optimization is disabled. If MDEPKG_NDEBUG is of size reduction when compiler optimization is disabled. If MDEPKG_NDEBUG is
defined, then debug and assert related macros wrapped by it are the NULL implementations. defined, then debug and assert related macros wrapped by it are the NULL implementations.
Copyright (c) 2006 - 2010, Intel Corporation<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@ -82,8 +82,8 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
If Format is NULL, then ASSERT(). If Format is NULL, then ASSERT().
@param ErrorLevel The error level of the debug message. @param ErrorLevel The error level of the debug message.
@param Format Format string for the debug message to print. @param Format The format string for the debug message to print.
@param ... Variable argument list whose contents are accessed @param ... The variable argument list whose contents are accessed
based on the format string specified by Format. based on the format string specified by Format.
**/ **/
@ -112,9 +112,9 @@ DebugPrint (
If FileName is NULL, then a <FileName> string of "(NULL) Filename" is printed. If FileName is NULL, then a <FileName> string of "(NULL) Filename" is printed.
If Description is NULL, then a <Description> string of "(NULL) Description" is printed. If Description is NULL, then a <Description> string of "(NULL) Description" is printed.
@param FileName Pointer to the name of the source file that generated the assert condition. @param FileName The pointer to the name of the source file that generated the assert condition.
@param LineNumber The line number in the source file that generated the assert condition @param LineNumber The line number in the source file that generated the assert condition
@param Description Pointer to the description of the assert condition. @param Description The pointer to the description of the assert condition.
**/ **/
VOID VOID
@ -135,10 +135,10 @@ DebugAssert (
If Buffer is NULL, then ASSERT(). If Buffer is NULL, then ASSERT().
If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT().
@param Buffer Pointer to the target buffer to be filled with PcdDebugClearMemoryValue. @param Buffer The pointer to the target buffer to be filled with PcdDebugClearMemoryValue.
@param Length Number of bytes in Buffer to fill with zeros PcdDebugClearMemoryValue. @param Length The number of bytes in Buffer to fill with zeros PcdDebugClearMemoryValue.
@return Buffer Pointer to the target buffer filled with PcdDebugClearMemoryValue. @return Buffer The pointer to the target buffer filled with PcdDebugClearMemoryValue.
**/ **/
VOID * VOID *
@ -153,7 +153,7 @@ DebugClearMemory (
Returns TRUE if ASSERT() macros are enabled. Returns TRUE if ASSERT() macros are enabled.
This function returns TRUE if the DEBUG_PROPERTY_DEBUG_ASSERT_ENABLED bit of This function returns TRUE if the DEBUG_PROPERTY_DEBUG_ASSERT_ENABLED bit of
PcdDebugProperyMask is set. Otherwise FALSE is returned. PcdDebugProperyMask is set. Otherwise, FALSE is returned.
@retval TRUE The DEBUG_PROPERTY_DEBUG_ASSERT_ENABLED bit of PcdDebugProperyMask is set. @retval TRUE The DEBUG_PROPERTY_DEBUG_ASSERT_ENABLED bit of PcdDebugProperyMask is set.
@retval FALSE The DEBUG_PROPERTY_DEBUG_ASSERT_ENABLED bit of PcdDebugProperyMask is clear. @retval FALSE The DEBUG_PROPERTY_DEBUG_ASSERT_ENABLED bit of PcdDebugProperyMask is clear.
@ -170,7 +170,7 @@ DebugAssertEnabled (
Returns TRUE if DEBUG() macros are enabled. Returns TRUE if DEBUG() macros are enabled.
This function returns TRUE if the DEBUG_PROPERTY_DEBUG_PRINT_ENABLED bit of This function returns TRUE if the DEBUG_PROPERTY_DEBUG_PRINT_ENABLED bit of
PcdDebugProperyMask is set. Otherwise FALSE is returned. PcdDebugProperyMask is set. Otherwise, FALSE is returned.
@retval TRUE The DEBUG_PROPERTY_DEBUG_PRINT_ENABLED bit of PcdDebugProperyMask is set. @retval TRUE The DEBUG_PROPERTY_DEBUG_PRINT_ENABLED bit of PcdDebugProperyMask is set.
@retval FALSE The DEBUG_PROPERTY_DEBUG_PRINT_ENABLED bit of PcdDebugProperyMask is clear. @retval FALSE The DEBUG_PROPERTY_DEBUG_PRINT_ENABLED bit of PcdDebugProperyMask is clear.
@ -187,7 +187,7 @@ DebugPrintEnabled (
Returns TRUE if DEBUG_CODE() macros are enabled. Returns TRUE if DEBUG_CODE() macros are enabled.
This function returns TRUE if the DEBUG_PROPERTY_DEBUG_CODE_ENABLED bit of This function returns TRUE if the DEBUG_PROPERTY_DEBUG_CODE_ENABLED bit of
PcdDebugProperyMask is set. Otherwise FALSE is returned. PcdDebugProperyMask is set. Otherwise, FALSE is returned.
@retval TRUE The DEBUG_PROPERTY_DEBUG_CODE_ENABLED bit of PcdDebugProperyMask is set. @retval TRUE The DEBUG_PROPERTY_DEBUG_CODE_ENABLED bit of PcdDebugProperyMask is set.
@retval FALSE The DEBUG_PROPERTY_DEBUG_CODE_ENABLED bit of PcdDebugProperyMask is clear. @retval FALSE The DEBUG_PROPERTY_DEBUG_CODE_ENABLED bit of PcdDebugProperyMask is clear.
@ -204,7 +204,7 @@ DebugCodeEnabled (
Returns TRUE if DEBUG_CLEAR_MEMORY() macro is enabled. Returns TRUE if DEBUG_CLEAR_MEMORY() macro is enabled.
This function returns TRUE if the DEBUG_PROPERTY_CLEAR_MEMORY_ENABLED bit of This function returns TRUE if the DEBUG_PROPERTY_CLEAR_MEMORY_ENABLED bit of
PcdDebugProperyMask is set. Otherwise FALSE is returned. PcdDebugProperyMask is set. Otherwise, FALSE is returned.
@retval TRUE The DEBUG_PROPERTY_CLEAR_MEMORY_ENABLED bit of PcdDebugProperyMask is set. @retval TRUE The DEBUG_PROPERTY_CLEAR_MEMORY_ENABLED bit of PcdDebugProperyMask is set.
@retval FALSE The DEBUG_PROPERTY_CLEAR_MEMORY_ENABLED bit of PcdDebugProperyMask is clear. @retval FALSE The DEBUG_PROPERTY_CLEAR_MEMORY_ENABLED bit of PcdDebugProperyMask is clear.
@ -251,7 +251,7 @@ DebugClearMemoryEnabled (
DebugAssert() is called passing in the source filename, source line number, DebugAssert() is called passing in the source filename, source line number,
and Expression. and Expression.
@param Expression Boolean expression @param Expression Boolean expression.
**/ **/
#if !defined(MDEPKG_NDEBUG) #if !defined(MDEPKG_NDEBUG)
@ -335,7 +335,7 @@ DebugClearMemoryEnabled (
parameter that may be NULL. If it is NULL, then the entire parameter that may be NULL. If it is NULL, then the entire
handle database is searched. handle database is searched.
@param Guid Pointer to a protocol GUID. @param Guid The pointer to a protocol GUID.
**/ **/
#if !defined(MDEPKG_NDEBUG) #if !defined(MDEPKG_NDEBUG)
@ -372,7 +372,7 @@ DebugClearMemoryEnabled (
/** /**
Macro that marks the end of debug source code. The macro that marks the end of debug source code.
If the DEBUG_PROPERTY_DEBUG_CODE_ENABLED bit of PcdDebugProperyMask is set, If the DEBUG_PROPERTY_DEBUG_CODE_ENABLED bit of PcdDebugProperyMask is set,
then this macro marks the end of source code that is included in a module. then this macro marks the end of source code that is included in a module.
@ -384,7 +384,7 @@ DebugClearMemoryEnabled (
/** /**
Macro that declares a section of debug source code. The macro that declares a section of debug source code.
If the DEBUG_PROPERTY_DEBUG_CODE_ENABLED bit of PcdDebugProperyMask is set, If the DEBUG_PROPERTY_DEBUG_CODE_ENABLED bit of PcdDebugProperyMask is set,
then the source code specified by Expression is included in a module. then the source code specified by Expression is included in a module.
@ -398,12 +398,12 @@ DebugClearMemoryEnabled (
/** /**
Macro that calls DebugClearMemory() to clear a buffer to a default value. The macro that calls DebugClearMemory() to clear a buffer to a default value.
If the DEBUG_PROPERTY_CLEAR_MEMORY_ENABLED bit of PcdDebugProperyMask is set, If the DEBUG_PROPERTY_CLEAR_MEMORY_ENABLED bit of PcdDebugProperyMask is set,
then this macro calls DebugClearMemory() passing in Address and Length. then this macro calls DebugClearMemory() passing in Address and Length.
@param Address Pointer to a buffer. @param Address The pointer to a buffer.
@param Length The number of bytes in the buffer to set. @param Length The number of bytes in the buffer to set.
**/ **/
@ -419,13 +419,13 @@ DebugClearMemoryEnabled (
Macro that calls DebugAssert() if the containing record does not have a Macro that calls DebugAssert() if the containing record does not have a
matching signature. If the signatures matches, then a pointer to the data matching signature. If the signatures matches, then a pointer to the data
structure that contains a specified field of that data structure is returned. structure that contains a specified field of that data structure is returned.
This is a light weight method hide information by placing a public data This is a lightweight method hide information by placing a public data
structure inside a larger private data structure and using a pointer to the structure inside a larger private data structure and using a pointer to the
public data structure to retrieve a pointer to the private data structure. public data structure to retrieve a pointer to the private data structure.
If MDEPKG_NDEBUG is defined or the DEBUG_PROPERTY_DEBUG_ASSERT_ENABLED bit If MDEPKG_NDEBUG is defined or the DEBUG_PROPERTY_DEBUG_ASSERT_ENABLED bit
of PcdDebugProperyMask is clear, then this macro computes the offset, in bytes, of PcdDebugProperyMask is clear, then this macro computes the offset, in bytes,
of field specified by Field from the beginning of the data structure specified of the field specified by Field from the beginning of the data structure specified
by TYPE. This offset is subtracted from Record, and is used to return a pointer by TYPE. This offset is subtracted from Record, and is used to return a pointer
to a data structure of the type specified by TYPE. to a data structure of the type specified by TYPE.
@ -445,7 +445,7 @@ DebugClearMemoryEnabled (
If TYPE does not contain a field called Signature, then the module will not If TYPE does not contain a field called Signature, then the module will not
compile. compile.
@param Record Pointer to the field specified by Field within a data @param Record The pointer to the field specified by Field within a data
structure of type TYPE. structure of type TYPE.
@param TYPE The name of the data structure type to return This @param TYPE The name of the data structure type to return This

View File

@ -4,11 +4,11 @@
This library provides defines, macros, and functions to help create and parse This library provides defines, macros, and functions to help create and parse
EFI_DEVICE_PATH_PROTOCOL structures. EFI_DEVICE_PATH_PROTOCOL structures.
Copyright (c) 2006 - 2009, Intel Corporation<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@ -97,7 +97,8 @@ NextDevicePathNode (
/** /**
Determines if a device path node is an end node of a device path. Determines if a device path node is an end node of a device path.
This includes nodes that are the end of a device path instance and nodes that are the end of an entire device path. This includes nodes that are the end of a device path instance and nodes that
are the end of an entire device path.
Determines if the device path node specified by Node is an end node of a device path. Determines if the device path node specified by Node is an end node of a device path.
This includes nodes that are the end of a device path instance and nodes that are the This includes nodes that are the end of a device path instance and nodes that are the
@ -212,7 +213,7 @@ SetDevicePathEndNode (
@param DevicePath A pointer to a device path data structure. @param DevicePath A pointer to a device path data structure.
@retval 0 If DevicePath is NULL. @retval 0 DevicePath is NULL.
@retval Others The size of a device path in bytes. @retval Others The size of a device path in bytes.
**/ **/
@ -234,7 +235,7 @@ GetDevicePathSize (
@param DevicePath A pointer to a device path data structure. @param DevicePath A pointer to a device path data structure.
@retval NULL If DevicePath is NULL. @retval NULL DevicePath is NULL.
@retval Others A pointer to the duplicated device path. @retval Others A pointer to the duplicated device path.
**/ **/
@ -291,7 +292,7 @@ AppendDevicePath (
@param DevicePath A pointer to a device path data structure. @param DevicePath A pointer to a device path data structure.
@param DevicePathNode A pointer to a single device path node. @param DevicePathNode A pointer to a single device path node.
@retval NULL If there is not enough memory for the new device path. @retval NULL There is not enough memory for the new device path.
@retval Others A pointer to the new device path if success. @retval Others A pointer to the new device path if success.
A copy of DevicePathNode followed by an end-of-device-path node A copy of DevicePathNode followed by an end-of-device-path node
if both FirstDevicePath and SecondDevicePath are NULL. if both FirstDevicePath and SecondDevicePath are NULL.
@ -398,7 +399,7 @@ CreateDeviceNode (
@param DevicePath A pointer to a device path data structure. @param DevicePath A pointer to a device path data structure.
@retval TRUE DevicePath is multi-instance. @retval TRUE DevicePath is multi-instance.
@retval FALSE DevicePath is not multi-instance or DevicePath is NULL. @retval FALSE DevicePath is not multi-instance, or DevicePath is NULL.
**/ **/
BOOLEAN BOOLEAN

View File

@ -2,14 +2,14 @@
MDE DXE Services Library provides functions that simplify the development of DXE Drivers. MDE DXE Services Library provides functions that simplify the development of DXE Drivers.
These functions help access data from sections of FFS files or from file path. These functions help access data from sections of FFS files or from file path.
Copyright (c) 2008 - 2010, Intel Corporation<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -37,20 +37,27 @@
If Size is NULL, then ASSERT(). If Size is NULL, then ASSERT().
@param NameGuid A pointer to to the FFS filename GUID to search for within @param NameGuid A pointer to to the FFS filename GUID to search for
any of the firmware volumes in the platform. within any of the firmware volumes in the platform.
@param SectionType Indicates the FFS section type to search for within the FFS file specified by NameGuid. @param SectionType Indicates the FFS section type to search for within
@param SectionInstance Indicates which section instance within the FFS file specified by NameGuid to retrieve. the FFS file specified by NameGuid.
@param Buffer On output, a pointer to a callee allocated buffer containing the FFS file section that was found. @param SectionInstance Indicates which section instance within the FFS file
It is the caller's responsibility to free this buffer using FreePool(). specified by NameGuid to retrieve.
@param Buffer On output, a pointer to a callee-allocated buffer
containing the FFS file section that was found.
It is the caller's responsibility to free this
buffer using FreePool().
@param Size On output, a pointer to the size, in bytes, of Buffer. @param Size On output, a pointer to the size, in bytes, of Buffer.
@retval EFI_SUCCESS The specified FFS section was returned. @retval EFI_SUCCESS The specified FFS section was returned.
@retval EFI_NOT_FOUND The specified FFS section could not be found. @retval EFI_NOT_FOUND The specified FFS section could not be found.
@retval EFI_OUT_OF_RESOURCES There are not enough resources available to retrieve the matching FFS section. @retval EFI_OUT_OF_RESOURCES There are not enough resources available to retrieve
@retval EFI_DEVICE_ERROR The FFS section could not be retrieves due to a device error. the matching FFS section.
@retval EFI_ACCESS_DENIED The FFS section could not be retrieves because the firmware volume that @retval EFI_DEVICE_ERROR The FFS section could not be retrieves due to a
contains the matching FFS section does not allow reads. device error.
@retval EFI_ACCESS_DENIED The FFS section could not be retrieves because the
firmware volume that contains the matching FFS
section does not allow reads.
**/ **/
EFI_STATUS EFI_STATUS
EFIAPI EFIAPI
@ -83,21 +90,29 @@ GetSectionFromAnyFv (
If Buffer is NULL, then ASSERT(). If Buffer is NULL, then ASSERT().
If Size is NULL, then ASSERT(). If Size is NULL, then ASSERT().
@param NameGuid A pointer to to the FFS filename GUID to search for within @param NameGuid A pointer to to the FFS filename GUID to search for
the firmware volumes that the currently executing module was loaded from. within the firmware volumes that the currently
@param SectionType Indicates the FFS section type to search for within the FFS file specified by NameGuid. executing module was loaded from.
@param SectionInstance Indicates which section instance within the FFS file specified by NameGuid to retrieve. @param SectionType Indicates the FFS section type to search for within
@param Buffer On output, a pointer to a callee allocated buffer containing the FFS file section that was found. the FFS file specified by NameGuid.
It is the caller's responsibility to free this buffer using FreePool(). @param SectionInstance Indicates which section instance within the FFS
file specified by NameGuid to retrieve.
@param Buffer On output, a pointer to a callee allocated buffer
containing the FFS file section that was found.
It is the caller's responsibility to free this buffer
using FreePool().
@param Size On output, a pointer to the size, in bytes, of Buffer. @param Size On output, a pointer to the size, in bytes, of Buffer.
@retval EFI_SUCCESS The specified FFS section was returned. @retval EFI_SUCCESS The specified FFS section was returned.
@retval EFI_NOT_FOUND The specified FFS section could not be found. @retval EFI_NOT_FOUND The specified FFS section could not be found.
@retval EFI_OUT_OF_RESOURCES There are not enough resources available to retrieve the matching FFS section. @retval EFI_OUT_OF_RESOURCES There are not enough resources available to retrieve
@retval EFI_DEVICE_ERROR The FFS section could not be retrieves due to a device error. the matching FFS section.
@retval EFI_ACCESS_DENIED The FFS section could not be retrieves because the firmware volume that @retval EFI_DEVICE_ERROR The FFS section could not be retrieves due to a
contains the matching FFS section does not allow reads. device error.
@retval EFI_ACCESS_DENIED The FFS section could not be retrieves because the
firmware volume that contains the matching FFS
section does not allow reads.
**/ **/
EFI_STATUS EFI_STATUS
EFIAPI EFIAPI
@ -129,20 +144,27 @@ GetSectionFromFv (
If Size is NULL, then ASSERT(). If Size is NULL, then ASSERT().
@param SectionType Indicates the FFS section type to search for within the FFS file @param SectionType Indicates the FFS section type to search for within
that the currently executing module was loaded from. the FFS file that the currently executing module
@param SectionInstance Indicates which section instance to retrieve within the FFS file was loaded from.
that the currently executing module was loaded from. @param SectionInstance Indicates which section instance to retrieve within
@param Buffer On output, a pointer to a callee allocated buffer containing the FFS file section that was found. the FFS file that the currently executing module
It is the caller's responsibility to free this buffer using FreePool(). was loaded from.
@param Buffer On output, a pointer to a callee allocated buffer
containing the FFS file section that was found.
It is the caller's responsibility to free this buffer
using FreePool().
@param Size On output, a pointer to the size, in bytes, of Buffer. @param Size On output, a pointer to the size, in bytes, of Buffer.
@retval EFI_SUCCESS The specified FFS section was returned. @retval EFI_SUCCESS The specified FFS section was returned.
@retval EFI_NOT_FOUND The specified FFS section could not be found. @retval EFI_NOT_FOUND The specified FFS section could not be found.
@retval EFI_OUT_OF_RESOURCES There are not enough resources available to retrieve the matching FFS section. @retval EFI_OUT_OF_RESOURCES There are not enough resources available to retrieve
@retval EFI_DEVICE_ERROR The FFS section could not be retrieves due to a device error. the matching FFS section.
@retval EFI_ACCESS_DENIED The FFS section could not be retrieves because the firmware volume that @retval EFI_DEVICE_ERROR The FFS section could not be retrieves due to a
contains the matching FFS section does not allow reads. device error.
@retval EFI_ACCESS_DENIED The FFS section could not be retrieves because the
firmware volume that contains the matching FFS
section does not allow reads.
**/ **/
EFI_STATUS EFI_STATUS
@ -167,17 +189,19 @@ GetSectionFromFfs (
If FileSize is NULL, then NULL is returned. If FileSize is NULL, then NULL is returned.
If AuthenticationStatus is NULL, then NULL is returned. If AuthenticationStatus is NULL, then NULL is returned.
@param[in] BootPolicy Policy for Open Image File.If TRUE, indicates that the request @param[in] BootPolicy The policy for Open Image File.If TRUE,
originates from the boot manager, and that the boot manager is indicates that the request originates from
attempting to load FilePath as a boot selection. If FALSE, the boot manager, and that the boot manager is
then FilePath must match an exact file to be loaded. attempting to load FilePath as a boot selection.
@param[in] FilePath Pointer to the device path of the file that is absracted to If FALSE, then FilePath must match an exact
file to be loaded.
@param[in] FilePath Pointer to the device path of the file that is abstracted to
the file buffer. the file buffer.
@param[out] FileSize Pointer to the size of the abstracted file buffer. @param[out] FileSize Pointer to the size of the abstracted file buffer.
@param[out] AuthenticationStatus Pointer to a caller-allocated UINT32 in which the authentication @param[out] AuthenticationStatus Pointer to a caller-allocated UINT32 in which the authentication
status is returned. status is returned.
@retval NULL File is NULL, or FileSize is NULL. Or the file can't be found. @retval NULL File is NULL, or FileSize is NULL, or the file can't be found.
@retval other The abstracted file buffer. The caller is responsible to free memory. @retval other The abstracted file buffer. The caller is responsible to free memory.
**/ **/
VOID * VOID *

View File

@ -1,11 +1,11 @@
/** @file /** @file
Provides a service to retrieve the PE/COFF entry point from a PE/COFF image. Provides a service to retrieve the PE/COFF entry point from a PE/COFF image.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@ -25,8 +25,8 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
If Pe32Data is NULL, then ASSERT(). If Pe32Data is NULL, then ASSERT().
If EntryPoint is NULL, then ASSERT(). If EntryPoint is NULL, then ASSERT().
@param Pe32Data Pointer to the PE/COFF image that is loaded in system memory. @param Pe32Data The pointer to the PE/COFF image that is loaded in system memory.
@param EntryPoint Pointer to entry point to the PE/COFF image to return. @param EntryPoint The pointer to entry point to the PE/COFF image to return.
@retval RETURN_SUCCESS EntryPoint was returned. @retval RETURN_SUCCESS EntryPoint was returned.
@retval RETURN_INVALID_PARAMETER The entry point could not be found in the PE/COFF image. @retval RETURN_INVALID_PARAMETER The entry point could not be found in the PE/COFF image.
@ -45,7 +45,7 @@ PeCoffLoaderGetEntryPoint (
Returns the machine type from the PE/COFF image specified by Pe32Data. Returns the machine type from the PE/COFF image specified by Pe32Data.
If Pe32Data is NULL, then ASSERT(). If Pe32Data is NULL, then ASSERT().
@param Pe32Data Pointer to the PE/COFF image that is loaded in system @param Pe32Data The pointer to the PE/COFF image that is loaded in system
memory. memory.
@return Machine type or zero if not a valid image. @return Machine type or zero if not a valid image.
@ -69,10 +69,10 @@ PeCoffLoaderGetMachineType (
then NULL is returned. then NULL is returned.
If Pe32Data is NULL, then ASSERT(). If Pe32Data is NULL, then ASSERT().
@param Pe32Data Pointer to the PE/COFF image that is loaded in system @param Pe32Data The pointer to the PE/COFF image that is loaded in system
memory. memory.
@return The PDB file name for the PE/COFF image specified by Pe32Data or NULL @return The PDB file name for the PE/COFF image specified by Pe32Data, or NULL
if it cannot be retrieved. if it cannot be retrieved.
**/ **/
@ -89,10 +89,10 @@ PeCoffLoaderGetPdbPointer (
Returns the size of the PE/COFF header specified by Pe32Data. Returns the size of the PE/COFF header specified by Pe32Data.
If Pe32Data is NULL, then ASSERT(). If Pe32Data is NULL, then ASSERT().
@param Pe32Data Pointer to the PE/COFF image that is loaded in system @param Pe32Data The pointer to the PE/COFF image that is loaded in system
memory. memory.
@return Size of PE/COFF header in bytes or zero if not a valid image. @return Size of PE/COFF header in bytes, or zero if not a valid image.
**/ **/
UINT32 UINT32

View File

@ -5,12 +5,11 @@
IA-32, x86, IPF, and EBC processor types. The library functions are memory-based IA-32, x86, IPF, and EBC processor types. The library functions are memory-based
and can be ported easily to any environment. and can be ported easily to any environment.
Copyright (c) 2006 - 2008, Intel Corporation<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
Portions copyright (c) 2008-2009 Apple Inc. All rights reserved.<BR> This program and the accompanying materials are licensed and made available under
All rights reserved. This program and the accompanying materials the terms and conditions of the BSD License that accompanies this distribution.
are licensed and made available under the terms and conditions of the BSD License The full text of the license may be found at
which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php.
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@ -60,9 +59,10 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
On output, the number of bytes actually read. On output, the number of bytes actually read.
@param Buffer Output buffer that contains the data read from the PE/COFF image. @param Buffer Output buffer that contains the data read from the PE/COFF image.
@retval RETURN_SUCCESS The specified portion of the PE/COFF image was read and the size @retval RETURN_SUCCESS The specified portion of the PE/COFF image was
@retval RETURN_DEVICE_ERROR The specified portion of the PE/COFF image could not be read due read and the size
to a device error. @retval RETURN_DEVICE_ERROR The specified portion of the PE/COFF image
could not be read due to a device error.
**/ **/
typedef typedef
@ -75,20 +75,20 @@ RETURN_STATUS
); );
/// ///
/// Context structure used while PE/COFF image is being loaded and relocated /// The context structure used while PE/COFF image is being loaded and relocated.
/// ///
typedef struct { typedef struct {
/// ///
/// Is set by PeCoffLoaderGetImageInfo() to the ImageBase in the PE/COFF header /// Set by PeCoffLoaderGetImageInfo() to the ImageBase in the PE/COFF header.
/// ///
PHYSICAL_ADDRESS ImageAddress; PHYSICAL_ADDRESS ImageAddress;
/// ///
/// Is set by PeCoffLoaderGetImageInfo() to the SizeOfImage in the PE/COFF header. /// Set by PeCoffLoaderGetImageInfo() to the SizeOfImage in the PE/COFF header.
/// Image size includes the size of Debug Entry if it is present. /// Image size includes the size of Debug Entry if it is present.
/// ///
UINT64 ImageSize; UINT64 ImageSize;
/// ///
/// Is set to zero by PeCoffLoaderGetImageInfo(). If DestinationAddress is non zero, /// Is set to zero by PeCoffLoaderGetImageInfo(). If DestinationAddress is non-zero,
/// PeCoffLoaderRelocateImage() will relocate the image using this base address. /// PeCoffLoaderRelocateImage() will relocate the image using this base address.
/// If the DestinationAddress is zero, the ImageAddress will be used as the base /// If the DestinationAddress is zero, the ImageAddress will be used as the base
/// address of relocation. /// address of relocation.
@ -115,18 +115,18 @@ typedef struct {
/// ///
VOID *FixupData; VOID *FixupData;
/// ///
/// Is set by PeCoffLoaderGetImageInfo() to the Section Alignment in the PE/COFF header /// Set by PeCoffLoaderGetImageInfo() to the Section Alignment in the PE/COFF header.
/// If the image is a TE image, then this field is set to 0. /// If the image is a TE image, then this field is set to 0.
/// ///
UINT32 SectionAlignment; UINT32 SectionAlignment;
/// ///
/// Set by PeCoffLoaderGetImageInfo() to offset to the PE/COFF header. /// Set by PeCoffLoaderGetImageInfo() to offset to the PE/COFF header.
/// If the PE/COFF image does not start with a DOS header, this value is zero; /// If the PE/COFF image does not start with a DOS header, this value is zero.
/// otherwise, it's the offset to the PE/COFF header. /// Otherwise, it's the offset to the PE/COFF header.
/// ///
UINT32 PeCoffHeaderOffset; UINT32 PeCoffHeaderOffset;
/// ///
/// Set by PeCoffLoaderGetImageInfo() to the Relative Virtual Address of the debug directory /// Set by PeCoffLoaderGetImageInfo() to the Relative Virtual Address of the debug directory,
/// if it exists in the image /// if it exists in the image
/// ///
UINT32 DebugDirectoryEntryRva; UINT32 DebugDirectoryEntryRva;
@ -155,7 +155,7 @@ typedef struct {
/// Not used by this library class. Other library classes that layer on top of this library /// Not used by this library class. Other library classes that layer on top of this library
/// class fill in this value as part of their GetImageInfo call. /// class fill in this value as part of their GetImageInfo call.
/// This allows the caller of the library to know what type of memory needs to be allocated /// This allows the caller of the library to know what type of memory needs to be allocated
/// to load and relocate the image /// to load and relocate the image.
/// ///
UINT32 ImageDataMemoryType; UINT32 ImageDataMemoryType;
/// ///
@ -164,11 +164,11 @@ typedef struct {
UINT32 ImageError; UINT32 ImageError;
/// ///
/// Set by PeCoffLoaderLoadImage() to indicate the size of FixupData that the caller must /// Set by PeCoffLoaderLoadImage() to indicate the size of FixupData that the caller must
/// allocate before calling PeCoffLoaderRelocateImage() /// allocate before calling PeCoffLoaderRelocateImage().
/// ///
UINTN FixupDataSize; UINTN FixupDataSize;
/// ///
/// Set by PeCoffLoaderGetImageInfo() to the machine type stored in the PE/COFF header /// Set by PeCoffLoaderGetImageInfo() to the machine type stored in the PE/COFF header.
/// ///
UINT16 Machine; UINT16 Machine;
/// ///
@ -188,8 +188,8 @@ typedef struct {
BOOLEAN IsTeImage; BOOLEAN IsTeImage;
/// ///
/// Set by PeCoffLoaderLoadImage() to the HII resource offset /// Set by PeCoffLoaderLoadImage() to the HII resource offset
/// if the image contains a custom PE/COFF resource with the type 'HII'; /// if the image contains a custom PE/COFF resource with the type 'HII'.
/// otherwise, the entry remains to be 0. /// Otherwise, the entry remains to be 0.
/// ///
PHYSICAL_ADDRESS HiiResourceData; PHYSICAL_ADDRESS HiiResourceData;
/// ///
@ -213,8 +213,9 @@ typedef struct {
The ImageRead and Handle fields of ImageContext structure must be valid prior The ImageRead and Handle fields of ImageContext structure must be valid prior
to invoking this service. to invoking this service.
@param ImageContext Pointer to the image context structure that describes the PE/COFF @param ImageContext The pointer to the image context structure that
image that needs to be examined by this function. describes the PE/COFF image that needs to be
examined by this function.
@retval RETURN_SUCCESS The information on the PE/COFF image was collected. @retval RETURN_SUCCESS The information on the PE/COFF image was collected.
@retval RETURN_INVALID_PARAMETER ImageContext is NULL. @retval RETURN_INVALID_PARAMETER ImageContext is NULL.
@ -246,7 +247,7 @@ PeCoffLoaderGetImageInfo (
cache(s) in hardware, then the caller is responsible for performing cache maintenance operations cache(s) in hardware, then the caller is responsible for performing cache maintenance operations
prior to transferring control to a PE/COFF image that is loaded using this library. prior to transferring control to a PE/COFF image that is loaded using this library.
@param ImageContext Pointer to the image context structure that describes the PE/COFF @param ImageContext The pointer to the image context structure that describes the PE/COFF
image that is being relocated. image that is being relocated.
@retval RETURN_SUCCESS The PE/COFF image was relocated. @retval RETURN_SUCCESS The PE/COFF image was relocated.
@ -280,7 +281,7 @@ PeCoffLoaderRelocateImage (
cache(s) in hardware, then the caller is responsible for performing cache maintenance operations cache(s) in hardware, then the caller is responsible for performing cache maintenance operations
prior to transferring control to a PE/COFF image that is loaded using this library. prior to transferring control to a PE/COFF image that is loaded using this library.
@param ImageContext Pointer to the image context structure that describes the PE/COFF @param ImageContext The pointer to the image context structure that describes the PE/COFF
image that is being loaded. image that is being loaded.
@retval RETURN_SUCCESS The PE/COFF image was loaded into the buffer specified by @retval RETURN_SUCCESS The PE/COFF image was loaded into the buffer specified by
@ -315,13 +316,13 @@ PeCoffLoaderLoadImage (
If ReadSize is NULL, then ASSERT(). If ReadSize is NULL, then ASSERT().
If Buffer is NULL, then ASSERT(). If Buffer is NULL, then ASSERT().
@param FileHandle Pointer to base of the input stream @param FileHandle The pointer to base of the input stream
@param FileOffset Offset into the PE/COFF image to begin the read operation. @param FileOffset Offset into the PE/COFF image to begin the read operation.
@param ReadSize On input, the size in bytes of the requested read operation. @param ReadSize On input, the size in bytes of the requested read operation.
On output, the number of bytes actually read. On output, the number of bytes actually read.
@param Buffer Output buffer that contains the data read from the PE/COFF image. @param Buffer Output buffer that contains the data read from the PE/COFF image.
@retval RETURN_SUCCESS Data is read from FileOffset from the Handle into @retval RETURN_SUCCESS The data is read from FileOffset from the Handle into
the buffer. the buffer.
**/ **/
RETURN_STATUS RETURN_STATUS
@ -348,7 +349,7 @@ PeCoffLoaderImageReadFromMemory (
cache(s) in hardware, then the caller is responsible for performing cache maintenance operations cache(s) in hardware, then the caller is responsible for performing cache maintenance operations
prior to transferring control to a PE/COFF image that is loaded using this library. prior to transferring control to a PE/COFF image that is loaded using this library.
@param ImageBase Base address of a PE/COFF image that has been loaded @param ImageBase The base address of a PE/COFF image that has been loaded
and relocated into system memory. and relocated into system memory.
@param VirtImageBase The request virtual address that the PE/COFF image is to @param VirtImageBase The request virtual address that the PE/COFF image is to
be fixed up for. be fixed up for.

View File

@ -2,11 +2,11 @@
Provides services to print a formatted string to a buffer. All combinations of Provides services to print a formatted string to a buffer. All combinations of
Unicode and ASCII strings are supported. Unicode and ASCII strings are supported.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@ -177,8 +177,8 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
/// ///
/// Define the maximum number of characters that are required to /// Define the maximum number of characters that are required to
/// encode a decimal, hexadecimal, GUID, or TIME value with a NULL /// encode with a NULL terminator a decimal, hexadecimal, GUID,
/// terminator. /// or TIME value.
/// ///
/// Maximum Length Decimal String = 28 /// Maximum Length Decimal String = 28
/// "-9,223,372,036,854,775,808" /// "-9,223,372,036,854,775,808"
@ -202,14 +202,14 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
/** /**
Produces a Null-terminated Unicode string in an output buffer based on Produces a Null-terminated Unicode string in an output buffer based on
a Null-terminated Unicode format string and a VA_LIST argument list a Null-terminated Unicode format string and a VA_LIST argument list.
Produces a Null-terminated Unicode string in the output buffer specified by StartOfBuffer Produces a Null-terminated Unicode string in the output buffer specified by StartOfBuffer
and BufferSize. and BufferSize.
The Unicode string is produced by parsing the format string specified by FormatString. The Unicode string is produced by parsing the format string specified by FormatString.
Arguments are pulled from the variable argument list specified by Marker based on the Arguments are pulled from the variable argument list specified by Marker based on the
contents of the format string. contents of the format string.
The number of Unicode characters in the produced output buffer is returned not including The number of Unicode characters in the produced output buffer is returned, not including
the Null-terminator. the Null-terminator.
If BufferSize is 0 or 1, then no output buffer is produced and 0 is returned. If BufferSize is 0 or 1, then no output buffer is produced and 0 is returned.
@ -218,10 +218,10 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
If BufferSize > 1 and FormatString is NULL, then ASSERT(). If BufferSize > 1 and FormatString is NULL, then ASSERT().
If BufferSize > 1 and FormatString is not aligned on a 16-bit boundary, then ASSERT(). If BufferSize > 1 and FormatString is not aligned on a 16-bit boundary, then ASSERT().
If PcdMaximumUnicodeStringLength is not zero, and FormatString contains more than If PcdMaximumUnicodeStringLength is not zero, and FormatString contains more than
PcdMaximumUnicodeStringLength Unicode characters not including the Null-terminator, then PcdMaximumUnicodeStringLength Unicode characters, not including the Null-terminator, then
ASSERT(). ASSERT().
If PcdMaximumUnicodeStringLength is not zero, and produced Null-terminated Unicode string If PcdMaximumUnicodeStringLength is not zero, and produced Null-terminated Unicode string
contains more than PcdMaximumUnicodeStringLength Unicode characters not including the contains more than PcdMaximumUnicodeStringLength Unicode characters, not including the
Null-terminator, then ASSERT(). Null-terminator, then ASSERT().
@param StartOfBuffer A pointer to the output buffer for the produced Null-terminated @param StartOfBuffer A pointer to the output buffer for the produced Null-terminated
@ -230,7 +230,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@param FormatString Null-terminated Unicode format string. @param FormatString Null-terminated Unicode format string.
@param Marker VA_LIST marker for the variable argument list. @param Marker VA_LIST marker for the variable argument list.
@return The number of Unicode characters in the produced output buffer not including the @return The number of Unicode characters in the produced output buffer, not including the
Null-terminator. Null-terminator.
**/ **/
@ -245,14 +245,14 @@ UnicodeVSPrint (
/** /**
Produces a Null-terminated Unicode string in an output buffer based on Produces a Null-terminated Unicode string in an output buffer based on
a Null-terminated Unicode format string and a BASE_LIST argument list a Null-terminated Unicode format string and a BASE_LIST argument list.
Produces a Null-terminated Unicode string in the output buffer specified by StartOfBuffer Produces a Null-terminated Unicode string in the output buffer specified by StartOfBuffer
and BufferSize. and BufferSize.
The Unicode string is produced by parsing the format string specified by FormatString. The Unicode string is produced by parsing the format string specified by FormatString.
Arguments are pulled from the variable argument list specified by Marker based on the Arguments are pulled from the variable argument list specified by Marker based on the
contents of the format string. contents of the format string.
The number of Unicode characters in the produced output buffer is returned not including The number of Unicode characters in the produced output buffer is returned, not including
the Null-terminator. the Null-terminator.
If BufferSize is 0 or 1, then no output buffer is produced and 0 is returned. If BufferSize is 0 or 1, then no output buffer is produced and 0 is returned.
@ -261,10 +261,10 @@ UnicodeVSPrint (
If BufferSize > 1 and FormatString is NULL, then ASSERT(). If BufferSize > 1 and FormatString is NULL, then ASSERT().
If BufferSize > 1 and FormatString is not aligned on a 16-bit boundary, then ASSERT(). If BufferSize > 1 and FormatString is not aligned on a 16-bit boundary, then ASSERT().
If PcdMaximumUnicodeStringLength is not zero, and FormatString contains more than If PcdMaximumUnicodeStringLength is not zero, and FormatString contains more than
PcdMaximumUnicodeStringLength Unicode characters not including the Null-terminator, then PcdMaximumUnicodeStringLength Unicode characters, not including the Null-terminator, then
ASSERT(). ASSERT().
If PcdMaximumUnicodeStringLength is not zero, and produced Null-terminated Unicode string If PcdMaximumUnicodeStringLength is not zero, and produced Null-terminated Unicode string
contains more than PcdMaximumUnicodeStringLength Unicode characters not including the contains more than PcdMaximumUnicodeStringLength Unicode characters, not including the
Null-terminator, then ASSERT(). Null-terminator, then ASSERT().
@param StartOfBuffer A pointer to the output buffer for the produced Null-terminated @param StartOfBuffer A pointer to the output buffer for the produced Null-terminated
@ -273,7 +273,7 @@ UnicodeVSPrint (
@param FormatString Null-terminated Unicode format string. @param FormatString Null-terminated Unicode format string.
@param Marker BASE_LIST marker for the variable argument list. @param Marker BASE_LIST marker for the variable argument list.
@return The number of Unicode characters in the produced output buffer not including the @return The number of Unicode characters in the produced output buffer, not including the
Null-terminator. Null-terminator.
**/ **/
@ -294,7 +294,7 @@ UnicodeBSPrint (
and BufferSize. and BufferSize.
The Unicode string is produced by parsing the format string specified by FormatString. The Unicode string is produced by parsing the format string specified by FormatString.
Arguments are pulled from the variable argument list based on the contents of the format string. Arguments are pulled from the variable argument list based on the contents of the format string.
The number of Unicode characters in the produced output buffer is returned not including The number of Unicode characters in the produced output buffer is returned, not including
the Null-terminator. the Null-terminator.
If BufferSize is 0 or 1, then no output buffer is produced and 0 is returned. If BufferSize is 0 or 1, then no output buffer is produced and 0 is returned.
@ -312,11 +312,11 @@ UnicodeBSPrint (
@param StartOfBuffer A pointer to the output buffer for the produced Null-terminated @param StartOfBuffer A pointer to the output buffer for the produced Null-terminated
Unicode string. Unicode string.
@param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer. @param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer.
@param FormatString Null-terminated Unicode format string. @param FormatString A null-terminated Unicode format string.
@param ... Variable argument list whose contents are accessed based on the @param ... The variable argument list whose contents are accessed based on the
format string specified by FormatString. format string specified by FormatString.
@return The number of Unicode characters in the produced output buffer not including the @return The number of Unicode characters in the produced output buffer, not including the
Null-terminator. Null-terminator.
**/ **/
@ -338,7 +338,7 @@ UnicodeSPrint (
The Unicode string is produced by parsing the format string specified by FormatString. The Unicode string is produced by parsing the format string specified by FormatString.
Arguments are pulled from the variable argument list specified by Marker based on the Arguments are pulled from the variable argument list specified by Marker based on the
contents of the format string. contents of the format string.
The number of Unicode characters in the produced output buffer is returned not including The number of Unicode characters in the produced output buffer is returned, not including
the Null-terminator. the Null-terminator.
If BufferSize is 0 or 1, then no output buffer is produced and 0 is returned. If BufferSize is 0 or 1, then no output buffer is produced and 0 is returned.
@ -346,16 +346,16 @@ UnicodeSPrint (
If BufferSize > 1 and StartOfBuffer is not aligned on a 16-bit boundary, then ASSERT(). If BufferSize > 1 and StartOfBuffer is not aligned on a 16-bit boundary, then ASSERT().
If BufferSize > 1 and FormatString is NULL, then ASSERT(). If BufferSize > 1 and FormatString is NULL, then ASSERT().
If PcdMaximumAsciiStringLength is not zero, and FormatString contains more than If PcdMaximumAsciiStringLength is not zero, and FormatString contains more than
PcdMaximumAsciiStringLength ASCII characters not including the Null-terminator, then PcdMaximumAsciiStringLength ASCII characters, not including the Null-terminator, then
ASSERT(). ASSERT().
If PcdMaximumUnicodeStringLength is not zero, and produced Null-terminated Unicode string If PcdMaximumUnicodeStringLength is not zero, and produced Null-terminated Unicode string
contains more than PcdMaximumUnicodeStringLength Unicode characters not including the contains more than PcdMaximumUnicodeStringLength Unicode characters, not including the
Null-terminator, then ASSERT(). Null-terminator, then ASSERT().
@param StartOfBuffer A pointer to the output buffer for the produced Null-terminated @param StartOfBuffer A pointer to the output buffer for the produced Null-terminated
Unicode string. Unicode string.
@param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer. @param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer.
@param FormatString Null-terminated ASCII format string. @param FormatString A null-terminated ASCII format string.
@param Marker VA_LIST marker for the variable argument list. @param Marker VA_LIST marker for the variable argument list.
@return The number of Unicode characters in the produced output buffer not including the @return The number of Unicode characters in the produced output buffer not including the
@ -380,7 +380,7 @@ UnicodeVSPrintAsciiFormat (
The Unicode string is produced by parsing the format string specified by FormatString. The Unicode string is produced by parsing the format string specified by FormatString.
Arguments are pulled from the variable argument list specified by Marker based on the Arguments are pulled from the variable argument list specified by Marker based on the
contents of the format string. contents of the format string.
The number of Unicode characters in the produced output buffer is returned not including The number of Unicode characters in the produced output buffer is returned, not including
the Null-terminator. the Null-terminator.
If BufferSize is 0 or 1, then no output buffer is produced and 0 is returned. If BufferSize is 0 or 1, then no output buffer is produced and 0 is returned.
@ -388,19 +388,19 @@ UnicodeVSPrintAsciiFormat (
If BufferSize > 1 and StartOfBuffer is not aligned on a 16-bit boundary, then ASSERT(). If BufferSize > 1 and StartOfBuffer is not aligned on a 16-bit boundary, then ASSERT().
If BufferSize > 1 and FormatString is NULL, then ASSERT(). If BufferSize > 1 and FormatString is NULL, then ASSERT().
If PcdMaximumAsciiStringLength is not zero, and FormatString contains more than If PcdMaximumAsciiStringLength is not zero, and FormatString contains more than
PcdMaximumAsciiStringLength ASCII characters not including the Null-terminator, then PcdMaximumAsciiStringLength ASCII characters, not including the Null-terminator, then
ASSERT(). ASSERT().
If PcdMaximumUnicodeStringLength is not zero, and produced Null-terminated Unicode string If PcdMaximumUnicodeStringLength is not zero, and produced Null-terminated Unicode string
contains more than PcdMaximumUnicodeStringLength Unicode characters not including the contains more than PcdMaximumUnicodeStringLength Unicode characters, not including the
Null-terminator, then ASSERT(). Null-terminator, then ASSERT().
@param StartOfBuffer A pointer to the output buffer for the produced Null-terminated @param StartOfBuffer A pointer to the output buffer for the produced Null-terminated
Unicode string. Unicode string.
@param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer. @param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer.
@param FormatString Null-terminated ASCII format string. @param FormatString A null-terminated ASCII format string.
@param Marker BASE_LIST marker for the variable argument list. @param Marker A BASE_LIST marker for the variable argument list.
@return The number of Unicode characters in the produced output buffer not including the @return The number of Unicode characters in the produced output buffer, not including the
Null-terminator. Null-terminator.
**/ **/
@ -422,7 +422,7 @@ UnicodeBSPrintAsciiFormat (
The Unicode string is produced by parsing the format string specified by FormatString. The Unicode string is produced by parsing the format string specified by FormatString.
Arguments are pulled from the variable argument list based on the contents of the Arguments are pulled from the variable argument list based on the contents of the
format string. format string.
The number of Unicode characters in the produced output buffer is returned not including The number of Unicode characters in the produced output buffer is returned, not including
the Null-terminator. the Null-terminator.
If BufferSize is 0 or 1, then no output buffer is produced and 0 is returned. If BufferSize is 0 or 1, then no output buffer is produced and 0 is returned.
@ -430,20 +430,20 @@ UnicodeBSPrintAsciiFormat (
If BufferSize > 1 and StartOfBuffer is not aligned on a 16-bit boundary, then ASSERT(). If BufferSize > 1 and StartOfBuffer is not aligned on a 16-bit boundary, then ASSERT().
If BufferSize > 1 and FormatString is NULL, then ASSERT(). If BufferSize > 1 and FormatString is NULL, then ASSERT().
If PcdMaximumAsciiStringLength is not zero, and FormatString contains more than If PcdMaximumAsciiStringLength is not zero, and FormatString contains more than
PcdMaximumAsciiStringLength ASCII characters not including the Null-terminator, then PcdMaximumAsciiStringLength ASCII characters, not including the Null-terminator, then
ASSERT(). ASSERT().
If PcdMaximumUnicodeStringLength is not zero, and produced Null-terminated Unicode string If PcdMaximumUnicodeStringLength is not zero, and produced Null-terminated Unicode string
contains more than PcdMaximumUnicodeStringLength Unicode characters not including the contains more than PcdMaximumUnicodeStringLength Unicode characters, the
Null-terminator, then ASSERT(). Null-terminator, then ASSERT().
@param StartOfBuffer A pointer to the output buffer for the produced Null-terminated @param StartOfBuffer A pointer to the output buffer for the produced Null-terminated
Unicode string. Unicode string.
@param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer. @param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer.
@param FormatString Null-terminated ASCII format string. @param FormatString A null-terminated ASCII format string.
@param ... Variable argument list whose contents are accessed based on the @param ... Variable argument list whose contents are accessed based on the
format string specified by FormatString. format string specified by FormatString.
@return The number of Unicode characters in the produced output buffer not including the @return The number of Unicode characters in the produced output buffer, not including the
Null-terminator. Null-terminator.
**/ **/
@ -462,7 +462,7 @@ UnicodeSPrintAsciiFormat (
Converts the decimal number specified by Value to a Null-terminated Unicode Converts the decimal number specified by Value to a Null-terminated Unicode
string specified by Buffer containing at most Width characters. No padding of spaces string specified by Buffer containing at most Width characters. No padding of spaces
is ever performed. If Width is 0 then a width of MAXIMUM_VALUE_CHARACTERS is assumed. is ever performed. If Width is 0 then a width of MAXIMUM_VALUE_CHARACTERS is assumed.
The number of Unicode characters in Buffer is returned not including the Null-terminator. The number of Unicode characters in Buffer is returned, not including the Null-terminator.
If the conversion contains more than Width characters, then only the first If the conversion contains more than Width characters, then only the first
Width characters are returned, and the total number of characters Width characters are returned, and the total number of characters
required to perform the conversion is returned. required to perform the conversion is returned.
@ -487,14 +487,14 @@ UnicodeSPrintAsciiFormat (
If both COMMA_TYPE and RADIX_HEX are set in Flags, then ASSERT(). If both COMMA_TYPE and RADIX_HEX are set in Flags, then ASSERT().
If Width >= MAXIMUM_VALUE_CHARACTERS, then ASSERT() If Width >= MAXIMUM_VALUE_CHARACTERS, then ASSERT()
@param Buffer Pointer to the output buffer for the produced Null-terminated @param Buffer The pointer to the output buffer for the produced Null-terminated
Unicode string. Unicode string.
@param Flags The bitmask of flags that specify left justification, zero pad, and commas. @param Flags The bitmask of flags that specify left justification, zero pad, and commas.
@param Value The 64-bit signed value to convert to a string. @param Value The 64-bit signed value to convert to a string.
@param Width The maximum number of Unicode characters to place in Buffer, not including @param Width The maximum number of Unicode characters to place in Buffer, not including
the Null-terminator. the Null-terminator.
@return The number of Unicode characters in Buffer not including the Null-terminator. @return The number of Unicode characters in Buffer, not including the Null-terminator.
**/ **/
UINTN UINTN
@ -515,26 +515,26 @@ UnicodeValueToString (
The ASCII string is produced by parsing the format string specified by FormatString. The ASCII string is produced by parsing the format string specified by FormatString.
Arguments are pulled from the variable argument list specified by Marker based on Arguments are pulled from the variable argument list specified by Marker based on
the contents of the format string. the contents of the format string.
The number of ASCII characters in the produced output buffer is returned not including The number of ASCII characters in the produced output buffer is returned, not including
the Null-terminator. the Null-terminator.
If BufferSize is 0, then no output buffer is produced and 0 is returned. If BufferSize is 0, then no output buffer is produced and 0 is returned.
If BufferSize > 0 and StartOfBuffer is NULL, then ASSERT(). If BufferSize > 0 and StartOfBuffer is NULL, then ASSERT().
If BufferSize > 0 and FormatString is NULL, then ASSERT(). If BufferSize > 0 and FormatString is NULL, then ASSERT().
If PcdMaximumAsciiStringLength is not zero, and FormatString contains more than If PcdMaximumAsciiStringLength is not zero, and FormatString contains more than
PcdMaximumAsciiStringLength ASCII characters not including the Null-terminator, then PcdMaximumAsciiStringLength ASCII characters, not including the Null-terminator, then
ASSERT(). ASSERT().
If PcdMaximumAsciiStringLength is not zero, and produced Null-terminated ASCII string If PcdMaximumAsciiStringLength is not zero, and produced Null-terminated ASCII string
contains more than PcdMaximumAsciiStringLength ASCII characters not including the contains more than PcdMaximumAsciiStringLength ASCII characters, not including the
Null-terminator, then ASSERT(). Null-terminator, then ASSERT().
@param StartOfBuffer A pointer to the output buffer for the produced Null-terminated @param StartOfBuffer A pointer to the output buffer for the produced Null-terminated
ASCII string. ASCII string.
@param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer. @param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer.
@param FormatString Null-terminated ASCII format string. @param FormatString A null-terminated ASCII format string.
@param Marker VA_LIST marker for the variable argument list. @param Marker VA_LIST marker for the variable argument list.
@return The number of ASCII characters in the produced output buffer not including the @return The number of ASCII characters in the produced output buffer, not including the
Null-terminator. Null-terminator.
**/ **/
@ -556,26 +556,26 @@ AsciiVSPrint (
The ASCII string is produced by parsing the format string specified by FormatString. The ASCII string is produced by parsing the format string specified by FormatString.
Arguments are pulled from the variable argument list specified by Marker based on Arguments are pulled from the variable argument list specified by Marker based on
the contents of the format string. the contents of the format string.
The number of ASCII characters in the produced output buffer is returned not including The number of ASCII characters in the produced output buffer is returned, not including
the Null-terminator. the Null-terminator.
If BufferSize is 0, then no output buffer is produced and 0 is returned. If BufferSize is 0, then no output buffer is produced and 0 is returned.
If BufferSize > 0 and StartOfBuffer is NULL, then ASSERT(). If BufferSize > 0 and StartOfBuffer is NULL, then ASSERT().
If BufferSize > 0 and FormatString is NULL, then ASSERT(). If BufferSize > 0 and FormatString is NULL, then ASSERT().
If PcdMaximumAsciiStringLength is not zero, and FormatString contains more than If PcdMaximumAsciiStringLength is not zero, and FormatString contains more than
PcdMaximumAsciiStringLength ASCII characters not including the Null-terminator, then PcdMaximumAsciiStringLength ASCII characters, not including the Null-terminator, then
ASSERT(). ASSERT().
If PcdMaximumAsciiStringLength is not zero, and produced Null-terminated ASCII string If PcdMaximumAsciiStringLength is not zero, and produced Null-terminated ASCII string
contains more than PcdMaximumAsciiStringLength ASCII characters not including the contains more than PcdMaximumAsciiStringLength ASCII characters, not including the
Null-terminator, then ASSERT(). Null-terminator, then ASSERT().
@param StartOfBuffer A pointer to the output buffer for the produced Null-terminated @param StartOfBuffer A pointer to the output buffer for the produced Null-terminated
ASCII string. ASCII string.
@param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer. @param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer.
@param FormatString Null-terminated ASCII format string. @param FormatString A null-terminated ASCII format string.
@param Marker BASE_LIST marker for the variable argument list. @param Marker BASE_LIST marker for the variable argument list.
@return The number of ASCII characters in the produced output buffer not including the @return The number of ASCII characters in the produced output buffer, not including the
Null-terminator. Null-terminator.
**/ **/
@ -597,27 +597,27 @@ AsciiBSPrint (
The ASCII string is produced by parsing the format string specified by FormatString. The ASCII string is produced by parsing the format string specified by FormatString.
Arguments are pulled from the variable argument list based on the contents of the Arguments are pulled from the variable argument list based on the contents of the
format string. format string.
The number of ASCII characters in the produced output buffer is returned not including The number of ASCII characters in the produced output buffer is returned, not including
the Null-terminator. the Null-terminator.
If BufferSize is 0, then no output buffer is produced and 0 is returned. If BufferSize is 0, then no output buffer is produced and 0 is returned.
If BufferSize > 0 and StartOfBuffer is NULL, then ASSERT(). If BufferSize > 0 and StartOfBuffer is NULL, then ASSERT().
If BufferSize > 0 and FormatString is NULL, then ASSERT(). If BufferSize > 0 and FormatString is NULL, then ASSERT().
If PcdMaximumAsciiStringLength is not zero, and FormatString contains more than If PcdMaximumAsciiStringLength is not zero, and FormatString contains more than
PcdMaximumAsciiStringLength ASCII characters not including the Null-terminator, then PcdMaximumAsciiStringLength ASCII characters, not including the Null-terminator, then
ASSERT(). ASSERT().
If PcdMaximumAsciiStringLength is not zero, and produced Null-terminated ASCII string If PcdMaximumAsciiStringLength is not zero, and produced Null-terminated ASCII string
contains more than PcdMaximumAsciiStringLength ASCII characters not including the contains more than PcdMaximumAsciiStringLength ASCII characters, not including the
Null-terminator, then ASSERT(). Null-terminator, then ASSERT().
@param StartOfBuffer A pointer to the output buffer for the produced Null-terminated @param StartOfBuffer A pointer to the output buffer for the produced Null-terminated
ASCII string. ASCII string.
@param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer. @param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer.
@param FormatString Null-terminated ASCII format string. @param FormatString A null-terminated ASCII format string.
@param ... Variable argument list whose contents are accessed based on the @param ... The variable argument list whose contents are accessed based on the
format string specified by FormatString. format string specified by FormatString.
@return The number of ASCII characters in the produced output buffer not including the @return The number of ASCII characters in the produced output buffer, not including the
Null-terminator. Null-terminator.
**/ **/
@ -639,7 +639,7 @@ AsciiSPrint (
The ASCII string is produced by parsing the format string specified by FormatString. The ASCII string is produced by parsing the format string specified by FormatString.
Arguments are pulled from the variable argument list specified by Marker based on Arguments are pulled from the variable argument list specified by Marker based on
the contents of the format string. the contents of the format string.
The number of ASCII characters in the produced output buffer is returned not including The number of ASCII characters in the produced output buffer is returned, not including
the Null-terminator. the Null-terminator.
If BufferSize is 0, then no output buffer is produced and 0 is returned. If BufferSize is 0, then no output buffer is produced and 0 is returned.
@ -647,19 +647,19 @@ AsciiSPrint (
If BufferSize > 0 and FormatString is NULL, then ASSERT(). If BufferSize > 0 and FormatString is NULL, then ASSERT().
If BufferSize > 0 and FormatString is not aligned on a 16-bit boundary, then ASSERT(). If BufferSize > 0 and FormatString is not aligned on a 16-bit boundary, then ASSERT().
If PcdMaximumUnicodeStringLength is not zero, and FormatString contains more than If PcdMaximumUnicodeStringLength is not zero, and FormatString contains more than
PcdMaximumUnicodeStringLength Unicode characters not including the Null-terminator, then PcdMaximumUnicodeStringLength Unicode characters, not including the Null-terminator, then
ASSERT(). ASSERT().
If PcdMaximumAsciiStringLength is not zero, and produced Null-terminated ASCII string If PcdMaximumAsciiStringLength is not zero, and produced Null-terminated ASCII string
contains more than PcdMaximumAsciiStringLength ASCII characters not including the contains more than PcdMaximumAsciiStringLength ASCII characters, not including the
Null-terminator, then ASSERT(). Null-terminator, then ASSERT().
@param StartOfBuffer A pointer to the output buffer for the produced Null-terminated @param StartOfBuffer A pointer to the output buffer for the produced Null-terminated
ASCII string. ASCII string.
@param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer. @param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer.
@param FormatString Null-terminated Unicode format string. @param FormatString A null-terminated Unicode format string.
@param Marker VA_LIST marker for the variable argument list. @param Marker VA_LIST marker for the variable argument list.
@return The number of ASCII characters in the produced output buffer not including the @return The number of ASCII characters in the produced output buffer, not including the
Null-terminator. Null-terminator.
**/ **/
@ -681,7 +681,7 @@ AsciiVSPrintUnicodeFormat (
The ASCII string is produced by parsing the format string specified by FormatString. The ASCII string is produced by parsing the format string specified by FormatString.
Arguments are pulled from the variable argument list specified by Marker based on Arguments are pulled from the variable argument list specified by Marker based on
the contents of the format string. the contents of the format string.
The number of ASCII characters in the produced output buffer is returned not including The number of ASCII characters in the produced output buffer is returned, not including
the Null-terminator. the Null-terminator.
If BufferSize is 0, then no output buffer is produced and 0 is returned. If BufferSize is 0, then no output buffer is produced and 0 is returned.
@ -689,19 +689,19 @@ AsciiVSPrintUnicodeFormat (
If BufferSize > 0 and FormatString is NULL, then ASSERT(). If BufferSize > 0 and FormatString is NULL, then ASSERT().
If BufferSize > 0 and FormatString is not aligned on a 16-bit boundary, then ASSERT(). If BufferSize > 0 and FormatString is not aligned on a 16-bit boundary, then ASSERT().
If PcdMaximumUnicodeStringLength is not zero, and FormatString contains more than If PcdMaximumUnicodeStringLength is not zero, and FormatString contains more than
PcdMaximumUnicodeStringLength Unicode characters not including the Null-terminator, then PcdMaximumUnicodeStringLength Unicode characters, not including the Null-terminator, then
ASSERT(). ASSERT().
If PcdMaximumAsciiStringLength is not zero, and produced Null-terminated ASCII string If PcdMaximumAsciiStringLength is not zero, and produced Null-terminated ASCII string
contains more than PcdMaximumAsciiStringLength ASCII characters not including the contains more than PcdMaximumAsciiStringLength ASCII characters, not including the
Null-terminator, then ASSERT(). Null-terminator, then ASSERT().
@param StartOfBuffer A pointer to the output buffer for the produced Null-terminated @param StartOfBuffer A pointer to the output buffer for the produced Null-terminated
ASCII string. ASCII string.
@param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer. @param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer.
@param FormatString Null-terminated Unicode format string. @param FormatString A null-terminated Unicode format string.
@param Marker BASE_LIST marker for the variable argument list. @param Marker BASE_LIST marker for the variable argument list.
@return The number of ASCII characters in the produced output buffer not including the @return The number of ASCII characters in the produced output buffer, not including the
Null-terminator. Null-terminator.
**/ **/
@ -723,7 +723,7 @@ AsciiBSPrintUnicodeFormat (
The ASCII string is produced by parsing the format string specified by FormatString. The ASCII string is produced by parsing the format string specified by FormatString.
Arguments are pulled from the variable argument list based on the contents of the Arguments are pulled from the variable argument list based on the contents of the
format string. format string.
The number of ASCII characters in the produced output buffer is returned not including The number of ASCII characters in the produced output buffer is returned, not including
the Null-terminator. the Null-terminator.
If BufferSize is 0, then no output buffer is produced and 0 is returned. If BufferSize is 0, then no output buffer is produced and 0 is returned.
@ -731,20 +731,20 @@ AsciiBSPrintUnicodeFormat (
If BufferSize > 0 and FormatString is NULL, then ASSERT(). If BufferSize > 0 and FormatString is NULL, then ASSERT().
If BufferSize > 0 and FormatString is not aligned on a 16-bit boundary, then ASSERT(). If BufferSize > 0 and FormatString is not aligned on a 16-bit boundary, then ASSERT().
If PcdMaximumUnicodeStringLength is not zero, and FormatString contains more than If PcdMaximumUnicodeStringLength is not zero, and FormatString contains more than
PcdMaximumUnicodeStringLength Unicode characters not including the Null-terminator, then PcdMaximumUnicodeStringLength Unicode characters, not including the Null-terminator, then
ASSERT(). ASSERT().
If PcdMaximumAsciiStringLength is not zero, and produced Null-terminated ASCII string If PcdMaximumAsciiStringLength is not zero, and produced Null-terminated ASCII string
contains more than PcdMaximumAsciiStringLength ASCII characters not including the contains more than PcdMaximumAsciiStringLength ASCII characters, not including the
Null-terminator, then ASSERT(). Null-terminator, then ASSERT().
@param StartOfBuffer A pointer to the output buffer for the produced Null-terminated @param StartOfBuffer A pointer to the output buffer for the produced Null-terminated
ASCII string. ASCII string.
@param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer. @param BufferSize The size, in bytes, of the output buffer specified by StartOfBuffer.
@param FormatString Null-terminated Unicode format string. @param FormatString A null-terminated Unicode format string.
@param ... Variable argument list whose contents are accessed based on the @param ... Variable argument list whose contents are accessed based on the
format string specified by FormatString. format string specified by FormatString.
@return The number of ASCII characters in the produced output buffer not including the @return The number of ASCII characters in the produced output buffer, not including the
Null-terminator. Null-terminator.
**/ **/
@ -764,7 +764,7 @@ AsciiSPrintUnicodeFormat (
specified by Buffer containing at most Width characters. No padding of spaces specified by Buffer containing at most Width characters. No padding of spaces
is ever performed. is ever performed.
If Width is 0 then a width of MAXIMUM_VALUE_CHARACTERS is assumed. If Width is 0 then a width of MAXIMUM_VALUE_CHARACTERS is assumed.
The number of ASCII characters in Buffer is returned not including the Null-terminator. The number of ASCII characters in Buffer is returned, not including the Null-terminator.
If the conversion contains more than Width characters, then only the first Width If the conversion contains more than Width characters, then only the first Width
characters are returned, and the total number of characters required to perform characters are returned, and the total number of characters required to perform
the conversion is returned. the conversion is returned.
@ -787,14 +787,14 @@ AsciiSPrintUnicodeFormat (
If both COMMA_TYPE and RADIX_HEX are set in Flags, then ASSERT(). If both COMMA_TYPE and RADIX_HEX are set in Flags, then ASSERT().
If Width >= MAXIMUM_VALUE_CHARACTERS, then ASSERT() If Width >= MAXIMUM_VALUE_CHARACTERS, then ASSERT()
@param Buffer Pointer to the output buffer for the produced Null-terminated @param Buffer A pointer to the output buffer for the produced Null-terminated
ASCII string. ASCII string.
@param Flags The bitmask of flags that specify left justification, zero pad, and commas. @param Flags The bitmask of flags that specify left justification, zero pad, and commas.
@param Value The 64-bit signed value to convert to a string. @param Value The 64-bit signed value to convert to a string.
@param Width The maximum number of ASCII characters to place in Buffer, not including @param Width The maximum number of ASCII characters to place in Buffer, not including
the Null-terminator. the Null-terminator.
@return The number of ASCII characters in Buffer not including the Null-terminator. @return The number of ASCII characters in Buffer, not including the Null-terminator.
**/ **/
UINTN UINTN

View File

@ -1,11 +1,11 @@
/** @file /** @file
Provides services to log status code records. Provides services to log status code records.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@ -42,7 +42,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@param PostCode A pointer to the 8-bit POST code value to return. @param PostCode A pointer to the 8-bit POST code value to return.
@retval TRUE The status code specified by CodeType and Value was converted @retval TRUE The status code specified by CodeType and Value was converted
to an 8-bit POST code and returned in PostCode. to an 8-bit POST code and returned in PostCode.
@retval FALSE The status code specified by CodeType and Value could not be @retval FALSE The status code specified by CodeType and Value could not be
converted to an 8-bit POST code value. converted to an 8-bit POST code value.
@ -77,10 +77,10 @@ CodeTypeToPostCode (
@param CodeType The type of status code being converted. @param CodeType The type of status code being converted.
@param Value The status code value being converted. @param Value The status code value being converted.
@param Data Pointer to status code data buffer. @param Data The pointer to status code data buffer.
@param Filename Pointer to the source file name that generated the ASSERT(). @param Filename The pointer to the source file name that generated the ASSERT().
@param Description Pointer to the description of the ASSERT(). @param Description The pointer to the description of the ASSERT().
@param LineNumber Pointer to source line number that generated the ASSERT(). @param LineNumber The pointer to source line number that generated the ASSERT().
@retval TRUE The status code specified by CodeType, Value, and Data was @retval TRUE The status code specified by CodeType, Value, and Data was
converted ASSERT() arguments specified by Filename, Description, converted ASSERT() arguments specified by Filename, Description,
@ -118,10 +118,10 @@ ReportStatusCodeExtractAssertInfo (
If Marker is NULL, then ASSERT(). If Marker is NULL, then ASSERT().
If Format is NULL, then ASSERT(). If Format is NULL, then ASSERT().
@param Data Pointer to status code data buffer. @param Data The pointer to status code data buffer.
@param ErrorLevel Pointer to error level mask for a debug message. @param ErrorLevel The pointer to error level mask for a debug message.
@param Marker Pointer to the variable argument list associated with Format. @param Marker The pointer to the variable argument list associated with Format.
@param Format Pointer to a Null-terminated ASCII format string of a @param Format The pointer to a Null-terminated ASCII format string of a
debug message. debug message.
@retval TRUE The status code specified by Data was converted DEBUG() arguments @retval TRUE The status code specified by Data was converted DEBUG() arguments
@ -158,7 +158,7 @@ ReportStatusCodeExtractDebugInfo (
@retval EFI_SUCCESS The status code was reported. @retval EFI_SUCCESS The status code was reported.
@retval EFI_DEVICE_ERROR There status code could not be reported due to a @retval EFI_DEVICE_ERROR There status code could not be reported due to a
device error. device error.
@retval EFI_UNSUPPORTED Report status code is not supported @retval EFI_UNSUPPORTED The report status code is not supported.
**/ **/
EFI_STATUS EFI_STATUS
@ -185,15 +185,15 @@ ReportStatusCode (
If DevicePath is NULL, then ASSERT(). If DevicePath is NULL, then ASSERT().
@param Type Status code type. @param Type The status code type.
@param Value Status code value. @param Value The status code value.
@param DevicePath Pointer to the Device Path Protocol to be reported. @param DevicePath The pointer to the Device Path Protocol to be reported.
@retval EFI_SUCCESS The status code was reported with the extended @retval EFI_SUCCESS The status code was reported with the extended
data specified by DevicePath. data specified by DevicePath.
@retval EFI_OUT_OF_RESOURCES There were not enough resources to allocate the @retval EFI_OUT_OF_RESOURCES There were not enough resources to allocate the
extended data section. extended data section.
@retval EFI_UNSUPPORTED Report status code is not supported @retval EFI_UNSUPPORTED The report status code is not supported.
@retval EFI_DEVICE_ERROR A call to a Report Status Code Library function @retval EFI_DEVICE_ERROR A call to a Report Status Code Library function
is already in progress. is already in progress.
@ -227,9 +227,9 @@ ReportStatusCodeWithDevicePath (
If ExtendedData is NULL, then ASSERT(). If ExtendedData is NULL, then ASSERT().
If ExtendedDataSize is 0, then ASSERT(). If ExtendedDataSize is 0, then ASSERT().
@param Type Status code type. @param Type The status code type.
@param Value Status code value. @param Value The status code value.
@param ExtendedData Pointer to the extended data buffer to be reported. @param ExtendedData The pointer to the extended data buffer to be reported.
@param ExtendedDataSize The size, in bytes, of the extended data buffer to @param ExtendedDataSize The size, in bytes, of the extended data buffer to
be reported. be reported.
@ -237,7 +237,7 @@ ReportStatusCodeWithDevicePath (
data specified by ExtendedData and ExtendedDataSize. data specified by ExtendedData and ExtendedDataSize.
@retval EFI_OUT_OF_RESOURCES There were not enough resources to allocate the @retval EFI_OUT_OF_RESOURCES There were not enough resources to allocate the
extended data section. extended data section.
@retval EFI_UNSUPPORTED Report status code is not supported @retval EFI_UNSUPPORTED The report status code is not supported.
@retval EFI_DEVICE_ERROR A call to a Report Status Code Library function @retval EFI_DEVICE_ERROR A call to a Report Status Code Library function
is already in progress. is already in progress.
@ -273,23 +273,23 @@ ReportStatusCodeWithExtendedData (
If ExtendedData is NULL and ExtendedDataSize is not zero, then ASSERT(). If ExtendedData is NULL and ExtendedDataSize is not zero, then ASSERT().
If ExtendedData is not NULL and ExtendedDataSize is zero, then ASSERT(). If ExtendedData is not NULL and ExtendedDataSize is zero, then ASSERT().
@param Type Status code type. @param Type The status code type.
@param Value Status code value. @param Value The status code value.
@param Instance Status code instance number. @param Instance The status code instance number.
@param CallerId Pointer to a GUID that identifies the caller of this @param CallerId The pointer to a GUID that identifies the caller of this
function. If this parameter is NULL, then a caller function. If this parameter is NULL, then a caller
ID of gEfiCallerIdGuid is used. ID of gEfiCallerIdGuid is used.
@param ExtendedDataGuid Pointer to the GUID for the extended data buffer. @param ExtendedDataGuid The pointer to the GUID for the extended data buffer.
If this parameter is NULL, then a the status code If this parameter is NULL, then a the status code
standard header is filled in with an implementation dependent GUID. standard header is filled in with an implementation dependent GUID.
@param ExtendedData Pointer to the extended data buffer. This is an @param ExtendedData The pointer to the extended data buffer. This is an
optional parameter that may be NULL. optional parameter that may be NULL.
@param ExtendedDataSize The size, in bytes, of the extended data buffer. @param ExtendedDataSize The size, in bytes, of the extended data buffer.
@retval EFI_SUCCESS The status code was reported. @retval EFI_SUCCESS The status code was reported.
@retval EFI_OUT_OF_RESOURCES There were not enough resources to allocate @retval EFI_OUT_OF_RESOURCES There were not enough resources to allocate
the extended data section if it was specified. the extended data section if it was specified.
@retval EFI_UNSUPPORTED Report status code is not supported. @retval EFI_UNSUPPORTED The report status code is not supported.
@retval EFI_DEVICE_ERROR A call to a Report Status Code Library function @retval EFI_DEVICE_ERROR A call to a Report Status Code Library function
is already in progress. is already in progress.
@ -330,7 +330,7 @@ ReportProgressCodeEnabled (
Returns TRUE if status codes of type EFI_ERROR_CODE are enabled Returns TRUE if status codes of type EFI_ERROR_CODE are enabled
This function returns TRUE if the REPORT_STATUS_CODE_PROPERTY_ERROR_CODE_ENABLED This function returns TRUE if the REPORT_STATUS_CODE_PROPERTY_ERROR_CODE_ENABLED
bit of PcdReportStatusCodeProperyMask is set. Otherwise FALSE is returned. bit of PcdReportStatusCodeProperyMask is set. Otherwise, FALSE is returned.
@retval TRUE The REPORT_STATUS_CODE_PROPERTY_ERROR_CODE_ENABLED bit of @retval TRUE The REPORT_STATUS_CODE_PROPERTY_ERROR_CODE_ENABLED bit of
PcdReportStatusCodeProperyMask is set. PcdReportStatusCodeProperyMask is set.
@ -371,12 +371,12 @@ ReportDebugCodeEnabled (
PcdReportStatusCodeProperyMask, then call ReportStatusCode() passing in Type PcdReportStatusCodeProperyMask, then call ReportStatusCode() passing in Type
and Value. and Value.
@param Type Status code type. @param Type The status code type.
@param Value Status code value. @param Value The status code value.
@retval EFI_SUCCESS The status code was reported. @retval EFI_SUCCESS The status code was reported.
@retval EFI_DEVICE_ERROR There status code could not be reported due to a device error. @retval EFI_DEVICE_ERROR There status code could not be reported due to a device error.
@retval EFI_UNSUPPORTED Report status code is not supported @retval EFI_UNSUPPORTED Report status code is not supported.
**/ **/
#define REPORT_STATUS_CODE(Type,Value) \ #define REPORT_STATUS_CODE(Type,Value) \
@ -397,15 +397,15 @@ ReportDebugCodeEnabled (
PcdReportStatusCodeProperyMask, then call ReportStatusCodeWithDevicePath() PcdReportStatusCodeProperyMask, then call ReportStatusCodeWithDevicePath()
passing in Type, Value, and DevicePath. passing in Type, Value, and DevicePath.
@param Type Status code type. @param Type The status code type.
@param Value Status code value. @param Value The status code value.
@param DevicePath Pointer to the Device Path Protocol to be reported. @param DevicePath Pointer to the Device Path Protocol to be reported.
@retval EFI_SUCCESS The status code was reported with the extended @retval EFI_SUCCESS The status code was reported with the extended
data specified by DevicePath. data specified by DevicePath.
@retval EFI_OUT_OF_RESOURCES There were not enough resources to allocate the @retval EFI_OUT_OF_RESOURCES There were not enough resources to allocate the
extended data section. extended data section.
@retval EFI_UNSUPPORTED Report status code is not supported @retval EFI_UNSUPPORTED The report status code is not supported.
@retval EFI_DEVICE_ERROR A call to a Report Status Code Library function @retval EFI_DEVICE_ERROR A call to a Report Status Code Library function
is already in progress. is already in progress.
@ -428,9 +428,9 @@ ReportDebugCodeEnabled (
PcdReportStatusCodeProperyMask, then call ReportStatusCodeWithExtendedData() PcdReportStatusCodeProperyMask, then call ReportStatusCodeWithExtendedData()
passing in Type, Value, ExtendedData, and ExtendedDataSize. passing in Type, Value, ExtendedData, and ExtendedDataSize.
@param Type Status code type. @param Type The status code type.
@param Value Status code value. @param Value The status code value.
@param ExtendedData Pointer to the extended data buffer to be reported. @param ExtendedData The pointer to the extended data buffer to be reported.
@param ExtendedDataSize The size, in bytes, of the extended data buffer to @param ExtendedDataSize The size, in bytes, of the extended data buffer to
be reported. be reported.
@ -438,7 +438,7 @@ ReportDebugCodeEnabled (
data specified by ExtendedData and ExtendedDataSize. data specified by ExtendedData and ExtendedDataSize.
@retval EFI_OUT_OF_RESOURCES There were not enough resources to allocate the @retval EFI_OUT_OF_RESOURCES There were not enough resources to allocate the
extended data section. extended data section.
@retval EFI_UNSUPPORTED Report status code is not supported @retval EFI_UNSUPPORTED The report status code is not supported.
@retval EFI_DEVICE_ERROR A call to a Report Status Code Library function @retval EFI_DEVICE_ERROR A call to a Report Status Code Library function
is already in progress. is already in progress.
@ -459,10 +459,10 @@ ReportDebugCodeEnabled (
PcdReportStatusCodeProperyMask, then call ReportStatusCodeEx() passing in Type, PcdReportStatusCodeProperyMask, then call ReportStatusCodeEx() passing in Type,
Value, Instance, CallerId, ExtendedDataGuid, ExtendedData, and ExtendedDataSize. Value, Instance, CallerId, ExtendedDataGuid, ExtendedData, and ExtendedDataSize.
@param Type Status code type. @param Type The status code type.
@param Value Status code value. @param Value The status code value.
@param Instance Status code instance number. @param Instance The status code instance number.
@param CallerId Pointer to a GUID that identifies the caller of this @param CallerId The pointer to a GUID that identifies the caller of this
function. If this parameter is NULL, then a caller function. If this parameter is NULL, then a caller
ID of gEfiCallerIdGuid is used. ID of gEfiCallerIdGuid is used.
@param ExtendedDataGuid Pointer to the GUID for the extended data buffer. @param ExtendedDataGuid Pointer to the GUID for the extended data buffer.
@ -475,7 +475,7 @@ ReportDebugCodeEnabled (
@retval EFI_SUCCESS The status code was reported. @retval EFI_SUCCESS The status code was reported.
@retval EFI_OUT_OF_RESOURCES There were not enough resources to allocate the @retval EFI_OUT_OF_RESOURCES There were not enough resources to allocate the
extended data section if it was specified. extended data section if it was specified.
@retval EFI_UNSUPPORTED Report status code is not supported @retval EFI_UNSUPPORTED The report status code is not supported.
@retval EFI_DEVICE_ERROR A call to a Report Status Code Library function @retval EFI_DEVICE_ERROR A call to a Report Status Code Library function
is already in progress. is already in progress.

View File

@ -12,11 +12,11 @@
of size reduction when compiler optimization is disabled. If MDEPKG_NDEBUG is of size reduction when compiler optimization is disabled. If MDEPKG_NDEBUG is
defined, then debug and assert related macros wrapped by it are the NULL implementations. defined, then debug and assert related macros wrapped by it are the NULL implementations.
Copyright (c) 2006 - 2010, Intel Corporation<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@ -64,9 +64,9 @@ typedef struct {
/** /**
Macro that returns the number of 100 ns units for a specified number of microseconds. Macro that returns the number of 100 ns units for a specified number of microseconds.
Useful for managing EFI timer events. This is useful for managing EFI timer events.
@param Microseconds Number of microseconds. @param Microseconds The number of microseconds.
@return The number of 100 ns units equivalent to the number of microseconds specified @return The number of 100 ns units equivalent to the number of microseconds specified
by Microseconds. by Microseconds.
@ -76,9 +76,9 @@ typedef struct {
/** /**
Macro that returns the number of 100 ns units for a specified number of milliseconds. Macro that returns the number of 100 ns units for a specified number of milliseconds.
Useful for managing EFI timer events. This is useful for managing EFI timer events.
@param Milliseconds Number of milliseconds. @param Milliseconds The number of milliseconds.
@return The number of 100 ns units equivalent to the number of milliseconds specified @return The number of 100 ns units equivalent to the number of milliseconds specified
by Milliseconds. by Milliseconds.
@ -88,9 +88,9 @@ typedef struct {
/** /**
Macro that returns the number of 100 ns units for a specified number of seconds. Macro that returns the number of 100 ns units for a specified number of seconds.
Useful for managing EFI timer events. This is useful for managing EFI timer events.
@param Seconds Number of seconds. @param Seconds The number of seconds.
@return The number of 100 ns units equivalent to the number of seconds specified @return The number of 100 ns units equivalent to the number of seconds specified
by Seconds. by Seconds.
@ -123,8 +123,8 @@ typedef struct {
If TableGuid is NULL, then ASSERT(). If TableGuid is NULL, then ASSERT().
If Table is NULL, then ASSERT(). If Table is NULL, then ASSERT().
@param TableGuid Pointer to table's GUID type.. @param TableGuid The pointer to table's GUID type..
@param Table Pointer to the table associated with TableGuid in the EFI System Table. @param Table The pointer to the table associated with TableGuid in the EFI System Table.
@retval EFI_SUCCESS A configuration table matching TableGuid was found. @retval EFI_SUCCESS A configuration table matching TableGuid was found.
@retval EFI_NOT_FOUND A configuration table matching TableGuid could not be found. @retval EFI_NOT_FOUND A configuration table matching TableGuid could not be found.
@ -191,7 +191,7 @@ EfiCreateProtocolNotifyEvent(
@param Registration A pointer to a memory location to receive the registration value. @param Registration A pointer to a memory location to receive the registration value.
@retval EFI_SUCCESS A named event was created. @retval EFI_SUCCESS A named event was created.
@retval EFI_OUT_OF_RESOURCES There are not enough resource to create the named event. @retval EFI_OUT_OF_RESOURCES There are not enough resources to create the named event.
**/ **/
EFI_STATUS EFI_STATUS
@ -211,10 +211,10 @@ EfiNamedEventListen (
created with EfiNamedEventListen(). created with EfiNamedEventListen().
If Name is NULL, then ASSERT(). If Name is NULL, then ASSERT().
@param Name Supplies GUID name of the event. @param Name Supplies the GUID name of the event.
@retval EFI_SUCCESS A named event was signaled. @retval EFI_SUCCESS A named event was signaled.
@retval EFI_OUT_OF_RESOURCES There are not enough resource to signal the named event. @retval EFI_OUT_OF_RESOURCES There are not enough resources to signal the named event.
**/ **/
EFI_STATUS EFI_STATUS
@ -252,7 +252,7 @@ EfiGetCurrentTpl (
If Priority is not a valid TPL value, then ASSERT(). If Priority is not a valid TPL value, then ASSERT().
@param Lock A pointer to the lock data structure to initialize. @param Lock A pointer to the lock data structure to initialize.
@param Priority EFI TPL associated with the lock. @param Priority The EFI TPL associated with the lock.
@return The lock. @return The lock.
@ -493,7 +493,7 @@ LookupUnicodeString (
that matches the language specified by Language. that matches the language specified by Language.
@param Iso639Language Specifies the supported language code format. If it is TRUE, then @param Iso639Language Specifies the supported language code format. If it is TRUE, then
Language and SupportedLanguages follow ISO 639-2 language code format. Language and SupportedLanguages follow ISO 639-2 language code format.
Otherwise, they follow RFC 4646 language code format. Otherwise, they follow the RFC 4646 language code format.
@retval EFI_SUCCESS The Unicode string that matches the language specified by Language @retval EFI_SUCCESS The Unicode string that matches the language specified by Language
@ -639,8 +639,8 @@ FreeUnicodeStringTable (
If Name is NULL, then ASSERT(). If Name is NULL, then ASSERT().
If Guid is NULL, then ASSERT(). If Guid is NULL, then ASSERT().
@param[in] Name Pointer to a Null-terminated Unicode string. @param[in] Name The pointer to a Null-terminated Unicode string.
@param[in] Guid Pointer to an EFI_GUID structure @param[in] Guid The pointer to an EFI_GUID structure.
@retval NULL The variable could not be retrieved. @retval NULL The variable could not be retrieved.
@retval NULL There are not enough resources available for the variable contents. @retval NULL There are not enough resources available for the variable contents.
@ -663,7 +663,7 @@ GetVariable (
If Name is NULL, then ASSERT(). If Name is NULL, then ASSERT().
@param[in] Name Pointer to a Null-terminated Unicode string. @param[in] Name The pointer to a Null-terminated Unicode string.
@retval NULL The variable could not be retrieved. @retval NULL The variable could not be retrieved.
@retval NULL There are not enough resources available for the variable contents. @retval NULL There are not enough resources available for the variable contents.
@ -839,8 +839,8 @@ EfiSignalEventLegacyBoot (
@param LegacyBootEvent Returns the EFI event returned from gBS->CreateEvent(Ex). @param LegacyBootEvent Returns the EFI event returned from gBS->CreateEvent(Ex).
@retval EFI_SUCCESS Event was created. @retval EFI_SUCCESS The event was created.
@retval Other Event was not created. @retval Other The event was not created.
**/ **/
EFI_STATUS EFI_STATUS
@ -864,8 +864,8 @@ EfiCreateEventLegacyBoot (
@param NotifyContext The content to pass to NotifyFunction when the event is signaled. @param NotifyContext The content to pass to NotifyFunction when the event is signaled.
@param LegacyBootEvent Returns the EFI event returned from gBS->CreateEvent(Ex). @param LegacyBootEvent Returns the EFI event returned from gBS->CreateEvent(Ex).
@retval EFI_SUCCESS Event was created. @retval EFI_SUCCESS The event was created.
@retval Other Event was not created. @retval Other The event was not created.
**/ **/
EFI_STATUS EFI_STATUS
@ -890,8 +890,8 @@ EfiCreateEventLegacyBootEx (
@param ReadyToBootEvent Returns the EFI event returned from gBS->CreateEvent(Ex). @param ReadyToBootEvent Returns the EFI event returned from gBS->CreateEvent(Ex).
@retval EFI_SUCCESS Event was created. @retval EFI_SUCCESS The event was created.
@retval Other Event was not created. @retval Other The event was not created.
**/ **/
EFI_STATUS EFI_STATUS
@ -915,8 +915,8 @@ EfiCreateEventReadyToBoot (
@param NotifyContext The content to pass to NotifyFunction when the event is signaled. @param NotifyContext The content to pass to NotifyFunction when the event is signaled.
@param ReadyToBootEvent Returns the EFI event returned from gBS->CreateEvent(Ex). @param ReadyToBootEvent Returns the EFI event returned from gBS->CreateEvent(Ex).
@retval EFI_SUCCESS Event was created. @retval EFI_SUCCESS The event was created.
@retval Other Event was not created. @retval Other The event was not created.
**/ **/
EFI_STATUS EFI_STATUS
@ -940,7 +940,7 @@ EfiCreateEventReadyToBootEx (
If FvDevicePathNode is NULL, then ASSERT(). If FvDevicePathNode is NULL, then ASSERT().
If NameGuid is NULL, then ASSERT(). If NameGuid is NULL, then ASSERT().
@param FvDevicePathNode Pointer to a FV device path node to initialize @param FvDevicePathNode The pointer to a FV device path node to initialize
@param NameGuid FV file name to use in FvDevicePathNode @param NameGuid FV file name to use in FvDevicePathNode
**/ **/
@ -963,7 +963,7 @@ EfiInitializeFwVolDevicepathNode (
the differences from the caller. the differences from the caller.
If FvDevicePathNode is NULL, then ASSERT(). If FvDevicePathNode is NULL, then ASSERT().
@param FvDevicePathNode Pointer to FV device path to check. @param FvDevicePathNode The pointer to FV device path to check.
@retval NULL FvDevicePathNode is not valid. @retval NULL FvDevicePathNode is not valid.
@retval Other FvDevicePathNode is valid and pointer to NameGuid was returned. @retval Other FvDevicePathNode is valid and pointer to NameGuid was returned.
@ -987,8 +987,8 @@ EfiGetNameGuidFromFwVolDevicePathNode (
If Format is NULL, then ASSERT(). If Format is NULL, then ASSERT().
If Format is not aligned on a 16-bit boundary, then ASSERT(). If Format is not aligned on a 16-bit boundary, then ASSERT().
@param Format Null-terminated Unicode format string. @param Format A null-terminated Unicode format string.
@param ... Variable argument list whose contents are accessed based @param ... The variable argument list whose contents are accessed based
on the format string specified by Format. on the format string specified by Format.
@return Number of Unicode characters printed to ConOut. @return Number of Unicode characters printed to ConOut.
@ -1013,8 +1013,8 @@ Print (
If Format is NULL, then ASSERT(). If Format is NULL, then ASSERT().
If Format is not aligned on a 16-bit boundary, then ASSERT(). If Format is not aligned on a 16-bit boundary, then ASSERT().
@param Format Null-terminated Unicode format string. @param Format A null-terminated Unicode format string.
@param ... Variable argument list whose contents are accessed based @param ... The variable argument list whose contents are accessed based
on the format string specified by Format. on the format string specified by Format.
@return Number of Unicode characters printed to StdErr. @return Number of Unicode characters printed to StdErr.
@ -1038,8 +1038,8 @@ ErrorPrint (
PcdUefiLibMaxPrintBufferSize characters are sent to ConOut. PcdUefiLibMaxPrintBufferSize characters are sent to ConOut.
If Format is NULL, then ASSERT(). If Format is NULL, then ASSERT().
@param Format Null-terminated ASCII format string. @param Format A null-terminated ASCII format string.
@param ... Variable argument list whose contents are accessed based @param ... The variable argument list whose contents are accessed based
on the format string specified by Format. on the format string specified by Format.
@return Number of ASCII characters printed to ConOut. @return Number of ASCII characters printed to ConOut.
@ -1063,8 +1063,8 @@ AsciiPrint (
PcdUefiLibMaxPrintBufferSize characters are sent to StdErr. PcdUefiLibMaxPrintBufferSize characters are sent to StdErr.
If Format is NULL, then ASSERT(). If Format is NULL, then ASSERT().
@param Format Null-terminated ASCII format string. @param Format A null-terminated ASCII format string.
@param ... Variable argument list whose contents are accessed based @param ... The variable argument list whose contents are accessed based
on the format string specified by Format. on the format string specified by Format.
@return Number of ASCII characters printed to ConErr. @return Number of ASCII characters printed to ConErr.
@ -1109,7 +1109,7 @@ AsciiErrorPrint (
an optional parameter that may be NULL. If it is NULL, an optional parameter that may be NULL. If it is NULL,
then the background color of the current ConOut device then the background color of the current ConOut device
in the EFI_SYSTEM_TABLE is used. in the EFI_SYSTEM_TABLE is used.
@param Format Null-terminated Unicode format string. See Print Library @param Format A null-terminated Unicode format string. See Print Library
for the supported format string syntax. for the supported format string syntax.
@param ... Variable argument list whose contents are accessed based on @param ... Variable argument list whose contents are accessed based on
the format string specified by Format. the format string specified by Format.
@ -1158,9 +1158,9 @@ PrintXY (
an optional parameter that may be NULL. If it is NULL, an optional parameter that may be NULL. If it is NULL,
then the background color of the current ConOut device then the background color of the current ConOut device
in the EFI_SYSTEM_TABLE is used. in the EFI_SYSTEM_TABLE is used.
@param Format Null-terminated ASCII format string. See Print Library @param Format A null-terminated ASCII format string. See Print Library
for the supported format string syntax. for the supported format string syntax.
@param ... Variable argument list whose contents are accessed based on @param ... The variable argument list whose contents are accessed based on
the format string specified by Format. the format string specified by Format.
@return The number of ASCII characters printed. @return The number of ASCII characters printed.
@ -1194,7 +1194,7 @@ AsciiPrintXY (
@param DriverBindingHandle The handle that DriverBinding is to be installed onto. If this @param DriverBindingHandle The handle that DriverBinding is to be installed onto. If this
parameter is NULL, then a new handle is created. parameter is NULL, then a new handle is created.
@retval EFI_SUCCESS The protocol installation is completed successfully. @retval EFI_SUCCESS The protocol installation completed successfully.
@retval EFI_OUT_OF_RESOURCES There was not enough system resources to install the protocol. @retval EFI_OUT_OF_RESOURCES There was not enough system resources to install the protocol.
@retval Others Status from gBS->InstallMultipleProtocolInterfaces(). @retval Others Status from gBS->InstallMultipleProtocolInterfaces().
@ -1231,8 +1231,8 @@ EfiLibInstallDriverBinding (
@param DriverConfiguration A Driver Configuration Protocol instance that this driver is producing. @param DriverConfiguration A Driver Configuration Protocol instance that this driver is producing.
@param DriverDiagnostics A Driver Diagnostics Protocol instance that this driver is producing. @param DriverDiagnostics A Driver Diagnostics Protocol instance that this driver is producing.
@retval EFI_SUCCESS The protocol installation is completed successfully. @retval EFI_SUCCESS The protocol installation completed successfully.
@retval EFI_OUT_OF_RESOURCES There was not enough memory in pool to install all the protocols. @retval EFI_OUT_OF_RESOURCES There was not enough memory in the pool to install all the protocols.
**/ **/
EFI_STATUS EFI_STATUS
@ -1268,7 +1268,7 @@ EfiLibInstallAllDriverProtocols (
@param ComponentName A Component Name Protocol instance that this driver is producing. @param ComponentName A Component Name Protocol instance that this driver is producing.
@param ComponentName2 A Component Name 2 Protocol instance that this driver is producing. @param ComponentName2 A Component Name 2 Protocol instance that this driver is producing.
@retval EFI_SUCCESS The protocol installation is completed successfully. @retval EFI_SUCCESS The protocol installation completed successfully.
@retval EFI_OUT_OF_RESOURCES There was not enough memory in pool to install all the protocols. @retval EFI_OUT_OF_RESOURCES There was not enough memory in pool to install all the protocols.
**/ **/
@ -1309,7 +1309,7 @@ EfiLibInstallDriverBindingComponentName2 (
@param DriverDiagnostics A Driver Diagnostics Protocol instance that this driver is producing. @param DriverDiagnostics A Driver Diagnostics Protocol instance that this driver is producing.
@param DriverDiagnostics2 A Driver Diagnostics Protocol 2 instance that this driver is producing. @param DriverDiagnostics2 A Driver Diagnostics Protocol 2 instance that this driver is producing.
@retval EFI_SUCCESS The protocol installation is completed successfully. @retval EFI_SUCCESS The protocol installation completed successfully.
@retval EFI_OUT_OF_RESOURCES There was not enough memory in pool to install all the protocols. @retval EFI_OUT_OF_RESOURCES There was not enough memory in pool to install all the protocols.
**/ **/

View File

@ -2,11 +2,11 @@
Provides library functions for each of the UEFI Runtime Services. Provides library functions for each of the UEFI Runtime Services.
Only available to DXE and UEFI module types. Only available to DXE and UEFI module types.
Copyright (c) 2006 - 2009, Intel Corporation<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@ -120,7 +120,7 @@ EfiSetTime (
@param Time The current alarm setting. Type EFI_TIME is defined in the GetTime() @param Time The current alarm setting. Type EFI_TIME is defined in the GetTime()
function description. function description.
@retval EFI_SUCCESS The alarm settings were returned. @retval EFI_SUCCESS The alarm settings were returned.
@retval EFI_INVALID_PARAMETER Enabled is NULL. @retval EFI_INVALID_PARAMETER Enabled is NULL.
@retval EFI_INVALID_PARAMETER Pending is NULL. @retval EFI_INVALID_PARAMETER Pending is NULL.
@retval EFI_INVALID_PARAMETER Time is NULL. @retval EFI_INVALID_PARAMETER Time is NULL.
@ -442,7 +442,7 @@ EfiSetVirtualAddressMap (
@param DebugDisposition Supplies type information for the pointer being converted. @param DebugDisposition Supplies type information for the pointer being converted.
@param ListHead Head of linked list to convert. @param ListHead Head of linked list to convert.
@retval EFI_SUCCESS Success to execute the function. @retval EFI_SUCCESS Successfully executed the function.
@retval !EFI_SUCCESS Failed to execute the function. @retval !EFI_SUCCESS Failed to execute the function.
**/ **/
@ -478,7 +478,7 @@ EfiConvertList (
CapsuleHeaderArray. This parameter is only referenced if CapsuleHeaderArray. This parameter is only referenced if
the capsules are defined to persist across system reset. the capsules are defined to persist across system reset.
@retval EFI_SUCCESS Valid capsule was passed. If CAPSULE_FLAGS_PERSIT_ACROSS_RESET is not set, @retval EFI_SUCCESS A valid capsule was passed. If CAPSULE_FLAGS_PERSIT_ACROSS_RESET is not set,
the capsule has been successfully processed by the firmware. the capsule has been successfully processed by the firmware.
@retval EFI_INVALID_PARAMETER CapsuleSize is NULL, or an incompatible set of flags were @retval EFI_INVALID_PARAMETER CapsuleSize is NULL, or an incompatible set of flags were
set in the capsule header. set in the capsule header.
@ -524,7 +524,7 @@ EfiUpdateCapsule (
Undefined on input. Undefined on input.
@param ResetType Returns the type of reset required for the capsule update. @param ResetType Returns the type of reset required for the capsule update.
@retval EFI_SUCCESS Valid answer returned. @retval EFI_SUCCESS A valid answer was returned.
@retval EFI_INVALID_PARAMETER MaximumCapsuleSize is NULL. @retval EFI_INVALID_PARAMETER MaximumCapsuleSize is NULL.
@retval EFI_UNSUPPORTED The capsule type is not supported on this platform, and @retval EFI_UNSUPPORTED The capsule type is not supported on this platform, and
MaximumCapsuleSize and ResetType are undefined. MaximumCapsuleSize and ResetType are undefined.
@ -563,11 +563,11 @@ EfiQueryCapsuleCapabilities (
@param RemainingVariableStorageSize @param RemainingVariableStorageSize
Returns the remaining size of the storage space Returns the remaining size of the storage space
available for the EFI variables associated with the available for the EFI variables associated with the
attributes specified.. attributes specified.
@param MaximumVariableSize Returns the maximum size of the individual EFI @param MaximumVariableSize Returns the maximum size of the individual EFI
variables associated with the attributes specified. variables associated with the attributes specified.
@retval EFI_SUCCESS Valid answer returned. @retval EFI_SUCCESS A valid answer was returned.
@retval EFI_INVALID_PARAMETER An invalid combination of attribute bits was supplied. @retval EFI_INVALID_PARAMETER An invalid combination of attribute bits was supplied.
@retval EFI_UNSUPPORTED EFI_UNSUPPORTED The attribute is not supported on this platform, and the @retval EFI_UNSUPPORTED EFI_UNSUPPORTED The attribute is not supported on this platform, and the
MaximumVariableStorageSize, MaximumVariableStorageSize,

View File

@ -1,14 +1,14 @@
/** @file /** @file
Include file matches things in PI. Include file matches things in PI.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
PI Version 1.0 PI Version 1.0
@ -22,7 +22,7 @@
#include <Pi/PiMultiPhase.h> #include <Pi/PiMultiPhase.h>
/// ///
/// Global Coherencey Domain types - Memory type /// Global Coherencey Domain types - Memory type.
/// ///
typedef enum { typedef enum {
/// ///
@ -52,7 +52,7 @@ typedef enum {
} EFI_GCD_MEMORY_TYPE; } EFI_GCD_MEMORY_TYPE;
/// ///
/// Global Coherencey Domain types - IO type /// Global Coherencey Domain types - IO type.
/// ///
typedef enum { typedef enum {
/// ///
@ -106,13 +106,13 @@ typedef enum {
} EFI_GCD_ALLOCATE_TYPE; } EFI_GCD_ALLOCATE_TYPE;
/// ///
/// EFI_GCD_MEMORY_SPACE_DESCRIPTOR /// EFI_GCD_MEMORY_SPACE_DESCRIPTOR.
/// ///
typedef struct { typedef struct {
/// ///
/// The physical address of the first byte in the memory region. Type /// The physical address of the first byte in the memory region. Type
/// EFI_PHYSICAL_ADDRESS is defined in the AllocatePages() function /// EFI_PHYSICAL_ADDRESS is defined in the AllocatePages() function
/// description in the UEFI 2.0 specification /// description in the UEFI 2.0 specification.
/// ///
EFI_PHYSICAL_ADDRESS BaseAddress; EFI_PHYSICAL_ADDRESS BaseAddress;
@ -134,7 +134,7 @@ typedef struct {
UINT64 Attributes; UINT64 Attributes;
/// ///
/// Type of the memory region. Type EFI_GCD_MEMORY_TYPE is defined in the /// Type of the memory region. Type EFI_GCD_MEMORY_TYPE is defined in the
/// AddMemorySpace() function description /// AddMemorySpace() function description.
/// ///
EFI_GCD_MEMORY_TYPE GcdMemoryType; EFI_GCD_MEMORY_TYPE GcdMemoryType;
@ -157,7 +157,7 @@ typedef struct {
} EFI_GCD_MEMORY_SPACE_DESCRIPTOR; } EFI_GCD_MEMORY_SPACE_DESCRIPTOR;
/// ///
/// EFI_GCD_IO_SPACE_DESCRIPTOR /// EFI_GCD_IO_SPACE_DESCRIPTOR.
/// ///
typedef struct { typedef struct {
/// ///
@ -225,7 +225,7 @@ typedef struct {
added to the global coherency domain of the processor. added to the global coherency domain of the processor.
@retval EFI_ACCESS_DENIED One or more bytes of the memory resource range @retval EFI_ACCESS_DENIED One or more bytes of the memory resource range
specified by BaseAddress and Length was allocated specified by BaseAddress and Length was allocated
in a prior call to AllocateMemorySpace().. in a prior call to AllocateMemorySpace().
**/ **/
typedef typedef
@ -580,7 +580,7 @@ EFI_STATUS
@retval EFI_SUCCESS One or more DXE driver were dispatched. @retval EFI_SUCCESS One or more DXE driver were dispatched.
@retval EFI_NOT_FOUND No DXE drivers were dispatched. @retval EFI_NOT_FOUND No DXE drivers were dispatched.
@retval EFI_ALREADY_STARTED An attempt is being made to start the DXE Dispatcher recursively. @retval EFI_ALREADY_STARTED An attempt is being made to start the DXE Dispatcher recursively.
Thus no action was taken. Thus, no action was taken.
**/ **/
typedef typedef
@ -697,12 +697,12 @@ typedef DXE_SERVICES EFI_DXE_SERVICES;
/** /**
Function prototype for invoking a function on an Application Processor. The function prototype for invoking a function on an Application Processor.
This definition is used by the UEFI MP Serices Protocol, and the This definition is used by the UEFI MP Serices Protocol, and the
PI SMM System Table. PI SMM System Table.
@param[in,out] Buffer Pointer to private data buffer. @param[in,out] Buffer The pointer to private data buffer.
**/ **/
typedef typedef
VOID VOID

View File

@ -1,17 +1,17 @@
/** @file /** @file
The firmware file related definitions in PI. The firmware file related definitions in PI.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
PI Version 1.2 PI Version 1.2.
**/ **/
@ -51,7 +51,7 @@ typedef union {
/// ///
/// FFS_FIXED_CHECKSUM is the checksum value used when the /// FFS_FIXED_CHECKSUM is the checksum value used when the
/// FFS_ATTRIB_CHECKSUM attribute bit is clear /// FFS_ATTRIB_CHECKSUM attribute bit is clear.
/// ///
#define FFS_FIXED_CHECKSUM 0xAA #define FFS_FIXED_CHECKSUM 0xAA
@ -171,7 +171,7 @@ typedef struct {
EFI_FFS_FILE_STATE State; EFI_FFS_FILE_STATE State;
/// ///
/// If FFS_ATTRIB_LARGE_FILE is set in Attributes then ExtendedSize exists and Size must be set to zero. /// If FFS_ATTRIB_LARGE_FILE is set in Attributes, then ExtendedSize exists and Size must be set to zero.
/// If FFS_ATTRIB_LARGE_FILE is not set then EFI_FFS_FILE_HEADER is used. /// If FFS_ATTRIB_LARGE_FILE is not set then EFI_FFS_FILE_HEADER is used.
/// ///
EFI_FFS_FILE_STATE ExtendedSize; EFI_FFS_FILE_STATE ExtendedSize;
@ -180,14 +180,13 @@ typedef struct {
typedef UINT8 EFI_SECTION_TYPE; typedef UINT8 EFI_SECTION_TYPE;
/// ///
/// Pseudo type. It is /// Pseudo type. It is used as a wild card when retrieving sections.
/// used as a wild card when retrieving sections. The section /// The section type EFI_SECTION_ALL matches all section types.
/// type EFI_SECTION_ALL matches all section types.
/// ///
#define EFI_SECTION_ALL 0x00 #define EFI_SECTION_ALL 0x00
/// ///
/// Encapsulation section Type values /// Encapsulation section Type values.
/// ///
#define EFI_SECTION_COMPRESSION 0x01 #define EFI_SECTION_COMPRESSION 0x01
@ -196,7 +195,7 @@ typedef UINT8 EFI_SECTION_TYPE;
#define EFI_SECTION_DISPOSABLE 0x03 #define EFI_SECTION_DISPOSABLE 0x03
/// ///
/// Leaf section Type values /// Leaf section Type values.
/// ///
#define EFI_SECTION_PE32 0x10 #define EFI_SECTION_PE32 0x10
#define EFI_SECTION_PIC 0x11 #define EFI_SECTION_PIC 0x11
@ -212,7 +211,7 @@ typedef UINT8 EFI_SECTION_TYPE;
#define EFI_SECTION_SMM_DEPEX 0x1C #define EFI_SECTION_SMM_DEPEX 0x1C
/// ///
/// Common section header /// Common section header.
/// ///
typedef struct { typedef struct {
/// ///
@ -236,8 +235,8 @@ typedef struct {
EFI_SECTION_TYPE Type; EFI_SECTION_TYPE Type;
/// ///
/// If Size is 0xFFFFFF then ExtendedSize contains the size of the section. If /// If Size is 0xFFFFFF, then ExtendedSize contains the size of the section. If
/// Size is not equal to 0xFFFFFF then this field does not exist. /// Size is not equal to 0xFFFFFF, then this field does not exist.
/// ///
UINT32 ExtendedSize; UINT32 ExtendedSize;
} EFI_COMMON_SECTION_HEADER2; } EFI_COMMON_SECTION_HEADER2;
@ -264,7 +263,7 @@ typedef struct {
/// ///
EFI_COMMON_SECTION_HEADER CommonHeader; EFI_COMMON_SECTION_HEADER CommonHeader;
/// ///
/// UINT32 that indicates the size of the section data after decompression. /// The UINT32 that indicates the size of the section data after decompression.
/// ///
UINT32 UncompressedLength; UINT32 UncompressedLength;
/// ///
@ -301,19 +300,19 @@ typedef EFI_COMMON_SECTION_HEADER EFI_DISPOSABLE_SECTION;
typedef EFI_COMMON_SECTION_HEADER2 EFI_DISPOSABLE_SECTION2; typedef EFI_COMMON_SECTION_HEADER2 EFI_DISPOSABLE_SECTION2;
/// ///
/// Leaf section which could be used to determine the dispatch order of DXEs. /// The leaf section which could be used to determine the dispatch order of DXEs.
/// ///
typedef EFI_COMMON_SECTION_HEADER EFI_DXE_DEPEX_SECTION; typedef EFI_COMMON_SECTION_HEADER EFI_DXE_DEPEX_SECTION;
typedef EFI_COMMON_SECTION_HEADER2 EFI_DXE_DEPEX_SECTION2; typedef EFI_COMMON_SECTION_HEADER2 EFI_DXE_DEPEX_SECTION2;
/// ///
/// Leaf section which contains a PI FV. /// The leaf section which contains a PI FV.
/// ///
typedef EFI_COMMON_SECTION_HEADER EFI_FIRMWARE_VOLUME_IMAGE_SECTION; typedef EFI_COMMON_SECTION_HEADER EFI_FIRMWARE_VOLUME_IMAGE_SECTION;
typedef EFI_COMMON_SECTION_HEADER2 EFI_FIRMWARE_VOLUME_IMAGE_SECTION2; typedef EFI_COMMON_SECTION_HEADER2 EFI_FIRMWARE_VOLUME_IMAGE_SECTION2;
/// ///
/// Leaf section which contains a single GUID. /// The leaf section which contains a single GUID.
/// ///
typedef struct { typedef struct {
/// ///
@ -328,7 +327,7 @@ typedef struct {
typedef struct { typedef struct {
/// ///
/// Common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID. /// The common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID.
/// ///
EFI_COMMON_SECTION_HEADER2 CommonHeader; EFI_COMMON_SECTION_HEADER2 CommonHeader;
/// ///
@ -338,20 +337,20 @@ typedef struct {
} EFI_FREEFORM_SUBTYPE_GUID_SECTION2; } EFI_FREEFORM_SUBTYPE_GUID_SECTION2;
/// ///
/// Attributes of EFI_GUID_DEFINED_SECTION /// Attributes of EFI_GUID_DEFINED_SECTION.
/// ///
#define EFI_GUIDED_SECTION_PROCESSING_REQUIRED 0x01 #define EFI_GUIDED_SECTION_PROCESSING_REQUIRED 0x01
#define EFI_GUIDED_SECTION_AUTH_STATUS_VALID 0x02 #define EFI_GUIDED_SECTION_AUTH_STATUS_VALID 0x02
/// ///
/// Leaf section which is encapsulation defined by specific GUID /// The leaf section which is encapsulation defined by specific GUID.
/// ///
typedef struct { typedef struct {
/// ///
/// Common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED. /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
/// ///
EFI_COMMON_SECTION_HEADER CommonHeader; EFI_COMMON_SECTION_HEADER CommonHeader;
/// ///
/// GUID that defines the format of the data that follows. It is a vendor-defined section type. /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
/// ///
EFI_GUID SectionDefinitionGuid; EFI_GUID SectionDefinitionGuid;
/// ///
@ -359,18 +358,18 @@ typedef struct {
/// ///
UINT16 DataOffset; UINT16 DataOffset;
/// ///
/// Bit field that declares some specific characteristics of the section contents. /// The bit field that declares some specific characteristics of the section contents.
/// ///
UINT16 Attributes; UINT16 Attributes;
} EFI_GUID_DEFINED_SECTION; } EFI_GUID_DEFINED_SECTION;
typedef struct { typedef struct {
/// ///
/// Common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED. /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
/// ///
EFI_COMMON_SECTION_HEADER2 CommonHeader; EFI_COMMON_SECTION_HEADER2 CommonHeader;
/// ///
/// GUID that defines the format of the data that follows. It is a vendor-defined section type. /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
/// ///
EFI_GUID SectionDefinitionGuid; EFI_GUID SectionDefinitionGuid;
/// ///
@ -378,19 +377,19 @@ typedef struct {
/// ///
UINT16 DataOffset; UINT16 DataOffset;
/// ///
/// Bit field that declares some specific characteristics of the section contents. /// The bit field that declares some specific characteristics of the section contents.
/// ///
UINT16 Attributes; UINT16 Attributes;
} EFI_GUID_DEFINED_SECTION2; } EFI_GUID_DEFINED_SECTION2;
/// ///
/// Leaf section which contains PE32+ image. /// The leaf section which contains PE32+ image.
/// ///
typedef EFI_COMMON_SECTION_HEADER EFI_PE32_SECTION; typedef EFI_COMMON_SECTION_HEADER EFI_PE32_SECTION;
typedef EFI_COMMON_SECTION_HEADER2 EFI_PE32_SECTION2; typedef EFI_COMMON_SECTION_HEADER2 EFI_PE32_SECTION2;
/// ///
/// Leaf section which used to determine the dispatch order of PEIMs. /// The leaf section used to determine the dispatch order of PEIMs.
/// ///
typedef EFI_COMMON_SECTION_HEADER EFI_PEI_DEPEX_SECTION; typedef EFI_COMMON_SECTION_HEADER EFI_PEI_DEPEX_SECTION;
typedef EFI_COMMON_SECTION_HEADER2 EFI_PEI_DEPEX_SECTION2; typedef EFI_COMMON_SECTION_HEADER2 EFI_PEI_DEPEX_SECTION2;
@ -408,13 +407,13 @@ typedef EFI_COMMON_SECTION_HEADER EFI_PIC_SECTION;
typedef EFI_COMMON_SECTION_HEADER2 EFI_PIC_SECTION2; typedef EFI_COMMON_SECTION_HEADER2 EFI_PIC_SECTION2;
/// ///
/// Leaf section which constains the position-independent-code image. /// The leaf section which constains the position-independent-code image.
/// ///
typedef EFI_COMMON_SECTION_HEADER EFI_TE_SECTION; typedef EFI_COMMON_SECTION_HEADER EFI_TE_SECTION;
typedef EFI_COMMON_SECTION_HEADER2 EFI_TE_SECTION2; typedef EFI_COMMON_SECTION_HEADER2 EFI_TE_SECTION2;
/// ///
/// Leaf section which contains an array of zero or more bytes. /// The leaf section which contains an array of zero or more bytes.
/// ///
typedef EFI_COMMON_SECTION_HEADER EFI_RAW_SECTION; typedef EFI_COMMON_SECTION_HEADER EFI_RAW_SECTION;
typedef EFI_COMMON_SECTION_HEADER2 EFI_RAW_SECTION2; typedef EFI_COMMON_SECTION_HEADER2 EFI_RAW_SECTION2;
@ -423,7 +422,7 @@ typedef EFI_COMMON_SECTION_HEADER2 EFI_RAW_SECTION2;
/// The SMM dependency expression section is a leaf section that contains a dependency expression that /// The SMM dependency expression section is a leaf section that contains a dependency expression that
/// is used to determine the dispatch order for SMM drivers. Before the SMRAM invocation of the /// is used to determine the dispatch order for SMM drivers. Before the SMRAM invocation of the
/// SMM driver's entry point, this dependency expression must evaluate to TRUE. See the Platform /// SMM driver's entry point, this dependency expression must evaluate to TRUE. See the Platform
/// Initialization Specification, Volume 2for details regarding the format of the dependency expression. /// Initialization Specification, Volume 2, for details regarding the format of the dependency expression.
/// The dependency expression may refer to protocols installed in either the UEFI or the SMM protocol /// The dependency expression may refer to protocols installed in either the UEFI or the SMM protocol
/// database. EFI_SMM_DEPEX_SECTION2 must be used if the section is 16MB or larger. /// database. EFI_SMM_DEPEX_SECTION2 must be used if the section is 16MB or larger.
/// ///
@ -431,7 +430,7 @@ typedef EFI_COMMON_SECTION_HEADER EFI_SMM_DEPEX_SECTION;
typedef EFI_COMMON_SECTION_HEADER2 EFI_SMM_DEPEX_SECTION2; typedef EFI_COMMON_SECTION_HEADER2 EFI_SMM_DEPEX_SECTION2;
/// ///
/// Leaf section which contains a unicode string that /// The leaf section which contains a unicode string that
/// is human readable file name. /// is human readable file name.
/// ///
typedef struct { typedef struct {
@ -449,7 +448,7 @@ typedef struct {
} EFI_USER_INTERFACE_SECTION2; } EFI_USER_INTERFACE_SECTION2;
/// ///
/// Leaf section which contains a numeric build number and /// The leaf section which contains a numeric build number and
/// an optional unicode string that represents the file revision. /// an optional unicode string that represents the file revision.
/// ///
typedef struct { typedef struct {

View File

@ -1,14 +1,14 @@
/** @file /** @file
HOB related definitions in PI. HOB related definitions in PI.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
PI Version 1.0 PI Version 1.0
@ -55,7 +55,7 @@ typedef struct {
/// ///
/// Value of version ofinEFI_HOB_HANDOFF_INFO_TABLE. /// Value of version in EFI_HOB_HANDOFF_INFO_TABLE.
/// ///
#define EFI_HOB_HANDOFF_TABLE_VERSION 0x0009 #define EFI_HOB_HANDOFF_TABLE_VERSION 0x0009
@ -70,7 +70,7 @@ typedef struct {
EFI_HOB_GENERIC_HEADER Header; EFI_HOB_GENERIC_HEADER Header;
/// ///
/// The version number pertaining to the PHIT HOB definition. /// The version number pertaining to the PHIT HOB definition.
/// This value is 4 bytes in length to provide an 8-byte aligned entry /// This value is four bytes in length to provide an 8-byte aligned entry
/// when it is combined with the 4-byte BootMode. /// when it is combined with the 4-byte BootMode.
/// ///
UINT32 Version; UINT32 Version;
@ -166,7 +166,7 @@ typedef struct {
/// ///
/// Describes the memory stack that is produced by the HOB producer /// Describes the memory stack that is produced by the HOB producer
/// phase and upon which all postmemory-installed executable /// phase and upon which all post-memory-installed executable
/// content in the HOB producer phase is executing. /// content in the HOB producer phase is executing.
/// ///
typedef struct { typedef struct {
@ -225,7 +225,7 @@ typedef struct {
} EFI_HOB_MEMORY_ALLOCATION_MODULE; } EFI_HOB_MEMORY_ALLOCATION_MODULE;
/// ///
/// Resource type /// The resource type.
/// ///
typedef UINT32 EFI_RESOURCE_TYPE; typedef UINT32 EFI_RESOURCE_TYPE;
@ -242,7 +242,7 @@ typedef UINT32 EFI_RESOURCE_TYPE;
#define EFI_RESOURCE_MAX_MEMORY_TYPE 0x00000007 #define EFI_RESOURCE_MAX_MEMORY_TYPE 0x00000007
/// ///
/// type of recount attribute type /// A type of recount attribute type.
/// ///
typedef UINT32 EFI_RESOURCE_ATTRIBUTE_TYPE; typedef UINT32 EFI_RESOURCE_ATTRIBUTE_TYPE;
@ -289,7 +289,7 @@ typedef struct {
/// ///
EFI_GUID Owner; EFI_GUID Owner;
/// ///
/// Resource type enumeration as defined by EFI_RESOURCE_TYPE. /// The resource type enumeration as defined by EFI_RESOURCE_TYPE.
/// ///
EFI_RESOURCE_TYPE ResourceType; EFI_RESOURCE_TYPE ResourceType;
/// ///
@ -297,11 +297,11 @@ typedef struct {
/// ///
EFI_RESOURCE_ATTRIBUTE_TYPE ResourceAttribute; EFI_RESOURCE_ATTRIBUTE_TYPE ResourceAttribute;
/// ///
/// Physical start address of the resource region. /// The physical start address of the resource region.
/// ///
EFI_PHYSICAL_ADDRESS PhysicalStart; EFI_PHYSICAL_ADDRESS PhysicalStart;
/// ///
/// Number of bytes of the resource region. /// The number of bytes of the resource region.
/// ///
UINT64 ResourceLength; UINT64 ResourceLength;
} EFI_HOB_RESOURCE_DESCRIPTOR; } EFI_HOB_RESOURCE_DESCRIPTOR;
@ -343,7 +343,7 @@ typedef struct {
} EFI_HOB_FIRMWARE_VOLUME; } EFI_HOB_FIRMWARE_VOLUME;
/// ///
/// Details the location of a firmware volume which was extracted /// Details the location of a firmware volume that was extracted
/// from a file within another firmware volume. /// from a file within another firmware volume.
/// ///
typedef struct { typedef struct {
@ -364,7 +364,7 @@ typedef struct {
/// ///
EFI_GUID FvName; EFI_GUID FvName;
/// ///
/// The name of the firmware file which contained this firmware volume. /// The name of the firmware file that contained this firmware volume.
/// ///
EFI_GUID FileName; EFI_GUID FileName;
} EFI_HOB_FIRMWARE_VOLUME2; } EFI_HOB_FIRMWARE_VOLUME2;
@ -419,14 +419,14 @@ typedef struct {
/// ///
/// The physical memory-mapped base address of an UEFI capsule. This value is set to /// The physical memory-mapped base address of an UEFI capsule. This value is set to
/// point to the base of the contiguous memory of the UEFI capsule. /// point to the base of the contiguous memory of the UEFI capsule.
/// The length of the contiguous memory in bytes /// The length of the contiguous memory in bytes.
/// ///
EFI_PHYSICAL_ADDRESS BaseAddress; EFI_PHYSICAL_ADDRESS BaseAddress;
UINT64 Length; UINT64 Length;
} EFI_HOB_UEFI_CAPSULE; } EFI_HOB_UEFI_CAPSULE;
/// ///
/// Union of all the possible HOB Types /// Union of all the possible HOB Types.
/// ///
typedef union { typedef union {
EFI_HOB_GENERIC_HEADER *Header; EFI_HOB_GENERIC_HEADER *Header;

View File

@ -1,17 +1,17 @@
/** @file /** @file
Include file matches things in PI for multiple module types. Include file matches things in PI for multiple module types.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
These elements are defined in UEFI Platform Initialization Specification 1.2 These elements are defined in UEFI Platform Initialization Specification 1.2.
**/ **/
@ -53,21 +53,21 @@
#define EFI_NOT_AVAILABLE_YET DXE_ERROR (2) #define EFI_NOT_AVAILABLE_YET DXE_ERROR (2)
/// ///
/// Success and warning codes reserved for use by PI /// Success and warning codes reserved for use by PI.
/// Supported 32-bit range is 0x20000000-0x3fffffff /// Supported 32-bit range is 0x20000000-0x3fffffff.
/// Supported 64-bit range is 0x2000000000000000-0x3fffffffffffffff /// Supported 64-bit range is 0x2000000000000000-0x3fffffffffffffff.
/// ///
#define PI_ENCODE_WARNING(a) ((MAX_BIT >> 2) | (a)) #define PI_ENCODE_WARNING(a) ((MAX_BIT >> 2) | (a))
/// ///
/// Error codes reserved for use by PI /// Error codes reserved for use by PI.
/// Supported 32-bit range is 0xa0000000-0xbfffffff /// Supported 32-bit range is 0xa0000000-0xbfffffff.
/// Supported 64-bit range is 0xa000000000000000-0xbfffffffffffffff /// Supported 64-bit range is 0xa000000000000000-0xbfffffffffffffff.
/// ///
#define PI_ENCODE_ERROR(a) (MAX_BIT | (MAX_BIT >> 2) | (a)) #define PI_ENCODE_ERROR(a) (MAX_BIT | (MAX_BIT >> 2) | (a))
/// ///
/// Return status codes defined in SMM CIS /// Return status codes defined in SMM CIS.
/// ///
#define EFI_INTERRUPT_PENDING PI_ENCODE_ERROR (0) #define EFI_INTERRUPT_PENDING PI_ENCODE_ERROR (0)
@ -80,7 +80,7 @@
/// and the EFI_PEI_GUIDED_SECTION_EXTRACTION_PPI /// and the EFI_PEI_GUIDED_SECTION_EXTRACTION_PPI
/// ///
/// xx00 Image was not signed. /// xx00 Image was not signed.
/// xxx1 Platform security policy override. Assumes same meaning as 0010 (the image was signed, the /// xxx1 Platform security policy override. Assumes the same meaning as 0010 (the image was signed, the
/// signature was tested, and the signature passed authentication test). /// signature was tested, and the signature passed authentication test).
/// 0010 Image was signed, the signature was tested, and the signature passed authentication test. /// 0010 Image was signed, the signature was tested, and the signature passed authentication test.
/// 0110 Image was signed and the signature was not tested. /// 0110 Image was signed and the signature was not tested.
@ -106,7 +106,7 @@
#define EFI_NEEDS_ECC_INITIALIZATION 0x00000040 #define EFI_NEEDS_ECC_INITIALIZATION 0x00000040
/// ///
/// Structure describing a SMRAM region and its accessibility attributes /// Structure describing a SMRAM region and its accessibility attributes.
/// ///
typedef struct { typedef struct {
/// ///

View File

@ -1,17 +1,18 @@
/** @file /** @file
PI PEI master include file. This file should match the PI spec. PI PEI master include file. This file should match the PI spec.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
PI Version 1.0 PI Version 1.0.
**/ **/
@ -22,22 +23,22 @@
#include <Pi/PiMultiPhase.h> #include <Pi/PiMultiPhase.h>
/// ///
/// Handles of EFI FV. /// The handles of EFI FV.
/// ///
typedef VOID *EFI_PEI_FV_HANDLE; typedef VOID *EFI_PEI_FV_HANDLE;
/// ///
/// Handles of EFI FFS /// The handles of EFI FFS.
/// ///
typedef VOID *EFI_PEI_FILE_HANDLE; typedef VOID *EFI_PEI_FILE_HANDLE;
/// ///
/// Declare forward reference data structure for EFI_PEI_SERVICE /// Declare the forward reference data structure for EFI_PEI_SERVICE.
/// ///
typedef struct _EFI_PEI_SERVICES EFI_PEI_SERVICES; typedef struct _EFI_PEI_SERVICES EFI_PEI_SERVICES;
/// ///
/// Declare forward reference data structure for EFI_PEI_NOTIFY_DESCRIPTOR /// Declare the forward reference data structure for EFI_PEI_NOTIFY_DESCRIPTOR.
/// ///
typedef struct _EFI_PEI_NOTIFY_DESCRIPTOR EFI_PEI_NOTIFY_DESCRIPTOR; typedef struct _EFI_PEI_NOTIFY_DESCRIPTOR EFI_PEI_NOTIFY_DESCRIPTOR;
@ -116,7 +117,7 @@ typedef struct {
/// ///
struct _EFI_PEI_NOTIFY_DESCRIPTOR { struct _EFI_PEI_NOTIFY_DESCRIPTOR {
/// ///
/// Details if the type of notification is callback or dispatch. /// Details if the type of notification are callback or dispatch.
/// ///
UINTN Flags; UINTN Flags;
/// ///
@ -155,7 +156,9 @@ typedef union {
@param PpiList A pointer to the list of interfaces that the caller shall install. @param PpiList A pointer to the list of interfaces that the caller shall install.
@retval EFI_SUCCESS The interface was successfully installed. @retval EFI_SUCCESS The interface was successfully installed.
@retval EFI_INVALID_PARAMETER The PpiList pointer is NULL or Any of the PEI PPI descriptors in the list do not have the EFI_PEI_PPI_DESCRIPTOR_PPI bit set in the Flags field. @retval EFI_INVALID_PARAMETER The PpiList pointer is NULL or Any of the PEI PPI
descriptors in the list do not have the
EFI_PEI_PPI_DESCRIPTOR_PPI bit set in the Flags field.
@retval EFI_OUT_OF_RESOURCES There is no additional space in the PPI database. @retval EFI_OUT_OF_RESOURCES There is no additional space in the PPI database.
**/ **/
@ -225,7 +228,7 @@ EFI_STATUS
@param NotifyList A pointer to the list of notification interfaces that the caller shall install. @param NotifyList A pointer to the list of notification interfaces that the caller shall install.
@retval EFI_SUCCESS The interface was successfully installed. @retval EFI_SUCCESS The interface was successfully installed.
@retval EFI_INVALID_PARAMETER The PpiList pointer is NULL or Any of the PEI PPI descriptors in the @retval EFI_INVALID_PARAMETER The PpiList pointer is NULL, or any of the PEI PPI descriptors in the
list do not have the EFI_PEI_PPI_DESCRIPTOR_PPI bit set in the Flags field. list do not have the EFI_PEI_PPI_DESCRIPTOR_PPI bit set in the Flags field.
@retval EFI_OUT_OF_RESOURCES There is no additional space in the PPI database. @retval EFI_OUT_OF_RESOURCES There is no additional space in the PPI database.
@ -243,7 +246,7 @@ EFI_STATUS
@param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation. @param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation.
@param BootMode A pointer to contain the value of the boot mode. @param BootMode A pointer to contain the value of the boot mode.
@retval EFI_SUCCESS The boot mode was returned successfully. @retval EFI_SUCCESS The boot mode returned successfully.
**/ **/
typedef typedef
@ -259,7 +262,7 @@ EFI_STATUS
@param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation @param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation
@param BootMode The value of the boot mode to set. @param BootMode The value of the boot mode to set.
@retval EFI_SUCCESS The boot mode was returned successfully. @retval EFI_SUCCESS The boot mode returned successfully.
**/ **/
typedef typedef
@ -287,7 +290,7 @@ EFI_STATUS
); );
/** /**
This service published by the PEI Foundation abstracts the creation of a Hand-Off Block's (HOB's) headers. This service, published by the PEI Foundation, abstracts the creation of a Hand-Off Block's (HOB's) headers.
@param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation. @param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation.
@param Type The type of HOB to be installed. @param Type The type of HOB to be installed.
@ -371,7 +374,7 @@ EFI_STATUS
This service will search within encapsulation sections (compression and GUIDed) as well. It will This service will search within encapsulation sections (compression and GUIDed) as well. It will
search inside of a GUIDed section or a compressed section, but may not, for example, search a search inside of a GUIDed section or a compressed section, but may not, for example, search a
GUIDed section inside a GUIDes section. GUIDed section inside a GUIDes section.
This service will not search within compression sections or GUIDed sections which require This service will not search within compression sections or GUIDed sections that require
extraction if memory is not present. extraction if memory is not present.
@param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation. @param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation.
@ -396,7 +399,7 @@ EFI_STATUS
This function registers the found memory configuration with the PEI Foundation. This function registers the found memory configuration with the PEI Foundation.
@param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation. @param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation.
@param MemoryBegin The value of a region of installed memory @param MemoryBegin The value of a region of installed memory.
@param MemoryLength The corresponding length of a region of installed memory. @param MemoryLength The corresponding length of a region of installed memory.
@retval EFI_SUCCESS The region was successfully installed in a HOB. @retval EFI_SUCCESS The region was successfully installed in a HOB.
@ -419,12 +422,12 @@ EFI_STATUS
@param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation. @param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation.
@param MemoryType The type of memory to allocate. @param MemoryType The type of memory to allocate.
@param Pages The number of contiguous 4 KB pages to allocate. @param Pages The number of contiguous 4 KB pages to allocate.
@param Memory Pointer to a physical address. On output, the address is set to the base @param Memory A pointer to a physical address. On output, the address is set to the base
of the page range that was allocated. of the page range that was allocated.
@retval EFI_SUCCESS The memory range was successfully allocated. @retval EFI_SUCCESS The memory range was successfully allocated.
@retval EFI_OUT_OF_RESOURCES The pages could not be allocated. @retval EFI_OUT_OF_RESOURCES The pages could not be allocated.
@retval EFI_INVALID_PARAMETER Type is not equal to EfiLoaderCode, EfiLoaderData, EfiRuntimeServicesCode, @retval EFI_INVALID_PARAMETER The type is not equal to EfiLoaderCode, EfiLoaderData, EfiRuntimeServicesCode,
EfiRuntimeServicesData, EfiBootServicesCode, EfiBootServicesData, EfiRuntimeServicesData, EfiBootServicesCode, EfiBootServicesData,
EfiACPIReclaimMemory, or EfiACPIMemoryNVS. EfiACPIReclaimMemory, or EfiACPIMemoryNVS.
@ -461,9 +464,9 @@ EFI_STATUS
/** /**
This service copies the contents of one buffer to another buffer. This service copies the contents of one buffer to another buffer.
@param Destination Pointer to the destination buffer of the memory copy. @param Destination The pointer to the destination buffer of the memory copy.
@param Source Pointer to the source buffer of the memory copy @param Source The pointer to the source buffer of the memory copy.
@param Length Number of bytes to copy from Source to Destination. @param Length The number of bytes to copy from Source to Destination.
**/ **/
typedef typedef
@ -477,9 +480,9 @@ VOID
/** /**
The service fills a buffer with a specified value. The service fills a buffer with a specified value.
@param Buffer Pointer to the buffer to fill. @param Buffer The pointer to the buffer to fill.
@param Size Number of bytes in Buffer to fill. @param Size The number of bytes in Buffer to fill.
@param Value Value to fill Buffer with @param Value The value to fill Buffer with.
**/ **/
typedef typedef
@ -563,8 +566,8 @@ EFI_STATUS
@param FileHandle Upon exit, points to the found file's @param FileHandle Upon exit, points to the found file's
handle or NULL if it could not be found. handle or NULL if it could not be found.
@retval EFI_SUCCESS File was found. @retval EFI_SUCCESS The file was found.
@retval EFI_NOT_FOUND File was not found. @retval EFI_NOT_FOUND The file was not found.
@retval EFI_INVALID_PARAMETER VolumeHandle or FileHandle or @retval EFI_INVALID_PARAMETER VolumeHandle or FileHandle or
FileName was NULL. FileName was NULL.
@ -578,7 +581,7 @@ EFI_STATUS
); );
/// ///
/// Information of FV file. /// The information of the FV file.
/// ///
typedef struct { typedef struct {
/// ///
@ -610,17 +613,17 @@ typedef struct {
This function returns information about a specific file, This function returns information about a specific file,
including its file name, type, attributes, starting address and including its file name, type, attributes, starting address and
size. If the firmware volume is not memory mapped then the size. If the firmware volume is not memory mapped, then the
Buffer member will be NULL. Buffer member will be NULL.
@param FileHandle Handle of the file. @param FileHandle The handle of the file.
@param FileInfo Upon exit, points to the file's @param FileInfo Upon exit, points to the file's
information. information.
@retval EFI_SUCCESS File information returned. @retval EFI_SUCCESS File information was returned.
@retval EFI_INVALID_PARAMETER If FileHandle does not @retval EFI_INVALID_PARAMETER FileHandle does not
represent a valid file. represent a valid file.
@retval EFI_INVALID_PARAMETER If FileInfo is NULL. @retval EFI_INVALID_PARAMETER FileInfo is NULL.
**/ **/
typedef typedef
@ -631,7 +634,7 @@ EFI_STATUS
); );
/// ///
/// Information of FV volume. /// The information of the FV volume.
/// ///
typedef struct { typedef struct {
/// ///
@ -668,10 +671,10 @@ typedef struct {
@param VolumeHandle Handle of the volume. @param VolumeHandle Handle of the volume.
@param VolumeInfo Upon exit, points to the volume's information. @param VolumeInfo Upon exit, points to the volume's information.
@retval EFI_SUCCESS Volume information returned. @retval EFI_SUCCESS The volume information returned.
@retval EFI_INVALID_PARAMETER If VolumeHandle does not represent a valid volume. @retval EFI_INVALID_PARAMETER If VolumeHandle does not represent a valid volume.
@retval EFI_INVALID_PARAMETER If VolumeHandle is NULL. @retval EFI_INVALID_PARAMETER If VolumeHandle is NULL.
@retval EFI_SUCCESS Information successfully returned. @retval EFI_SUCCESS Information was successfully returned.
@retval EFI_INVALID_PARAMETER The volume designated by the VolumeHandle is not available. @retval EFI_INVALID_PARAMETER The volume designated by the VolumeHandle is not available.
**/ **/
@ -719,19 +722,19 @@ EFI_STATUS
#define PEI_SPECIFICATION_MAJOR_REVISION 1 #define PEI_SPECIFICATION_MAJOR_REVISION 1
#define PEI_SPECIFICATION_MINOR_REVISION 10 #define PEI_SPECIFICATION_MINOR_REVISION 10
/// ///
/// Inconsistent with specification here: /// Specification inconsistency here:
/// In PI1.0 spec, PEI_SERVICES_SIGNATURE is defined as 0x5652455320494550. But /// In the PI1.0 spec, PEI_SERVICES_SIGNATURE is defined as 0x5652455320494550. But
/// to pass multiple tool chain, it is append a ULL. /// to pass a multiple tool chain, it appends an ULL.
/// ///
// //
// PEI Services Table // PEI Services Table
// //
#define PEI_SERVICES_SIGNATURE 0x5652455320494550ULL #define PEI_SERVICES_SIGNATURE 0x5652455320494550ULL
/// ///
/// Inconsistent with specification here: /// Specification inconsistency here:
/// In PI1.0 spec, There is a typo error in PEI_SERVICES_REVISION. In the spec. the defintion is /// In the PI1.0 specification, there is a typo error in PEI_SERVICES_REVISION. In the specification the defintion is
/// #define ((PEI_SPECIFICATION_MAJOR_REVISION<<16) |(PEI_SPECIFICATION_MINOR_REVISION)) /// #define ((PEI_SPECIFICATION_MAJOR_REVISION<<16) |(PEI_SPECIFICATION_MINOR_REVISION))
/// and it should be as follow: /// and it should be as follows:
/// ///
#define PEI_SERVICES_REVISION ((PEI_SPECIFICATION_MAJOR_REVISION<<16) | (PEI_SPECIFICATION_MINOR_REVISION)) #define PEI_SERVICES_REVISION ((PEI_SPECIFICATION_MAJOR_REVISION<<16) | (PEI_SPECIFICATION_MINOR_REVISION))
@ -742,7 +745,7 @@ EFI_STATUS
/// - Allocating both early and permanent memory /// - Allocating both early and permanent memory
/// - Supporting the Firmware File System (FFS) /// - Supporting the Firmware File System (FFS)
/// - Abstracting the PPI database abstraction /// - Abstracting the PPI database abstraction
/// - Creating Hand-Off Blocks (HOBs) /// - Creating Hand-Off Blocks (HOBs).
/// ///
struct _EFI_PEI_SERVICES { struct _EFI_PEI_SERVICES {
/// ///
@ -814,7 +817,7 @@ struct _EFI_PEI_SERVICES {
/// ///
/// EFI_SEC_PEI_HAND_OFF structure hold information about /// EFI_SEC_PEI_HAND_OFF structure holds information about
/// PEI core's operating environment, such as the size of location of /// PEI core's operating environment, such as the size of location of
/// temporary RAM, the stack location and BFV location. /// temporary RAM, the stack location and BFV location.
/// ///
@ -858,7 +861,7 @@ typedef struct _EFI_SEC_PEI_HAND_OFF {
VOID *PeiTemporaryRamBase; VOID *PeiTemporaryRamBase;
/// ///
/// Size of the available temporary RAM available for /// The size of the available temporary RAM available for
/// use by the PEI Foundation, in bytes. /// use by the PEI Foundation, in bytes.
/// ///
UINTN PeiTemporaryRamSize; UINTN PeiTemporaryRamSize;
@ -879,7 +882,7 @@ typedef struct _EFI_SEC_PEI_HAND_OFF {
/** /**
Entry point of PEI Foundation. The entry point of PEI Foundation.
This function is the entry point for the PEI Foundation, which This function is the entry point for the PEI Foundation, which
allows the SEC phase to pass information about the stack, allows the SEC phase to pass information about the stack,

View File

@ -1,18 +1,18 @@
/** @file /** @file
StatusCode related definitions in PI. StatusCode related definitions in PI.
Copyright (c) 2009, Intel Corporation Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
These status codes are defined in UEFI Platform Initialization Specification 1.2 These status codes are defined in UEFI Platform Initialization Specification 1.2,
Volume 3: Shared Architectural Elements Volume 3: Shared Architectural Elements.
**/ **/
@ -25,12 +25,12 @@
#include <Protocol/DebugSupport.h> #include <Protocol/DebugSupport.h>
/// ///
/// Status Code Type Definition /// Status Code Type Definition.
/// ///
typedef UINT32 EFI_STATUS_CODE_TYPE; typedef UINT32 EFI_STATUS_CODE_TYPE;
/// ///
/// A Status Code Type is made up of the code type and severity /// A Status Code Type is made up of the code type and severity.
/// All values masked by EFI_STATUS_CODE_RESERVED_MASK are /// All values masked by EFI_STATUS_CODE_RESERVED_MASK are
/// reserved for use by this specification. /// reserved for use by this specification.
/// ///
@ -41,7 +41,7 @@ typedef UINT32 EFI_STATUS_CODE_TYPE;
///@} ///@}
/// ///
/// Definition of code types, all other values masked by /// Definition of code types. All other values masked by
/// EFI_STATUS_CODE_TYPE_MASK are reserved for use by /// EFI_STATUS_CODE_TYPE_MASK are reserved for use by
/// this specification. /// this specification.
/// ///
@ -56,7 +56,7 @@ typedef UINT32 EFI_STATUS_CODE_TYPE;
/// EFI_STATUS_CODE_SEVERITY_MASK are reserved for use by /// EFI_STATUS_CODE_SEVERITY_MASK are reserved for use by
/// this specification. /// this specification.
/// Uncontained errors are major errors that could not contained /// Uncontained errors are major errors that could not contained
/// to the specific component that is reporting the error /// to the specific component that is reporting the error.
/// For example, if a memory error was not detected early enough, /// For example, if a memory error was not detected early enough,
/// the bad data could be consumed by other drivers. /// the bad data could be consumed by other drivers.
/// ///
@ -68,7 +68,7 @@ typedef UINT32 EFI_STATUS_CODE_TYPE;
///@} ///@}
/// ///
/// Status Code Value Definition /// Status Code Value Definition.
/// ///
typedef UINT32 EFI_STATUS_CODE_VALUE; typedef UINT32 EFI_STATUS_CODE_VALUE;
@ -103,26 +103,26 @@ typedef struct {
} EFI_STATUS_CODE_DATA; } EFI_STATUS_CODE_DATA;
/// ///
/// General partitioning scheme for Progress and Error Codes are /// General partitioning scheme for Progress and Error Codes are:
/// - 0x0000-0x0FFF Shared by all sub-classes in a given class /// - 0x0000-0x0FFF Shared by all sub-classes in a given class.
/// - 0x1000-0x7FFF Subclass Specific /// - 0x1000-0x7FFF Subclass Specific.
/// - 0x8000-0xFFFF OEM specific /// - 0x8000-0xFFFF OEM specific.
///@{ ///@{
#define EFI_SUBCLASS_SPECIFIC 0x1000 #define EFI_SUBCLASS_SPECIFIC 0x1000
#define EFI_OEM_SPECIFIC 0x8000 #define EFI_OEM_SPECIFIC 0x8000
///@} ///@}
/// ///
/// Debug Code definitions for all classes and subclass /// Debug Code definitions for all classes and subclass.
/// Only one debug code is defined at this point and should /// Only one debug code is defined at this point and should
/// be used for anything that gets sent to debug stream. /// be used for anything that is sent to the debug stream.
/// ///
///@{ ///@{
#define EFI_DC_UNSPECIFIED 0x0 #define EFI_DC_UNSPECIFIED 0x0
///@} ///@}
/// ///
/// Class definitions /// Class definitions.
/// Values of 4-127 are reserved for future use by this specification. /// Values of 4-127 are reserved for future use by this specification.
/// Values in the range 127-255 are reserved for OEM use. /// Values in the range 127-255 are reserved for OEM use.
/// ///
@ -209,42 +209,42 @@ typedef struct {
// //
/// ///
/// South Bridge initialization prior to memory detection /// South Bridge initialization prior to memory detection.
/// ///
#define EFI_CHIPSET_PC_PEI_CAR_SB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000000) #define EFI_CHIPSET_PC_PEI_CAR_SB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000000)
/// ///
/// North Bridge initialization prior to memory detection /// North Bridge initialization prior to memory detection.
/// ///
#define EFI_CHIPSET_PC_PEI_CAR_NB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000001) #define EFI_CHIPSET_PC_PEI_CAR_NB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000001)
/// ///
/// South Bridge initialization after memory detection /// South Bridge initialization after memory detection.
/// ///
#define EFI_CHIPSET_PC_PEI_MEM_SB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000002) #define EFI_CHIPSET_PC_PEI_MEM_SB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000002)
/// ///
/// North Bridge initialization after memory detection /// North Bridge initialization after memory detection.
/// ///
#define EFI_CHIPSET_PC_PEI_MEM_NB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000003) #define EFI_CHIPSET_PC_PEI_MEM_NB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000003)
/// ///
/// PCI Host Bridge DXE initialization /// PCI Host Bridge DXE initialization.
/// ///
#define EFI_CHIPSET_PC_DXE_HB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000004) #define EFI_CHIPSET_PC_DXE_HB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000004)
/// ///
/// North Bridge DXE initialization /// North Bridge DXE initialization.
/// ///
#define EFI_CHIPSET_PC_DXE_NB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000005) #define EFI_CHIPSET_PC_DXE_NB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000005)
/// ///
/// North Bridge specific SMM initialization in DXE /// North Bridge specific SMM initialization in DXE.
/// ///
#define EFI_CHIPSET_PC_DXE_NB_SMM_INIT (EFI_SUBCLASS_SPECIFIC|0x00000006) #define EFI_CHIPSET_PC_DXE_NB_SMM_INIT (EFI_SUBCLASS_SPECIFIC|0x00000006)
/// ///
/// Initialization of the South Bridge specific UEFI Runtime Services /// Initialization of the South Bridge specific UEFI Runtime Services.
/// ///
#define EFI_CHIPSET_PC_DXE_SB_RT_INIT (EFI_SUBCLASS_SPECIFIC|0x00000007) #define EFI_CHIPSET_PC_DXE_SB_RT_INIT (EFI_SUBCLASS_SPECIFIC|0x00000007)
@ -254,12 +254,12 @@ typedef struct {
#define EFI_CHIPSET_PC_DXE_SB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000008) #define EFI_CHIPSET_PC_DXE_SB_INIT (EFI_SUBCLASS_SPECIFIC|0x00000008)
/// ///
/// South Bridge specific SMM initialization in DXE /// South Bridge specific SMM initialization in DXE.
/// ///
#define EFI_CHIPSET_PC_DXE_SB_SMM_INIT (EFI_SUBCLASS_SPECIFIC|0x00000009) #define EFI_CHIPSET_PC_DXE_SB_SMM_INIT (EFI_SUBCLASS_SPECIFIC|0x00000009)
/// ///
/// Initialization of the South Bridge devices /// Initialization of the South Bridge devices.
/// ///
#define EFI_CHIPSET_PC_DXE_SB_DEVICES_INIT (EFI_SUBCLASS_SPECIFIC|0x0000000a) #define EFI_CHIPSET_PC_DXE_SB_DEVICES_INIT (EFI_SUBCLASS_SPECIFIC|0x0000000a)

View File

@ -2,13 +2,13 @@
Root include file for Mde Package DXE_CORE, DXE, RUNTIME, SMM, SAL type modules. Root include file for Mde Package DXE_CORE, DXE, RUNTIME, SMM, SAL type modules.
Copyright (c) 2006 - 2008, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/

View File

@ -6,13 +6,13 @@
modules only use types defined via this include file and can modules only use types defined via this include file and can
be ported easily to any environment. be ported easily to any environment.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/

View File

@ -2,13 +2,13 @@
Root include file for Mde Package SMM modules. Root include file for Mde Package SMM modules.
Copyright (c) 2009, Intel Corporation Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/

View File

@ -10,18 +10,18 @@
Block I/O PPIs that are provided by the PEI ATAPI driver and PEI legacy floppy Block I/O PPIs that are provided by the PEI ATAPI driver and PEI legacy floppy
driver are the same, here we define a set of general PPIs for both drivers to use. driver are the same, here we define a set of general PPIs for both drivers to use.
Copyright (c) 2007 - 2009, Intel Corporation Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This PPI is defined in UEFI Platform Initialization Specification 1.2 Volume 1: This PPI is defined in UEFI Platform Initialization Specification 1.2 Volume 1:
Pre-EFI Initalization Core Interface Pre-EFI Initalization Core Interface.
**/ **/
@ -37,12 +37,12 @@
} }
/// ///
/// Forward declaration for EFI_PEI_RECOVERY_BLOCK_IO_PPI /// The forward declaration for EFI_PEI_RECOVERY_BLOCK_IO_PPI.
/// ///
typedef struct _EFI_PEI_RECOVERY_BLOCK_IO_PPI EFI_PEI_RECOVERY_BLOCK_IO_PPI; typedef struct _EFI_PEI_RECOVERY_BLOCK_IO_PPI EFI_PEI_RECOVERY_BLOCK_IO_PPI;
/// ///
/// All blocks on the recovery device are addressed with a 64-bit Logical Block Address (LBA) /// All blocks on the recovery device are addressed with a 64-bit Logical Block Address (LBA).
/// ///
typedef UINT64 EFI_PEI_LBA; typedef UINT64 EFI_PEI_LBA;
@ -58,13 +58,13 @@ typedef enum {
} EFI_PEI_BLOCK_DEVICE_TYPE; } EFI_PEI_BLOCK_DEVICE_TYPE;
/// ///
/// Inconsistent with specification here: /// Specification inconsistency here:
/// PEI_BLOCK_IO_MEDIA has been changed to EFI_PEI_BLOCK_IO_MEDIA. /// PEI_BLOCK_IO_MEDIA has been changed to EFI_PEI_BLOCK_IO_MEDIA.
/// Inconsistency exists in UEFI Platform Initialization Specification 1.2 /// Inconsistency exists in UEFI Platform Initialization Specification 1.2
/// Volume 1: Pre-EFI Initalization Core Interface, where all referrences to /// Volume 1: Pre-EFI Initalization Core Interface, where all referrences to
/// this structure name are with the "EFI_" prefix, except for the definition /// this structure name are with the "EFI_" prefix, except for the definition
/// which is without "EFI_". So the name of PEI_BLOCK_IO_MEDIA is taken as the /// which is without "EFI_". So the name of PEI_BLOCK_IO_MEDIA is taken as the
/// exception, and EFI_PEI_BLOCK_IO_MEDIA is used to comply with most part of /// exception, and EFI_PEI_BLOCK_IO_MEDIA is used to comply with most of
/// the specification. /// the specification.
/// ///
typedef struct { typedef struct {
@ -103,7 +103,7 @@ typedef struct {
instance. instance.
@param[out] NumberBlockDevices The number of block I/O devices discovered. @param[out] NumberBlockDevices The number of block I/O devices discovered.
@retval EFI_SUCCESS Operation performed successfully. @retval EFI_SUCCESS The operation performed successfully.
**/ **/
typedef typedef
@ -146,7 +146,7 @@ EFI_STATUS
order also applies to nested partitions, such as legacy MBR, where the order also applies to nested partitions, such as legacy MBR, where the
outermost partitions would have precedence in the reporting order. The outermost partitions would have precedence in the reporting order. The
same logic applies to systems such as IDE that have precedence relationships same logic applies to systems such as IDE that have precedence relationships
like "Master/Slave" or "Primary/Secondary"; the master device should be like "Master/Slave" or "Primary/Secondary". The master device should be
reported first, the slave second. reported first, the slave second.
@retval EFI_SUCCESS Media information about the specified block device @retval EFI_SUCCESS Media information about the specified block device
@ -176,7 +176,7 @@ EFI_STATUS
@param[in] This Indicates the EFI_PEI_RECOVERY_BLOCK_IO_PPI instance. @param[in] This Indicates the EFI_PEI_RECOVERY_BLOCK_IO_PPI instance.
@param[in] DeviceIndex Specifies the block device to which the function wants @param[in] DeviceIndex Specifies the block device to which the function wants
to talk. Because the driver that implements Block I/O to talk. Because the driver that implements Block I/O
PPIs will manage multiple block devices, the PPIs that PPIs will manage multiple block devices, PPIs that
want to talk to a single device must specify the device want to talk to a single device must specify the device
index that was assigned during the enumeration process. index that was assigned during the enumeration process.
This index is a number from one to NumberBlockDevices. This index is a number from one to NumberBlockDevices.

View File

@ -2,14 +2,14 @@
This PPI provides a set of memory and I/O-based services. This PPI provides a set of memory and I/O-based services.
The perspective of the services is that of the processor, not the bus or system. The perspective of the services is that of the processor, not the bus or system.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This PPI is introduced in PI Version 1.0. This PPI is introduced in PI Version 1.0.
@ -25,7 +25,7 @@
typedef struct _EFI_PEI_CPU_IO_PPI EFI_PEI_CPU_IO_PPI; typedef struct _EFI_PEI_CPU_IO_PPI EFI_PEI_CPU_IO_PPI;
/// ///
/// EFI_PEI_CPU_IO_PPI_WIDTH /// EFI_PEI_CPU_IO_PPI_WIDTH.
/// ///
typedef enum { typedef enum {
EfiPeiCpuIoWidthUint8, EfiPeiCpuIoWidthUint8,
@ -48,7 +48,7 @@ typedef enum {
@param[in] PeiServices An indirect pointer to the PEI Services Table @param[in] PeiServices An indirect pointer to the PEI Services Table
published by the PEI Foundation. published by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Width The width of the access. Enumerated in bytes. @param[in] Width The width of the access. Enumerated in bytes.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@param[in] Count The number of accesses to perform. @param[in] Count The number of accesses to perform.
@ -88,7 +88,7 @@ typedef struct {
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@return An 8-bit value returned from the I/O space. @return An 8-bit value returned from the I/O space.
@ -107,7 +107,7 @@ UINT8
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@return A 16-bit value returned from the I/O space. @return A 16-bit value returned from the I/O space.
@ -126,7 +126,7 @@ UINT16
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@return A 32-bit value returned from the I/O space. @return A 32-bit value returned from the I/O space.
@ -145,7 +145,7 @@ UINT32
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@return A 64-bit value returned from the I/O space. @return A 64-bit value returned from the I/O space.
@ -164,7 +164,7 @@ UINT64
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@param[in] Data The data to write. @param[in] Data The data to write.
@ -183,7 +183,7 @@ VOID
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@param[in] Data The data to write. @param[in] Data The data to write.
@ -202,7 +202,7 @@ VOID
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@param[in] Data The data to write. @param[in] Data The data to write.
@ -221,7 +221,7 @@ VOID
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@param[in] Data The data to write. @param[in] Data The data to write.
@ -240,7 +240,7 @@ VOID
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@return An 8-bit value returned from the memory space. @return An 8-bit value returned from the memory space.
@ -259,7 +259,7 @@ UINT8
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@return A 16-bit value returned from the memory space. @return A 16-bit value returned from the memory space.
@ -278,7 +278,7 @@ UINT16
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@return A 32-bit value returned from the memory space. @return A 32-bit value returned from the memory space.
@ -297,7 +297,7 @@ UINT32
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@return A 64-bit value returned from the memory space. @return A 64-bit value returned from the memory space.
@ -316,7 +316,7 @@ UINT64
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@param[in] Data The data to write. @param[in] Data The data to write.
@ -335,7 +335,7 @@ VOID
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@param[in] Data The data to write. @param[in] Data The data to write.
@ -354,7 +354,7 @@ VOID
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@param[in] Data The data to write. @param[in] Data The data to write.
@ -373,7 +373,7 @@ VOID
@param[in] PeiServices An indirect pointer to the PEI Services Table published @param[in] PeiServices An indirect pointer to the PEI Services Table published
by the PEI Foundation. by the PEI Foundation.
@param[in] This Pointer to local data for the interface. @param[in] This The pointer to local data for the interface.
@param[in] Address The physical address of the access. @param[in] Address The physical address of the access.
@param[in] Data The data to write. @param[in] Data The data to write.
@ -389,7 +389,8 @@ VOID
/// ///
/// EFI_PEI_CPU_IO_PPI provides a set of memory and I/O-based services. /// EFI_PEI_CPU_IO_PPI provides a set of memory and I/O-based services.
/// The perspective of the services is that of the processor, not the bus or system. /// The perspective of the services is that of the processor, not that of the
/// bus or system.
/// ///
struct _EFI_PEI_CPU_IO_PPI { struct _EFI_PEI_CPU_IO_PPI {
/// ///

View File

@ -6,14 +6,14 @@
The interfaces for dynamic type PCD do not require the token space guid as parameter, The interfaces for dynamic type PCD do not require the token space guid as parameter,
but interfaces for dynamic-ex type PCD require token space guid as parameter. but interfaces for dynamic-ex type PCD require token space guid as parameter.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -363,7 +363,7 @@ UINTN
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -389,7 +389,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -415,7 +415,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -441,7 +441,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -469,7 +469,7 @@ EFI_STATUS
the maximum size supported for this TokenNumber. the maximum size supported for this TokenNumber.
@param[in] Buffer The buffer to set for the PCD token. @param[in] Buffer The buffer to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -494,7 +494,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -521,7 +521,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -549,7 +549,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -577,7 +577,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -605,7 +605,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -637,7 +637,7 @@ EFI_STATUS
the maximum size supported for this TokenNumber. the maximum size supported for this TokenNumber.
@param[in] Buffer The buffer to set for the PCD token. @param[in] Buffer The buffer to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -664,7 +664,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -803,7 +803,7 @@ EFI_STATUS
@param[in, out] Guid An indirect pointer to EFI_GUID. On input it designates a known @param[in, out] Guid An indirect pointer to EFI_GUID. On input it designates a known
token namespace from which the search will start. On output, it designates token namespace from which the search will start. On output, it designates
the next valid token namespace on the platform. If the input token namespace the next valid token namespace on the platform. If the input token namespace
does not exist on the platform, an error is returned and the value of *Guid is does not exist on the platform, an error is returned, and the value of *Guid is
undefined. undefined.
@retval EFI_SUCCESS The PCD service has retrieved the next valid token namespace. @retval EFI_SUCCESS The PCD service has retrieved the next valid token namespace.

View File

@ -2,14 +2,14 @@
This file declares Read-only Variable Service2 PPI. This file declares Read-only Variable Service2 PPI.
This ppi permits read-only access to the UEFI variable store during the PEI phase. This ppi permits read-only access to the UEFI variable store during the PEI phase.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This PPI is introduced in PI Version 1.0. This PPI is introduced in PI Version 1.0.

View File

@ -6,14 +6,14 @@
environment and also encapsulates knowledge of at least the environment and also encapsulates knowledge of at least the
location of the Boot Firmware Volume (BFV). location of the Boot Firmware Volume (BFV).
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This PPI is introduced in PI Version 1.0. This PPI is introduced in PI Version 1.0.
@ -53,22 +53,22 @@ typedef union {
/// ///
UINT32 Reserved1 :13; UINT32 Reserved1 :13;
/// ///
/// A 1-bit field. If set to 1, indicates that virtual /// A 1-bit field. If set to 1, this indicates that virtual
/// memory features are not available. /// memory features are not available.
/// ///
UINT32 VirtualMemoryUnavailable : 1; UINT32 VirtualMemoryUnavailable : 1;
/// ///
/// A 1-bit field. If set to 1, indicates that IA-32 execution /// A 1-bit field. If set to 1, this indicates that IA-32 execution
/// is not available. /// is not available.
/// ///
UINT32 Ia32ExecutionUnavailable : 1; UINT32 Ia32ExecutionUnavailable : 1;
/// ///
/// A 1-bit field. If set to 1, indicates that the floating /// A 1-bit field. If set to 1, this indicates that the floating
/// point unit is not available. /// point unit is not available.
/// ///
UINT32 FloatingPointUnavailable : 1; UINT32 FloatingPointUnavailable : 1;
/// ///
/// A 1-bit field. If set to 1, indicates miscellaneous /// A 1-bit field. If set to 1, this indicates miscellaneous
/// functional failure other than vm, ia, or fp. /// functional failure other than vm, ia, or fp.
/// The test status field provides additional information on /// The test status field provides additional information on
/// test failures when the State field returns a value of /// test failures when the State field returns a value of
@ -113,7 +113,7 @@ typedef struct {
UINT8 EidMask; UINT8 EidMask;
UINT16 Reserved4; UINT16 Reserved4;
/// ///
/// Address to make PAL calls /// Address to make PAL calls.
/// ///
UINT64 PalCallAddress; UINT64 PalCallAddress;
/// ///
@ -123,7 +123,7 @@ typedef struct {
/// ///
UINT64 PalSpecialAddress; UINT64 PalSpecialAddress;
/// ///
/// GR35 from PALE_EXIT state /// GR35 from PALE_EXIT state.
/// ///
UINT64 SelfTestStatus; UINT64 SelfTestStatus;
/// ///
@ -134,7 +134,7 @@ typedef struct {
} ITANIUM_HANDOFF_STATUS; } ITANIUM_HANDOFF_STATUS;
/// ///
/// EFI_SEC_PLATFORM_INFORMATION_RECORD /// EFI_SEC_PLATFORM_INFORMATION_RECORD.
/// ///
typedef union { typedef union {
IA32_HANDOFF_STATUS IA32HealthFlags; IA32_HANDOFF_STATUS IA32HealthFlags;
@ -150,12 +150,12 @@ typedef union {
PEI Foundation. As such, if the platform supports the built-in self test (BIST) on IA-32 Intel PEI Foundation. As such, if the platform supports the built-in self test (BIST) on IA-32 Intel
architecture or the PAL-A handoff state for Itanium architecture, this information is encapsulated architecture or the PAL-A handoff state for Itanium architecture, this information is encapsulated
into the data structure abstracted by this service. This information is collected for the boot-strap into the data structure abstracted by this service. This information is collected for the boot-strap
processor (BSP) on IA-32, and for Itanium architecture, it is available on all processors that execute processor (BSP) on IA-32. For Itanium architecture, it is available on all processors that execute
the PEI Foundation. the PEI Foundation.
@param PeiServices Pointer to the PEI Services Table. @param PeiServices The pointer to the PEI Services Table.
@param StructureSize Pointer to the variable describing size of the input buffer. @param StructureSize The pointer to the variable describing size of the input buffer.
@param PlatformInformationRecord Pointer to the EFI_SEC_PLATFORM_INFORMATION_RECORD. @param PlatformInformationRecord The pointer to the EFI_SEC_PLATFORM_INFORMATION_RECORD.
@retval EFI_SUCCESS The data was successfully returned. @retval EFI_SUCCESS The data was successfully returned.
@retval EFI_BUFFER_TOO_SMALL The buffer was too small. The current buffer size needed to @retval EFI_BUFFER_TOO_SMALL The buffer was too small. The current buffer size needed to

View File

@ -7,17 +7,17 @@
The EFI ARP Protocol provides services to map IP network The EFI ARP Protocol provides services to map IP network
address to hardware address used by a data link protocol. address to hardware address used by a data link protocol.
Copyright (c) 2006 - 2009, Intel Corporation.<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at<BR> The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is introduced in UEFI Specification 2.0 This Protocol was introduced in UEFI Specification 2.0.
**/ **/
@ -65,12 +65,12 @@ typedef struct {
UINT16 SwAddressType; UINT16 SwAddressType;
/// ///
/// Length of the hardware address. /// The length of the hardware address.
/// ///
UINT8 HwAddressLength; UINT8 HwAddressLength;
/// ///
/// Length of the protocol address. /// The length of the protocol address.
/// ///
UINT8 SwAddressLength; UINT8 SwAddressLength;
} EFI_ARP_FIND_DATA; } EFI_ARP_FIND_DATA;
@ -82,12 +82,12 @@ typedef struct {
UINT16 SwAddressType; UINT16 SwAddressType;
/// ///
/// Length in bytes of the station's protocol address to register. /// The length in bytes of the station's protocol address to register.
/// ///
UINT8 SwAddressLength; UINT8 SwAddressLength;
/// ///
/// Pointer to the first byte of the protocol address to register. For /// The pointer to the first byte of the protocol address to register. For
/// example, if SwAddressType is 0x0800 (IP), then /// example, if SwAddressType is 0x0800 (IP), then
/// StationAddress points to the first byte of this station's IP /// StationAddress points to the first byte of this station's IP
/// address stored in network byte order. /// address stored in network byte order.
@ -128,8 +128,8 @@ typedef struct {
all the following ARP functions will use this information. Attempting to change all the following ARP functions will use this information. Attempting to change
the protocol type or station address to a configured ARP instance will result in errors. the protocol type or station address to a configured ARP instance will result in errors.
@param This Pointer to the EFI_ARP_PROTOCOL instance. @param This The pointer to the EFI_ARP_PROTOCOL instance.
@param ConfigData Pointer to the EFI_ARP_CONFIG_DATA structure. @param ConfigData The pointer to the EFI_ARP_CONFIG_DATA structure.
@retval EFI_SUCCESS The new station address was successfully @retval EFI_SUCCESS The new station address was successfully
registered. registered.
@ -160,7 +160,7 @@ EFI_STATUS
by the Add() function may be static (will not time out) or dynamic (will time out). by the Add() function may be static (will not time out) or dynamic (will time out).
Default ARP cache timeout values are not covered in most network protocol Default ARP cache timeout values are not covered in most network protocol
specifications (although RFC 1122 comes pretty close) and will only be specifications (although RFC 1122 comes pretty close) and will only be
discussed in general in this specification. The timeout values that are discussed in general terms in this specification. The timeout values that are
used in the EFI Sample Implementation should be used only as a guideline. used in the EFI Sample Implementation should be used only as a guideline.
Final product implementations of the EFI network stack should be tuned for Final product implementations of the EFI network stack should be tuned for
their expected network environments. their expected network environments.
@ -218,16 +218,16 @@ EFI_STATUS
set to TRUE. If the found ARP cache entry is a permanent entry, it is not set to TRUE. If the found ARP cache entry is a permanent entry, it is not
affected by Refresh. affected by Refresh.
@param This Pointer to the EFI_ARP_PROTOCOL instance. @param This The pointer to the EFI_ARP_PROTOCOL instance.
@param BySwAddress Set to TRUE to look for matching software protocol @param BySwAddress Set to TRUE to look for matching software protocol
addresses. Set to FALSE to look for matching addresses. Set to FALSE to look for matching
hardware protocol addresses. hardware protocol addresses.
@param AddressBuffer Pointer to address buffer. Set to NULL to match @param AddressBuffer The pointer to the address buffer. Set to NULL
all addresses. to match all addresses.
@param EntryLength The size of an entry in the entries buffer. @param EntryLength The size of an entry in the entries buffer.
@param EntryCount The number of ARP cache entries that are found by @param EntryCount The number of ARP cache entries that are found by
the specified criteria. the specified criteria.
@param Entries Pointer to the buffer that will receive the ARP @param Entries The pointer to the buffer that will receive the ARP
cache entries. cache entries.
@param Refresh Set to TRUE to refresh the timeout value of the @param Refresh Set to TRUE to refresh the timeout value of the
matching ARP cache entry. matching ARP cache entry.
@ -257,11 +257,11 @@ EFI_STATUS
/** /**
This function removes specified ARP cache entries. This function removes specified ARP cache entries.
@param This Pointer to the EFI_ARP_PROTOCOL instance. @param This The pointer to the EFI_ARP_PROTOCOL instance.
@param BySwAddress Set to TRUE to delete matching protocol addresses. @param BySwAddress Set to TRUE to delete matching protocol addresses.
Set to FALSE to delete matching hardware Set to FALSE to delete matching hardware
addresses. addresses.
@param AddressBuffer Pointer to the address buffer that is used as a @param AddressBuffer The pointer to the address buffer that is used as a
key to look for the cache entry. Set to NULL to key to look for the cache entry. Set to NULL to
delete all entries. delete all entries.
@ -283,7 +283,7 @@ EFI_STATUS
This function delete all dynamic entries from the ARP cache that match the specified This function delete all dynamic entries from the ARP cache that match the specified
software protocol type. software protocol type.
@param This Pointer to the EFI_ARP_PROTOCOL instance. @param This The pointer to the EFI_ARP_PROTOCOL instance.
@retval EFI_SUCCESS The cache has been flushed. @retval EFI_SUCCESS The cache has been flushed.
@retval EFI_INVALID_PARAMETER This is NULL. @retval EFI_INVALID_PARAMETER This is NULL.
@ -301,11 +301,11 @@ EFI_STATUS
This function tries to resolve the TargetSwAddress and optionally returns a This function tries to resolve the TargetSwAddress and optionally returns a
TargetHwAddress if it already exists in the ARP cache. TargetHwAddress if it already exists in the ARP cache.
@param This Pointer to the EFI_ARP_PROTOCOL instance. @param This The pointer to the EFI_ARP_PROTOCOL instance.
@param TargetSwAddress Pointer to the protocol address to resolve. @param TargetSwAddress The pointer to the protocol address to resolve.
@param ResolvedEvent Pointer to the event that will be signaled when @param ResolvedEvent The pointer to the event that will be signaled when
the address is resolved or some error occurs. the address is resolved or some error occurs.
@param TargetHwAddress Pointer to the buffer for the resolved hardware @param TargetHwAddress The pointer to the buffer for the resolved hardware
address in network byte order. address in network byte order.
@retval EFI_SUCCESS The data is copied from the ARP cache into the @retval EFI_SUCCESS The data is copied from the ARP cache into the
@ -338,8 +338,8 @@ EFI_STATUS
NULL, all the pending asynchronous requests that have been issued by This NULL, all the pending asynchronous requests that have been issued by This
instance will be cancelled and their corresponding events will be signaled. instance will be cancelled and their corresponding events will be signaled.
@param This Pointer to the EFI_ARP_PROTOCOL instance. @param This The pointer to the EFI_ARP_PROTOCOL instance.
@param TargetSwAddress Pointer to the protocol address in previous @param TargetSwAddress The pointer to the protocol address in previous
request session. request session.
@param ResolvedEvent Pointer to the event that is used as the @param ResolvedEvent Pointer to the event that is used as the
notification event in previous request session. notification event in previous request session.

View File

@ -3,14 +3,14 @@
This protocol is used on any device handle to obtain authentication information This protocol is used on any device handle to obtain authentication information
associated with the physical or logical device. associated with the physical or logical device.
Copyright (c) 2006 - 2008, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -51,19 +51,19 @@ typedef struct {
AUTH_NODE_HEADER Header; AUTH_NODE_HEADER Header;
/// ///
/// RADIUS Server IPv4 or IPv6 Address /// RADIUS Server IPv4 or IPv6 Address.
/// ///
UINT8 RadiusIpAddr[16]; ///< IPv4 or IPv6 address UINT8 RadiusIpAddr[16]; ///< IPv4 or IPv6 address.
/// ///
/// Reserved for future use /// Reserved for future use.
/// ///
UINT16 Reserved; UINT16 Reserved;
/// ///
/// Network Access Server IPv4 or IPv6 Address (OPTIONAL) /// Network Access Server IPv4 or IPv6 Address (OPTIONAL).
/// ///
UINT8 NasIpAddr[16]; ///< IPv4 or IPv6 address UINT8 NasIpAddr[16]; ///< IPv4 or IPv6 address.
/// ///
/// Network Access Server Secret Length in bytes (OPTIONAL) /// Network Access Server Secret Length in bytes (OPTIONAL)
@ -71,7 +71,7 @@ typedef struct {
UINT16 NasSecretLength; UINT16 NasSecretLength;
/// ///
/// Network Access Server Secret (OPTIONAL) /// Network Access Server Secret (OPTIONAL).
/// ///
UINT8 NasSecret[1]; UINT8 NasSecret[1];
@ -84,7 +84,7 @@ typedef struct {
/// ///
/// UINT8 ChapSecret[]; /// UINT8 ChapSecret[];
/// ///
/// CHAP Initiator Name Length in bytes on offset ChapSecret + ChapSecretLength /// CHAP Initiator Name Length in bytes on offset ChapSecret + ChapSecretLength.
/// ///
/// UINT16 ChapNameLength; /// UINT16 ChapNameLength;
/// ///
@ -98,22 +98,22 @@ typedef struct {
AUTH_NODE_HEADER Header; AUTH_NODE_HEADER Header;
/// ///
/// Reserved for future use /// Reserved for future use.
/// ///
UINT16 Reserved; UINT16 Reserved;
/// ///
/// User Secret Length in bytes /// User Secret Length in bytes.
/// ///
UINT16 UserSecretLength; UINT16 UserSecretLength;
/// ///
/// User Secret /// User Secret.
/// ///
UINT8 UserSecret[1]; UINT8 UserSecret[1];
/// ///
/// User Name Length in bytes on offset UserSecret + UserSecretLength /// User Name Length in bytes on offset UserSecret + UserSecretLength.
/// ///
/// UINT16 UserNameLength; /// UINT16 UserNameLength;
/// ///
@ -143,14 +143,16 @@ typedef struct {
/** /**
Retrieves the authentication information associated with a particular controller handle. Retrieves the authentication information associated with a particular controller handle.
@param[in] This Pointer to the EFI_AUTHENTICATION_INFO_PROTOCOL @param[in] This The pointer to the EFI_AUTHENTICATION_INFO_PROTOCOL.
@param[in] ControllerHandle Handle to the Controller @param[in] ControllerHandle The handle to the Controller.
@param[out] Buffer Pointer to the authentication information. @param[out] Buffer The pointer to the authentication information.
@retval EFI_SUCCESS Successfully retrieved authentication information for the given ControllerHandle @retval EFI_SUCCESS Successfully retrieved authentication information
@retval EFI_INVALID_PARAMETER No matching authentication information found for the given ControllerHandle for the given ControllerHandle.
@retval EFI_DEVICE_ERROR The authentication information could not be retrieved due to a @retval EFI_INVALID_PARAMETER No matching authentication information found for
hardware error. the given ControllerHandle.
@retval EFI_DEVICE_ERROR The authentication information could not be retrieved
due to a hardware error.
**/ **/
typedef typedef
@ -164,15 +166,16 @@ EFI_STATUS
/** /**
Set the authentication information for a given controller handle. Set the authentication information for a given controller handle.
@param[in] This Pointer to the EFI_AUTHENTICATION_INFO_PROTOCOL @param[in] This The pointer to the EFI_AUTHENTICATION_INFO_PROTOCOL.
@param[in] ControllerHandle Handle to the Controller @param[in] ControllerHandle The handle to the Controller.
@param[in] Buffer Pointer to the authentication information. @param[in] Buffer The pointer to the authentication information.
@retval EFI_SUCCESS Successfully set authentication information for the given ControllerHandle @retval EFI_SUCCESS Successfully set authentication information for the
@retval EFI_UNSUPPORTED If the platform policies do not allow setting of the authentication given ControllerHandle.
information. @retval EFI_UNSUPPORTED If the platform policies do not allow setting of
@retval EFI_DEVICE_ERROR The authentication information could not be configured due to a the authentication information.
hardware error. @retval EFI_DEVICE_ERROR The authentication information could not be configured
due to a hardware error.
@retval EFI_OUT_OF_RESOURCES Not enough storage is available to hold the data. @retval EFI_OUT_OF_RESOURCES Not enough storage is available to hold the data.
**/ **/

View File

@ -2,17 +2,17 @@
The EFI_BIS_PROTOCOL is used to check a digital signature of a data block The EFI_BIS_PROTOCOL is used to check a digital signature of a data block
against a digital certificate for the purpose of an integrity and authorization check. against a digital certificate for the purpose of an integrity and authorization check.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is introduced in EFI Specification 1.10 This Protocol is introduced in EFI Specification 1.10.
**/ **/
@ -51,7 +51,7 @@ typedef UINT32 BIS_CERT_ID;
/// EFI_BIS_DATA instances obtained from BIS must be freed by calling Free( ). /// EFI_BIS_DATA instances obtained from BIS must be freed by calling Free( ).
/// ///
typedef struct { typedef struct {
UINT32 Length; ///< Length of Data in 8 bit bytes. UINT32 Length; ///< The length of Data in 8 bit bytes.
UINT8 *Data; ///< 32 Bit Flat Address of data. UINT8 *Data; ///< 32 Bit Flat Address of data.
} EFI_BIS_DATA; } EFI_BIS_DATA;
@ -59,8 +59,8 @@ typedef struct {
/// EFI_BIS_VERSION type. /// EFI_BIS_VERSION type.
/// ///
typedef struct { typedef struct {
UINT32 Major; ///< the major BIS version number. UINT32 Major; ///< The major BIS version number.
UINT32 Minor; ///< a minor BIS version number. UINT32 Minor; ///< A minor BIS version number.
} EFI_BIS_VERSION; } EFI_BIS_VERSION;
// //
@ -78,12 +78,12 @@ typedef struct {
typedef struct { typedef struct {
BIS_CERT_ID CertificateID; ///< Truncated hash of platform Boot Object BIS_CERT_ID CertificateID; ///< Truncated hash of platform Boot Object
BIS_ALG_ID AlgorithmID; ///< A signature algorithm number. BIS_ALG_ID AlgorithmID; ///< A signature algorithm number.
UINT16 KeyLength; ///< Length of alg. keys in bits. UINT16 KeyLength; ///< The length of alg. keys in bits.
} EFI_BIS_SIGNATURE_INFO; } EFI_BIS_SIGNATURE_INFO;
/// ///
/// values for EFI_BIS_SIGNATURE_INFO.AlgorithmID. /// values for EFI_BIS_SIGNATURE_INFO.AlgorithmID.
/// The exact numeric values come from /// The exact numeric values come from the
/// "Common Data Security Architecture (CDSA) Specification". /// "Common Data Security Architecture (CDSA) Specification".
/// ///
#define BIS_ALG_DSA (41) // CSSM_ALGID_DSA #define BIS_ALG_DSA (41) // CSSM_ALGID_DSA
@ -94,7 +94,7 @@ typedef struct {
#define BIS_CERT_ID_DSA BIS_ALG_DSA // CSSM_ALGID_DSA #define BIS_CERT_ID_DSA BIS_ALG_DSA // CSSM_ALGID_DSA
#define BIS_CERT_ID_RSA_MD5 BIS_ALG_RSA_MD5 // CSSM_ALGID_MD5_WITH_RSA #define BIS_CERT_ID_RSA_MD5 BIS_ALG_RSA_MD5 // CSSM_ALGID_MD5_WITH_RSA
/// ///
/// the mask value that gets applied to the truncated hash of a /// The mask value that gets applied to the truncated hash of a
/// platform Boot Object Authorization Certificate to create the certificateID. /// platform Boot Object Authorization Certificate to create the certificateID.
/// A certificateID must not have any bits set to the value 1 other than bits in /// A certificateID must not have any bits set to the value 1 other than bits in
/// this mask. /// this mask.
@ -103,7 +103,7 @@ typedef struct {
/// ///
/// Macros for dealing with the EFI_BIS_DATA object obtained /// Macros for dealing with the EFI_BIS_DATA object obtained
/// from BIS_GetSignatureInfo() /// from BIS_GetSignatureInfo().
/// BIS_GET_SIGINFO_COUNT - tells how many EFI_BIS_SIGNATURE_INFO /// BIS_GET_SIGINFO_COUNT - tells how many EFI_BIS_SIGNATURE_INFO
/// elements are contained in a EFI_BIS_DATA struct pointed to /// elements are contained in a EFI_BIS_DATA struct pointed to
/// by the provided EFI_BIS_DATA*. /// by the provided EFI_BIS_DATA*.
@ -117,7 +117,7 @@ typedef struct {
#define BIS_GET_SIGINFO_ARRAY(BisDataPtr) ((EFI_BIS_SIGNATURE_INFO *) (BisDataPtr)->Data) #define BIS_GET_SIGINFO_ARRAY(BisDataPtr) ((EFI_BIS_SIGNATURE_INFO *) (BisDataPtr)->Data)
/// ///
/// Support old name for backward compatibility /// Support an old name for backward compatibility.
/// ///
#define BOOT_OBJECT_AUTHORIZATION_PARMSET_GUIDVALUE \ #define BOOT_OBJECT_AUTHORIZATION_PARMSET_GUIDVALUE \
BOOT_OBJECT_AUTHORIZATION_PARMSET_GUID BOOT_OBJECT_AUTHORIZATION_PARMSET_GUID
@ -154,12 +154,12 @@ typedef struct {
found found
* A resource limitation was encountered while using a cryptographic software module. * A resource limitation was encountered while using a cryptographic software module.
@retval EFI_INVALID_PARAMETER The This parameter supplied by the caller is NULL or does not @retval EFI_INVALID_PARAMETER The This parameter supplied by the caller is NULL or does not
reference a valid EFI_BIS_PROTOCOL object, or reference a valid EFI_BIS_PROTOCOL object. Or,
The AppHandle parameter supplied by the caller is NULL or the AppHandle parameter supplied by the caller is NULL or
an invalid memory reference, or an invalid memory reference. Or,
The InterfaceVersion parameter supplied by the caller the InterfaceVersion parameter supplied by the caller
is NULL or an invalid memory reference, or is NULL or an invalid memory reference. Or,
The TargetAddress parameter supplied by the caller is the TargetAddress parameter supplied by the caller is
NULL or an invalid memory reference. NULL or an invalid memory reference.
**/ **/
@ -203,7 +203,7 @@ EFI_STATUS
of the BIS service. of the BIS service.
@retval EFI_SUCCESS The function completed successfully. @retval EFI_SUCCESS The function completed successfully.
@retval EFI_NO_MAPPING The AppHandle parameter is not or is no longer a valid @retval EFI_NO_MAPPING The AppHandle parameter is not, or is no longer, a valid
application instance handle associated with the EFI_BIS protocol. application instance handle associated with the EFI_BIS protocol.
@retval EFI_OUT_OF_RESOURCES The function failed due to lack of memory or other resources. @retval EFI_OUT_OF_RESOURCES The function failed due to lack of memory or other resources.
@retval EFI_DEVICE_ERROR The function encountered an unexpected internal failure while @retval EFI_DEVICE_ERROR The function encountered an unexpected internal failure while
@ -301,11 +301,12 @@ EFI_STATUS
Retrieves a unique token value to be included in the request credential for the next update of any Retrieves a unique token value to be included in the request credential for the next update of any
parameter in the Boot Object Authorization set parameter in the Boot Object Authorization set
@param AppHandle An opaque handle that identifies the caller's instance of initialization @param AppHandle An opaque handle that identifies the caller's
of the BIS service. instance of initialization of the BIS service.
@param UpdateToken The function writes an allocated EFI_BIS_DATA* containing the new @param UpdateToken The function writes an allocated EFI_BIS_DATA*
unique update token value. The caller must containing the newunique update token value.
eventually free the memory allocated by this function using the function Free(). The caller musteventually free the memory allocated
by this function using the function Free().
@retval EFI_SUCCESS The function completed successfully. @retval EFI_SUCCESS The function completed successfully.
@retval EFI_NO_MAPPING The AppHandle parameter is not or is no longer a valid @retval EFI_NO_MAPPING The AppHandle parameter is not or is no longer a valid
@ -326,13 +327,14 @@ EFI_STATUS
/** /**
Updates one of the configurable parameters of the Boot Object Authorization set. Updates one of the configurable parameters of the Boot Object Authorization set.
@param AppHandle An opaque handle that identifies the caller's instance of initialization @param AppHandle An opaque handle that identifies the caller's
of the BIS service. instance of initialization of the BIS service.
@param RequestCredential This is a Signed Manifest with embedded attributes that carry the details @param RequestCredential This is a Signed Manifest with embedded attributes
of the requested update. that carry the details of the requested update.
@param NewUpdateToken The function writes an allocated EFI_BIS_DATA* containing the new @param NewUpdateToken The function writes an allocated EFI_BIS_DATA*
unique update token value. The caller must containing the new unique update token value.
eventually free the memory allocated by this function using the function Free(). The caller must eventually free the memory allocated
by this function using the function Free().
@retval EFI_SUCCESS The function completed successfully. @retval EFI_SUCCESS The function completed successfully.
@retval EFI_NO_MAPPING The AppHandle parameter is not or is no longer a valid @retval EFI_NO_MAPPING The AppHandle parameter is not or is no longer a valid

View File

@ -3,14 +3,14 @@
This protocol is used to retrieve user readable names of EFI Drivers This protocol is used to retrieve user readable names of EFI Drivers
and controllers managed by EFI Drivers. and controllers managed by EFI Drivers.
Copyright (c) 2006 - 2008, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -18,7 +18,7 @@
#define __EFI_COMPONENT_NAME_H__ #define __EFI_COMPONENT_NAME_H__
/// ///
/// Global ID for the Component Name Protocol /// The global ID for the Component Name Protocol.
/// ///
#define EFI_COMPONENT_NAME_PROTOCOL_GUID \ #define EFI_COMPONENT_NAME_PROTOCOL_GUID \
{ \ { \
@ -29,10 +29,10 @@ typedef struct _EFI_COMPONENT_NAME_PROTOCOL EFI_COMPONENT_NAME_PROTOCOL;
/** /**
Retrieves a Unicode string that is the user readable name of the EFI Driver. Retrieves a Unicode string that is the user-readable name of the EFI Driver.
@param This A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance. @param This A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.
@param Language A pointer to a three character ISO 639-2 language identifier. @param Language A pointer to a three-character ISO 639-2 language identifier.
This is the language of the driver name that that the caller This is the language of the driver name that that the caller
is requesting, and it must match one of the languages specified is requesting, and it must match one of the languages specified
in SupportedLanguages. The number of languages supported by a in SupportedLanguages. The number of languages supported by a
@ -75,17 +75,17 @@ EFI_STATUS
that wishes to retrieve the name of a child controller. that wishes to retrieve the name of a child controller.
@param Language A pointer to a three character ISO 639-2 language @param Language A pointer to a three character ISO 639-2 language
identifier. This is the language of the controller name identifier. This is the language of the controller name
that that the caller is requesting, and it must match one that the caller is requesting, and it must match one
of the languages specified in SupportedLanguages. The of the languages specified in SupportedLanguages. The
number of languages supported by a driver is up to the number of languages supported by a driver is up to the
driver writer. driver writer.
@param ControllerName A pointer to the Unicode string to return. This Unicode @param ControllerName A pointer to the Unicode string to return. This Unicode
string is the name of the controller specified by string is the name of the controller specified by
ControllerHandle and ChildHandle in the language specified ControllerHandle and ChildHandle in the language specified
by Language from the point of view of the driver specified by Language, from the point of view of the driver specified
by This. by This.
@retval EFI_SUCCESS The Unicode string for the user readable name in the @retval EFI_SUCCESS The Unicode string for the user-readable name in the
language specified by Language for the driver language specified by Language for the driver
specified by This was returned in DriverName. specified by This was returned in DriverName.
@retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE. @retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.

View File

@ -5,15 +5,14 @@
The DebugSupport protocol is used by source level debuggers to abstract the The DebugSupport protocol is used by source level debuggers to abstract the
processor and handle context save and restore operations. processor and handle context save and restore operations.
Copyright (c) 2006 - 2009, Intel Corporation<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
Portions copyright (c) 2008-2009 Apple Inc. All rights reserved.<BR> This program and the accompanying materials are licensed and made available under
All rights reserved. This program and the accompanying materials the terms and conditions of the BSD License that accompanies this distribution.
are licensed and made available under the terms and conditions of the BSD License The full text of the license may be found at
which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php.
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -25,7 +24,7 @@
typedef struct _EFI_DEBUG_SUPPORT_PROTOCOL EFI_DEBUG_SUPPORT_PROTOCOL; typedef struct _EFI_DEBUG_SUPPORT_PROTOCOL EFI_DEBUG_SUPPORT_PROTOCOL;
/// ///
/// Debug Support protocol {2755590C-6F3C-42FA-9EA4-A3BA543CDA25} /// Debug Support protocol {2755590C-6F3C-42FA-9EA4-A3BA543CDA25}.
/// ///
#define EFI_DEBUG_SUPPORT_PROTOCOL_GUID \ #define EFI_DEBUG_SUPPORT_PROTOCOL_GUID \
{ \ { \
@ -39,7 +38,7 @@ typedef struct _EFI_DEBUG_SUPPORT_PROTOCOL EFI_DEBUG_SUPPORT_PROTOCOL;
typedef INTN EFI_EXCEPTION_TYPE; typedef INTN EFI_EXCEPTION_TYPE;
/// ///
/// IA-32 processor exception types /// IA-32 processor exception types.
/// ///
#define EXCEPT_IA32_DIVIDE_ERROR 0 #define EXCEPT_IA32_DIVIDE_ERROR 0
#define EXCEPT_IA32_DEBUG 1 #define EXCEPT_IA32_DEBUG 1
@ -60,8 +59,8 @@ typedef INTN EFI_EXCEPTION_TYPE;
#define EXCEPT_IA32_SIMD 19 #define EXCEPT_IA32_SIMD 19
/// ///
/// FXSAVE_STATE /// FXSAVE_STATE.
/// FP / MMX / XMM registers (see fxrstor instruction definition) /// FP / MMX / XMM registers (see fxrstor instruction definition).
/// ///
typedef struct { typedef struct {
UINT16 Fcw; UINT16 Fcw;
@ -94,7 +93,7 @@ typedef struct {
} EFI_FX_SAVE_STATE_IA32; } EFI_FX_SAVE_STATE_IA32;
/// ///
/// IA-32 processor context definition /// IA-32 processor context definition.
/// ///
typedef struct { typedef struct {
UINT32 ExceptionData; UINT32 ExceptionData;
@ -133,7 +132,7 @@ typedef struct {
} EFI_SYSTEM_CONTEXT_IA32; } EFI_SYSTEM_CONTEXT_IA32;
/// ///
/// x64 processor exception types /// x64 processor exception types.
/// ///
#define EXCEPT_X64_DIVIDE_ERROR 0 #define EXCEPT_X64_DIVIDE_ERROR 0
#define EXCEPT_X64_DEBUG 1 #define EXCEPT_X64_DEBUG 1
@ -154,8 +153,8 @@ typedef struct {
#define EXCEPT_X64_SIMD 19 #define EXCEPT_X64_SIMD 19
/// ///
/// FXSAVE_STATE /// FXSAVE_STATE.
/// FP / MMX / XMM registers (see fxrstor instruction definition) /// FP / MMX / XMM registers (see fxrstor instruction definition).
/// ///
typedef struct { typedef struct {
UINT16 Fcw; UINT16 Fcw;
@ -188,7 +187,7 @@ typedef struct {
} EFI_FX_SAVE_STATE_X64; } EFI_FX_SAVE_STATE_X64;
/// ///
/// x64 processor context definition /// x64 processor context definition.
/// ///
typedef struct { typedef struct {
UINT64 ExceptionData; UINT64 ExceptionData;
@ -236,7 +235,7 @@ typedef struct {
} EFI_SYSTEM_CONTEXT_X64; } EFI_SYSTEM_CONTEXT_X64;
/// ///
/// Itanium Processor Family Exception types /// Itanium Processor Family Exception types.
/// ///
#define EXCEPT_IPF_VHTP_TRANSLATION 0 #define EXCEPT_IPF_VHTP_TRANSLATION 0
#define EXCEPT_IPF_INSTRUCTION_TLB 1 #define EXCEPT_IPF_INSTRUCTION_TLB 1
@ -281,7 +280,7 @@ typedef struct {
#define EXCEPT_IPF_IA32_INTERRUPT 47 #define EXCEPT_IPF_IA32_INTERRUPT 47
/// ///
/// IPF processor context definition /// IPF processor context definition.
/// ///
typedef struct { typedef struct {
// //
@ -437,26 +436,26 @@ typedef struct {
} EFI_SYSTEM_CONTEXT_IPF; } EFI_SYSTEM_CONTEXT_IPF;
/// ///
/// EBC processor exception types /// EBC processor exception types.
/// ///
#define EXCEPT_EBC_UNDEFINED 0 #define EXCEPT_EBC_UNDEFINED 0
#define EXCEPT_EBC_DIVIDE_ERROR 1 #define EXCEPT_EBC_DIVIDE_ERROR 1
#define EXCEPT_EBC_DEBUG 2 #define EXCEPT_EBC_DEBUG 2
#define EXCEPT_EBC_BREAKPOINT 3 #define EXCEPT_EBC_BREAKPOINT 3
#define EXCEPT_EBC_OVERFLOW 4 #define EXCEPT_EBC_OVERFLOW 4
#define EXCEPT_EBC_INVALID_OPCODE 5 ///< opcode out of range #define EXCEPT_EBC_INVALID_OPCODE 5 ///< Opcode out of range.
#define EXCEPT_EBC_STACK_FAULT 6 #define EXCEPT_EBC_STACK_FAULT 6
#define EXCEPT_EBC_ALIGNMENT_CHECK 7 #define EXCEPT_EBC_ALIGNMENT_CHECK 7
#define EXCEPT_EBC_INSTRUCTION_ENCODING 8 ///< malformed instruction #define EXCEPT_EBC_INSTRUCTION_ENCODING 8 ///< Malformed instruction.
#define EXCEPT_EBC_BAD_BREAK 9 ///< BREAK 0 or undefined BREAK #define EXCEPT_EBC_BAD_BREAK 9 ///< BREAK 0 or undefined BREAK.
#define EXCEPT_EBC_STEP 10 ///< to support debug stepping #define EXCEPT_EBC_STEP 10 ///< To support debug stepping.
/// ///
/// For coding convenience, define the maximum valid EBC exception. /// For coding convenience, define the maximum valid EBC exception.
/// ///
#define MAX_EBC_EXCEPTION EXCEPT_EBC_STEP #define MAX_EBC_EXCEPTION EXCEPT_EBC_STEP
/// ///
/// EBC processor context definition /// EBC processor context definition.
/// ///
typedef struct { typedef struct {
UINT64 R0; UINT64 R0;
@ -475,7 +474,7 @@ typedef struct {
/// ///
/// ARM processor exception types /// ARM processor exception types.
/// ///
#define EXCEPT_ARM_RESET 0 #define EXCEPT_ARM_RESET 0
#define EXCEPT_ARM_UNDEFINED_INSTRUCTION 1 #define EXCEPT_ARM_UNDEFINED_INSTRUCTION 1
@ -492,7 +491,7 @@ typedef struct {
#define MAX_ARM_EXCEPTION EXCEPT_ARM_FIQ #define MAX_ARM_EXCEPTION EXCEPT_ARM_FIQ
/// ///
/// ARM processor context definition /// ARM processor context definition.
/// ///
typedef struct { typedef struct {
UINT32 R0; UINT32 R0;
@ -519,7 +518,7 @@ typedef struct {
} EFI_SYSTEM_CONTEXT_ARM; } EFI_SYSTEM_CONTEXT_ARM;
/// ///
/// Universal EFI_SYSTEM_CONTEXT definition /// Universal EFI_SYSTEM_CONTEXT definition.
/// ///
typedef union { typedef union {
EFI_SYSTEM_CONTEXT_EBC *SystemContextEbc; EFI_SYSTEM_CONTEXT_EBC *SystemContextEbc;
@ -536,7 +535,7 @@ typedef union {
/** /**
Registers and enables an exception callback function for the specified exception. Registers and enables an exception callback function for the specified exception.
@param ExceptionType Exception types in EBC, IA-32, x64, or IPF @param ExceptionType Exception types in EBC, IA-32, x64, or IPF.
@param SystemContext Exception content. @param SystemContext Exception content.
**/ **/

View File

@ -5,14 +5,14 @@
from a software point of view. The path must persist from boot to boot, so from a software point of view. The path must persist from boot to boot, so
it can not contain things like PCI bus numbers that change from boot to boot. it can not contain things like PCI bus numbers that change from boot to boot.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -22,7 +22,7 @@
#include <Guid/PcAnsi.h> #include <Guid/PcAnsi.h>
/// ///
/// Device Path protocol /// Device Path protocol.
/// ///
#define EFI_DEVICE_PATH_PROTOCOL_GUID \ #define EFI_DEVICE_PATH_PROTOCOL_GUID \
{ \ { \
@ -45,17 +45,17 @@
that make up the Device Path. that make up the Device Path.
**/ **/
typedef struct { typedef struct {
UINT8 Type; ///< 0x01 Hardware Device Path UINT8 Type; ///< 0x01 Hardware Device Path.
///< 0x02 ACPI Device Path ///< 0x02 ACPI Device Path.
///< 0x03 Messaging Device Path ///< 0x03 Messaging Device Path.
///< 0x04 Media Device Path ///< 0x04 Media Device Path.
///< 0x05 BIOS Boot Specification Device Path ///< 0x05 BIOS Boot Specification Device Path.
///< 0x7F End of Hardware Device Path ///< 0x7F End of Hardware Device Path.
UINT8 SubType; ///< Varies by Type UINT8 SubType; ///< Varies by Type
///< 0xFF End Entire Device Path, or ///< 0xFF End Entire Device Path, or
///< 0x01 End This Instance of a Device Path and start a new ///< 0x01 End This Instance of a Device Path and start a new
///< Device Path ///< Device Path.
UINT8 Length[2]; ///< Specific Device Path data. Type and Sub-Type define UINT8 Length[2]; ///< Specific Device Path data. Type and Sub-Type define
///< type of data. Size of data is included in Length. ///< type of data. Size of data is included in Length.
@ -68,53 +68,53 @@ typedef struct {
typedef EFI_DEVICE_PATH_PROTOCOL EFI_DEVICE_PATH; typedef EFI_DEVICE_PATH_PROTOCOL EFI_DEVICE_PATH;
/// ///
/// Hardware Device Paths /// Hardware Device Paths.
/// ///
#define HARDWARE_DEVICE_PATH 0x01 #define HARDWARE_DEVICE_PATH 0x01
/// ///
/// PCI Device Path SubType /// PCI Device Path SubType.
/// ///
#define HW_PCI_DP 0x01 #define HW_PCI_DP 0x01
/// ///
/// PCI Device Path /// PCI Device Path.
/// ///
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// PCI Function Number /// PCI Function Number.
/// ///
UINT8 Function; UINT8 Function;
/// ///
/// PCI Device Number /// PCI Device Number.
/// ///
UINT8 Device; UINT8 Device;
} PCI_DEVICE_PATH; } PCI_DEVICE_PATH;
/// ///
/// PCCARD Device Path SubType /// PCCARD Device Path SubType.
/// ///
#define HW_PCCARD_DP 0x02 #define HW_PCCARD_DP 0x02
/// ///
/// PCCARD Device Path /// PCCARD Device Path.
/// ///
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// Function Number (0 = First Function) /// Function Number (0 = First Function).
/// ///
UINT8 FunctionNumber; UINT8 FunctionNumber;
} PCCARD_DEVICE_PATH; } PCCARD_DEVICE_PATH;
/// ///
/// Memory Mapped Device Path SubType /// Memory Mapped Device Path SubType.
/// ///
#define HW_MEMMAP_DP 0x03 #define HW_MEMMAP_DP 0x03
/// ///
/// Memory Mapped Device Path /// Memory Mapped Device Path.
/// ///
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
@ -127,13 +127,13 @@ typedef struct {
/// ///
EFI_PHYSICAL_ADDRESS StartingAddress; EFI_PHYSICAL_ADDRESS StartingAddress;
/// ///
/// Ending Memory Address /// Ending Memory Address.
/// ///
EFI_PHYSICAL_ADDRESS EndingAddress; EFI_PHYSICAL_ADDRESS EndingAddress;
} MEMMAP_DEVICE_PATH; } MEMMAP_DEVICE_PATH;
/// ///
/// Hardware Vendor Device Path SubType /// Hardware Vendor Device Path SubType.
/// ///
#define HW_VENDOR_DP 0x04 #define HW_VENDOR_DP 0x04
@ -154,12 +154,12 @@ typedef struct {
} VENDOR_DEVICE_PATH; } VENDOR_DEVICE_PATH;
/// ///
/// Controller Device Path SubType /// Controller Device Path SubType.
/// ///
#define HW_CONTROLLER_DP 0x05 #define HW_CONTROLLER_DP 0x05
/// ///
/// Controller Device Path /// Controller Device Path.
/// ///
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
@ -170,12 +170,12 @@ typedef struct {
} CONTROLLER_DEVICE_PATH; } CONTROLLER_DEVICE_PATH;
/// ///
/// ACPI Device Paths /// ACPI Device Paths.
/// ///
#define ACPI_DEVICE_PATH 0x02 #define ACPI_DEVICE_PATH 0x02
/// ///
/// ACPI Device Path SubType /// ACPI Device Path SubType.
/// ///
#define ACPI_DP 0x01 #define ACPI_DP 0x01
typedef struct { typedef struct {
@ -190,14 +190,14 @@ typedef struct {
/// Unique ID that is required by ACPI if two devices have the /// Unique ID that is required by ACPI if two devices have the
/// same _HID. This value must also match the corresponding /// same _HID. This value must also match the corresponding
/// _UID/_HID pair in the ACPI name space. Only the 32-bit /// _UID/_HID pair in the ACPI name space. Only the 32-bit
/// numeric value type of _UID is supported; thus strings must /// numeric value type of _UID is supported. Thus, strings must
/// not be used for the _UID in the ACPI name space. /// not be used for the _UID in the ACPI name space.
/// ///
UINT32 UID; UINT32 UID;
} ACPI_HID_DEVICE_PATH; } ACPI_HID_DEVICE_PATH;
/// ///
/// Expanded ACPI Device Path SubType /// Expanded ACPI Device Path SubType.
/// ///
#define ACPI_EXTENDED_DP 0x02 #define ACPI_EXTENDED_DP 0x02
typedef struct { typedef struct {
@ -222,9 +222,9 @@ typedef struct {
/// ///
UINT32 CID; UINT32 CID;
/// ///
/// Optional variable length _HIDSTR /// Optional variable length _HIDSTR.
/// Optional variable length _UIDSTR /// Optional variable length _UIDSTR.
/// Optional variable length _CIDSTR /// Optional variable length _CIDSTR.
/// ///
} ACPI_EXTENDED_HID_DEVICE_PATH; } ACPI_EXTENDED_HID_DEVICE_PATH;
@ -244,7 +244,7 @@ typedef struct {
#define EISA_ID_TO_NUM(_Id) ((_Id) >> 16) #define EISA_ID_TO_NUM(_Id) ((_Id) >> 16)
/// ///
/// ACPI _ADR Device Path SubType /// ACPI _ADR Device Path SubType.
/// ///
#define ACPI_ADR_DP 0x03 #define ACPI_ADR_DP 0x03
@ -257,7 +257,7 @@ typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// _ADR value. For video output devices the value of this /// _ADR value. For video output devices the value of this
/// field comes from Table B-2 ACPI 3.0 specification. At /// field comes from Table B-2 of the ACPI 3.0 specification. At
/// least one _ADR value is required. /// least one _ADR value is required.
/// ///
UINT32 ADR; UINT32 ADR;
@ -283,7 +283,7 @@ typedef struct {
((_Index) & 0xf) )) ((_Index) & 0xf) ))
/// ///
/// Messaging Device Paths /// Messaging Device Paths.
/// This Device Path is used to describe the connection of devices outside the resource domain of the /// This Device Path is used to describe the connection of devices outside the resource domain of the
/// system. This Device Path can describe physical messaging information like SCSI ID, or abstract /// system. This Device Path can describe physical messaging information like SCSI ID, or abstract
/// information like networking protocol IP addresses. /// information like networking protocol IP addresses.
@ -297,37 +297,37 @@ typedef struct {
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// Set to zero for primary or one for secondary /// Set to zero for primary, or one for secondary.
/// ///
UINT8 PrimarySecondary; UINT8 PrimarySecondary;
/// ///
/// Set to zero for master or one for slave mode /// Set to zero for master, or one for slave mode.
/// ///
UINT8 SlaveMaster; UINT8 SlaveMaster;
/// ///
/// Logical Unit Number /// Logical Unit Number.
/// ///
UINT16 Lun; UINT16 Lun;
} ATAPI_DEVICE_PATH; } ATAPI_DEVICE_PATH;
/// ///
/// SCSI Device Path SubType /// SCSI Device Path SubType.
/// ///
#define MSG_SCSI_DP 0x02 #define MSG_SCSI_DP 0x02
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// Target ID on the SCSI bus (PUN) /// Target ID on the SCSI bus (PUN).
/// ///
UINT16 Pun; UINT16 Pun;
/// ///
/// Logical Unit Number (LUN) /// Logical Unit Number (LUN).
/// ///
UINT16 Lun; UINT16 Lun;
} SCSI_DEVICE_PATH; } SCSI_DEVICE_PATH;
/// ///
/// Fibre Channel SubType /// Fibre Channel SubType.
/// ///
#define MSG_FIBRECHANNEL_DP 0x03 #define MSG_FIBRECHANNEL_DP 0x03
typedef struct { typedef struct {
@ -363,23 +363,23 @@ typedef struct {
} F1394_DEVICE_PATH; } F1394_DEVICE_PATH;
/// ///
/// USB Device Path SubType /// USB Device Path SubType.
/// ///
#define MSG_USB_DP 0x05 #define MSG_USB_DP 0x05
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// USB Parent Port Number /// USB Parent Port Number.
/// ///
UINT8 ParentPortNumber; UINT8 ParentPortNumber;
/// ///
/// USB Interface Number /// USB Interface Number.
/// ///
UINT8 InterfaceNumber; UINT8 InterfaceNumber;
} USB_DEVICE_PATH; } USB_DEVICE_PATH;
/// ///
/// USB Class Device Path SubType /// USB Class Device Path SubType.
/// ///
#define MSG_USB_CLASS_DP 0x0f #define MSG_USB_CLASS_DP 0x0f
typedef struct { typedef struct {
@ -412,7 +412,7 @@ typedef struct {
} USB_CLASS_DEVICE_PATH; } USB_CLASS_DEVICE_PATH;
/// ///
/// USB WWID Device Path SubType /// USB WWID Device Path SubType.
/// ///
#define MSG_USB_WWID_DP 0x10 #define MSG_USB_WWID_DP 0x10
@ -422,15 +422,15 @@ typedef struct {
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// USB interface number /// USB interface number.
/// ///
UINT16 InterfaceNumber; UINT16 InterfaceNumber;
/// ///
/// USB vendor id of the device /// USB vendor id of the device.
/// ///
UINT16 VendorId; UINT16 VendorId;
/// ///
/// USB product id of the device /// USB product id of the device.
/// ///
UINT16 ProductId; UINT16 ProductId;
/// ///
@ -443,19 +443,19 @@ typedef struct {
} USB_WWID_DEVICE_PATH; } USB_WWID_DEVICE_PATH;
/// ///
/// Device Logical Unit SubType /// Device Logical Unit SubType.
/// ///
#define MSG_DEVICE_LOGICAL_UNIT_DP 0x11 #define MSG_DEVICE_LOGICAL_UNIT_DP 0x11
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// Logical Unit Number for the interface /// Logical Unit Number for the interface.
/// ///
UINT8 Lun; UINT8 Lun;
} DEVICE_LOGICAL_UNIT_DEVICE_PATH; } DEVICE_LOGICAL_UNIT_DEVICE_PATH;
/// ///
/// SATA Device Path SubType /// SATA Device Path SubType.
/// ///
#define MSG_SATA_DP 0x12 #define MSG_SATA_DP 0x12
typedef struct { typedef struct {
@ -483,25 +483,25 @@ typedef struct {
#define SATA_HBA_DIRECT_CONNECT_FLAG 0x8000 #define SATA_HBA_DIRECT_CONNECT_FLAG 0x8000
/// ///
/// I2O Device Path SubType /// I2O Device Path SubType.
/// ///
#define MSG_I2O_DP 0x06 #define MSG_I2O_DP 0x06
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// Target ID (TID) for a device /// Target ID (TID) for a device.
/// ///
UINT32 Tid; UINT32 Tid;
} I2O_DEVICE_PATH; } I2O_DEVICE_PATH;
/// ///
/// MAC Address Device Path SubType /// MAC Address Device Path SubType.
/// ///
#define MSG_MAC_ADDR_DP 0x0b #define MSG_MAC_ADDR_DP 0x0b
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// The MAC address for a network interface padded with 0s /// The MAC address for a network interface padded with 0s.
/// ///
EFI_MAC_ADDRESS MacAddress; EFI_MAC_ADDRESS MacAddress;
/// ///
@ -517,19 +517,19 @@ typedef struct {
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// The local IPv4 address /// The local IPv4 address.
/// ///
EFI_IPv4_ADDRESS LocalIpAddress; EFI_IPv4_ADDRESS LocalIpAddress;
/// ///
/// The remote IPv4 address /// The remote IPv4 address.
/// ///
EFI_IPv4_ADDRESS RemoteIpAddress; EFI_IPv4_ADDRESS RemoteIpAddress;
/// ///
/// The local port number /// The local port number.
/// ///
UINT16 LocalPort; UINT16 LocalPort;
/// ///
/// The remote port number /// The remote port number.
/// ///
UINT16 RemotePort; UINT16 RemotePort;
/// ///
@ -537,32 +537,32 @@ typedef struct {
/// ///
UINT16 Protocol; UINT16 Protocol;
/// ///
/// 0x00 - The Source IP Address was assigned though DHCP /// 0x00 - The Source IP Address was assigned though DHCP.
/// 0x01 - The Source IP Address is statically bound /// 0x01 - The Source IP Address is statically bound.
/// ///
BOOLEAN StaticIpAddress; BOOLEAN StaticIpAddress;
} IPv4_DEVICE_PATH; } IPv4_DEVICE_PATH;
/// ///
/// IPv6 Device Path SubType /// IPv6 Device Path SubType.
/// ///
#define MSG_IPv6_DP 0x0d #define MSG_IPv6_DP 0x0d
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// The local IPv6 address /// The local IPv6 address.
/// ///
EFI_IPv6_ADDRESS LocalIpAddress; EFI_IPv6_ADDRESS LocalIpAddress;
/// ///
/// The remote IPv6 address /// The remote IPv6 address.
/// ///
EFI_IPv6_ADDRESS RemoteIpAddress; EFI_IPv6_ADDRESS RemoteIpAddress;
/// ///
/// The local port number /// The local port number.
/// ///
UINT16 LocalPort; UINT16 LocalPort;
/// ///
/// The remote port number /// The remote port number.
/// ///
UINT16 RemotePort; UINT16 RemotePort;
/// ///
@ -570,43 +570,43 @@ typedef struct {
/// ///
UINT16 Protocol; UINT16 Protocol;
/// ///
/// 0x00 - The Source IP Address was assigned though DHCP /// 0x00 - The Source IP Address was assigned though DHCP.
/// 0x01 - The Source IP Address is statically bound /// 0x01 - The Source IP Address is statically bound.
/// ///
BOOLEAN StaticIpAddress; BOOLEAN StaticIpAddress;
} IPv6_DEVICE_PATH; } IPv6_DEVICE_PATH;
/// ///
/// InfiniBand Device Path SubType /// InfiniBand Device Path SubType.
/// ///
#define MSG_INFINIBAND_DP 0x09 #define MSG_INFINIBAND_DP 0x09
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// Flags to help identify/manage InfiniBand device path elements: /// Flags to help identify/manage InfiniBand device path elements:
/// Bit 0 - IOC/Service (0b = IOC, 1b = Service) /// Bit 0 - IOC/Service (0b = IOC, 1b = Service).
/// Bit 1 - Extend Boot Environment /// Bit 1 - Extend Boot Environment.
/// Bit 2 - Console Protocol /// Bit 2 - Console Protocol.
/// Bit 3 - Storage Protocol /// Bit 3 - Storage Protocol.
/// Bit 4 - Network Protocol /// Bit 4 - Network Protocol.
/// All other bits are reserved. /// All other bits are reserved.
/// ///
UINT32 ResourceFlags; UINT32 ResourceFlags;
/// ///
/// 128-bit Global Identifier for remote fabric port /// 128-bit Global Identifier for remote fabric port.
/// ///
UINT8 PortGid[16]; UINT8 PortGid[16];
/// ///
/// 64-bit unique identifier to remote IOC or server process. /// 64-bit unique identifier to remote IOC or server process.
/// Interpretation of field specified by Resource Flags (bit 0) /// Interpretation of field specified by Resource Flags (bit 0).
/// ///
UINT64 ServiceId; UINT64 ServiceId;
/// ///
/// 64-bit persistent ID of remote IOC port /// 64-bit persistent ID of remote IOC port.
/// ///
UINT64 TargetPortId; UINT64 TargetPortId;
/// ///
/// 64-bit persistent ID of remote device /// 64-bit persistent ID of remote device.
/// ///
UINT64 DeviceId; UINT64 DeviceId;
} INFINIBAND_DEVICE_PATH; } INFINIBAND_DEVICE_PATH;
@ -618,13 +618,13 @@ typedef struct {
#define INFINIBAND_RESOURCE_FLAG_NETWORK_PROTOCOL 0x10 #define INFINIBAND_RESOURCE_FLAG_NETWORK_PROTOCOL 0x10
/// ///
/// UART Device Path SubType /// UART Device Path SubType.
/// ///
#define MSG_UART_DP 0x0e #define MSG_UART_DP 0x0e
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// Reserved /// Reserved.
/// ///
UINT32 Reserved; UINT32 Reserved;
/// ///
@ -639,20 +639,20 @@ typedef struct {
UINT8 DataBits; UINT8 DataBits;
/// ///
/// The parity setting for the UART style device. /// The parity setting for the UART style device.
/// Parity 0x00 - Default Parity /// Parity 0x00 - Default Parity.
/// Parity 0x01 - No Parity /// Parity 0x01 - No Parity.
/// Parity 0x02 - Even Parity /// Parity 0x02 - Even Parity.
/// Parity 0x03 - Odd Parity /// Parity 0x03 - Odd Parity.
/// Parity 0x04 - Mark Parity /// Parity 0x04 - Mark Parity.
/// Parity 0x05 - Space Parity /// Parity 0x05 - Space Parity.
/// ///
UINT8 Parity; UINT8 Parity;
/// ///
/// The number of stop bits for the UART style device. /// The number of stop bits for the UART style device.
/// Stop Bits 0x00 - Default Stop Bits /// Stop Bits 0x00 - Default Stop Bits.
/// Stop Bits 0x01 - 1 Stop Bit /// Stop Bits 0x01 - 1 Stop Bit.
/// Stop Bits 0x02 - 1.5 Stop Bits /// Stop Bits 0x02 - 1.5 Stop Bits.
/// Stop Bits 0x03 - 2 Stop Bits /// Stop Bits 0x03 - 2 Stop Bits.
/// ///
UINT8 StopBits; UINT8 StopBits;
} UART_DEVICE_PATH; } UART_DEVICE_PATH;
@ -675,7 +675,7 @@ typedef VENDOR_DEVICE_PATH VENDOR_DEFINED_DEVICE_PATH;
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// DEVICE_PATH_MESSAGING_UART_FLOW_CONTROL GUID /// DEVICE_PATH_MESSAGING_UART_FLOW_CONTROL GUID.
/// ///
EFI_GUID Guid; EFI_GUID Guid;
/// ///
@ -694,7 +694,7 @@ typedef struct {
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// DEVICE_PATH_MESSAGING_SAS GUID /// DEVICE_PATH_MESSAGING_SAS GUID.
/// ///
EFI_GUID Guid; EFI_GUID Guid;
/// ///
@ -710,11 +710,11 @@ typedef struct {
/// ///
UINT64 Lun; UINT64 Lun;
/// ///
/// More Information about the device and its interconnect /// More Information about the device and its interconnect.
/// ///
UINT16 DeviceTopology; UINT16 DeviceTopology;
/// ///
/// Relative Target Port (RTP) /// Relative Target Port (RTP).
/// ///
UINT16 RelativeTargetPort; UINT16 RelativeTargetPort;
} SAS_DEVICE_PATH; } SAS_DEVICE_PATH;
@ -726,15 +726,15 @@ typedef struct {
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// Network Protocol (0 = TCP, 1+ = reserved) /// Network Protocol (0 = TCP, 1+ = reserved).
/// ///
UINT16 NetworkProtocol; UINT16 NetworkProtocol;
/// ///
/// iSCSI Login Options /// iSCSI Login Options.
/// ///
UINT16 LoginOption; UINT16 LoginOption;
/// ///
/// iSCSI Logical Unit Number /// iSCSI Logical Unit Number.
/// ///
UINT64 Lun; UINT64 Lun;
/// ///
@ -746,7 +746,7 @@ typedef struct {
/// iSCSI NodeTarget Name. The length of the name /// iSCSI NodeTarget Name. The length of the name
/// is determined by subtracting the offset of this field from Length. /// is determined by subtracting the offset of this field from Length.
/// ///
/// CHAR8 iSCSI Target Name /// CHAR8 iSCSI Target Name.
} ISCSI_DEVICE_PATH; } ISCSI_DEVICE_PATH;
#define ISCSI_LOGIN_OPTION_NO_HEADER_DIGEST 0x0000 #define ISCSI_LOGIN_OPTION_NO_HEADER_DIGEST 0x0000
@ -759,13 +759,13 @@ typedef struct {
#define ISCSI_LOGIN_OPTION_CHAP_UNI 0x2000 #define ISCSI_LOGIN_OPTION_CHAP_UNI 0x2000
/// ///
/// VLAN Device Path SubType /// VLAN Device Path SubType.
/// ///
#define MSG_VLAN_DP 0x14 #define MSG_VLAN_DP 0x14
typedef struct { typedef struct {
EFI_DEVICE_PATH_PROTOCOL Header; EFI_DEVICE_PATH_PROTOCOL Header;
/// ///
/// VLAN identifier (0-4094) /// VLAN identifier (0-4094).
/// ///
UINT16 VlanId; UINT16 VlanId;
} VLAN_DEVICE_PATH; } VLAN_DEVICE_PATH;
@ -776,7 +776,7 @@ typedef struct {
#define MEDIA_DEVICE_PATH 0x04 #define MEDIA_DEVICE_PATH 0x04
/// ///
/// Hard Drive Media Device Path SubType /// Hard Drive Media Device Path SubType.
/// ///
#define MEDIA_HARDDRIVE_DP 0x01 #define MEDIA_HARDDRIVE_DP 0x01
@ -793,11 +793,11 @@ typedef struct {
/// ///
UINT32 PartitionNumber; UINT32 PartitionNumber;
/// ///
/// Starting LBA of the partition on the hard drive /// Starting LBA of the partition on the hard drive.
/// ///
UINT64 PartitionStart; UINT64 PartitionStart;
/// ///
/// Size of the partition in units of Logical Blocks /// Size of the partition in units of Logical Blocks.
/// ///
UINT64 PartitionSize; UINT64 PartitionSize;
/// ///
@ -809,13 +809,13 @@ typedef struct {
/// ///
UINT8 Signature[16]; UINT8 Signature[16];
/// ///
/// Partition Format: (Unused values reserved) /// Partition Format: (Unused values reserved).
/// 0x01 - PC-AT compatible legacy MBR /// 0x01 - PC-AT compatible legacy MBR.
/// 0x02 - GUID Partition Table /// 0x02 - GUID Partition Table.
/// ///
UINT8 MBRType; UINT8 MBRType;
/// ///
/// Type of Disk Signature: (Unused values reserved) /// Type of Disk Signature: (Unused values reserved).
/// 0x00 - No Disk Signature. /// 0x00 - No Disk Signature.
/// 0x01 - 32-bit signature from address 0x1b8 of the type 0x01 MBR. /// 0x01 - 32-bit signature from address 0x1b8 of the type 0x01 MBR.
/// 0x02 - GUID signature. /// 0x02 - GUID signature.
@ -831,7 +831,7 @@ typedef struct {
#define SIGNATURE_TYPE_GUID 0x02 #define SIGNATURE_TYPE_GUID 0x02
/// ///
/// CD-ROM Media Device Path SubType /// CD-ROM Media Device Path SubType.
/// ///
#define MEDIA_CDROM_DP 0x02 #define MEDIA_CDROM_DP 0x02
@ -857,7 +857,7 @@ typedef struct {
// //
// Use VENDOR_DEVICE_PATH struct // Use VENDOR_DEVICE_PATH struct
// //
#define MEDIA_VENDOR_DP 0x03 ///< Media vendor device path subtype #define MEDIA_VENDOR_DP 0x03 ///< Media vendor device path subtype.
/// ///
/// File Path Media Device Path SubType /// File Path Media Device Path SubType
@ -874,7 +874,7 @@ typedef struct {
#define SIZE_OF_FILEPATH_DEVICE_PATH OFFSET_OF(FILEPATH_DEVICE_PATH,PathName) #define SIZE_OF_FILEPATH_DEVICE_PATH OFFSET_OF(FILEPATH_DEVICE_PATH,PathName)
/// ///
/// Media Protocol Device Path SubType /// Media Protocol Device Path SubType.
/// ///
#define MEDIA_PROTOCOL_DP 0x05 #define MEDIA_PROTOCOL_DP 0x05
@ -892,7 +892,7 @@ typedef struct {
} MEDIA_PROTOCOL_DEVICE_PATH; } MEDIA_PROTOCOL_DEVICE_PATH;
/// ///
/// PIWG Firmware Volume Device Path SubType /// PIWG Firmware Volume Device Path SubType.
/// ///
#define MEDIA_PIWG_FW_FILE_DP 0x06 #define MEDIA_PIWG_FW_FILE_DP 0x06
@ -908,7 +908,7 @@ typedef struct {
} MEDIA_FW_VOL_FILEPATH_DEVICE_PATH; } MEDIA_FW_VOL_FILEPATH_DEVICE_PATH;
/// ///
/// PIWG Firmware Volume Device Path SubType /// PIWG Firmware Volume Device Path SubType.
/// ///
#define MEDIA_PIWG_FW_VOL_DP 0x07 #define MEDIA_PIWG_FW_VOL_DP 0x07
@ -924,7 +924,7 @@ typedef struct {
} MEDIA_FW_VOL_DEVICE_PATH; } MEDIA_FW_VOL_DEVICE_PATH;
/// ///
/// Media relative offset range device path /// Media relative offset range device path.
/// ///
#define MEDIA_RELATIVE_OFFSET_RANGE_DP 0x08 #define MEDIA_RELATIVE_OFFSET_RANGE_DP 0x08
@ -939,12 +939,12 @@ typedef struct {
} MEDIA_RELATIVE_OFFSET_RANGE_DEVICE_PATH; } MEDIA_RELATIVE_OFFSET_RANGE_DEVICE_PATH;
/// ///
/// BIOS Boot Specification Device Path /// BIOS Boot Specification Device Path.
/// ///
#define BBS_DEVICE_PATH 0x05 #define BBS_DEVICE_PATH 0x05
/// ///
/// BIOS Boot Specification Device Path SubType /// BIOS Boot Specification Device Path SubType.
/// ///
#define BBS_BBS_DP 0x01 #define BBS_BBS_DP 0x01
@ -958,7 +958,7 @@ typedef struct {
/// ///
UINT16 DeviceType; UINT16 DeviceType;
/// ///
/// Status Flags as defined by the BIOS Boot Specification /// Status Flags as defined by the BIOS Boot Specification.
/// ///
UINT16 StatusFlag; UINT16 StatusFlag;
/// ///
@ -981,7 +981,7 @@ typedef struct {
/// ///
/// Union of all possible Device Paths and pointers to Device Paths /// Union of all possible Device Paths and pointers to Device Paths.
/// ///
typedef union { typedef union {
EFI_DEVICE_PATH_PROTOCOL DevPath; EFI_DEVICE_PATH_PROTOCOL DevPath;

View File

@ -4,17 +4,17 @@
These protocols are used to collect configuration information for the EFI IPv4 Protocol These protocols are used to collect configuration information for the EFI IPv4 Protocol
drivers and to provide DHCPv4 server and PXE boot server discovery services. drivers and to provide DHCPv4 server and PXE boot server discovery services.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is introduced in UEFI Specification 2.0 This Protocol was introduced in UEFI Specification 2.0.
**/ **/
@ -64,11 +64,11 @@ typedef struct {
UINT32 Xid; UINT32 Xid;
UINT16 Seconds; UINT16 Seconds;
UINT16 Reserved; UINT16 Reserved;
EFI_IPv4_ADDRESS ClientAddr; ///< Client IP address from client EFI_IPv4_ADDRESS ClientAddr; ///< Client IP address from client.
EFI_IPv4_ADDRESS YourAddr; ///< Client IP address from server EFI_IPv4_ADDRESS YourAddr; ///< Client IP address from server.
EFI_IPv4_ADDRESS ServerAddr; ///< IP address of next server in bootstrap EFI_IPv4_ADDRESS ServerAddr; ///< IP address of next server in bootstrap.
EFI_IPv4_ADDRESS GatewayAddr; ///< Relay agent IP address EFI_IPv4_ADDRESS GatewayAddr; ///< Relay agent IP address.
UINT8 ClientHwAddr[16]; ///< Client hardware address UINT8 ClientHwAddr[16]; ///< Client hardware address.
CHAR8 ServerName[64]; CHAR8 ServerName[64];
CHAR8 BootFileName[128]; CHAR8 BootFileName[128];
}EFI_DHCP4_HEADER; }EFI_DHCP4_HEADER;
@ -107,11 +107,11 @@ typedef struct {
typedef enum { typedef enum {
/// ///
/// The EFI DHCPv4 Protocol driver is stopped /// The EFI DHCPv4 Protocol driver is stopped.
/// ///
Dhcp4Stopped = 0x0, Dhcp4Stopped = 0x0,
/// ///
/// The EFI DHCPv4 Protocol driver is inactive /// The EFI DHCPv4 Protocol driver is inactive.
/// ///
Dhcp4Init = 0x1, Dhcp4Init = 0x1,
/// ///
@ -137,7 +137,7 @@ typedef enum {
/// ///
Dhcp4Rebinding = 0x6, Dhcp4Rebinding = 0x6,
/// ///
/// The EFI DHCPv4 Protocol driver is initialized with a previously /// The EFI DHCPv4 Protocol driver was initialized with a previously
/// allocated or known IP address. /// allocated or known IP address.
/// ///
Dhcp4InitReboot = 0x7, Dhcp4InitReboot = 0x7,
@ -216,9 +216,9 @@ typedef enum{
There are three possible returned values, which are described in the following There are three possible returned values, which are described in the following
table. table.
@param This Pointer to the EFI DHCPv4 Protocol instance that is used to @param This The pointer to the EFI DHCPv4 Protocol instance that is used to
configure this callback function. configure this callback function.
@param Context Pointer to the context that is initialized by @param Context The pointer to the context that is initialized by
EFI_DHCP4_PROTOCOL.Configure(). EFI_DHCP4_PROTOCOL.Configure().
@param CurrentState The current operational state of the EFI DHCPv4 Protocol @param CurrentState The current operational state of the EFI DHCPv4 Protocol
driver. driver.
@ -251,25 +251,25 @@ EFI_STATUS
typedef struct { typedef struct {
/// ///
/// Number of times to try sending a packet during the Dhcp4SendDiscover /// The number of times to try sending a packet during the Dhcp4SendDiscover
/// event and waiting for a response during the Dhcp4RcvdOffer event. /// event and waiting for a response during the Dhcp4RcvdOffer event.
/// Set to zero to use the default try counts and timeout values. /// Set to zero to use the default try counts and timeout values.
/// ///
UINT32 DiscoverTryCount; UINT32 DiscoverTryCount;
/// ///
/// Maximum amount of time (in seconds) to wait for returned packets in each /// The maximum amount of time (in seconds) to wait for returned packets in each
/// of the retries. Timeout values of zero will default to a timeout value /// of the retries. Timeout values of zero will default to a timeout value
/// of one second. Set to NULL to use default timeout values. /// of one second. Set to NULL to use default timeout values.
/// ///
UINT32 *DiscoverTimeout; UINT32 *DiscoverTimeout;
/// ///
/// Number of times to try sending a packet during the Dhcp4SendRequest event /// The number of times to try sending a packet during the Dhcp4SendRequest event
/// and waiting for a response during the Dhcp4RcvdAck event before accepting /// and waiting for a response during the Dhcp4RcvdAck event before accepting
/// failure. Set to zero to use the default try counts and timeout values. /// failure. Set to zero to use the default try counts and timeout values.
/// ///
UINT32 RequestTryCount; UINT32 RequestTryCount;
/// ///
/// Maximum amount of time (in seconds) to wait for return packets in each of the retries. /// The maximum amount of time (in seconds) to wait for return packets in each of the retries.
/// Timeout values of zero will default to a timeout value of one second. /// Timeout values of zero will default to a timeout value of one second.
/// Set to NULL to use default timeout values. /// Set to NULL to use default timeout values.
/// ///
@ -288,7 +288,7 @@ typedef struct {
/// ///
EFI_DHCP4_CALLBACK Dhcp4Callback; EFI_DHCP4_CALLBACK Dhcp4Callback;
/// ///
/// Pointer to the context that will be passed to Dhcp4Callback when it is called. /// The pointer to the context that will be passed to Dhcp4Callback when it is called.
/// ///
VOID *CallbackContext; VOID *CallbackContext;
/// ///
@ -379,15 +379,15 @@ typedef struct {
/// ///
EFI_EVENT CompletionEvent; EFI_EVENT CompletionEvent;
/// ///
/// Pointer to the server IP address. This address may be a unicast, multicast, or broadcast address. /// The pointer to the server IP address. This address may be a unicast, multicast, or broadcast address.
/// ///
EFI_IPv4_ADDRESS RemoteAddress; EFI_IPv4_ADDRESS RemoteAddress;
/// ///
/// Server listening port number. If zero, the default server listening port number (67) will be used. /// The server listening port number. If zero, the default server listening port number (67) will be used.
/// ///
UINT16 RemotePort; UINT16 RemotePort;
/// ///
/// Pointer to the gateway address to override the existing setting. /// The pointer to the gateway address to override the existing setting.
/// ///
EFI_IPv4_ADDRESS GatewayAddress; EFI_IPv4_ADDRESS GatewayAddress;
/// ///
@ -400,11 +400,11 @@ typedef struct {
/// ///
EFI_DHCP4_LISTEN_POINT *ListenPoints; EFI_DHCP4_LISTEN_POINT *ListenPoints;
/// ///
/// Number of seconds to collect responses. Zero is invalid. /// The number of seconds to collect responses. Zero is invalid.
/// ///
UINT32 TimeoutValue; UINT32 TimeoutValue;
/// ///
/// Pointer to the packet to be transmitted. /// The pointer to the packet to be transmitted.
/// ///
EFI_DHCP4_PACKET *Packet; EFI_DHCP4_PACKET *Packet;
/// ///
@ -412,7 +412,7 @@ typedef struct {
/// ///
UINT32 ResponseCount; UINT32 ResponseCount;
/// ///
/// Pointer to the allocated list of received packets. /// The pointer to the allocated list of received packets.
/// ///
EFI_DHCP4_PACKET *ResponseList; EFI_DHCP4_PACKET *ResponseList;
} EFI_DHCP4_TRANSMIT_RECEIVE_TOKEN; } EFI_DHCP4_TRANSMIT_RECEIVE_TOKEN;
@ -424,8 +424,8 @@ typedef struct {
The GetModeData() function returns the current operating mode and cached data The GetModeData() function returns the current operating mode and cached data
packet for the EFI DHCPv4 Protocol driver. packet for the EFI DHCPv4 Protocol driver.
@param This Pointer to the EFI_DHCP4_PROTOCOL instance. @param This The pointer to the EFI_DHCP4_PROTOCOL instance.
@param Dhcp4ModeData Pointer to storage for the EFI_DHCP4_MODE_DATA structure. @param Dhcp4ModeData The pointer to storage for the EFI_DHCP4_MODE_DATA structure.
@retval EFI_SUCCESS The mode data was returned. @retval EFI_SUCCESS The mode data was returned.
@retval EFI_INVALID_PARAMETER This is NULL. @retval EFI_INVALID_PARAMETER This is NULL.
@ -453,7 +453,7 @@ EFI_STATUS
When this driver is in the Dhcp4Stopped state, it can transfer into one of the When this driver is in the Dhcp4Stopped state, it can transfer into one of the
following two possible initial states: following two possible initial states:
* Dhcp4Init * Dhcp4Init
* Dhcp4InitReboot * Dhcp4InitReboot.
The driver can transfer into these states by calling Configure() with a non-NULL The driver can transfer into these states by calling Configure() with a non-NULL
Dhcp4CfgData. The driver will transfer into the appropriate state based on the Dhcp4CfgData. The driver will transfer into the appropriate state based on the
supplied client network address in the ClientAddress parameter and DHCP options supplied client network address in the ClientAddress parameter and DHCP options
@ -464,8 +464,8 @@ EFI_STATUS
wants to make it possible for another instance to configure the EFI DHCPv4 Protocol wants to make it possible for another instance to configure the EFI DHCPv4 Protocol
driver, it must call this function with Dhcp4CfgData set to NULL. driver, it must call this function with Dhcp4CfgData set to NULL.
@param This Pointer to the EFI_DHCP4_PROTOCOL instance. @param This The pointer to the EFI_DHCP4_PROTOCOL instance.
@param Dhcp4CfgData Pointer to the EFI_DHCP4_CONFIG_DATA. @param Dhcp4CfgData The pointer to the EFI_DHCP4_CONFIG_DATA.
@retval EFI_SUCCESS The EFI DHCPv4 Protocol driver is now in the Dhcp4Init or @retval EFI_SUCCESS The EFI DHCPv4 Protocol driver is now in the Dhcp4Init or
Dhcp4InitReboot state, if the original state of this driver Dhcp4InitReboot state, if the original state of this driver
@ -511,8 +511,8 @@ EFI_STATUS
by EFI_DHCP4_PROTOCOL.Configure() will be called and the user can take this by EFI_DHCP4_PROTOCOL.Configure() will be called and the user can take this
opportunity to control the process. opportunity to control the process.
@param This Pointer to the EFI_DHCP4_PROTOCOL instance. @param This The pointer to the EFI_DHCP4_PROTOCOL instance.
@param CompletionEvent If not NULL, indicates the event that will be signaled when the @param CompletionEvent If not NULL, it indicates the event that will be signaled when the
EFI DHCPv4 Protocol driver is transferred into the EFI DHCPv4 Protocol driver is transferred into the
Dhcp4Bound state or when the DHCP process is aborted. Dhcp4Bound state or when the DHCP process is aborted.
EFI_DHCP4_PROTOCOL.GetModeData() can be called to EFI_DHCP4_PROTOCOL.GetModeData() can be called to
@ -546,7 +546,7 @@ EFI_STATUS
Extends the lease time by sending a request packet. Extends the lease time by sending a request packet.
The RenewRebind() function is used to manually extend the lease time when the The RenewRebind() function is used to manually extend the lease time when the
EFI DHCPv4 Protocol driver is in the Dhcp4Bound state and the lease time has EFI DHCPv4 Protocol driver is in the Dhcp4Bound state, and the lease time has
not expired yet. This function will send a request packet to the previously not expired yet. This function will send a request packet to the previously
found server (or to any server when RebindRequest is TRUE) and transfer the found server (or to any server when RebindRequest is TRUE) and transfer the
state into the Dhcp4Renewing state (or Dhcp4Rebinding when RebindingRequest is state into the Dhcp4Renewing state (or Dhcp4Rebinding when RebindingRequest is
@ -554,10 +554,10 @@ EFI_STATUS
If no response is received before the try count is exceeded (the RequestTryCount If no response is received before the try count is exceeded (the RequestTryCount
field that is specified in EFI_DHCP4_CONFIG_DATA) but before the lease time that field that is specified in EFI_DHCP4_CONFIG_DATA) but before the lease time that
was issued by the previous server expires, the driver will return to the Dhcp4Bound was issued by the previous server expires, the driver will return to the Dhcp4Bound
state and the previous configuration is restored. The outgoing and incoming packets state, and the previous configuration is restored. The outgoing and incoming packets
can be captured by the EFI_DHCP4_CALLBACK function. can be captured by the EFI_DHCP4_CALLBACK function.
@param This Pointer to the EFI_DHCP4_PROTOCOL instance. @param This The pointer to the EFI_DHCP4_PROTOCOL instance.
@param RebindRequest If TRUE, this function broadcasts the request packets and enters @param RebindRequest If TRUE, this function broadcasts the request packets and enters
the Dhcp4Rebinding state. Otherwise, it sends a unicast the Dhcp4Rebinding state. Otherwise, it sends a unicast
request packet and enters the Dhcp4Renewing state. request packet and enters the Dhcp4Renewing state.
@ -599,9 +599,9 @@ EFI_STATUS
EFI_DHCP4_PROTOCOL.Configure() function to 0.0.0.0 when the driver is in EFI_DHCP4_PROTOCOL.Configure() function to 0.0.0.0 when the driver is in
Dhcp4InitReboot state Dhcp4InitReboot state
After a successful call to this function, the EFI DHCPv4 Protocol driver returns After a successful call to this function, the EFI DHCPv4 Protocol driver returns
to the Dhcp4Init state and any subsequent incoming packets will be discarded silently. to the Dhcp4Init state, and any subsequent incoming packets will be discarded silently.
@param This Pointer to the EFI_DHCP4_PROTOCOL instance. @param This The pointer to the EFI_DHCP4_PROTOCOL instance.
@retval EFI_SUCCESS The EFI DHCPv4 Protocol driver is now in the Dhcp4Init phase. @retval EFI_SUCCESS The EFI DHCPv4 Protocol driver is now in the Dhcp4Init phase.
@retval EFI_INVALID_PARAMETER This is NULL. @retval EFI_INVALID_PARAMETER This is NULL.
@ -624,7 +624,7 @@ EFI_STATUS
before DHCP configuration process can be started again. This function can be before DHCP configuration process can be started again. This function can be
called when the EFI DHCPv4 Protocol driver is in any state. called when the EFI DHCPv4 Protocol driver is in any state.
@param This Pointer to the EFI_DHCP4_PROTOCOL instance. @param This The pointer to the EFI_DHCP4_PROTOCOL instance.
@retval EFI_SUCCESS The EFI DHCPv4 Protocol driver is now in the Dhcp4Stopped phase. @retval EFI_SUCCESS The EFI DHCPv4 Protocol driver is now in the Dhcp4Stopped phase.
@retval EFI_INVALID_PARAMETER This is NULL. @retval EFI_INVALID_PARAMETER This is NULL.
@ -644,17 +644,17 @@ EFI_STATUS
does not change any state of the EFI DHCPv4 Protocol driver and can be used at does not change any state of the EFI DHCPv4 Protocol driver and can be used at
any time. any time.
@param This Pointer to the EFI_DHCP4_PROTOCOL instance. @param This The pointer to the EFI_DHCP4_PROTOCOL instance.
@param SeedPacket Initial packet to be used as a base for building new packet. @param SeedPacket Initial packet to be used as a base for building new packet.
@param DeleteCount Number of opcodes in the DeleteList. @param DeleteCount Number of opcodes in the DeleteList.
@param DeleteList List of opcodes to be deleted from the seed packet. @param DeleteList List of opcodes to be deleted from the seed packet.
Ignored if DeleteCount is zero. Ignored if DeleteCount is zero.
@param AppendCount Number of entries in the OptionList. @param AppendCount Number of entries in the OptionList.
@param AppendList Pointer to a DHCP option list to be appended to SeedPacket. @param AppendList The pointer to a DHCP option list to be appended to SeedPacket.
If SeedPacket also contains options in this list, they are If SeedPacket also contains options in this list, they are
replaced by new options (except pad option). Ignored if replaced by new options (except pad option). Ignored if
AppendCount is zero. Type EFI_DHCP4_PACKET_OPTION AppendCount is zero. Type EFI_DHCP4_PACKET_OPTION
@param NewPacket Pointer to storage for the pointer to the new allocated packet. @param NewPacket The pointer to storage for the pointer to the new allocated packet.
Use the EFI Boot Service FreePool() on the resulting pointer Use the EFI Boot Service FreePool() on the resulting pointer
when done with the packet. when done with the packet.
@ -689,10 +689,10 @@ EFI_STATUS
The TransmitReceive() function is used to transmit a DHCP packet and optionally The TransmitReceive() function is used to transmit a DHCP packet and optionally
wait for the response from servers. This function does not change the state of wait for the response from servers. This function does not change the state of
the EFI DHCPv4 Protocol driver and thus can be used at any time. the EFI DHCPv4 Protocol driver. It can be used at any time because of this.
@param This Pointer to the EFI_DHCP4_PROTOCOL instance. @param This The pointer to the EFI_DHCP4_PROTOCOL instance.
@param Token Pointer to the EFI_DHCP4_TRANSMIT_RECEIVE_TOKEN structure. @param Token The pointer to the EFI_DHCP4_TRANSMIT_RECEIVE_TOKEN structure.
@retval EFI_SUCCESS The packet was successfully queued for transmission. @retval EFI_SUCCESS The packet was successfully queued for transmission.
@retval EFI_INVALID_PARAMETER One or more of the following conditions is TRUE: @retval EFI_INVALID_PARAMETER One or more of the following conditions is TRUE:
@ -728,25 +728,25 @@ EFI_STATUS
If *OptionCount is zero or there isn't enough space for all of them, the number If *OptionCount is zero or there isn't enough space for all of them, the number
of DHCP options in the Packet is returned in OptionCount. of DHCP options in the Packet is returned in OptionCount.
@param This Pointer to the EFI_DHCP4_PROTOCOL instance. @param This The pointer to the EFI_DHCP4_PROTOCOL instance.
@param Packet Pointer to packet to be parsed. @param Packet The pointer to packet to be parsed.
@param OptionCount On input, the number of entries in the PacketOptionList. @param OptionCount On input, the number of entries in the PacketOptionList.
On output, the number of entries that were written into the On output, the number of entries that were written into the
PacketOptionList. PacketOptionList.
@param PacketOptionList List of packet option entries to be filled in. End option or pad @param PacketOptionList A list of packet option entries to be filled in. End option or pad
options are not included. options are not included.
@retval EFI_SUCCESS The packet was successfully parsed. @retval EFI_SUCCESS The packet was successfully parsed.
@retval EFI_INVALID_PARAMETER One or more of the following conditions is TRUE: @retval EFI_INVALID_PARAMETER One or more of the following conditions is TRUE:
This is NULL. This is NULL.
Packet is NULL. The packet is NULL.
Packet is not a well-formed DHCP packet. The packet is not a well-formed DHCP packet.
OptionCount is NULL. OptionCount is NULL.
@retval EFI_BUFFER_TOO_SMALL One or more of the following conditions is TRUE: @retval EFI_BUFFER_TOO_SMALL One or more of the following conditions is TRUE:
1) *OptionCount is smaller than the number of options that 1) *OptionCount is smaller than the number of options that
were found in the Packet. were found in the Packet.
2) PacketOptionList is NULL. 2) PacketOptionList is NULL.
@retval EFI_OUT_OF_RESOURCE The packet is failed to parse because of resource shortage. @retval EFI_OUT_OF_RESOURCE The packet failed to parse because of a resource shortage.
**/ **/
typedef typedef

View File

@ -4,14 +4,14 @@
This protocol is produced by every driver that follows the UEFI Driver Model, This protocol is produced by every driver that follows the UEFI Driver Model,
and it is the central component that allows drivers and controllers to be managed. and it is the central component that allows drivers and controllers to be managed.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -19,7 +19,7 @@
#define __EFI_DRIVER_BINDING_H__ #define __EFI_DRIVER_BINDING_H__
/// ///
/// Global ID for the ControllerHandle Driver Protocol /// The global ID for the ControllerHandle Driver Protocol.
/// ///
#define EFI_DRIVER_BINDING_PROTOCOL_GUID \ #define EFI_DRIVER_BINDING_PROTOCOL_GUID \
{ \ { \
@ -42,7 +42,7 @@ typedef struct _EFI_DRIVER_BINDING_PROTOCOL EFI_DRIVER_BINDING_PROTOCOL;
device specified by ControllerHandle may already be managed by the same driver or a device specified by ControllerHandle may already be managed by the same driver or a
different driver. This function must match its calls to AllocatePages() with FreePages(), different driver. This function must match its calls to AllocatePages() with FreePages(),
AllocatePool() with FreePool(), and OpenProtocol() with CloseProtocol(). AllocatePool() with FreePool(), and OpenProtocol() with CloseProtocol().
Since ControllerHandle may have been previously started by the same driver, if a protocol is Because ControllerHandle may have been previously started by the same driver, if a protocol is
already in the opened state, then it must not be closed with CloseProtocol(). This is required already in the opened state, then it must not be closed with CloseProtocol(). This is required
to guarantee the state of ControllerHandle is not modified by this function. to guarantee the state of ControllerHandle is not modified by this function.
@ -84,7 +84,7 @@ EFI_STATUS
The Start() function is designed to be invoked from the EFI boot service ConnectController(). The Start() function is designed to be invoked from the EFI boot service ConnectController().
As a result, much of the error checking on the parameters to Start() has been moved into this As a result, much of the error checking on the parameters to Start() has been moved into this
common boot service. It is legal to call Start() from other locations, common boot service. It is legal to call Start() from other locations,
but the following calling restrictions must be followed or the system behavior will not be deterministic. but the following calling restrictions must be followed, or the system behavior will not be deterministic.
1. ControllerHandle must be a valid EFI_HANDLE. 1. ControllerHandle must be a valid EFI_HANDLE.
2. If RemainingDevicePath is not NULL, then it must be a pointer to a naturally aligned 2. If RemainingDevicePath is not NULL, then it must be a pointer to a naturally aligned
EFI_DEVICE_PATH_PROTOCOL. EFI_DEVICE_PATH_PROTOCOL.
@ -127,7 +127,7 @@ EFI_STATUS
The Stop() function is designed to be invoked from the EFI boot service DisconnectController(). The Stop() function is designed to be invoked from the EFI boot service DisconnectController().
As a result, much of the error checking on the parameters to Stop() has been moved As a result, much of the error checking on the parameters to Stop() has been moved
into this common boot service. It is legal to call Stop() from other locations, into this common boot service. It is legal to call Stop() from other locations,
but the following calling restrictions must be followed or the system behavior will not be deterministic. but the following calling restrictions must be followed, or the system behavior will not be deterministic.
1. ControllerHandle must be a valid EFI_HANDLE that was used on a previous call to this 1. ControllerHandle must be a valid EFI_HANDLE that was used on a previous call to this
same driver's Start() function. same driver's Start() function.
2. The first NumberOfChildren handles of ChildHandleBuffer must all be a valid 2. The first NumberOfChildren handles of ChildHandleBuffer must all be a valid

View File

@ -1,14 +1,14 @@
/** @file /** @file
EFI Driver Diagnostics Protocol EFI Driver Diagnostics Protocol
Copyright (c) 2006 - 2008, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -16,7 +16,7 @@
#define __EFI_DRIVER_DIAGNOSTICS_H__ #define __EFI_DRIVER_DIAGNOSTICS_H__
/// ///
/// Global ID for the Driver Diagnostics Protocol as defined in EFI 1.1. /// The global ID for the Driver Diagnostics Protocol as defined in EFI 1.1.
/// ///
#define EFI_DRIVER_DIAGNOSTICS_PROTOCOL_GUID \ #define EFI_DRIVER_DIAGNOSTICS_PROTOCOL_GUID \
{ \ { \
@ -74,7 +74,7 @@ typedef enum {
@retval EFI_SUCCESS The controller specified by ControllerHandle and @retval EFI_SUCCESS The controller specified by ControllerHandle and
ChildHandle passed the diagnostic. ChildHandle passed the diagnostic.
@retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE. @retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.
@retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE. @retval EFI_INVALID_PARAMETER ChildHandle is not NULL, and it is not a valid EFI_HANDLE.
@retval EFI_INVALID_PARAMETER Language is NULL. @retval EFI_INVALID_PARAMETER Language is NULL.
@retval EFI_INVALID_PARAMETER ErrorType is NULL. @retval EFI_INVALID_PARAMETER ErrorType is NULL.
@retval EFI_INVALID_PARAMETER BufferType is NULL. @retval EFI_INVALID_PARAMETER BufferType is NULL.

View File

@ -1,14 +1,14 @@
/** @file /** @file
UEFI Driver Family Protocol UEFI Driver Family Protocol
Copyright (c) 2007 - 2009, Intel Corporation Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/

View File

@ -1,14 +1,14 @@
/** @file /** @file
This file provides control over block-oriented firmware devices. This file provides control over block-oriented firmware devices.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: PI @par Revision Reference: PI
Version 1.0 and 1.2. Version 1.0 and 1.2.
@ -98,7 +98,7 @@ EFI_STATUS
return from GetPhysicalAddress(), contains the return from GetPhysicalAddress(), contains the
base address of the firmware volume. base address of the firmware volume.
@retval EFI_SUCCESS The firmware volume base address is returned. @retval EFI_SUCCESS The firmware volume base address was returned.
@retval EFI_NOT_SUPPORTED The firmware volume is not memory mapped. @retval EFI_NOT_SUPPORTED The firmware volume is not memory mapped.
@ -131,7 +131,7 @@ EFI_STATUS
BlockSize. 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. @retval EFI_INVALID_PARAMETER The requested LBA is out of range.
@ -177,7 +177,7 @@ EFI_STATUS
@param Buffer Pointer to a caller-allocated buffer that will @param Buffer Pointer to a caller-allocated buffer that will
be used to hold the data that is read. be used to hold the data that is read.
@retval EFI_SUCCESS The firmware volume was read successfully @retval EFI_SUCCESS The firmware volume was read successfully,
and contents are in Buffer. and contents are in Buffer.
@retval EFI_BAD_BUFFER_SIZE Read attempted across an LBA @retval EFI_BAD_BUFFER_SIZE Read attempted across an LBA
@ -214,9 +214,9 @@ EFI_STATUS
function, or else the result will be unpredictable. This function, or else the result will be unpredictable. This
unpredictability arises because, for a sticky-write firmware unpredictability arises because, for a sticky-write firmware
volume, a write may negate a bit in the EFI_FVB_ERASE_POLARITY volume, a write may negate a bit in the EFI_FVB_ERASE_POLARITY
state but cannot flip it back again. In general, before state but cannot flip it back again. Before calling the
calling the Write() function, the caller should call the Write() function, it is recommended for the caller to first call
EraseBlocks() function first to erase the specified block to the EraseBlocks() function to erase the specified block to
write. A block erase cycle will transition bits from the write. A block erase cycle will transition bits from the
(NOT)EFI_FVB_ERASE_POLARITY state back to the (NOT)EFI_FVB_ERASE_POLARITY state back to the
EFI_FVB_ERASE_POLARITY state. Implementations should be EFI_FVB_ERASE_POLARITY state. Implementations should be
@ -239,12 +239,12 @@ EFI_STATUS
@param Offset Offset into the block at which to begin writing. @param Offset Offset into the block at which to begin writing.
@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 contains the total size of the buffer. At
exit, *NumBytes contains the total number of exit, *NumBytes contains the total number of
bytes actually written. 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. contains the source for the write.
@retval EFI_SUCCESS The firmware volume was written successfully. @retval EFI_SUCCESS The firmware volume was written successfully.
@ -307,7 +307,7 @@ EFI_STATUS
and consists of the following: and consists of the following:
- An EFI_LBA that indicates the starting LBA - An EFI_LBA that indicates the starting LBA
- A UINTN that indicates the number of blocks to - A UINTN that indicates the number of blocks to
erase erase.
The list is terminated with an The list is terminated with an
EFI_LBA_LIST_TERMINATOR. For example, the EFI_LBA_LIST_TERMINATOR. For example, the
@ -315,7 +315,7 @@ EFI_STATUS
(5-7 and 10-11) are to be erased: EraseBlocks (5-7 and 10-11) are to be erased: EraseBlocks
(This, 5, 3, 10, 2, EFI_LBA_LIST_TERMINATOR); (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. completed.
@retval EFI_ACCESS_DENIED The firmware volume is in the @retval EFI_ACCESS_DENIED The firmware volume is in the
@ -354,7 +354,7 @@ struct _EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL{
EFI_FVB_WRITE Write; EFI_FVB_WRITE Write;
EFI_FVB_ERASE_BLOCKS EraseBlocks; EFI_FVB_ERASE_BLOCKS EraseBlocks;
/// ///
/// Handle of the parent firmware volume. /// The handle of the parent firmware volume.
/// ///
EFI_HANDLE ParentHandle; EFI_HANDLE ParentHandle;
}; };

View File

@ -4,14 +4,14 @@
The EFI_FORM_BROWSER2_PROTOCOL is the interface to call for drivers to The EFI_FORM_BROWSER2_PROTOCOL is the interface to call for drivers to
leverage the EFI configuration driver interface. leverage the EFI configuration driver interface.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -30,19 +30,19 @@ typedef struct _EFI_FORM_BROWSER2_PROTOCOL EFI_FORM_BROWSER2_PROTOCOL;
/** /**
@param LeftColumn Value that designates the text column @param LeftColumn The value that designates the text column
where the browser window will begin from where the browser window will begin from
the left-hand side of the screen the left-hand side of the screen
@param RightColumn Value that designates the text @param RightColumn The value that designates the text
column where the browser window will end column where the browser window will end
on the right-hand side of the screen. on the right-hand side of the screen.
@param TopRow Value that designates the text row from the @param TopRow The value that designates the text row from the
top of the screen where the browser window top of the screen where the browser window
will start. will start.
@param BottomRow Value that designates the text row from the @param BottomRow The value that designates the text row from the
bottom of the screen where the browser bottom of the screen where the browser
window will end. window will end.
**/ **/
@ -121,7 +121,8 @@ EFI_STATUS
@param ResultsDataSize A pointer to the size of the buffer @param ResultsDataSize A pointer to the size of the buffer
associated with ResultsData. On input, the size in associated with ResultsData. On input, the size in
bytes of ResultsData. On output, the size of data returned in ResultsData. bytes of ResultsData. On output, the size of data
returned in ResultsData.
@param ResultsData A string returned from an IFR browser or @param ResultsData A string returned from an IFR browser or
equivalent. The results string will have equivalent. The results string will have

View File

@ -5,14 +5,14 @@
provided by a driver and to create and destroy instances of the EFI Hash Protocol provided by a driver and to create and destroy instances of the EFI Hash Protocol
so that a multiple drivers can use the underlying hashing services. so that a multiple drivers can use the underlying hashing services.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -113,7 +113,7 @@ EFI_STATUS
@retval EFI_SUCCESS Hash returned successfully. @retval EFI_SUCCESS Hash returned successfully.
@retval EFI_INVALID_PARAMETER Message or Hash is NULL @retval EFI_INVALID_PARAMETER Message or Hash is NULL
@retval EFI_UNSUPPORTED The algorithm specified by HashAlgorithm is not supported by this @retval EFI_UNSUPPORTED The algorithm specified by HashAlgorithm is not supported by this
driver. Or extend is TRUE and the algorithm doesn't support extending the hash. driver. Or, Extend is TRUE, and the algorithm doesn't support extending the hash.
**/ **/
typedef typedef

View File

@ -5,14 +5,14 @@
This protocol is published by drivers providing and requesting This protocol is published by drivers providing and requesting
configuration data from HII. It may only be invoked by HII. configuration data from HII. It may only be invoked by HII.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -72,7 +72,7 @@ typedef UINTN EFI_BROWSER_ACTION;
failing name / value pair (or the beginning failing name / value pair (or the beginning
of the string if the failure is in the first of the string if the failure is in the first
name / value pair) if the request was not name / value pair) if the request was not
successful successful.
@param Results A null-terminated Unicode string in @param Results A null-terminated Unicode string in
<MultiConfigAltResp> format which has all values <MultiConfigAltResp> format which has all values

View File

@ -5,14 +5,14 @@
information from configuration applications, routing the information from configuration applications, routing the
results to the appropriate drivers. results to the appropriate drivers.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -30,10 +30,10 @@ typedef struct _EFI_HII_CONFIG_ROUTING_PROTOCOL EFI_HII_CONFIG_ROUTING_PROTOCOL;
This function allows the caller to request the current This function allows the caller to request the current
configuration for one or more named elements from one or more configuration for one or more named elements from one or more
drivers. The resulting string is in the standard HII drivers. The resulting string is in the standard HII
configuration string format. If Successful Results contains an configuration string format. If Successful, Results contains an
equivalent string with "=" and the values associated with all equivalent string with "=" and the values associated with all
names added in. The expected implementation is for each names added in. The expected implementation is for each
<ConfigRequest> substring in the Request, call the HII <ConfigRequest> substring in the Request to call the HII
Configuration Routing Protocol ExtractProtocol function for the Configuration Routing Protocol ExtractProtocol function for the
driver corresponding to the <ConfigHdr> at the start of the driver corresponding to the <ConfigHdr> at the start of the
<ConfigRequest> substring. The request fails if no driver <ConfigRequest> substring. The request fails if no driver
@ -60,7 +60,7 @@ typedef struct _EFI_HII_CONFIG_ROUTING_PROTOCOL EFI_HII_CONFIG_ROUTING_PROTOCOL;
@param Progress On return, points to a character in the @param Progress On return, points to a character in the
Request string. Points to the string's null Request string. Points to the string's null
terminator if request was successful. Points terminator if the request was successful. Points
to the most recent '&' before the first to the most recent '&' before the first
failing name / value pair (or the beginning failing name / value pair (or the beginning
of the string if the failure is in the first of the string if the failure is in the first
@ -96,8 +96,8 @@ typedef struct _EFI_HII_CONFIG_ROUTING_PROTOCOL EFI_HII_CONFIG_ROUTING_PROTOCOL;
configuration extraction. configuration extraction.
@retval EFI_INVALID_PARAMETER Illegal syntax. Progress set @retval EFI_INVALID_PARAMETER Illegal syntax. Progress set
to most recent & before the to the most recent & before the
error or the beginning of the error, or the beginning of the
string. string.
@retval EFI_INVALID_PARAMETER Unknown name. @retval EFI_INVALID_PARAMETER Unknown name.
@ -172,7 +172,7 @@ EFI_STATUS
offset of the most recent '&' before the offset of the most recent '&' before the
first failing name / value pair (or the first failing name / value pair (or the
beginning of the string if the failure is in beginning of the string if the failure is in
the first name / value pair) or the the first name / value pair), or the
terminating NULL if all was successful. terminating NULL if all was successful.
@retval EFI_SUCCESS The results have been distributed or are @retval EFI_SUCCESS The results have been distributed or are
@ -187,8 +187,8 @@ EFI_STATUS
Results parameter would result Results parameter would result
in this type of error. in this type of error.
@retval EFI_NOT_FOUND Target for the specified routing data @retval EFI_NOT_FOUND The target for the specified routing data
was not found was not found.
**/ **/
typedef typedef
@ -216,12 +216,12 @@ EFI_STATUS
@param ConfigRequest A null-terminated string in <ConfigRequest> format. @param ConfigRequest A null-terminated string in <ConfigRequest> format.
@param Block Array of bytes defining the block's @param Block An array of bytes defining the block's
configuration. configuration.
@param BlockSize Length in bytes of Block. @param BlockSize The length in bytes of Block.
@param Config Filled-in configuration string. String @param Config The filled-in configuration string. String
allocated by the function. Returned only if allocated by the function. Returned only if
call is successful. The null-terminated string call is successful. The null-terminated string
will be <ConfigResp> format. will be <ConfigResp> format.
@ -230,7 +230,7 @@ EFI_STATUS
offset of the most recent '&' before the offset of the most recent '&' before the
first failing name / value pair (or the first failing name / value pair (or the
beginning of the string if the failure is in beginning of the string if the failure is in
the first name / value pair) or the the first name / value pair), or the
terminating NULL if all was successful. terminating NULL if all was successful.
@retval EFI_SUCCESS The request succeeded. Progress points @retval EFI_SUCCESS The request succeeded. Progress points
@ -248,11 +248,11 @@ EFI_STATUS
to the first character of to the first character of
ConfigRequest. ConfigRequest.
@retval EFI_NOT_FOUND Target for the specified routing data @retval EFI_NOT_FOUND The target for the specified routing data
was not found. Progress points to the was not found. Progress points to the
'G' in "GUID" of the errant routing 'G' in "GUID" of the errant routing
data. data.
@retval EFI_DEVICE_ERROR Block not large enough. Progress undefined. @retval EFI_DEVICE_ERROR The block is not large enough. Progress undefined.
@retval EFI_INVALID_PARAMETER Encountered non <BlockName> @retval EFI_INVALID_PARAMETER Encountered non <BlockName>
formatted string. Block is formatted string. Block is
@ -300,7 +300,7 @@ EFI_STATUS
BlockLength parameter is (on input) BlockLength parameter is (on input)
shorter than required by the shorter than required by the
Configuration string, only the BlockSize Configuration string, only the BlockSize
parameter is updated and an appropriate parameter is updated, and an appropriate
status (see below) is returned. status (see below) is returned.
@param BlockSize The length of the Block in units of UINT8. @param BlockSize The length of the Block in units of UINT8.
@ -313,7 +313,7 @@ EFI_STATUS
of the most recent "&" before the first of the most recent "&" before the first
failing name / value pair (or the beginning failing name / value pair (or the beginning
of the string if the failure is in the first of the string if the failure is in the first
name / value pair) or the terminating NULL name / value pair), or the terminating NULL
if all was successful. if all was successful.
@retval EFI_SUCCESS The request succeeded. Progress points to the null @retval EFI_SUCCESS The request succeeded. Progress points to the null
@ -371,7 +371,7 @@ EFI_STATUS
and placed in the newly allocated AltCfgResp buffer. and placed in the newly allocated AltCfgResp buffer.
@retval EFI_OUT_OF_RESOURCES Not enough memory to allocate AltCfgResp. @retval EFI_OUT_OF_RESOURCES Not enough memory to allocate AltCfgResp.
@retval EFI_INVALID_PARAMETER Any parameter is invalid. @retval EFI_INVALID_PARAMETER Any parameter is invalid.
@retval EFI_NOT_FOUND Target for the specified routing data was not found. @retval EFI_NOT_FOUND The target for the specified routing data was not found.
**/ **/
typedef typedef
EFI_STATUS EFI_STATUS

View File

@ -2,14 +2,14 @@
The file provides Database manager for HII-related data The file provides Database manager for HII-related data
structures. structures.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -24,7 +24,7 @@ typedef struct _EFI_HII_DATABASE_PROTOCOL EFI_HII_DATABASE_PROTOCOL;
/// ///
/// EFI_HII_DATABASE_NOTIFY_TYPE /// EFI_HII_DATABASE_NOTIFY_TYPE.
/// ///
typedef UINTN EFI_HII_DATABASE_NOTIFY_TYPE; typedef UINTN EFI_HII_DATABASE_NOTIFY_TYPE;
@ -98,7 +98,7 @@ EFI_STATUS
resources for the new database resources for the new database
contents. contents.
@retval EFI_INVALID_PARAMETER PackageList is NULL or Handle is NULL. @retval EFI_INVALID_PARAMETER PackageList is NULL, or Handle is NULL.
**/ **/
typedef typedef
@ -212,7 +212,7 @@ EFI_STATUS
the length of the handle buffer the length of the handle buffer
that is required for the handles found. that is required for the handles found.
@param Handle An array of EFI_HII_HANDLE instances returned. @param Handle An array of EFI_HII_HANDLE instances returned.
@retval EFI_SUCCESS The matching handles are outputed successfully. @retval EFI_SUCCESS The matching handles are outputed successfully.
HandleBufferLength is updated with the actual length. HandleBufferLength is updated with the actual length.
@ -222,7 +222,7 @@ EFI_STATUS
handles. HandleBufferLength is handles. HandleBufferLength is
updated with a value that will updated with a value that will
enable the data to fit. enable the data to fit.
@retval EFI_NOT_FOUND No matching handle could not be found in database. @retval EFI_NOT_FOUND No matching handle could be found in database.
@retval EFI_INVALID_PARAMETER Handle or HandleBufferLength was NULL. @retval EFI_INVALID_PARAMETER Handle or HandleBufferLength was NULL.
@retval EFI_INVALID_PARAMETER PackageType is not a EFI_HII_PACKAGE_TYPE_GUID but @retval EFI_INVALID_PARAMETER PackageType is not a EFI_HII_PACKAGE_TYPE_GUID but
PackageGuid is not NULL, PackageType is a EFI_HII_ PackageGuid is not NULL, PackageType is a EFI_HII_
@ -314,7 +314,7 @@ EFI_STATUS
@param NotifyType Describes the types of notification which @param NotifyType Describes the types of notification which
this function will be receiving. See this function will be receiving. See
EFI_HII_DATABASE_NOTIFY_TYPE for more a EFI_HII_DATABASE_NOTIFY_TYPE for a
list of types. list of types.
@param NotifyHandle Points to the unique handle assigned to @param NotifyHandle Points to the unique handle assigned to
@ -354,7 +354,7 @@ EFI_STATUS
@param NotificationHandle The handle of the notification @param NotificationHandle The handle of the notification
function being unregistered. function being unregistered.
@retval EFI_SUCCESS Unregister the notification Successsfully @retval EFI_SUCCESS Successsfully unregistered the notification.
@retval EFI_NOT_FOUND The incoming notification handle does not exist @retval EFI_NOT_FOUND The incoming notification handle does not exist
in the current hii database. in the current hii database.
@ -407,7 +407,7 @@ EFI_STATUS
/** /**
This routine retrieves the requested keyboard layout. The layout This routine retrieves the requested keyboard layout. The layout
is a physical description of the keys on a keyboard and the is a physical description of the keys on a keyboard, and the
character(s) that are associated with a particular set of key character(s) that are associated with a particular set of key
strokes. strokes.

View File

@ -1,14 +1,14 @@
/** @file /** @file
The file provides services to retrieve font information. The file provides services to retrieve font information.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -26,7 +26,7 @@ typedef struct _EFI_HII_FONT_PROTOCOL EFI_HII_FONT_PROTOCOL;
typedef VOID *EFI_FONT_HANDLE; typedef VOID *EFI_FONT_HANDLE;
/// ///
/// EFI_HII_OUT_FLAGS /// EFI_HII_OUT_FLAGS.
/// ///
typedef UINT32 EFI_HII_OUT_FLAGS; typedef UINT32 EFI_HII_OUT_FLAGS;
@ -110,7 +110,7 @@ typedef struct _EFI_FONT_DISPLAY_INFO {
This function renders a string to a bitmap or the screen using This function renders a string to a bitmap or the screen using
the specified font, color and options. It either draws the the specified font, color and options. It either draws the
string and glyphs on an existing bitmap, allocates a new bitmap string and glyphs on an existing bitmap, allocates a new bitmap,
or uses the screen. The strings can be clipped or wrapped. or uses the screen. The strings can be clipped or wrapped.
Optionally, the function also returns the information about each Optionally, the function also returns the information about each
row and the character position on that row. If row and the character position on that row. If
@ -119,7 +119,7 @@ typedef struct _EFI_FONT_DISPLAY_INFO {
outside the bounding box specified by Width and Height are outside the bounding box specified by Width and Height are
ignored. The information in the RowInfoArray only describes ignored. The information in the RowInfoArray only describes
characters which are at least partially displayed. For the final characters which are at least partially displayed. For the final
row, the LineHeight and BaseLine may describe pixels which are row, the LineHeight and BaseLine may describe pixels that are
outside the limit specified by Height (unless outside the limit specified by Height (unless
EFI_HII_OUT_FLAG_CLIP_CLEAN_Y is specified) even though those EFI_HII_OUT_FLAG_CLIP_CLEAN_Y is specified) even though those
pixels were not drawn. The LineWidth may describe pixels which pixels were not drawn. The LineWidth may describe pixels which
@ -180,7 +180,7 @@ typedef struct _EFI_FONT_DISPLAY_INFO {
containing row information and containing row information and
RowInfoArraySize will be updated to contain RowInfoArraySize will be updated to contain
the number of elements. This array describes the number of elements. This array describes
the characters which were at least partially the characters that were at least partially
drawn and the heights of the rows. It is the drawn and the heights of the rows. It is the
caller's responsibility to free this buffer. caller's responsibility to free this buffer.
@ -236,8 +236,8 @@ EFI_STATUS
can be drawn transparently or opaquely. The function can also can be drawn transparently or opaquely. The function can also
return information about each row and each character's return information about each row and each character's
position on the row. If EFI_HII_OUT_FLAG_CLIP is set, then position on the row. If EFI_HII_OUT_FLAG_CLIP is set, then
text will be formatted only based on explicit line breaks and text will be formatted based only on explicit line breaks, and
all pixels which would lie outside the bounding box specified all pixels that would lie outside the bounding box specified
by Width and Height are ignored. The information in the by Width and Height are ignored. The information in the
RowInfoArray only describes characters which are at least RowInfoArray only describes characters which are at least
partially displayed. For the final row, the LineHeight and partially displayed. For the final row, the LineHeight and
@ -338,11 +338,11 @@ EFI_STATUS
@retval EFI_OUT_OF_RESOURCES Unable to allocate an output @retval EFI_OUT_OF_RESOURCES Unable to allocate an output
buffer for RowInfoArray or Blt. buffer for RowInfoArray or Blt.
@retval EFI_INVALID_PARAMETER The String or Blt or Height or @retval EFI_INVALID_PARAMETER The String, or Blt, or Height, or
Width was NULL. Width was NULL.
@retval EFI_INVALID_PARAMETER The Blt or PackageList was NULL. @retval EFI_INVALID_PARAMETER The Blt or PackageList was NULL.
@retval EFI_INVALID_PARAMETER Flags were invalid combination. @retval EFI_INVALID_PARAMETER Flags were invalid combination.
@retval EFI_NOT_FOUND The specified PackageList is not in the Database @retval EFI_NOT_FOUND The specified PackageList is not in the Database,
or the stringid is not in the specified PackageList. or the stringid is not in the specified PackageList.
**/ **/
@ -370,22 +370,22 @@ EFI_STATUS
@param This A pointer to the EFI_HII_FONT_PROTOCOL instance. @param This A pointer to the EFI_HII_FONT_PROTOCOL instance.
@param Char Character to retrieve. @param Char The character to retrieve.
@param StringInfo Points to the string font and color @param StringInfo Points to the string font and color
information or NULL if the string should use information or NULL if the string should use
the default system font and color. the default system font and color.
@param Blt Thus must point to a NULL on entry. A buffer will @param Blt This must point to a NULL on entry. A buffer will
be allocated to hold the output and the pointer be allocated to hold the output and the pointer
updated on exit. It is the caller's responsibility updated on exit. It is the caller's responsibility
to free this buffer. to free this buffer.
@param Baseline Number of pixels from the bottom of the bitmap @param Baseline The number of pixels from the bottom of the bitmap
to the baseline. to the baseline.
@retval EFI_SUCCESS Glyph bitmap created. @retval EFI_SUCCESS The glyph bitmap created.
@retval EFI_OUT_OF_RESOURCES Unable to allocate the output buffer Blt. @retval EFI_OUT_OF_RESOURCES Unable to allocate the output buffer Blt.
@ -393,7 +393,7 @@ EFI_STATUS
replaced with the glyph for replaced with the glyph for
Unicode character code 0xFFFD. Unicode character code 0xFFFD.
@retval EFI_INVALID_PARAMETER Blt is NULL or Width is NULL or @retval EFI_INVALID_PARAMETER Blt is NULL, or Width is NULL, or
Height is NULL Height is NULL
@ -424,8 +424,8 @@ EFI_STATUS
to NULL if there are no more matching fonts. to NULL if there are no more matching fonts.
@param StringInfoIn Upon entry, points to the font to return @param StringInfoIn Upon entry, points to the font to return
information about. If NULL, then the information about the system default information about. If NULL, then the information
font will be returned. about the system default font will be returned.
@param StringInfoOut Upon return, contains the matching @param StringInfoOut Upon return, contains the matching
font's information. If NULL, then no font's information. If NULL, then no

View File

@ -1,14 +1,14 @@
/** @file /** @file
The file provides services to manipulate string data. The file provides services to manipulate string data.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -24,12 +24,12 @@ typedef struct _EFI_HII_STRING_PROTOCOL EFI_HII_STRING_PROTOCOL;
/** /**
This function adds the string String to the group of strings owned by PackageList, with the This function adds the string String to the group of strings owned by PackageList, with the
specified font information StringFontInfo and returns a new string id. specified font information StringFontInfo, and returns a new string id.
The new string identifier is guaranteed to be unique within the package list. The new string identifier is guaranteed to be unique within the package list.
That new string identifier is reserved for all languages in the package list. That new string identifier is reserved for all languages in the package list.
@param This A pointer to the EFI_HII_STRING_PROTOCOL instance. @param This A pointer to the EFI_HII_STRING_PROTOCOL instance.
@param PackageList Handle of the package list where this string will @param PackageList The handle of the package list where this string will
be added. be added.
@param StringId On return, contains the new strings id, which is @param StringId On return, contains the new strings id, which is
unique within PackageList. unique within PackageList.
@ -38,7 +38,7 @@ typedef struct _EFI_HII_STRING_PROTOCOL EFI_HII_STRING_PROTOCOL;
with the passed in Language field.If LanguageName with the passed in Language field.If LanguageName
is not NULL and the string package header's is not NULL and the string package header's
LanguageName associated with a given Language is LanguageName associated with a given Language is
not zero, the LanguageName being passed in will not zero, the LanguageName being passed in will
be ignored. be ignored.
@param String Points to the new null-terminated string. @param String Points to the new null-terminated string.
@param StringFontInfo Points to the new string's font information or @param StringFontInfo Points to the new string's font information or
@ -49,7 +49,7 @@ typedef struct _EFI_HII_STRING_PROTOCOL EFI_HII_STRING_PROTOCOL;
@retval EFI_NOT_FOUND The specified PackageList could not be found in @retval EFI_NOT_FOUND The specified PackageList could not be found in
database. database.
@retval EFI_OUT_OF_RESOURCES Could not add the string due to lack of resources. @retval EFI_OUT_OF_RESOURCES Could not add the string due to lack of resources.
@retval EFI_INVALID_PARAMETER String is NULL or StringId is NULL or Language is NULL. @retval EFI_INVALID_PARAMETER String is NULL, or StringId is NULL, or Language is NULL.
@retval EFI_INVALID_PARAMETER The specified StringFontInfo does not exist in @retval EFI_INVALID_PARAMETER The specified StringFontInfo does not exist in
current database. current database.

View File

@ -13,18 +13,18 @@
A device handle for an IDE controller must contain an EFI_DEVICE_PATH_PROTOCOL. A device handle for an IDE controller must contain an EFI_DEVICE_PATH_PROTOCOL.
Copyright (c) 2007 - 2010, Intel Corporation Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is defined in UEFI Platform Initialization Specification 1.2 This Protocol is defined in UEFI Platform Initialization Specification 1.2
Volume 5: Standards Volume 5: Standards.
**/ **/
@ -34,7 +34,7 @@
#include <IndustryStandard/Atapi.h> #include <IndustryStandard/Atapi.h>
/// ///
/// Global ID for the EFI_IDE_CONTROLLER_INIT_PROTOCOL /// Global ID for the EFI_IDE_CONTROLLER_INIT_PROTOCOL.
/// ///
#define EFI_IDE_CONTROLLER_INIT_PROTOCOL_GUID \ #define EFI_IDE_CONTROLLER_INIT_PROTOCOL_GUID \
{ \ { \
@ -42,12 +42,12 @@
} }
/// ///
/// Forward declaration for EFI_IDE_CONTROLLER_INIT_PROTOCOL /// Forward declaration for EFI_IDE_CONTROLLER_INIT_PROTOCOL.
/// ///
typedef struct _EFI_IDE_CONTROLLER_INIT_PROTOCOL EFI_IDE_CONTROLLER_INIT_PROTOCOL; typedef struct _EFI_IDE_CONTROLLER_INIT_PROTOCOL EFI_IDE_CONTROLLER_INIT_PROTOCOL;
/// ///
/// The phase of the IDE Controller enumeration /// The phase of the IDE Controller enumeration.
/// ///
typedef enum { typedef enum {
/// ///
@ -122,7 +122,7 @@ typedef enum {
#define EFI_SATA_GEN2_SPEED 2 #define EFI_SATA_GEN2_SPEED 2
/// ///
/// EFI_ATA_MODE structure /// EFI_ATA_MODE structure.
/// ///
typedef struct { typedef struct {
BOOLEAN Valid; ///< TRUE if Mode is valid. BOOLEAN Valid; ///< TRUE if Mode is valid.
@ -150,7 +150,7 @@ typedef struct {
} EFI_ATA_EXTENDED_MODE; } EFI_ATA_EXTENDED_MODE;
/// ///
/// EFI_ATA_COLLECTIVE_MODE structure /// EFI_ATA_COLLECTIVE_MODE structure.
/// ///
typedef struct { typedef struct {
/// ///
@ -164,7 +164,7 @@ typedef struct {
/// ///
/// This field specifies the single word DMA mode. Single word DMA modes are defined /// This field specifies the single word DMA mode. Single word DMA modes are defined
/// in the ATA/ATAPI specification, versions 1 and 2. Single word DMA support was /// in the ATA/ATAPI specification, versions 1 and 2. Single word DMA support was
/// obsoleted in the ATA/ATAPI specification, version 3; therefore, most devices and /// obsoleted in the ATA/ATAPI specification, version 3. Therefore, most devices and
/// controllers will not support this transfer mode. The ATA/ATAPI specification defines /// controllers will not support this transfer mode. The ATA/ATAPI specification defines
/// the enumeration. In other words, a value of 1 in this field means single word DMA /// the enumeration. In other words, a value of 1 in this field means single word DMA
/// mode 1. The actual meaning of single word DMA mode 1 is governed by the ATA/ /// mode 1. The actual meaning of single word DMA mode 1 is governed by the ATA/
@ -221,7 +221,7 @@ typedef ATAPI_IDENTIFY_DATA EFI_ATAPI_IDENTIFY_DATA;
#define EFI_ATAPI_DEVICE_IDENTIFY_DATA 0x8000 #define EFI_ATAPI_DEVICE_IDENTIFY_DATA 0x8000
/// ///
/// EFI_IDENTIFY_DATA structure /// EFI_IDENTIFY_DATA structure.
/// ///
typedef union { typedef union {
/// ///
@ -248,25 +248,25 @@ typedef union {
For most of today's controllers, MaxDevices will either be 1 or 2. For SATA For most of today's controllers, MaxDevices will either be 1 or 2. For SATA
controllers, this value will always be 1. SATA configurations can contain SATA controllers, this value will always be 1. SATA configurations can contain SATA
port multipliers. SATA port multipliers behave like SATA bridges and can support port multipliers. SATA port multipliers behave like SATA bridges and can support
up to 16 devices on the other side. If an SATA port out of the IDE controller up to 16 devices on the other side. If a SATA port out of the IDE controller
is connected to a port multiplier, MaxDevices will be set to the number of SATA is connected to a port multiplier, MaxDevices will be set to the number of SATA
devices that the port multiplier supports. Because today's port multipliers devices that the port multiplier supports. Because today's port multipliers
support up to 15 SATA devices, this number can be as large as 15. The IDE bus support up to fifteen SATA devices, this number can be as large as fifteen. The IDE
driver is required to scan for the presence of port multipliers behind an SATA bus driver is required to scan for the presence of port multipliers behind an SATA
controller and enumerate up to MaxDevices number of devices behind the port controller and enumerate up to MaxDevices number of devices behind the port
multiplier. multiplier.
In this context, the devices behind a port multiplier constitute a channel. In this context, the devices behind a port multiplier constitute a channel.
@param[in] This Pointer to the EFI_IDE_CONTROLLER_INIT_PROTOCOL instance. @param[in] This The pointer to the EFI_IDE_CONTROLLER_INIT_PROTOCOL instance.
@param[in] Channel Zero-based channel number. @param[in] Channel Zero-based channel number.
@param[out] Enabled TRUE if this channel is enabled. Disabled channels @param[out] Enabled TRUE if this channel is enabled. Disabled channels
are not scanned to see if any devices are present. are not scanned to see if any devices are present.
@param[out] MaxDevices The maximum number of IDE devices that the bus driver @param[out] MaxDevices The maximum number of IDE devices that the bus driver
can expect on this channel. For the ATA/ATAPI can expect on this channel. For the ATA/ATAPI
specification, version 6, this number will either be specification, version 6, this number will either be
1 or 2. For Serial ATA (SATA) configurations with a one or two. For Serial ATA (SATA) configurations with a
port multiplier, this number can be as large as 15. port multiplier, this number can be as large as fifteen.
@retval EFI_SUCCESS Information was returned without any errors. @retval EFI_SUCCESS Information was returned without any errors.
@retval EFI_INVALID_PARAMETER Channel is invalid (Channel >= ChannelCount). @retval EFI_INVALID_PARAMETER Channel is invalid (Channel >= ChannelCount).
@ -292,7 +292,7 @@ EFI_STATUS
More synchronization points may be added as required in the future. More synchronization points may be added as required in the future.
@param[in] This Pointer to the EFI_IDE_CONTROLLER_INIT_PROTOCOL instance. @param[in] This The pointer to the EFI_IDE_CONTROLLER_INIT_PROTOCOL instance.
@param[in] Phase The phase during enumeration. @param[in] Phase The phase during enumeration.
@param[in] Channel Zero-based channel number. @param[in] Channel Zero-based channel number.
@ -342,7 +342,7 @@ EFI_STATUS
EFI_IDE_CONTROLLER_INIT_PROTOCOL.SubmitData() can be called only once for a EFI_IDE_CONTROLLER_INIT_PROTOCOL.SubmitData() can be called only once for a
given (Channel, Device) pair. given (Channel, Device) pair.
@param[in] This Pointer to the EFI_IDE_CONTROLLER_INIT_PROTOCOL instance. @param[in] This A pointer to the EFI_IDE_CONTROLLER_INIT_PROTOCOL instance.
@param[in] Channel Zero-based channel number. @param[in] Channel Zero-based channel number.
@param[in] Device Zero-based device number on the Channel. @param[in] Device Zero-based device number on the Channel.
@param[in] IdentifyData The device's response to the ATA IDENTIFY_DEVICE command. @param[in] IdentifyData The device's response to the ATA IDENTIFY_DEVICE command.
@ -389,9 +389,9 @@ EFI_STATUS
may inform the IDE controller driver to not use second-generation (Gen2) speeds may inform the IDE controller driver to not use second-generation (Gen2) speeds
for a certain SATA drive. for a certain SATA drive.
@param[in] This Pointer to the EFI_IDE_CONTROLLER_INIT_PROTOCOL instance. @param[in] This The pointer to the EFI_IDE_CONTROLLER_INIT_PROTOCOL instance.
@param[in] Channel Zero-based channel number. @param[in] Channel The zero-based channel number.
@param[in] Device Zero-based device number on the Channel. @param[in] Device The zero-based device number on the Channel.
@param[in] BadModes The modes that the device does not support and that @param[in] BadModes The modes that the device does not support and that
should be disqualified. should be disqualified.
@ -431,7 +431,7 @@ EFI_STATUS
The IDE bus driver may collect timing information for various devices in any The IDE bus driver may collect timing information for various devices in any
order. The IDE bus driver is responsible for making sure that all the dependencies order. The IDE bus driver is responsible for making sure that all the dependencies
are satisfied; for example, the SupportedModes information for device A that are satisfied. For example, the SupportedModes information for device A that
was previously returned may become stale after a call to was previously returned may become stale after a call to
EFI_IDE_CONTROLLER_INIT_PROTOCOL.DisqualifyMode() for device B. EFI_IDE_CONTROLLER_INIT_PROTOCOL.DisqualifyMode() for device B.
@ -447,9 +447,9 @@ EFI_STATUS
also allow the IDE bus driver to stay with the speed that has been negotiated also allow the IDE bus driver to stay with the speed that has been negotiated
by the physical layer. by the physical layer.
@param[in] This Pointer to the EFI_IDE_CONTROLLER_INIT_PROTOCOL instance. @param[in] This The pointer to the EFI_IDE_CONTROLLER_INIT_PROTOCOL instance.
@param[in] Channel Zero-based channel number. @param[in] Channel A zero-based channel number.
@param[in] Device Zero-based device number on the Channel. @param[in] Device A zero-based device number on the Channel.
@param[out] SupportedModes The optimum modes for the device. @param[out] SupportedModes The optimum modes for the device.
@retval EFI_SUCCESS SupportedModes was returned. @retval EFI_SUCCESS SupportedModes was returned.
@ -545,7 +545,7 @@ struct _EFI_IDE_CONTROLLER_INIT_PROTOCOL {
/// ///
/// Set to TRUE if the enumeration group includes all the channels that are /// Set to TRUE if the enumeration group includes all the channels that are
/// produced by this controller. FALSE if an enumeration group consists of /// produced by this controller. Set to FALSE if an enumeration group consists of
/// only one channel. /// only one channel.
/// ///
BOOLEAN EnumAll; BOOLEAN EnumAll;
@ -555,7 +555,7 @@ struct _EFI_IDE_CONTROLLER_INIT_PROTOCOL {
/// (PATA) controllers can support up to two channels. Advanced Host Controller /// (PATA) controllers can support up to two channels. Advanced Host Controller
/// Interface (AHCI) Serial ATA (SATA) controllers can support up to 32 channels, /// Interface (AHCI) Serial ATA (SATA) controllers can support up to 32 channels,
/// each of which can have up to one device. In the presence of a multiplier, /// each of which can have up to one device. In the presence of a multiplier,
/// each channel can have 15 devices. /// each channel can have fifteen devices.
/// ///
UINT8 ChannelCount; UINT8 ChannelCount;
}; };

View File

@ -4,23 +4,23 @@
sections: sections:
- EFI IPv4 Service Binding Protocol - EFI IPv4 Service Binding Protocol
- EFI IPv4 Variable - EFI IPv4 Variable
- EFI IPv4 Protocol - EFI IPv4 Protocol.
The EFI IPv4 Protocol provides basic network IPv4 packet I/O services, The EFI IPv4 Protocol provides basic network IPv4 packet I/O services,
which includes support foR a subset of the Internet Control Message which includes support foR a subset of the Internet Control Message
Protocol (ICMP) and may include support for the Internet Group Management Protocol (ICMP) and may include support for the Internet Group Management
Protocol (IGMP). Protocol (IGMP).
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is introduced in UEFI Specification 2.0 This Protocol is introduced in UEFI Specification 2.0.
**/ **/
@ -269,10 +269,10 @@ typedef struct {
function is used optionally to retrieve the operational mode data of underlying function is used optionally to retrieve the operational mode data of underlying
networks or drivers. networks or drivers.
@param This Pointer to the EFI_IP4_PROTOCOL instance. @param This The pointer to the EFI_IP4_PROTOCOL instance.
@param Ip4ModeData Pointer to the EFI IPv4 Protocol mode data structure. @param Ip4ModeData The pointer to the EFI IPv4 Protocol mode data structure.
@param MnpConfigData Pointer to the managed network configuration data structure. @param MnpConfigData The pointer to the managed network configuration data structure.
@param SnpModeData Pointer to the simple network mode data structure. @param SnpModeData The pointer to the simple network mode data structure.
@retval EFI_SUCCESS The operation completed successfully. @retval EFI_SUCCESS The operation completed successfully.
@retval EFI_INVALID_PARAMETER This is NULL. @retval EFI_INVALID_PARAMETER This is NULL.
@ -311,8 +311,8 @@ EFI_STATUS
requests will be cancelled. Their completion token status will be set to EFI_ABORTED requests will be cancelled. Their completion token status will be set to EFI_ABORTED
and their events will be signaled. and their events will be signaled.
@param This Pointer to the EFI_IP4_PROTOCOL instance. @param This The pointer to the EFI_IP4_PROTOCOL instance.
@param IpConfigData Pointer to the EFI IPv4 Protocol configuration data structure. @param IpConfigData The pointer to the EFI IPv4 Protocol configuration data structure.
@retval EFI_SUCCESS The driver instance was successfully opened. @retval EFI_SUCCESS The driver instance was successfully opened.
@retval EFI_NO_MAPPING When using the default address, configuration (DHCP, BOOTP, @retval EFI_NO_MAPPING When using the default address, configuration (DHCP, BOOTP,
@ -350,9 +350,9 @@ EFI_STATUS
If JoinFlag is FALSE and GroupAddress is NULL, all joined groups will be left. If JoinFlag is FALSE and GroupAddress is NULL, all joined groups will be left.
@param This Pointer to the EFI_IP4_PROTOCOL instance. @param This The pointer to the EFI_IP4_PROTOCOL instance.
@param JoinFlag Set to TRUE to join the multicast group session and FALSE to leave. @param JoinFlag Set to TRUE to join the multicast group session and FALSE to leave.
@param GroupAddress Pointer to the IPv4 multicast address. @param GroupAddress The pointer to the IPv4 multicast address.
@retval EFI_SUCCESS The operation completed successfully. @retval EFI_SUCCESS The operation completed successfully.
@retval EFI_INVALID_PARAMETER One or more of the following is TRUE: @retval EFI_INVALID_PARAMETER One or more of the following is TRUE:
@ -403,7 +403,7 @@ EFI_STATUS
copies will be updated whenever the EIF IPv4 Protocol driver reconfigures its copies will be updated whenever the EIF IPv4 Protocol driver reconfigures its
instances. As a result, client modification to the routing table will be lost. instances. As a result, client modification to the routing table will be lost.
@param This Pointer to the EFI_IP4_PROTOCOL instance. @param This The pointer to the EFI_IP4_PROTOCOL instance.
@param DeleteRoute Set to TRUE to delete this route from the routing table. Set to @param DeleteRoute Set to TRUE to delete this route from the routing table. Set to
FALSE to add this route to the routing table. SubnetAddress FALSE to add this route to the routing table. SubnetAddress
and SubnetMask are used as the key to each route entry. and SubnetMask are used as the key to each route entry.
@ -446,8 +446,8 @@ EFI_STATUS
EFI IPv4 Protocol instance. Whenever the packet in the token is sent out or some EFI IPv4 Protocol instance. Whenever the packet in the token is sent out or some
errors occur, the event in the token will be signaled and the status is updated. errors occur, the event in the token will be signaled and the status is updated.
@param This Pointer to the EFI_IP4_PROTOCOL instance. @param This The pointer to the EFI_IP4_PROTOCOL instance.
@param Token Pointer to the transmit token. @param Token The pointer to the transmit token.
@retval EFI_SUCCESS The data has been queued for transmission. @retval EFI_SUCCESS The data has been queued for transmission.
@retval EFI_NOT_STARTED This instance has not been started. @retval EFI_NOT_STARTED This instance has not been started.
@ -486,8 +486,8 @@ EFI_STATUS
driver updates the Token.Status and Token.Packet.RxData fields and the Token.Event driver updates the Token.Status and Token.Packet.RxData fields and the Token.Event
is signaled. is signaled.
@param This Pointer to the EFI_IP4_PROTOCOL instance. @param This The pointer to the EFI_IP4_PROTOCOL instance.
@param Token Pointer to a token that is associated with the receive data descriptor. @param Token The pointer to a token that is associated with the receive data descriptor.
@retval EFI_SUCCESS The receive completion token was cached. @retval EFI_SUCCESS The receive completion token was cached.
@retval EFI_NOT_STARTED This EFI IPv4 Protocol instance has not been started. @retval EFI_NOT_STARTED This EFI IPv4 Protocol instance has not been started.
@ -524,8 +524,8 @@ EFI_STATUS
asynchronous operation has completed, this function will not signal the token asynchronous operation has completed, this function will not signal the token
and EFI_NOT_FOUND is returned. and EFI_NOT_FOUND is returned.
@param This Pointer to the EFI_IP4_PROTOCOL instance. @param This The pointer to the EFI_IP4_PROTOCOL instance.
@param Token Pointer to a token that has been issued by @param Token The pointer to a token that has been issued by
EFI_IP4_PROTOCOL.Transmit() or EFI_IP4_PROTOCOL.Transmit() or
EFI_IP4_PROTOCOL.Receive(). If NULL, all pending EFI_IP4_PROTOCOL.Receive(). If NULL, all pending
tokens are aborted. Type EFI_IP4_COMPLETION_TOKEN is tokens are aborted. Type EFI_IP4_COMPLETION_TOKEN is
@ -564,7 +564,7 @@ EFI_STATUS
experiencing packet loss should try calling the EFI_IP4_PROTOCOL.Poll() function experiencing packet loss should try calling the EFI_IP4_PROTOCOL.Poll() function
more often. more often.
@param This Pointer to the EFI_IP4_PROTOCOL instance. @param This The pointer to the EFI_IP4_PROTOCOL instance.
@retval EFI_SUCCESS Incoming or outgoing data was processed. @retval EFI_SUCCESS Incoming or outgoing data was processed.
@retval EFI_NOT_STARTED This EFI IPv4 Protocol instance has not been started. @retval EFI_NOT_STARTED This EFI IPv4 Protocol instance has not been started.

View File

@ -2,17 +2,17 @@
This file provides a definition of the EFI IPv4 Configuration This file provides a definition of the EFI IPv4 Configuration
Protocol. Protocol.
Copyright (c) 2006 - 2009, Intel Corporation.<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at<BR> The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is introduced in UEFI Specification 2.0 This Protocol is introduced in UEFI Specification 2.0.
**/ **/
#ifndef __EFI_IP4CONFIG_PROTOCOL_H__ #ifndef __EFI_IP4CONFIG_PROTOCOL_H__
@ -78,13 +78,13 @@ typedef struct {
Until the configuration completes successfully, EFI IPv4 Protocol driver instances Until the configuration completes successfully, EFI IPv4 Protocol driver instances
that are attempting to use default configurations must return EFI_NO_MAPPING. that are attempting to use default configurations must return EFI_NO_MAPPING.
Once the configuration is complete, the EFI IPv4 Configuration Protocol driver Once the configuration is complete, the EFI IPv4 Configuration Protocol driver
signals DoneEvent. The configuration may need to be updated in the future, signals DoneEvent. The configuration may need to be updated in the future.
however; in this case, the EFI IPv4 Configuration Protocol driver must signal Note that in this case the EFI IPv4 Configuration Protocol driver must signal
ReconfigEvent, and all EFI IPv4 Protocol driver instances that are using default ReconfigEvent, and all EFI IPv4 Protocol driver instances that are using default
configurations must return EFI_NO_MAPPING until the configuration policy has configurations must return EFI_NO_MAPPING until the configuration policy has
been rerun. been rerun.
@param This Pointer to the EFI_IP4_CONFIG_PROTOCOL instance. @param This The pointer to the EFI_IP4_CONFIG_PROTOCOL instance.
@param DoneEvent Event that will be signaled when the EFI IPv4 @param DoneEvent Event that will be signaled when the EFI IPv4
Protocol driver configuration policy completes Protocol driver configuration policy completes
execution. This event must be of type EVT_NOTIFY_SIGNAL. execution. This event must be of type EVT_NOTIFY_SIGNAL.
@ -120,7 +120,7 @@ EFI_STATUS
The Stop() function stops the configuration policy for the EFI IPv4 Protocol driver. The Stop() function stops the configuration policy for the EFI IPv4 Protocol driver.
All configuration data will be lost after calling Stop(). All configuration data will be lost after calling Stop().
@param This Pointer to the EFI_IP4_CONFIG_PROTOCOL instance. @param This The pointer to the EFI_IP4_CONFIG_PROTOCOL instance.
@retval EFI_SUCCESS The configuration policy for the EFI IPv4 Protocol @retval EFI_SUCCESS The configuration policy for the EFI IPv4 Protocol
driver has been stopped. driver has been stopped.
@ -141,11 +141,11 @@ EFI_STATUS
The GetData() function returns the current configuration data for the EFI IPv4 The GetData() function returns the current configuration data for the EFI IPv4
Protocol driver after the configuration policy has completed. Protocol driver after the configuration policy has completed.
@param This Pointer to the EFI_IP4_CONFIG_PROTOCOL instance. @param This The pointer to the EFI_IP4_CONFIG_PROTOCOL instance.
@param IpConfigDataSize On input, the size of the IpConfigData buffer. @param IpConfigDataSize On input, the size of the IpConfigData buffer.
On output, the count of bytes that were written On output, the count of bytes that were written
into the IpConfigData buffer. into the IpConfigData buffer.
@param IpConfigData Pointer to the EFI IPv4 Configuration Protocol @param IpConfigData The pointer to the EFI IPv4 Configuration Protocol
driver configuration data structure. driver configuration data structure.
Type EFI_IP4_IPCONFIG_DATA is defined in Type EFI_IP4_IPCONFIG_DATA is defined in
"Related Definitions" below. "Related Definitions" below.
@ -169,8 +169,8 @@ EFI_STATUS
); );
/// ///
/// The EFI_IP4_CONFIG_PROTOCOL driver performs platform- and policy-dependent /// The EFI_IP4_CONFIG_PROTOCOL driver performs platform-dependent and policy-dependent
/// configuration for the EFI IPv4 Protocol driver. /// configurations for the EFI IPv4 Protocol driver.
/// ///
struct _EFI_IP4_CONFIG_PROTOCOL { struct _EFI_IP4_CONFIG_PROTOCOL {
EFI_IP4_CONFIG_START Start; EFI_IP4_CONFIG_START Start;

View File

@ -1,20 +1,20 @@
/** @file /** @file
Load File protocol as defined in the UEFI 2.0 specification. Load File protocol as defined in the UEFI 2.0 specification.
Load file protocol exists to supports the addition of new boot devices, The load file protocol exists to supports the addition of new boot devices,
and to support booting from devices that do not map well to file system. and to support booting from devices that do not map well to file system.
Network boot is done via a LoadFile protocol. Network boot is done via a LoadFile protocol.
UEFI 2.0 can boot from any device that produces a LoadFile protocol. UEFI 2.0 can boot from any device that produces a LoadFile protocol.
Copyright (c) 2006 - 2008, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -62,7 +62,7 @@ typedef EFI_LOAD_FILE_PROTOCOL EFI_LOAD_FILE_INTERFACE;
@retval EFI_NO_MEDIA No medium was present to load the file. @retval EFI_NO_MEDIA No medium was present to load the file.
@retval EFI_DEVICE_ERROR The file was not loaded due to a device error. @retval EFI_DEVICE_ERROR The file was not loaded due to a device error.
@retval EFI_NO_RESPONSE The remote system did not respond. @retval EFI_NO_RESPONSE The remote system did not respond.
@retval EFI_NOT_FOUND The file was not found @retval EFI_NOT_FOUND The file was not found.
@retval EFI_ABORTED The file load process was manually cancelled. @retval EFI_ABORTED The file load process was manually cancelled.
**/ **/

View File

@ -2,14 +2,14 @@
EFI_MANAGED_NETWORK_SERVICE_BINDING_PROTOCOL as defined in UEFI 2.0. EFI_MANAGED_NETWORK_SERVICE_BINDING_PROTOCOL as defined in UEFI 2.0.
EFI_MANAGED_NETWORK_PROTOCOL as defined in UEFI 2.0. EFI_MANAGED_NETWORK_PROTOCOL as defined in UEFI 2.0.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is introduced in UEFI Specification 2.0 This Protocol is introduced in UEFI Specification 2.0
@ -150,9 +150,9 @@ typedef struct {
/** /**
Returns the operational parameters for the current MNP child driver. Returns the operational parameters for the current MNP child driver.
@param This Pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance. @param This The pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance.
@param MnpConfigData Pointer to storage for MNP operational parameters. @param MnpConfigData The pointer to storage for MNP operational parameters.
@param SnpModeData Pointer to storage for SNP operational parameters. @param SnpModeData The pointer to storage for SNP operational parameters.
@retval EFI_SUCCESS The operation completed successfully. @retval EFI_SUCCESS The operation completed successfully.
@retval EFI_INVALID_PARAMETER This is NULL. @retval EFI_INVALID_PARAMETER This is NULL.
@ -173,8 +173,8 @@ EFI_STATUS
/** /**
Sets or clears the operational parameters for the MNP child driver. Sets or clears the operational parameters for the MNP child driver.
@param This Pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance. @param This The pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance.
@param MnpConfigData Pointer to configuration data that will be assigned to the MNP @param MnpConfigData The pointer to configuration data that will be assigned to the MNP
child driver instance. If NULL, the MNP child driver instance is child driver instance. If NULL, the MNP child driver instance is
reset to startup defaults and all pending transmit and receive reset to startup defaults and all pending transmit and receive
requests are flushed. requests are flushed.
@ -199,11 +199,11 @@ EFI_STATUS
/** /**
Translates an IP multicast address to a hardware (MAC) multicast address. Translates an IP multicast address to a hardware (MAC) multicast address.
@param This Pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance. @param This The pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance.
@param Ipv6Flag Set to TRUE to if IpAddress is an IPv6 multicast address. @param Ipv6Flag Set to TRUE to if IpAddress is an IPv6 multicast address.
Set to FALSE if IpAddress is an IPv4 multicast address. Set to FALSE if IpAddress is an IPv4 multicast address.
@param IpAddress Pointer to the multicast IP address (in network byte order) to convert. @param IpAddress The pointer to the multicast IP address (in network byte order) to convert.
@param MacAddress Pointer to the resulting multicast MAC address. @param MacAddress The pointer to the resulting multicast MAC address.
@retval EFI_SUCCESS The operation completed successfully. @retval EFI_SUCCESS The operation completed successfully.
@retval EFI_INVALID_PARAMETER One of the following conditions is TRUE: @retval EFI_INVALID_PARAMETER One of the following conditions is TRUE:
@ -229,10 +229,10 @@ EFI_STATUS
/** /**
Enables and disables receive filters for multicast address. Enables and disables receive filters for multicast address.
@param This Pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance. @param This The pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance.
@param JoinFlag Set to TRUE to join this multicast group. @param JoinFlag Set to TRUE to join this multicast group.
Set to FALSE to leave this multicast group. Set to FALSE to leave this multicast group.
@param MacAddress Pointer to the multicast MAC group (address) to join or leave. @param MacAddress The pointer to the multicast MAC group (address) to join or leave.
@retval EFI_SUCCESS The requested operation completed successfully. @retval EFI_SUCCESS The requested operation completed successfully.
@retval EFI_INVALID_PARAMETER One or more of the following conditions is TRUE: @retval EFI_INVALID_PARAMETER One or more of the following conditions is TRUE:
@ -258,8 +258,8 @@ EFI_STATUS
/** /**
Places asynchronous outgoing data packets into the transmit queue. Places asynchronous outgoing data packets into the transmit queue.
@param This Pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance. @param This The pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance.
@param Token Pointer to a token associated with the transmit data descriptor. @param Token The pointer to a token associated with the transmit data descriptor.
@retval EFI_SUCCESS The transmit completion token was cached. @retval EFI_SUCCESS The transmit completion token was cached.
@retval EFI_NOT_STARTED This MNP child driver instance has not been configured. @retval EFI_NOT_STARTED This MNP child driver instance has not been configured.
@ -281,15 +281,15 @@ EFI_STATUS
/** /**
Places an asynchronous receiving request into the receiving queue. Places an asynchronous receiving request into the receiving queue.
@param This Pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance. @param This The pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance.
@param Token Pointer to a token associated with the receive data descriptor. @param Token The pointer to a token associated with the receive data descriptor.
@retval EFI_SUCCESS The receive completion token was cached. @retval EFI_SUCCESS The receive completion token was cached.
@retval EFI_NOT_STARTED This MNP child driver instance has not been configured. @retval EFI_NOT_STARTED This MNP child driver instance has not been configured.
@retval EFI_INVALID_PARAMETER One or more of the following conditions is TRUE: @retval EFI_INVALID_PARAMETER One or more of the following conditions is TRUE:
- This is NULL. - This is NULL.
- Token is NULL. - Token is NULL.
- Token.Event is NULL - Token.Event is NULL.
@retval EFI_OUT_OF_RESOURCES The transmit data could not be queued due to a lack of system resources @retval EFI_OUT_OF_RESOURCES The transmit data could not be queued due to a lack of system resources
(usually memory). (usually memory).
@retval EFI_DEVICE_ERROR An unexpected system or network error occurred. @retval EFI_DEVICE_ERROR An unexpected system or network error occurred.
@ -308,8 +308,8 @@ EFI_STATUS
/** /**
Aborts an asynchronous transmit or receive request. Aborts an asynchronous transmit or receive request.
@param This Pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance. @param This The pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance.
@param Token Pointer to a token that has been issued by @param Token The pointer to a token that has been issued by
EFI_MANAGED_NETWORK_PROTOCOL.Transmit() or EFI_MANAGED_NETWORK_PROTOCOL.Transmit() or
EFI_MANAGED_NETWORK_PROTOCOL.Receive(). If EFI_MANAGED_NETWORK_PROTOCOL.Receive(). If
NULL, all pending tokens are aborted. NULL, all pending tokens are aborted.
@ -334,7 +334,7 @@ EFI_STATUS
/** /**
Polls for incoming data packets and processes outgoing data packets. Polls for incoming data packets and processes outgoing data packets.
@param This Pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance. @param This The pointer to the EFI_MANAGED_NETWORK_PROTOCOL instance.
@retval EFI_SUCCESS Incoming or outgoing data was processed. @retval EFI_SUCCESS Incoming or outgoing data was processed.
@retval EFI_NOT_STARTED This MNP child driver instance has not been configured. @retval EFI_NOT_STARTED This MNP child driver instance has not been configured.

View File

@ -1,16 +1,16 @@
/** @file /** @file
Monotonic Counter Architectural Protocol as defined in PI SPEC VOLUME 2 DXE Monotonic Counter Architectural Protocol as defined in PI SPEC VOLUME 2 DXE
This code provides the services required to access the systems monotonic counter This code provides the services required to access the system's monotonic counter
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -18,7 +18,7 @@
#define __ARCH_PROTOCOL_MONTONIC_COUNTER_H__ #define __ARCH_PROTOCOL_MONTONIC_COUNTER_H__
/// ///
/// Global ID for the Monotonic Counter Architectural Protocol /// Global ID for the Monotonic Counter Architectural Protocol.
/// ///
#define EFI_MONOTONIC_COUNTER_ARCH_PROTOCOL_GUID \ #define EFI_MONOTONIC_COUNTER_ARCH_PROTOCOL_GUID \
{0x1da97072, 0xbddc, 0x4b30, {0x99, 0xf1, 0x72, 0xa0, 0xb5, 0x6f, 0xff, 0x2a} } {0x1da97072, 0xbddc, 0x4b30, {0x99, 0xf1, 0x72, 0xa0, 0xb5, 0x6f, 0xff, 0x2a} }

View File

@ -27,14 +27,14 @@
APs to help test system memory in parallel with other device initialization. APs to help test system memory in parallel with other device initialization.
Diagnostics applications may also use this protocol for multi-processor. Diagnostics applications may also use this protocol for multi-processor.
Copyright (c) 2006 - 2009, Intel Corporation.<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at<BR> The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is defined in the UEFI Platform Initialization Specification 1.2, This Protocol is defined in the UEFI Platform Initialization Specification 1.2,
@ -46,7 +46,7 @@
#define _MP_SERVICE_PROTOCOL_H_ #define _MP_SERVICE_PROTOCOL_H_
/// ///
/// Global ID for the EFI_MP_SERVICES_PROTOCOL /// Global ID for the EFI_MP_SERVICES_PROTOCOL.
/// ///
#define EFI_MP_SERVICES_PROTOCOL_GUID \ #define EFI_MP_SERVICES_PROTOCOL_GUID \
{ \ { \
@ -54,7 +54,7 @@
} }
/// ///
/// Forward declaration for the EFI_MP_SERVICES_PROTOCOL /// Forward declaration for the EFI_MP_SERVICES_PROTOCOL.
/// ///
typedef struct _EFI_MP_SERVICES_PROTOCOL EFI_MP_SERVICES_PROTOCOL; typedef struct _EFI_MP_SERVICES_PROTOCOL EFI_MP_SERVICES_PROTOCOL;
@ -128,14 +128,14 @@ typedef struct {
/// 1 0 0 Invalid. The BSP can never be in the disabled state. /// 1 0 0 Invalid. The BSP can never be in the disabled state.
/// 1 0 1 Invalid. The BSP can never be in the disabled state. /// 1 0 1 Invalid. The BSP can never be in the disabled state.
/// 1 1 0 Unhealthy Enabled BSP. /// 1 1 0 Unhealthy Enabled BSP.
/// 1 1 1 Healthy Enabled BSP /// 1 1 1 Healthy Enabled BSP.
/// </pre> /// </pre>
/// ///
UINT32 StatusFlag; UINT32 StatusFlag;
/// ///
/// The physical location of the processor, including the physical package number /// The physical location of the processor, including the physical package number
/// that identifies the cartridge, the physical core number within package, and /// that identifies the cartridge, the physical core number within package, and
/// logical threadnumber within core. /// logical thread number within core.
/// ///
EFI_CPU_PHYSICAL_LOCATION Location; EFI_CPU_PHYSICAL_LOCATION Location;
} EFI_PROCESSOR_INFORMATION; } EFI_PROCESSOR_INFORMATION;
@ -146,11 +146,11 @@ typedef struct {
This service may only be called from the BSP. This service may only be called from the BSP.
This function is used to retrieve the following information: This function is used to retrieve the following information:
- The number of logical processors that are present in the system - The number of logical processors that are present in the system.
- The number of enabled logical processors in the system at the instant - The number of enabled logical processors in the system at the instant
this call is made. this call is made.
Since MP Service Protocol provides services to enable and disable processors Because MP Service Protocol provides services to enable and disable processors
dynamically, the number of enabled logical processors may vary during the dynamically, the number of enabled logical processors may vary during the
course of a boot session. course of a boot session.
@ -172,8 +172,8 @@ typedef struct {
@retval EFI_SUCCESS The number of logical processors and enabled @retval EFI_SUCCESS The number of logical processors and enabled
logical processors was retrieved. logical processors was retrieved.
@retval EFI_DEVICE_ERROR The calling processor is an AP. @retval EFI_DEVICE_ERROR The calling processor is an AP.
@retval EFI_INVALID_PARAMETER NumberOfProcessors is NULL @retval EFI_INVALID_PARAMETER NumberOfProcessors is NULL.
@retval EFI_INVALID_PARAMETER NumberOfEnabledProcessors is NULL @retval EFI_INVALID_PARAMETER NumberOfEnabledProcessors is NULL.
**/ **/
typedef typedef
@ -302,7 +302,7 @@ EFI_STATUS
BSP requests the function specified by BSP requests the function specified by
Procedure to be started on all the enabled Procedure to be started on all the enabled
APs, and go on executing immediately. If APs, and go on executing immediately. If
all return from Procedure or TimeoutInMicroSeconds all return from Procedure, or TimeoutInMicroSeconds
expires, this event is signaled. The BSP expires, this event is signaled. The BSP
can use the CheckEvent() or WaitForEvent() can use the CheckEvent() or WaitForEvent()
services to check the state of event. Type services to check the state of event. Type
@ -538,7 +538,7 @@ EFI_STATUS
bits are ignored. If it is NULL, this parameter bits are ignored. If it is NULL, this parameter
is ignored. is ignored.
@retval EFI_SUCCESS The specified AP successfully enabled or disabled. @retval EFI_SUCCESS The specified AP was enabled or disabled successfully.
@retval EFI_UNSUPPORTED Enabling or disabling an AP cannot be completed @retval EFI_UNSUPPORTED Enabling or disabling an AP cannot be completed
prior to this service returning. prior to this service returning.
@retval EFI_UNSUPPORTED Enabling or disabling an AP is not supported. @retval EFI_UNSUPPORTED Enabling or disabling an AP is not supported.
@ -578,7 +578,7 @@ EFI_STATUS
@retval EFI_SUCCESS The current processor handle number was returned @retval EFI_SUCCESS The current processor handle number was returned
in ProcessorNumber. in ProcessorNumber.
@retval EFI_INVALID_PARAMETER ProcessorNumber is NULL @retval EFI_INVALID_PARAMETER ProcessorNumber is NULL.
**/ **/
typedef typedef
@ -607,7 +607,7 @@ EFI_STATUS
/// guarantee that all non-blocking mode requests on all APs have been completed /// guarantee that all non-blocking mode requests on all APs have been completed
/// before the UEFI event EFI_EVENT_GROUP_READY_TO_BOOT is signaled. Since the /// before the UEFI event EFI_EVENT_GROUP_READY_TO_BOOT is signaled. Since the
/// order that event notification functions in the same event group are executed /// order that event notification functions in the same event group are executed
/// is not deterministic, an event of type EFI_EVENT_GROUP_READY_TO_BOOT can not /// is not deterministic, an event of type EFI_EVENT_GROUP_READY_TO_BOOT cannot
/// be used to guarantee that APs have completed their non-blocking mode requests. /// be used to guarantee that APs have completed their non-blocking mode requests.
/// ///
/// When the UEFI event EFI_EVENT_GROUP_READY_TO_BOOT is signaled, the StartAllAPs() /// When the UEFI event EFI_EVENT_GROUP_READY_TO_BOOT is signaled, the StartAllAPs()

View File

@ -1,14 +1,14 @@
/** @file /** @file
EFI Multicast Trivial File Tranfer Protocol Definition EFI Multicast Trivial File Tranfer Protocol Definition
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is introduced in UEFI Specification 2.0 This Protocol is introduced in UEFI Specification 2.0
@ -142,7 +142,7 @@ typedef union {
#pragma pack() #pragma pack()
/// ///
/// MTFTP4 option definition /// MTFTP4 option definition.
/// ///
typedef struct { typedef struct {
UINT8 *OptionStr; UINT8 *OptionStr;
@ -191,15 +191,15 @@ typedef struct {
EFI_MTFTP4_OPCODE_OACK or EFI_MTFTP4_OPCODE_ERROR packets during a call to EFI_MTFTP4_OPCODE_OACK or EFI_MTFTP4_OPCODE_ERROR packets during a call to
EFI_MTFTP4_PROTOCOL.ReadFile(), WriteFile() or ReadDirectory(). EFI_MTFTP4_PROTOCOL.ReadFile(), WriteFile() or ReadDirectory().
@param This Pointer to the EFI_MTFTP4_PROTOCOL instance. @param This The pointer to the EFI_MTFTP4_PROTOCOL instance.
@param Token The token that the caller provided in the @param Token The token that the caller provided in the
EFI_MTFTP4_PROTOCOL.ReadFile(), WriteFile() EFI_MTFTP4_PROTOCOL.ReadFile(), WriteFile()
or ReadDirectory() function. or ReadDirectory() function.
@param PacketLen Indicates the length of the packet. @param PacketLen Indicates the length of the packet.
@param Packet Pointer to an MTFTPv4 packet. @param Packet The pointer to an MTFTPv4 packet.
@retval EFI_SUCCESS Operation sucess @retval EFI_SUCCESS The operation was successful.
@retval Others Abort transfer process @retval Others Aborts the transfer process.
**/ **/
typedef typedef
@ -214,14 +214,14 @@ EFI_STATUS
/** /**
Timeout callback funtion. Timeout callback funtion.
@param This Pointer to the EFI_MTFTP4_PROTOCOL instance. @param This The pointer to the EFI_MTFTP4_PROTOCOL instance.
@param Token The token that is provided in the @param Token The token that is provided in the
EFI_MTFTP4_PROTOCOL.ReadFile() or EFI_MTFTP4_PROTOCOL.ReadFile() or
EFI_MTFTP4_PROTOCOL.WriteFile() or EFI_MTFTP4_PROTOCOL.WriteFile() or
EFI_MTFTP4_PROTOCOL.ReadDirectory() functions EFI_MTFTP4_PROTOCOL.ReadDirectory() functions
by the caller. by the caller.
@retval EFI_SUCCESS Operation sucess @retval EFI_SUCCESS The operation was successful.
@retval Others Aborts download process. @retval Others Aborts download process.
**/ **/
@ -236,14 +236,14 @@ EFI_STATUS
A callback function that the caller provides to feed data to the A callback function that the caller provides to feed data to the
EFI_MTFTP4_PROTOCOL.WriteFile() function. EFI_MTFTP4_PROTOCOL.WriteFile() function.
@param This Pointer to the EFI_MTFTP4_PROTOCOL instance. @param This The pointer to the EFI_MTFTP4_PROTOCOL instance.
@param Token The token provided in the @param Token The token provided in the
EFI_MTFTP4_PROTOCOL.WriteFile() by the caller. EFI_MTFTP4_PROTOCOL.WriteFile() by the caller.
@param Length Indicates the length of the raw data wanted on input, and the @param Length Indicates the length of the raw data wanted on input, and the
length the data available on output. length the data available on output.
@param Buffer Pointer to the buffer where the data is stored. @param Buffer The pointer to the buffer where the data is stored.
@retval EFI_SUCCESS Operation sucess @retval EFI_SUCCESS The operation was successful.
@retval Others Aborts session. @retval Others Aborts session.
**/ **/
@ -260,8 +260,8 @@ EFI_STATUS
/** /**
Submits an asynchronous interrupt transfer to an interrupt endpoint of a USB device. Submits an asynchronous interrupt transfer to an interrupt endpoint of a USB device.
@param This Pointer to the EFI_MTFTP4_PROTOCOL instance. @param This The pointer to the EFI_MTFTP4_PROTOCOL instance.
@param ModeData Pointer to storage for the EFI MTFTPv4 Protocol driver mode data. @param ModeData The pointer to storage for the EFI MTFTPv4 Protocol driver mode data.
@retval EFI_SUCCESS The configuration data was successfully returned. @retval EFI_SUCCESS The configuration data was successfully returned.
@retval EFI_OUT_OF_RESOURCES The required mode data could not be allocated. @retval EFI_OUT_OF_RESOURCES The required mode data could not be allocated.
@ -280,8 +280,8 @@ EFI_STATUS
Initializes, changes, or resets the default operational setting for this Initializes, changes, or resets the default operational setting for this
EFI MTFTPv4 Protocol driver instance. EFI MTFTPv4 Protocol driver instance.
@param This Pointer to the EFI_MTFTP4_PROTOCOL instance. @param This The pointer to the EFI_MTFTP4_PROTOCOL instance.
@param MtftpConfigData Pointer to the configuration data structure. @param MtftpConfigData The pointer to the configuration data structure.
@retval EFI_SUCCESS The EFI MTFTPv4 Protocol driver was configured successfully. @retval EFI_SUCCESS The EFI MTFTPv4 Protocol driver was configured successfully.
@retval EFI_INVALID_PARAMETER One or more parameters are invalid. @retval EFI_INVALID_PARAMETER One or more parameters are invalid.
@ -309,14 +309,14 @@ EFI_STATUS
/** /**
Gets information about a file from an MTFTPv4 server. Gets information about a file from an MTFTPv4 server.
@param This Pointer to the EFI_MTFTP4_PROTOCOL instance. @param This The pointer to the EFI_MTFTP4_PROTOCOL instance.
@param OverrideData Data that is used to override the existing parameters. If NULL, @param OverrideData Data that is used to override the existing parameters. If NULL,
the default parameters that were set in the the default parameters that were set in the
EFI_MTFTP4_PROTOCOL.Configure() function are used. EFI_MTFTP4_PROTOCOL.Configure() function are used.
@param Filename Pointer to ASCIIZ file name string. @param Filename The pointer to ASCIIZ file name string.
@param ModeStr Pointer to ASCIIZ mode string. If NULL, "octet" will be used. @param ModeStr The pointer to ASCIIZ mode string. If NULL, "octet" will be used.
@param OptionCount Number of option/value string pairs in OptionList. @param OptionCount Number of option/value string pairs in OptionList.
@param OptionList Pointer to array of option/value string pairs. Ignored if @param OptionList The pointer to array of option/value string pairs. Ignored if
OptionCount is zero. OptionCount is zero.
@param PacketLength The number of bytes in the returned packet. @param PacketLength The number of bytes in the returned packet.
@param Packet The pointer to the received packet. This buffer must be freed by @param Packet The pointer to the received packet. This buffer must be freed by
@ -366,11 +366,11 @@ EFI_STATUS
/** /**
Parses the options in an MTFTPv4 OACK packet. Parses the options in an MTFTPv4 OACK packet.
@param This Pointer to the EFI_MTFTP4_PROTOCOL instance. @param This The pointer to the EFI_MTFTP4_PROTOCOL instance.
@param PacketLen Length of the OACK packet to be parsed. @param PacketLen Length of the OACK packet to be parsed.
@param Packet Pointer to the OACK packet to be parsed. @param Packet The pointer to the OACK packet to be parsed.
@param OptionCount Pointer to the number of options in following OptionList. @param OptionCount The pointer to the number of options in following OptionList.
@param OptionList Pointer to EFI_MTFTP4_OPTION storage. Call the EFI Boot @param OptionList The pointer to EFI_MTFTP4_OPTION storage. Call the EFI Boot
Service FreePool() to release the OptionList if the options Service FreePool() to release the OptionList if the options
in this OptionList are not needed any more. in this OptionList are not needed any more.
@ -399,8 +399,8 @@ EFI_STATUS
/** /**
Downloads a file from an MTFTPv4 server. Downloads a file from an MTFTPv4 server.
@param This Pointer to the EFI_MTFTP4_PROTOCOL instance. @param This The pointer to the EFI_MTFTP4_PROTOCOL instance.
@param Token Pointer to the token structure to provide the parameters that are @param Token The pointer to the token structure to provide the parameters that are
used in this operation. used in this operation.
@retval EFI_SUCCESS The data file has been transferred successfully. @retval EFI_SUCCESS The data file has been transferred successfully.
@ -431,8 +431,8 @@ EFI_STATUS
/** /**
Sends a file to an MTFTPv4 server. Sends a file to an MTFTPv4 server.
@param This Pointer to the EFI_MTFTP4_PROTOCOL instance. @param This The pointer to the EFI_MTFTP4_PROTOCOL instance.
@param Token Pointer to the token structure to provide the parameters that are @param Token The pointer to the token structure to provide the parameters that are
used in this operation. used in this operation.
@retval EFI_SUCCESS The upload session has started. @retval EFI_SUCCESS The upload session has started.
@ -461,8 +461,8 @@ EFI_STATUS
Downloads a data file "directory" from an MTFTPv4 server. May be unsupported in some EFI Downloads a data file "directory" from an MTFTPv4 server. May be unsupported in some EFI
implementations. implementations.
@param This Pointer to the EFI_MTFTP4_PROTOCOL instance. @param This The pointer to the EFI_MTFTP4_PROTOCOL instance.
@param Token Pointer to the token structure to provide the parameters that are @param Token The pointer to the token structure to provide the parameters that are
used in this operation. used in this operation.
@retval EFI_SUCCESS The MTFTPv4 related file "directory" has been downloaded. @retval EFI_SUCCESS The MTFTPv4 related file "directory" has been downloaded.
@ -489,7 +489,7 @@ EFI_STATUS
/** /**
Polls for incoming data packets and processes outgoing data packets. Polls for incoming data packets and processes outgoing data packets.
@param This Pointer to the EFI_MTFTP4_PROTOCOL instance. @param This The pointer to the EFI_MTFTP4_PROTOCOL instance.
@retval EFI_SUCCESS Incoming or outgoing data was processed. @retval EFI_SUCCESS Incoming or outgoing data was processed.
@retval EFI_NOT_STARTED This EFI MTFTPv4 Protocol instance has not been started. @retval EFI_NOT_STARTED This EFI MTFTPv4 Protocol instance has not been started.
@ -542,11 +542,11 @@ struct _EFI_MTFTP4_TOKEN {
/// ///
EFI_MTFTP4_OVERRIDE_DATA *OverrideData; EFI_MTFTP4_OVERRIDE_DATA *OverrideData;
/// ///
/// Pointer to the ASCIIZ file name string. /// The pointer to the ASCIIZ file name string.
/// ///
UINT8 *Filename; UINT8 *Filename;
/// ///
/// Pointer to the ASCIIZ mode string. If NULL, "octet" is used. /// The pointer to the ASCIIZ mode string. If NULL, "octet" is used.
/// ///
UINT8 *ModeStr; UINT8 *ModeStr;
/// ///
@ -554,34 +554,34 @@ struct _EFI_MTFTP4_TOKEN {
/// ///
UINT32 OptionCount; UINT32 OptionCount;
/// ///
/// Pointer to an array of option/value string pairs. Ignored if OptionCount is zero. /// The pointer to an array of option/value string pairs. Ignored if OptionCount is zero.
/// ///
EFI_MTFTP4_OPTION *OptionList; EFI_MTFTP4_OPTION *OptionList;
/// ///
/// Size of the data buffer. /// The size of the data buffer.
/// ///
UINT64 BufferSize; UINT64 BufferSize;
/// ///
/// Pointer to the data buffer. Data that is downloaded from the /// The pointer to the data buffer. Data that is downloaded from the
/// MTFTPv4 server is stored here. Data that is uploaded to the /// MTFTPv4 server is stored here. Data that is uploaded to the
/// MTFTPv4 server is read from here. Ignored if BufferSize is zero. /// MTFTPv4 server is read from here. Ignored if BufferSize is zero.
/// ///
VOID *Buffer; VOID *Buffer;
/// ///
/// Pointer to the context that will be used by CheckPacket, /// The pointer to the context that will be used by CheckPacket,
/// TimeoutCallback and PacketNeeded. /// TimeoutCallback and PacketNeeded.
/// ///
VOID *Context; VOID *Context;
/// ///
/// Pointer to the callback function to check the contents of the received packet. /// The pointer to the callback function to check the contents of the received packet.
/// ///
EFI_MTFTP4_CHECK_PACKET CheckPacket; EFI_MTFTP4_CHECK_PACKET CheckPacket;
/// ///
/// Pointer to the function to be called when a timeout occurs. /// The pointer to the function to be called when a timeout occurs.
/// ///
EFI_MTFTP4_TIMEOUT_CALLBACK TimeoutCallback; EFI_MTFTP4_TIMEOUT_CALLBACK TimeoutCallback;
/// ///
/// Pointer to the function to provide the needed packet contents. /// The pointer to the function to provide the needed packet contents.
/// ///
EFI_MTFTP4_PACKET_NEEDED PacketNeeded; EFI_MTFTP4_PACKET_NEEDED PacketNeeded;
}; };

View File

@ -1,17 +1,17 @@
/** @file /** @file
EFI Network Interface Identifier Protocol EFI Network Interface Identifier Protocol.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is introduced in EFI Specification 1.10 This Protocol is introduced in EFI Specification 1.10.
**/ **/
@ -32,7 +32,7 @@
#define EFI_NETWORK_INTERFACE_IDENTIFIER_INTERFACE_REVISION EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL_REVISION #define EFI_NETWORK_INTERFACE_IDENTIFIER_INTERFACE_REVISION EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL_REVISION
/// ///
/// Forward reference for pure ANSI compatability /// Forward reference for pure ANSI compatability.
/// ///
typedef struct _EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL; typedef struct _EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL;
@ -47,12 +47,12 @@ typedef EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL EFI_NETWORK_INTERFACE_IDENTI
/// ///
struct _EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL { struct _EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL {
UINT64 Revision; ///< The revision of the EFI_NETWORK_INTERFACE_IDENTIFIER protocol. UINT64 Revision; ///< The revision of the EFI_NETWORK_INTERFACE_IDENTIFIER protocol.
UINT64 Id; ///< Address of the first byte of the identifying structure for this network UINT64 Id; ///< The address of the first byte of the identifying structure for this network
///< interface. This is only valid when the network interface is started ///< interface. This is only valid when the network interface is started
///< (see Start()). When the network interface is not started, this field is set to zero. ///< (see Start()). When the network interface is not started, this field is set to zero.
UINT64 ImageAddr; ///< Address of the first byte of the identifying structure for this UINT64 ImageAddr; ///< The address of the first byte of the identifying structure for this
///< network interface. This is set to zero if there is no structure. ///< network interface. This is set to zero if there is no structure.
UINT32 ImageSize; ///< Size of unrelocated network interface image. UINT32 ImageSize; ///< The size of unrelocated network interface image.
CHAR8 StringId[4];///< A four-character ASCII string that is sent in the class identifier field of CHAR8 StringId[4];///< A four-character ASCII string that is sent in the class identifier field of
///< option 60 in DHCP. For a Type of EfiNetworkInterfaceUndi, this field is UNDI. ///< option 60 in DHCP. For a Type of EfiNetworkInterfaceUndi, this field is UNDI.
UINT8 Type; ///< Network interface type. This will be set to one of the values UINT8 Type; ///< Network interface type. This will be set to one of the values

View File

@ -6,14 +6,14 @@
The interfaces in dynamic type PCD do not require the token space guid as parameter, The interfaces in dynamic type PCD do not require the token space guid as parameter,
but interfaces in dynamic-ex type PCD require token space guid as parameter. but interfaces in dynamic-ex type PCD require token space guid as parameter.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -364,7 +364,7 @@ UINTN
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -390,7 +390,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -416,7 +416,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -442,7 +442,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -472,7 +472,7 @@ EFI_STATUS
the maximum size supported for this TokenNumber. the maximum size supported for this TokenNumber.
@param[in] Buffer The buffer to set for the PCD token. @param[in] Buffer The buffer to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -499,7 +499,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -526,7 +526,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -554,7 +554,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -582,7 +582,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -610,7 +610,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -642,7 +642,7 @@ EFI_STATUS
the maximum size supported for this TokenNumber. the maximum size supported for this TokenNumber.
@param[in] Buffer The buffer to set for the PCD token. @param[in] Buffer The buffer to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -671,7 +671,7 @@ EFI_STATUS
@param[in] TokenNumber The PCD token number. @param[in] TokenNumber The PCD token number.
@param[in] Value The value to set for the PCD token. @param[in] Value The value to set for the PCD token.
@retval EFI_SUCCESS Procedure returned successfully. @retval EFI_SUCCESS The procedure returned successfully.
@retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data
being set was incompatible with a call to this function. being set was incompatible with a call to this function.
Use GetSize() to retrieve the size of the target data. Use GetSize() to retrieve the size of the target data.
@ -766,7 +766,7 @@ EFI_STATUS
Retrieves the next valid token number in a given namespace. Retrieves the next valid token number in a given namespace.
This is useful since the PCD infrastructure contains a sparse list of token numbers, This is useful since the PCD infrastructure contains a sparse list of token numbers,
and one cannot a priori know what token numbers are valid in the database. and one cannot know without examination or by deduction what token numbers are valid in the database.
If TokenNumber is 0 and Guid is not NULL, then the first token from the token space specified by Guid is returned. If TokenNumber is 0 and Guid is not NULL, then the first token from the token space specified by Guid is returned.
If TokenNumber is not 0 and Guid is not NULL, then the next token in the token space specified by Guid is returned. If TokenNumber is not 0 and Guid is not NULL, then the next token in the token space specified by Guid is returned.
@ -815,7 +815,7 @@ EFI_STATUS
EFI_SUCCESS. EFI_SUCCESS.
@retval EFI_SUCCESS The PCD service retrieved the next valid token space Guid. @retval EFI_SUCCESS The PCD service retrieved the next valid token space Guid.
Or the input token space Guid is already the last valid token space Guid Or, the input token space Guid is already the last valid token space Guid
in the PCD database. In the later case, *Guid is updated with the value of NULL. in the PCD database. In the later case, *Guid is updated with the value of NULL.
@retval EFI_NOT_FOUND If the input token namespace does not exist on the platform. @retval EFI_NOT_FOUND If the input token namespace does not exist on the platform.

View File

@ -3,18 +3,18 @@
provides the basic interfaces to abstract a PCI host bridge resource allocation. provides the basic interfaces to abstract a PCI host bridge resource allocation.
This protocol is mandatory if the system includes PCI devices. This protocol is mandatory if the system includes PCI devices.
Copyright (c) 2007 - 2009, Intel Corporation Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is defined in UEFI Platform Initialization Specification 1.2 This Protocol is defined in UEFI Platform Initialization Specification 1.2
Volume 5: Standards Volume 5: Standards.
**/ **/
@ -28,7 +28,7 @@
#include <Protocol/PciRootBridgeIo.h> #include <Protocol/PciRootBridgeIo.h>
/// ///
/// Global ID for the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL /// Global ID for the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL.
/// ///
#define EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_GUID \ #define EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL_GUID \
{ \ { \
@ -36,7 +36,7 @@
} }
/// ///
/// Forward declaration for EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL /// Forward declaration for EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL.
/// ///
typedef struct _EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL; typedef struct _EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL;
@ -78,7 +78,7 @@ typedef UINT64 EFI_RESOURCE_ALLOCATION_STATUS;
#define EFI_RESOURCE_NOT_SATISFIED 0xFFFFFFFFFFFFFFFFULL #define EFI_RESOURCE_NOT_SATISFIED 0xFFFFFFFFFFFFFFFFULL
/// ///
/// This enum is used to specify the phase of the PCI enumaeration process /// This enum is used to specify the phase of the PCI enumaeration process.
/// ///
typedef enum { typedef enum {
/// ///
@ -167,9 +167,9 @@ typedef enum {
These are the notifications from the PCI bus driver that it is about to enter a certain phase of the PCI These are the notifications from the PCI bus driver that it is about to enter a certain phase of the PCI
enumeration process. enumeration process.
@param[in] This Pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL @param[in] This The pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL
instance. instance.
@param[in] Phase The phase during enumeration @param[in] Phase The phase during enumeration.
@retval EFI_SUCCESS The notification was accepted without any errors. @retval EFI_SUCCESS The notification was accepted without any errors.
@retval EFI_INVALID_PARAMETER The Phase is invalid. @retval EFI_INVALID_PARAMETER The Phase is invalid.
@ -195,7 +195,7 @@ EFI_STATUS
/** /**
Returns the device handle of the next PCI root bridge that is associated with this host bridge. Returns the device handle of the next PCI root bridge that is associated with this host bridge.
@param[in] This Pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL @param[in] This The pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL
instance. instance.
@param[in,out] RootBridgeHandle Returns the device handle of the next PCI root bridge. On input, it holds the @param[in,out] RootBridgeHandle Returns the device handle of the next PCI root bridge. On input, it holds the
RootBridgeHandle that was returned by the most recent call to RootBridgeHandle that was returned by the most recent call to
@ -218,7 +218,7 @@ EFI_STATUS
/** /**
Returns the allocation attributes of a PCI root bridge. Returns the allocation attributes of a PCI root bridge.
@param[in] This Pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL @param[in] This The pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL
instance. instance.
@param[in] RootBridgeHandle The device handle of the PCI root bridge in which the caller is interested. @param[in] RootBridgeHandle The device handle of the PCI root bridge in which the caller is interested.
@param[out] Attribute The pointer to attributes of the PCI root bridge. @param[out] Attribute The pointer to attributes of the PCI root bridge.
@ -239,10 +239,10 @@ EFI_STATUS
/** /**
Sets up the specified PCI root bridge for the bus enumeration process. Sets up the specified PCI root bridge for the bus enumeration process.
@param[in] This Pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL @param[in] This The pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL
instance. instance.
@param[in] RootBridgeHandle The PCI root bridge to be set up. @param[in] RootBridgeHandle The PCI root bridge to be set up.
@param[out] Configuration Pointer to the pointer to the PCI bus resource descriptor. @param[out] Configuration The pointer to the pointer to the PCI bus resource descriptor.
@retval EFI_SUCCESS The PCI root bridge was set up and the bus range was returned in @retval EFI_SUCCESS The PCI root bridge was set up and the bus range was returned in
Configuration. Configuration.
@ -262,10 +262,10 @@ EFI_STATUS
/** /**
Programs the PCI root bridge hardware so that it decodes the specified PCI bus range. Programs the PCI root bridge hardware so that it decodes the specified PCI bus range.
@param[in] This Pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL @param[in] This The pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL
instance. instance.
@param[in] RootBridgeHandle The PCI root bridge whose bus range is to be programmed. @param[in] RootBridgeHandle The PCI root bridge whose bus range is to be programmed.
@param[in] Configuration The pointer to the PCI bus resource descriptor.. @param[in] Configuration The pointer to the PCI bus resource descriptor.
@retval EFI_SUCCESS The bus range for the PCI root bridge was programmed. @retval EFI_SUCCESS The bus range for the PCI root bridge was programmed.
@retval EFI_INVALID_PARAMETER RootBridgeHandle is not a valid root bridge handle. @retval EFI_INVALID_PARAMETER RootBridgeHandle is not a valid root bridge handle.
@ -294,7 +294,7 @@ EFI_STATUS
/** /**
Submits the I/O and memory resource requirements for the specified PCI root bridge. Submits the I/O and memory resource requirements for the specified PCI root bridge.
@param[in] This Pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL @param[in] This The pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL
instance. instance.
@param[in] RootBridgeHandle The PCI root bridge whose I/O and memory resource requirements are being @param[in] RootBridgeHandle The PCI root bridge whose I/O and memory resource requirements are being
submitted. submitted.
@ -326,7 +326,7 @@ EFI_STATUS
/** /**
Returns the proposed resource settings for the specified PCI root bridge. Returns the proposed resource settings for the specified PCI root bridge.
@param[in] This Pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL @param[in] This The pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL
instance. instance.
@param[in] RootBridgeHandle The PCI root bridge handle. @param[in] RootBridgeHandle The PCI root bridge handle.
@param[out] Configuration The pointer to the pointer to the PCI I/O and memory resource descriptor. @param[out] Configuration The pointer to the pointer to the PCI I/O and memory resource descriptor.
@ -350,7 +350,7 @@ EFI_STATUS
stages of the PCI enumeration process that allow the host bridge driver to preinitialize individual stages of the PCI enumeration process that allow the host bridge driver to preinitialize individual
PCI controllers before enumeration. PCI controllers before enumeration.
@param[in] This Pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL instance. @param[in] This The pointer to the EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL instance.
@param[in] RootBridgeHandle The associated PCI root bridge handle. @param[in] RootBridgeHandle The associated PCI root bridge handle.
@param[in] PciAddress The address of the PCI device on the PCI bus. @param[in] PciAddress The address of the PCI device on the PCI bus.
@param[in] Phase The phase of the PCI device enumeration. @param[in] Phase The phase of the PCI device enumeration.

View File

@ -1,17 +1,17 @@
/** @file /** @file
This file declares PlatfromOpRom protocols which provides the interface between This file declares PlatfromOpRom protocols that provide the interface between
the PCI bus driver/PCI Host Bridge Resource Allocation driver and a platform-specific the PCI bus driver/PCI Host Bridge Resource Allocation driver and a platform-specific
driver to describe the unique features of a platform. driver to describe the unique features of a platform.
This protocol is optional. This protocol is optional.
Copyright (c) 2007 - 2009, Intel Corporation Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is defined in UEFI Platform Initialization Specification 1.2 This Protocol is defined in UEFI Platform Initialization Specification 1.2
@ -24,12 +24,12 @@
/// ///
/// This file must be included because the EFI_PCI_PLATFORM_PROTOCOL uses /// This file must be included because the EFI_PCI_PLATFORM_PROTOCOL uses
/// EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PHASE /// EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PHASE.
/// ///
#include <Protocol/PciHostBridgeResourceAllocation.h> #include <Protocol/PciHostBridgeResourceAllocation.h>
/// ///
/// Global ID for the EFI_PCI_PLATFORM_PROTOCOL /// Global ID for the EFI_PCI_PLATFORM_PROTOCOL.
/// ///
#define EFI_PCI_PLATFORM_PROTOCOL_GUID \ #define EFI_PCI_PLATFORM_PROTOCOL_GUID \
{ \ { \
@ -37,7 +37,7 @@
} }
/// ///
/// Forward declaration for EFI_PCI_PLATFORM_PROTOCOL /// Forward declaration for EFI_PCI_PLATFORM_PROTOCOL.
/// ///
typedef struct _EFI_PCI_PLATFORM_PROTOCOL EFI_PCI_PLATFORM_PROTOCOL; typedef struct _EFI_PCI_PLATFORM_PROTOCOL EFI_PCI_PLATFORM_PROTOCOL;
@ -52,7 +52,7 @@ typedef struct _EFI_PCI_PLATFORM_PROTOCOL EFI_PCI_PLATFORM_PROTOCOL;
/// - EFI_RESERVE_ISA_IO_ALIAS | EFI_RESERVE_VGA_IO_ALIAS:<BR> /// - EFI_RESERVE_ISA_IO_ALIAS | EFI_RESERVE_VGA_IO_ALIAS:<BR>
/// Sets aside the ISA I/O range and all the aliases during PCI /// Sets aside the ISA I/O range and all the aliases during PCI
/// enumeration. VGA I/O ranges and aliases are included in ISA alias /// enumeration. VGA I/O ranges and aliases are included in ISA alias
/// ranges. In this scheme, 75 percent of the I/O space remains unused. /// ranges. In this scheme, seventy-five percent of the I/O space remains unused.
/// By using this selection, the platform indicates that it wants to support /// By using this selection, the platform indicates that it wants to support
/// PCI devices that require the following, at the cost of wasted I/O space: /// PCI devices that require the following, at the cost of wasted I/O space:
/// ISA range and its aliases /// ISA range and its aliases
@ -70,7 +70,7 @@ typedef struct _EFI_PCI_PLATFORM_PROTOCOL EFI_PCI_PLATFORM_PROTOCOL;
/// The first device that requests the legacy VGA range will get all the /// The first device that requests the legacy VGA range will get all the
/// legacy VGA range plus its aliased addresses forwarded to it. The first /// legacy VGA range plus its aliased addresses forwarded to it. The first
/// device that requests the legacy ISA range will get all the legacy ISA /// device that requests the legacy ISA range will get all the legacy ISA
/// range plus its aliased addresses forwarded to it. /// range, plus its aliased addresses, forwarded to it.
/// - EFI_RESERVE_ISA_IO_NO_ALIAS | EFI_RESERVE_VGA_IO_ALIAS:<BR> /// - EFI_RESERVE_ISA_IO_NO_ALIAS | EFI_RESERVE_VGA_IO_ALIAS:<BR>
/// Sets aside the ISA I/O range (0x100 - 0x3FF) during PCI enumeration /// Sets aside the ISA I/O range (0x100 - 0x3FF) during PCI enumeration
/// and the aliases of the VGA I/O ranges. By using this selection, the /// and the aliases of the VGA I/O ranges. By using this selection, the
@ -125,26 +125,26 @@ typedef UINT32 EFI_PCI_PLATFORM_POLICY;
#define EFI_RESERVE_NONE_IO_ALIAS 0x0000 #define EFI_RESERVE_NONE_IO_ALIAS 0x0000
/// ///
/// Sets aside ISA I/O range and all aliases /// Sets aside ISA I/O range and all aliases:
/// - n100..n3FF /// - n100..n3FF
/// - n500..n7FF /// - n500..n7FF
/// - n900..nBFF /// - n900..nBFF
/// - nD00..nFFF /// - nD00..nFFF.
/// ///
#define EFI_RESERVE_ISA_IO_ALIAS 0x0001 #define EFI_RESERVE_ISA_IO_ALIAS 0x0001
/// ///
/// Sets aside ISA I/O range 0x100-0x3FF /// Sets aside ISA I/O range 0x100-0x3FF.
/// ///
#define EFI_RESERVE_ISA_IO_NO_ALIAS 0x0002 #define EFI_RESERVE_ISA_IO_NO_ALIAS 0x0002
/// ///
/// Sets aside VGA I/O ranges and all aliases /// Sets aside VGA I/O ranges and all aliases.
/// ///
#define EFI_RESERVE_VGA_IO_ALIAS 0x0004 #define EFI_RESERVE_VGA_IO_ALIAS 0x0004
/// ///
/// Sets aside VGA I/O rangess /// Sets aside VGA I/O ranges
/// ///
#define EFI_RESERVE_VGA_IO_NO_ALIAS 0x0008 #define EFI_RESERVE_VGA_IO_NO_ALIAS 0x0008
@ -200,7 +200,7 @@ typedef EFI_PCI_EXECUTION_PHASE EFI_PCI_CHIPSET_EXECUTION_PHASE;
it needs to handle those errors on its own because there is no way to surface any it needs to handle those errors on its own because there is no way to surface any
errors to the caller. errors to the caller.
@param[in] This Pointer to the EFI_PCI_PLATFORM_PROTOCOL instance. @param[in] This The pointer to the EFI_PCI_PLATFORM_PROTOCOL instance.
@param[in] HostBridge The handle of the host bridge controller. @param[in] HostBridge The handle of the host bridge controller.
@param[in] Phase The phase of the PCI bus enumeration. @param[in] Phase The phase of the PCI bus enumeration.
@param[in] ExecPhase Defines the execution phase of the PCI chipset driver. @param[in] ExecPhase Defines the execution phase of the PCI chipset driver.
@ -233,7 +233,7 @@ EFI_STATUS
needs to handle those errors on its own because there is no way to surface any errors to needs to handle those errors on its own because there is no way to surface any errors to
the caller. the caller.
@param[in] This Pointer to the EFI_PCI_PLATFORM_PROTOCOL instance. @param[in] This The pointer to the EFI_PCI_PLATFORM_PROTOCOL instance.
@param[in] HostBridge The associated PCI host bridge handle. @param[in] HostBridge The associated PCI host bridge handle.
@param[in] RootBridge The associated PCI root bridge handle. @param[in] RootBridge The associated PCI root bridge handle.
@param[in] PciAddress The address of the PCI device on the PCI bus. @param[in] PciAddress The address of the PCI device on the PCI bus.
@ -261,7 +261,7 @@ EFI_STATUS
enumeration. The PCI bus driver and the PCI Host Bridge Resource Allocation Protocol enumeration. The PCI bus driver and the PCI Host Bridge Resource Allocation Protocol
driver can call this member function to retrieve the policy. driver can call this member function to retrieve the policy.
@param[in] This Pointer to the EFI_PCI_PLATFORM_PROTOCOL instance. @param[in] This The pointer to the EFI_PCI_PLATFORM_PROTOCOL instance.
@param[out] PciPolicy The platform policy with respect to VGA and ISA aliasing. @param[out] PciPolicy The platform policy with respect to VGA and ISA aliasing.
@retval EFI_SUCCESS The function completed successfully. @retval EFI_SUCCESS The function completed successfully.
@ -288,7 +288,7 @@ EFI_STATUS
scanning the ROM that is attached to any controller, which allows a platform to specify a ROM scanning the ROM that is attached to any controller, which allows a platform to specify a ROM
image that is different from the ROM image on a PCI card. image that is different from the ROM image on a PCI card.
@param[in] This Pointer to the EFI_PCI_PLATFORM_PROTOCOL instance. @param[in] This The pointer to the EFI_PCI_PLATFORM_PROTOCOL instance.
@param[in] PciHandle The handle of the PCI device. @param[in] PciHandle The handle of the PCI device.
@param[out] RomImage If the call succeeds, the pointer to the pointer to the option ROM image. @param[out] RomImage If the call succeeds, the pointer to the pointer to the option ROM image.
Otherwise, this field is undefined. The memory for RomImage is allocated Otherwise, this field is undefined. The memory for RomImage is allocated
@ -301,7 +301,7 @@ EFI_STATUS
@retval EFI_SUCCESS The option ROM was available for this device and loaded into memory. @retval EFI_SUCCESS The option ROM was available for this device and loaded into memory.
@retval EFI_NOT_FOUND No option ROM was available for this device. @retval EFI_NOT_FOUND No option ROM was available for this device.
@retval EFI_OUT_OF_RESOURCES No memory was available to load the option ROM. @retval EFI_OUT_OF_RESOURCES No memory was available to load the option ROM.
@retval EFI_DEVICE_ERROR An error occurred in getting the option ROM. @retval EFI_DEVICE_ERROR An error occurred in obtaining the option ROM.
**/ **/
typedef typedef

View File

@ -2,24 +2,24 @@
EFI PXE Base Code Protocol definitions, which is used to access PXE-compatible EFI PXE Base Code Protocol definitions, which is used to access PXE-compatible
devices for network access and network booting. devices for network access and network booting.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is introduced in EFI Specification 1.10 This Protocol is introduced in EFI Specification 1.10.
**/ **/
#ifndef __PXE_BASE_CODE_PROTOCOL_H__ #ifndef __PXE_BASE_CODE_PROTOCOL_H__
#define __PXE_BASE_CODE_PROTOCOL_H__ #define __PXE_BASE_CODE_PROTOCOL_H__
/// ///
/// PXE Base Code protocol /// PXE Base Code protocol.
/// ///
#define EFI_PXE_BASE_CODE_PROTOCOL_GUID \ #define EFI_PXE_BASE_CODE_PROTOCOL_GUID \
{ \ { \
@ -40,7 +40,7 @@ typedef EFI_PXE_BASE_CODE_PROTOCOL EFI_PXE_BASE_CODE;
#define DEFAULT_ToS 0 #define DEFAULT_ToS 0
/// ///
/// ICMP error format /// ICMP error format.
/// ///
typedef struct { typedef struct {
UINT8 Type; UINT8 Type;
@ -59,7 +59,7 @@ typedef struct {
} EFI_PXE_BASE_CODE_ICMP_ERROR; } EFI_PXE_BASE_CODE_ICMP_ERROR;
/// ///
/// TFTP error format /// TFTP error format.
/// ///
typedef struct { typedef struct {
UINT8 ErrorCode; UINT8 ErrorCode;
@ -67,12 +67,12 @@ typedef struct {
} EFI_PXE_BASE_CODE_TFTP_ERROR; } EFI_PXE_BASE_CODE_TFTP_ERROR;
/// ///
/// IP Receive Filter definitions /// IP Receive Filter definitions.
/// ///
#define EFI_PXE_BASE_CODE_MAX_IPCNT 8 #define EFI_PXE_BASE_CODE_MAX_IPCNT 8
/// ///
/// IP Receive Filter structure /// IP Receive Filter structure.
/// ///
typedef struct { typedef struct {
UINT8 Filters; UINT8 Filters;
@ -87,7 +87,7 @@ typedef struct {
#define EFI_PXE_BASE_CODE_IP_FILTER_PROMISCUOUS_MULTICAST 0x0008 #define EFI_PXE_BASE_CODE_IP_FILTER_PROMISCUOUS_MULTICAST 0x0008
/// ///
/// ARP cache entries /// ARP cache entries.
/// ///
typedef struct { typedef struct {
EFI_IP_ADDRESS IpAddr; EFI_IP_ADDRESS IpAddr;
@ -95,7 +95,7 @@ typedef struct {
} EFI_PXE_BASE_CODE_ARP_ENTRY; } EFI_PXE_BASE_CODE_ARP_ENTRY;
/// ///
/// ARP route table entries /// ARP route table entries.
/// ///
typedef struct { typedef struct {
EFI_IP_ADDRESS IpAddr; EFI_IP_ADDRESS IpAddr;
@ -184,7 +184,7 @@ typedef struct {
} EFI_PXE_BASE_CODE_DISCOVER_INFO; } EFI_PXE_BASE_CODE_DISCOVER_INFO;
/// ///
/// TFTP opcode definitions /// TFTP opcode definitions.
/// ///
typedef enum { typedef enum {
EFI_PXE_BASE_CODE_TFTP_FIRST, EFI_PXE_BASE_CODE_TFTP_FIRST,
@ -212,7 +212,7 @@ typedef struct {
} EFI_PXE_BASE_CODE_MTFTP_INFO; } EFI_PXE_BASE_CODE_MTFTP_INFO;
/// ///
/// DHCPV4 Packet structure /// DHCPV4 Packet structure.
/// ///
typedef struct { typedef struct {
UINT8 BootpOpcode; UINT8 BootpOpcode;
@ -243,7 +243,7 @@ typedef struct {
} EFI_PXE_BASE_CODE_DHCPV6_PACKET; } EFI_PXE_BASE_CODE_DHCPV6_PACKET;
/// ///
/// Packet structure /// Packet structure.
/// ///
typedef union { typedef union {
UINT8 Raw[1472]; UINT8 Raw[1472];
@ -258,7 +258,7 @@ typedef union {
#define EFI_PXE_BASE_CODE_MAX_ROUTE_ENTRIES 8 #define EFI_PXE_BASE_CODE_MAX_ROUTE_ENTRIES 8
/// ///
/// EFI_PXE_BASE_CODE_MODE /// EFI_PXE_BASE_CODE_MODE.
/// The data values in this structure are read-only and /// The data values in this structure are read-only and
/// are updated by the code that produces the /// are updated by the code that produces the
/// EFI_PXE_BASE_CODE_PROTOCOL functions. /// EFI_PXE_BASE_CODE_PROTOCOL functions.
@ -352,7 +352,7 @@ typedef struct {
MakeCallbacksSet to TRUE if the PXE Base Code Callback Protocol is available. MakeCallbacksSet to TRUE if the PXE Base Code Callback Protocol is available.
Set to FALSE if the PXE Base Code Callback Protocol is not available. Set to FALSE if the PXE Base Code Callback Protocol is not available.
@param This Pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance. @param This The pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance.
@param UseIpv6 Specifies the type of IP addresses that are to be used during the session @param UseIpv6 Specifies the type of IP addresses that are to be used during the session
that is being started. Set to TRUE for IPv6 addresses, and FALSE for that is being started. Set to TRUE for IPv6 addresses, and FALSE for
IPv4 addresses. IPv4 addresses.
@ -383,7 +383,7 @@ EFI_STATUS
set to FALSE and EFI_SUCCESS is returned. If the Started field of the EFI_PXE_BASE_CODE_MODE set to FALSE and EFI_SUCCESS is returned. If the Started field of the EFI_PXE_BASE_CODE_MODE
structure is already FALSE, then EFI_NOT_STARTED will be returned. structure is already FALSE, then EFI_NOT_STARTED will be returned.
@param This Pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance. @param This The pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance.
@retval EFI_SUCCESS The PXE Base Code Protocol was stopped. @retval EFI_SUCCESS The PXE Base Code Protocol was stopped.
@retval EFI_NOT_STARTED The PXE Base Code Protocol is already in the stopped state. @retval EFI_NOT_STARTED The PXE Base Code Protocol is already in the stopped state.
@ -415,7 +415,7 @@ EFI_STATUS
If the Callback Protocol does not return EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE, If the Callback Protocol does not return EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE,
then the DHCP sequence will be stopped and EFI_ABORTED will be returned. then the DHCP sequence will be stopped and EFI_ABORTED will be returned.
@param This Pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance. @param This The pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance.
@param SortOffers TRUE if the offers received should be sorted. Set to FALSE to try the @param SortOffers TRUE if the offers received should be sorted. Set to FALSE to try the
offers in the order that they are received. offers in the order that they are received.
@ -461,13 +461,13 @@ EFI_STATUS
If the Callback Protocol does not return EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE, If the Callback Protocol does not return EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE,
then the Discovery sequence is stopped and EFI_ABORTED will be returned. then the Discovery sequence is stopped and EFI_ABORTED will be returned.
@param This Pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance. @param This The pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance.
@param Type The type of bootstrap to perform. @param Type The type of bootstrap to perform.
@param Layer Pointer to the boot server layer number to discover, which must be @param Layer The pointer to the boot server layer number to discover, which must be
PXE_BOOT_LAYER_INITIAL when a new server type is being PXE_BOOT_LAYER_INITIAL when a new server type is being
discovered. discovered.
@param UseBis TRUE if Boot Integrity Services are to be used. FALSE otherwise. @param UseBis TRUE if Boot Integrity Services are to be used. FALSE otherwise.
@param Info Pointer to a data structure that contains additional information on the @param Info The pointer to a data structure that contains additional information on the
type of discovery operation that is to be performed. type of discovery operation that is to be performed.
@retval EFI_SUCCESS The Discovery sequence has been completed. @retval EFI_SUCCESS The Discovery sequence has been completed.
@ -537,7 +537,7 @@ EFI_STATUS
entry is itself null-terminated, so that the final information string is terminated entry is itself null-terminated, so that the final information string is terminated
with two null octets. with two null octets.
@param This Pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance. @param This The pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance.
@param Operation The type of operation to perform. @param Operation The type of operation to perform.
@param BufferPtr A pointer to the data buffer. @param BufferPtr A pointer to the data buffer.
@param Overwrite Only used on write file operations. TRUE if a file on a remote server can @param Overwrite Only used on write file operations. TRUE if a file on a remote server can
@ -548,7 +548,7 @@ EFI_STATUS
@param ServerIp The TFTP / MTFTP server IP address. @param ServerIp The TFTP / MTFTP server IP address.
@param Filename A Null-terminated ASCII string that specifies a directory name or a file @param Filename A Null-terminated ASCII string that specifies a directory name or a file
name. name.
@param Info Pointer to the MTFTP information. @param Info The pointer to the MTFTP information.
@param DontUseBuffer Set to FALSE for normal TFTP and MTFTP read file operation. @param DontUseBuffer Set to FALSE for normal TFTP and MTFTP read file operation.
@retval EFI_SUCCESS The TFTP/MTFTP operation was completed. @retval EFI_SUCCESS The TFTP/MTFTP operation was completed.
@ -591,7 +591,7 @@ EFI_STATUS
EFI_ICMP_ERROR will be returned. If the Callback Protocol does not return EFI_ICMP_ERROR will be returned. If the Callback Protocol does not return
EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE, then EFI_ABORTED will be returned. EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE, then EFI_ABORTED will be returned.
@param This Pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance. @param This The pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance.
@param OpFlags The UDP operation flags. @param OpFlags The UDP operation flags.
@param DestIp The destination IP address. @param DestIp The destination IP address.
@param DestPort The destination UDP port number. @param DestPort The destination UDP port number.
@ -635,7 +635,7 @@ EFI_STATUS
This function reads a UDP packet from a network interface. The data contents This function reads a UDP packet from a network interface. The data contents
are returned in (the optional HeaderPtr and) BufferPtr, and the size of the are returned in (the optional HeaderPtr and) BufferPtr, and the size of the
buffer received is returned in BufferSize . If the input BufferSize is smaller buffer received is returned in BufferSize. If the input BufferSize is smaller
than the UDP packet received (less optional HeaderSize), it will be set to the than the UDP packet received (less optional HeaderSize), it will be set to the
required size, and EFI_BUFFER_TOO_SMALL will be returned. In this case, the required size, and EFI_BUFFER_TOO_SMALL will be returned. In this case, the
contents of BufferPtr are undefined, and the packet is lost. If a UDP packet is contents of BufferPtr are undefined, and the packet is lost. If a UDP packet is
@ -646,7 +646,7 @@ EFI_STATUS
input values, different types of UDP packet receive filtering will be performed. input values, different types of UDP packet receive filtering will be performed.
The following tables summarize these receive filter operations. The following tables summarize these receive filter operations.
@param This Pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance. @param This The pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance.
@param OpFlags The UDP operation flags. @param OpFlags The UDP operation flags.
@param DestIp The destination IP address. @param DestIp The destination IP address.
@param DestPort The destination UDP port number. @param DestPort The destination UDP port number.
@ -700,15 +700,15 @@ EFI_STATUS
If an application or driver wishes to preserve the IP receive filter settings, If an application or driver wishes to preserve the IP receive filter settings,
it will have to preserve the IP receive filter settings before these calls, and it will have to preserve the IP receive filter settings before these calls, and
use SetIpFilter() to restore them after the calls. If incompatible filtering is use SetIpFilter() to restore them after the calls. If incompatible filtering is
requested (for example, PROMISCUOUS with anything else) or if the device does not requested (for example, PROMISCUOUS with anything else), or if the device does not
support a requested filter setting and it cannot be accommodated in software support a requested filter setting and it cannot be accommodated in software
(for example, PROMISCUOUS not supported), EFI_INVALID_PARAMETER will be returned. (for example, PROMISCUOUS not supported), EFI_INVALID_PARAMETER will be returned.
The IPlist field is used to enable IPs other than the StationIP. They may be The IPlist field is used to enable IPs other than the StationIP. They may be
multicast or unicast. If IPcnt is set as well as EFI_PXE_BASE_CODE_IP_FILTER_STATION_IP, multicast or unicast. If IPcnt is set as well as EFI_PXE_BASE_CODE_IP_FILTER_STATION_IP,
then both the StationIP and the IPs from the IPlist will be used. then both the StationIP and the IPs from the IPlist will be used.
@param This Pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance. @param This The pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance.
@param NewFilter Pointer to the new set of IP receive filters. @param NewFilter The pointer to the new set of IP receive filters.
@retval EFI_SUCCESS The IP receive filter settings were updated. @retval EFI_SUCCESS The IP receive filter settings were updated.
@retval EFI_NOT_STARTED The PXE Base Code Protocol is in the stopped state. @retval EFI_NOT_STARTED The PXE Base Code Protocol is in the stopped state.
@ -738,8 +738,8 @@ EFI_STATUS
does not return EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE, then EFI_ABORTED is does not return EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE, then EFI_ABORTED is
returned. returned.
@param This Pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance. @param This The pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance.
@param IpAddr Pointer to the IP address that is used to resolve a MAC address. @param IpAddr The pointer to the IP address that is used to resolve a MAC address.
@param MacAddr If not NULL, a pointer to the MAC address that was resolved with the @param MacAddr If not NULL, a pointer to the MAC address that was resolved with the
ARP protocol. ARP protocol.
@ -774,7 +774,7 @@ EFI_STATUS
The SetParameters() call must be invoked after a Callback Protocol is installed The SetParameters() call must be invoked after a Callback Protocol is installed
to enable the use of callbacks. to enable the use of callbacks.
@param This Pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance. @param This The pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance.
@param NewAutoArp If not NULL, a pointer to a value that specifies whether to replace the @param NewAutoArp If not NULL, a pointer to a value that specifies whether to replace the
current value of AutoARP. current value of AutoARP.
@param NewSendGUID If not NULL, a pointer to a value that specifies whether to replace the @param NewSendGUID If not NULL, a pointer to a value that specifies whether to replace the
@ -816,9 +816,9 @@ EFI_STATUS
Otherwise, this function updates the SubnetMask field of the EFI_PXE_BASE_CODE_MODE Otherwise, this function updates the SubnetMask field of the EFI_PXE_BASE_CODE_MODE
structure with NewSubnetMask. structure with NewSubnetMask.
@param This Pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance. @param This The pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance.
@param NewStationIp Pointer to the new IP address to be used by the network device. @param NewStationIp The pointer to the new IP address to be used by the network device.
@param NewSubnetMask Pointer to the new subnet mask to be used by the network device. @param NewSubnetMask The pointer to the new subnet mask to be used by the network device.
@retval EFI_SUCCESS The new station IP address and/or subnet mask were updated. @retval EFI_SUCCESS The new station IP address and/or subnet mask were updated.
@retval EFI_NOT_STARTED The PXE Base Code Protocol is in the stopped state. @retval EFI_NOT_STARTED The PXE Base Code Protocol is in the stopped state.
@ -839,25 +839,25 @@ EFI_STATUS
The pointers to the new packets are used to update the contents of the cached The pointers to the new packets are used to update the contents of the cached
packets in the EFI_PXE_BASE_CODE_MODE structure. packets in the EFI_PXE_BASE_CODE_MODE structure.
@param This Pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance. @param This The pointer to the EFI_PXE_BASE_CODE_PROTOCOL instance.
@param NewDhcpDiscoverValid Pointer to a value that will replace the current @param NewDhcpDiscoverValid The pointer to a value that will replace the current
DhcpDiscoverValid field. DhcpDiscoverValid field.
@param NewDhcpAckReceived Pointer to a value that will replace the current @param NewDhcpAckReceived The pointer to a value that will replace the current
DhcpAckReceived field. DhcpAckReceived field.
@param NewProxyOfferReceived Pointer to a value that will replace the current @param NewProxyOfferReceived The pointer to a value that will replace the current
ProxyOfferReceived field. ProxyOfferReceived field.
@param NewPxeDiscoverValid Pointer to a value that will replace the current @param NewPxeDiscoverValid The pointer to a value that will replace the current
ProxyOfferReceived field. ProxyOfferReceived field.
@param NewPxeReplyReceived Pointer to a value that will replace the current @param NewPxeReplyReceived The pointer to a value that will replace the current
PxeReplyReceived field. PxeReplyReceived field.
@param NewPxeBisReplyReceived Pointer to a value that will replace the current @param NewPxeBisReplyReceived The pointer to a value that will replace the current
PxeBisReplyReceived field. PxeBisReplyReceived field.
@param NewDhcpDiscover Pointer to the new cached DHCP Discover packet contents. @param NewDhcpDiscover The pointer to the new cached DHCP Discover packet contents.
@param NewDhcpAck Pointer to the new cached DHCP Ack packet contents. @param NewDhcpAck The pointer to the new cached DHCP Ack packet contents.
@param NewProxyOffer Pointer to the new cached Proxy Offer packet contents. @param NewProxyOffer The pointer to the new cached Proxy Offer packet contents.
@param NewPxeDiscover Pointer to the new cached PXE Discover packet contents. @param NewPxeDiscover The pointer to the new cached PXE Discover packet contents.
@param NewPxeReply Pointer to the new cached PXE Reply packet contents. @param NewPxeReply The pointer to the new cached PXE Reply packet contents.
@param NewPxeBisReply Pointer to the new cached PXE BIS Reply packet contents. @param NewPxeBisReply The pointer to the new cached PXE BIS Reply packet contents.
@retval EFI_SUCCESS The cached packet contents were updated. @retval EFI_SUCCESS The cached packet contents were updated.
@retval EFI_NOT_STARTED The PXE Base Code Protocol is in the stopped state. @retval EFI_NOT_STARTED The PXE Base Code Protocol is in the stopped state.
@ -920,7 +920,7 @@ struct _EFI_PXE_BASE_CODE_PROTOCOL {
EFI_PXE_BASE_CODE_SET_STATION_IP SetStationIp; EFI_PXE_BASE_CODE_SET_STATION_IP SetStationIp;
EFI_PXE_BASE_CODE_SET_PACKETS SetPackets; EFI_PXE_BASE_CODE_SET_PACKETS SetPackets;
/// ///
/// Pointer to the EFI_PXE_BASE_CODE_MODE data for this device. /// The pointer to the EFI_PXE_BASE_CODE_MODE data for this device.
/// ///
EFI_PXE_BASE_CODE_MODE *Mode; EFI_PXE_BASE_CODE_MODE *Mode;
}; };

View File

@ -2,14 +2,14 @@
It is invoked when the PXE Base Code Protocol is about to transmit, has received, It is invoked when the PXE Base Code Protocol is about to transmit, has received,
or is waiting to receive a packet. or is waiting to receive a packet.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is introduced in EFI Specification 1.10 This Protocol is introduced in EFI Specification 1.10
@ -20,7 +20,7 @@
#define _PXE_BASE_CODE_CALLBACK_H_ #define _PXE_BASE_CODE_CALLBACK_H_
/// ///
/// Call Back Definitions /// Call Back Definitions.
/// ///
#define EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL_GUID \ #define EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL_GUID \
{ \ { \
@ -28,28 +28,28 @@
} }
/// ///
/// UEFI Revision Number Definition /// UEFI Revision Number Definition.
/// ///
#define EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL_REVISION 0x00010000 #define EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL_REVISION 0x00010000
/// ///
/// EFI 1.1 Revision Number defintion /// EFI 1.1 Revision Number defintion.
/// ///
#define EFI_PXE_BASE_CODE_CALLBACK_INTERFACE_REVISION \ #define EFI_PXE_BASE_CODE_CALLBACK_INTERFACE_REVISION \
EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL_REVISION EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL_REVISION
/// ///
/// UEFI Protocol name /// UEFI Protocol name.
/// ///
typedef struct _EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL; typedef struct _EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL;
/// ///
/// EFI1.1 Protocol name /// EFI1.1 Protocol name.
/// ///
typedef EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL EFI_PXE_BASE_CODE_CALLBACK; typedef EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL EFI_PXE_BASE_CODE_CALLBACK;
/// ///
/// Event type list for PXE Base Code Protocol function /// Event type list for PXE Base Code Protocol function.
/// ///
typedef enum { typedef enum {
EFI_PXE_BASE_CODE_FUNCTION_FIRST, EFI_PXE_BASE_CODE_FUNCTION_FIRST,
@ -64,7 +64,7 @@ typedef enum {
} EFI_PXE_BASE_CODE_FUNCTION; } EFI_PXE_BASE_CODE_FUNCTION;
/// ///
/// Callback status type /// Callback status type.
/// ///
typedef enum { typedef enum {
EFI_PXE_BASE_CODE_CALLBACK_STATUS_FIRST, EFI_PXE_BASE_CODE_CALLBACK_STATUS_FIRST,
@ -87,7 +87,7 @@ typedef enum {
The SetParameters() function must be called after a Callback Protocol is installed to enable the The SetParameters() function must be called after a Callback Protocol is installed to enable the
use of callbacks. use of callbacks.
@param This Pointer to the EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL instance. @param This The pointer to the EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL instance.
@param Function The PXE Base Code Protocol function that is waiting for an event. @param Function The PXE Base Code Protocol function that is waiting for an event.
@param Received TRUE if the callback is being invoked due to a receive event. FALSE if @param Received TRUE if the callback is being invoked due to a receive event. FALSE if
the callback is being invoked due to a transmit event. the callback is being invoked due to a transmit event.

View File

@ -7,14 +7,14 @@
UEFI 2.0 can boot from any valid EFI image contained in a SimpleFileSystem. UEFI 2.0 can boot from any valid EFI image contained in a SimpleFileSystem.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -52,9 +52,9 @@ typedef EFI_FILE_PROTOCOL EFI_FILE;
@retval EFI_UNSUPPORTED This volume does not support the file system. @retval EFI_UNSUPPORTED This volume does not support the file system.
@retval EFI_NO_MEDIA The device has no media. @retval EFI_NO_MEDIA The device has no media.
@retval EFI_DEVICE_ERROR The device reported an error. @retval EFI_DEVICE_ERROR The device reported an error.
@retval EFI_VOLUME_CORRUPTED The file system structures are corrupted @retval EFI_VOLUME_CORRUPTED The file system structures are corrupted.
@retval EFI_ACCESS_DENIED The service denied access to the file @retval EFI_ACCESS_DENIED The service denied access to the file.
@retval EFI_OUT_OF_RESOURCES The volume was not opened due to lack of resources @retval EFI_OUT_OF_RESOURCES The volume was not opened due to lack of resources.
**/ **/
typedef typedef
@ -84,20 +84,20 @@ struct _EFI_SIMPLE_FILE_SYSTEM_PROTOCOL {
/** /**
Opens a new file relative to the source file's location. Opens a new file relative to the source file's location.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param NewHandle Returns File Handle for FileName @param NewHandle Returns File Handle for FileName.
@param FileName Null terminated string. "\", ".", and ".." are supported @param FileName Null terminated string. "\", ".", and ".." are supported.
@param OpenMode Open mode for file. @param OpenMode Open mode for file.
@param Attributes Only used for EFI_FILE_MODE_CREATE @param Attributes Only used for EFI_FILE_MODE_CREATE.
@retval EFI_SUCCESS The device was opened. @retval EFI_SUCCESS The device was opened.
@retval EFI_NOT_FOUND The specified file could not be found on the device @retval EFI_NOT_FOUND The specified file could not be found on the device.
@retval EFI_NO_MEDIA The device has no media. @retval EFI_NO_MEDIA The device has no media.
@retval EFI_MEDIA_CHANGED The media has changed @retval EFI_MEDIA_CHANGED The media has changed.
@retval EFI_DEVICE_ERROR The device reported an error. @retval EFI_DEVICE_ERROR The device reported an error.
@retval EFI_VOLUME_CORRUPTED The file system structures are corrupted @retval EFI_VOLUME_CORRUPTED The file system structures are corrupted.
@retval EFI_ACCESS_DENIED The service denied access to the file @retval EFI_ACCESS_DENIED The service denied access to the file.
@retval EFI_OUT_OF_RESOURCES The volume was not opened due to lack of resources @retval EFI_OUT_OF_RESOURCES The volume was not opened due to lack of resources.
@retval EFI_VOLUME_FULL The volume is full. @retval EFI_VOLUME_FULL The volume is full.
**/ **/
@ -144,12 +144,12 @@ EFI_STATUS
); );
/** /**
Close and delete the file handle Close and delete the file handle.
@param This Protocol instance pointer. @param This Protocol instance pointer.
@retval EFI_SUCCESS The device was opened. @retval EFI_SUCCESS The device was opened.
@retval EFI_WARN_DELETE_FAILURE The handle was closed but the file was not deleted @retval EFI_WARN_DELETE_FAILURE The handle was closed but the file was not deleted.
**/ **/
typedef typedef
@ -166,10 +166,10 @@ EFI_STATUS
@param Buffer The buffer in which data is read. @param Buffer The buffer in which data is read.
@retval EFI_SUCCESS Data was read. @retval EFI_SUCCESS Data was read.
@retval EFI_NO_MEDIA The device has no media @retval EFI_NO_MEDIA The device has no media.
@retval EFI_DEVICE_ERROR The device reported an error @retval EFI_DEVICE_ERROR The device reported an error.
@retval EFI_VOLUME_CORRUPTED The file system structures are corrupted @retval EFI_VOLUME_CORRUPTED The file system structures are corrupted.
@retval EFI_BUFFER_TO_SMALL BufferSize is too small. BufferSize contains required size @retval EFI_BUFFER_TO_SMALL BufferSize is too small. BufferSize contains required size.
**/ **/
typedef typedef
@ -188,14 +188,14 @@ EFI_STATUS
@param Buffer The buffer in which data to write. @param Buffer The buffer in which data to write.
@retval EFI_SUCCESS Data was written. @retval EFI_SUCCESS Data was written.
@retval EFI_UNSUPPORT Writes to Open directory are not supported @retval EFI_UNSUPPORT Writes to Open directory are not supported.
@retval EFI_NO_MEDIA The device has no media @retval EFI_NO_MEDIA The device has no media.
@retval EFI_DEVICE_ERROR The device reported an error @retval EFI_DEVICE_ERROR The device reported an error.
@retval EFI_DEVICE_ERROR An attempt was made to write to a deleted file @retval EFI_DEVICE_ERROR An attempt was made to write to a deleted file.
@retval EFI_VOLUME_CORRUPTED The file system structures are corrupted @retval EFI_VOLUME_CORRUPTED The file system structures are corrupted.
@retval EFI_WRITE_PROTECTED The device is write protected @retval EFI_WRITE_PROTECTED The device is write protected.
@retval EFI_ACCESS_DENIED The file was open for read only @retval EFI_ACCESS_DENIED The file was open for read only.
@retval EFI_VOLUME_FULL The volume is full @retval EFI_VOLUME_FULL The volume is full.
**/ **/
typedef typedef
@ -210,7 +210,7 @@ EFI_STATUS
Set a files current position Set a files current position
@param This Protocol instance pointer. @param This Protocol instance pointer.
@param Position Byte position from the start of the file @param Position Byte position from the start of the file.
@retval EFI_SUCCESS Data was written. @retval EFI_SUCCESS Data was written.
@retval EFI_UNSUPPORTED Seek request for non-zero is not valid on open. @retval EFI_UNSUPPORTED Seek request for non-zero is not valid on open.
@ -227,10 +227,10 @@ EFI_STATUS
Get a file's current position Get a file's current position
@param This Protocol instance pointer. @param This Protocol instance pointer.
@param Position Byte position from the start of the file @param Position Byte position from the start of the file.
@retval EFI_SUCCESS Data was written. @retval EFI_SUCCESS Data was written.
@retval EFI_UNSUPPORTED Seek request for non-zero is not valid on open. @retval EFI_UNSUPPORTED Seek request for non-zero is not valid on open..
**/ **/
typedef typedef
@ -241,21 +241,21 @@ EFI_STATUS
); );
/** /**
Get information about a file Get information about a file.
@param This Protocol instance pointer. @param This Protocol instance pointer.
@param InformationType Type of info to return in Buffer @param InformationType Type of information to return in Buffer.
@param BufferSize On input size of buffer, on output amount of data in buffer. @param BufferSize On input size of buffer, on output amount of data in buffer.
@param Buffer The buffer to return data. @param Buffer The buffer to return data.
@retval EFI_SUCCESS Data was returned. @retval EFI_SUCCESS Data was returned.
@retval EFI_UNSUPPORT InformationType is not supported @retval EFI_UNSUPPORT InformationType is not supported.
@retval EFI_NO_MEDIA The device has no media @retval EFI_NO_MEDIA The device has no media.
@retval EFI_DEVICE_ERROR The device reported an error @retval EFI_DEVICE_ERROR The device reported an error.
@retval EFI_VOLUME_CORRUPTED The file system structures are corrupted @retval EFI_VOLUME_CORRUPTED The file system structures are corrupted.
@retval EFI_WRITE_PROTECTED The device is write protected @retval EFI_WRITE_PROTECTED The device is write protected.
@retval EFI_ACCESS_DENIED The file was open for read only @retval EFI_ACCESS_DENIED The file was open for read only.
@retval EFI_BUFFER_TOO_SMALL Buffer was too small, required size returned in BufferSize @retval EFI_BUFFER_TOO_SMALL Buffer was too small; required size returned in BufferSize.
**/ **/
typedef typedef
@ -271,17 +271,17 @@ EFI_STATUS
Set information about a file Set information about a file
@param File Protocol instance pointer. @param File Protocol instance pointer.
@param InformationType Type of info in Buffer @param InformationType Type of information in Buffer.
@param BufferSize Size of buffer. @param BufferSize Size of buffer.
@param Buffer The data to write. @param Buffer The data to write.
@retval EFI_SUCCESS Data was returned. @retval EFI_SUCCESS Data was returned.
@retval EFI_UNSUPPORT InformationType is not supported @retval EFI_UNSUPPORT InformationType is not supported.
@retval EFI_NO_MEDIA The device has no media @retval EFI_NO_MEDIA The device has no media.
@retval EFI_DEVICE_ERROR The device reported an error @retval EFI_DEVICE_ERROR The device reported an error.
@retval EFI_VOLUME_CORRUPTED The file system structures are corrupted @retval EFI_VOLUME_CORRUPTED The file system structures are corrupted.
@retval EFI_WRITE_PROTECTED The device is write protected @retval EFI_WRITE_PROTECTED The device is write protected.
@retval EFI_ACCESS_DENIED The file was open for read only @retval EFI_ACCESS_DENIED The file was open for read only.
**/ **/
typedef typedef
@ -294,18 +294,18 @@ EFI_STATUS
); );
/** /**
Flush data back for the file handle Flush data back for the file handle.
@param This Protocol instance pointer. @param This Protocol instance pointer.
@retval EFI_SUCCESS Data was written. @retval EFI_SUCCESS Data was written.
@retval EFI_UNSUPPORT Writes to Open directory are not supported @retval EFI_UNSUPPORT Writes to Open directory are not supported.
@retval EFI_NO_MEDIA The device has no media @retval EFI_NO_MEDIA The device has no media.
@retval EFI_DEVICE_ERROR The device reported an error @retval EFI_DEVICE_ERROR The device reported an error.
@retval EFI_VOLUME_CORRUPTED The file system structures are corrupted @retval EFI_VOLUME_CORRUPTED The file system structures are corrupted.
@retval EFI_WRITE_PROTECTED The device is write protected @retval EFI_WRITE_PROTECTED The device is write protected.
@retval EFI_ACCESS_DENIED The file was open for read only @retval EFI_ACCESS_DENIED The file was open for read only.
@retval EFI_VOLUME_FULL The volume is full @retval EFI_VOLUME_FULL The volume is full.
**/ **/
typedef typedef

View File

@ -9,17 +9,17 @@
MCast - MultiCast MCast - MultiCast
... ...
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is introduced in EFI Specification 1.10 This Protocol is introduced in EFI Specification 1.10.
**/ **/
@ -40,7 +40,7 @@ typedef struct _EFI_SIMPLE_NETWORK_PROTOCOL EFI_SIMPLE_NETWORK_PROTOCOL;
typedef EFI_SIMPLE_NETWORK_PROTOCOL EFI_SIMPLE_NETWORK; typedef EFI_SIMPLE_NETWORK_PROTOCOL EFI_SIMPLE_NETWORK;
/// ///
/// Simple Network Protocol data structures /// Simple Network Protocol data structures.
/// ///
typedef struct { typedef struct {
/// ///
@ -124,7 +124,7 @@ typedef struct {
} EFI_NETWORK_STATISTICS; } EFI_NETWORK_STATISTICS;
/// ///
/// State of the network interface /// The state of the network interface.
/// When an EFI_SIMPLE_NETWORK_PROTOCOL driver initializes a /// When an EFI_SIMPLE_NETWORK_PROTOCOL driver initializes a
/// network interface, the network interface is left in the EfiSimpleNetworkStopped state. /// network interface, the network interface is left in the EfiSimpleNetworkStopped state.
/// ///
@ -273,7 +273,7 @@ EFI_STATUS
required by the network interface; optionally, also requests allocation required by the network interface; optionally, also requests allocation
of additional transmit and receive buffers. of additional transmit and receive buffers.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param ExtraRxBufferSize The size, in bytes, of the extra receive buffer space @param ExtraRxBufferSize The size, in bytes, of the extra receive buffer space
that the driver should allocate for the network interface. that the driver should allocate for the network interface.
Some network interfaces will not be able to use the extra Some network interfaces will not be able to use the extra
@ -286,7 +286,7 @@ EFI_STATUS
being used. being used.
@retval EFI_SUCCESS The network interface was initialized. @retval EFI_SUCCESS The network interface was initialized.
@retval EFI_NOT_STARTED The network interface has not been started @retval EFI_NOT_STARTED The network interface has not been started.
@retval EFI_OUT_OF_RESOURCES There was not enough memory for the transmit and @retval EFI_OUT_OF_RESOURCES There was not enough memory for the transmit and
receive buffers. receive buffers.
@retval EFI_INVALID_PARAMETER One or more of the parameters has an unsupported value. @retval EFI_INVALID_PARAMETER One or more of the parameters has an unsupported value.
@ -306,13 +306,13 @@ EFI_STATUS
Resets a network adapter and re-initializes it with the parameters that were Resets a network adapter and re-initializes it with the parameters that were
provided in the previous call to Initialize(). provided in the previous call to Initialize().
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param ExtendedVerification Indicates that the driver may perform a more @param ExtendedVerification Indicates that the driver may perform a more
exhaustive verification operation of the device exhaustive verification operation of the device
during reset. during reset.
@retval EFI_SUCCESS The network interface was reset. @retval EFI_SUCCESS The network interface was reset.
@retval EFI_NOT_STARTED The network interface has not been started @retval EFI_NOT_STARTED The network interface has not been started.
@retval EFI_INVALID_PARAMETER One or more of the parameters has an unsupported value. @retval EFI_INVALID_PARAMETER One or more of the parameters has an unsupported value.
@retval EFI_DEVICE_ERROR The command could not be sent to the network interface. @retval EFI_DEVICE_ERROR The command could not be sent to the network interface.
@retval EFI_UNSUPPORTED This function is not supported by the network interface. @retval EFI_UNSUPPORTED This function is not supported by the network interface.
@ -332,7 +332,7 @@ EFI_STATUS
@param This Protocol instance pointer. @param This Protocol instance pointer.
@retval EFI_SUCCESS The network interface was shutdown. @retval EFI_SUCCESS The network interface was shutdown.
@retval EFI_NOT_STARTED The network interface has not been started @retval EFI_NOT_STARTED The network interface has not been started.
@retval EFI_INVALID_PARAMETER One or more of the parameters has an unsupported value. @retval EFI_INVALID_PARAMETER One or more of the parameters has an unsupported value.
@retval EFI_DEVICE_ERROR The command could not be sent to the network interface. @retval EFI_DEVICE_ERROR The command could not be sent to the network interface.
@retval EFI_UNSUPPORTED This function is not supported by the network interface. @retval EFI_UNSUPPORTED This function is not supported by the network interface.
@ -347,7 +347,7 @@ EFI_STATUS
/** /**
Manages the multicast receive filters of a network interface. Manages the multicast receive filters of a network interface.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param Enable A bit mask of receive filters to enable on the network interface. @param Enable A bit mask of receive filters to enable on the network interface.
@param Disable A bit mask of receive filters to disable on the network interface. @param Disable A bit mask of receive filters to disable on the network interface.
@param ResetMCastFilter Set to TRUE to reset the contents of the multicast receive @param ResetMCastFilter Set to TRUE to reset the contents of the multicast receive
@ -362,7 +362,7 @@ EFI_STATUS
ResetMCastFilter is TRUE. ResetMCastFilter is TRUE.
@retval EFI_SUCCESS The multicast receive filter list was updated. @retval EFI_SUCCESS The multicast receive filter list was updated.
@retval EFI_NOT_STARTED The network interface has not been started @retval EFI_NOT_STARTED The network interface has not been started.
@retval EFI_INVALID_PARAMETER One or more of the parameters has an unsupported value. @retval EFI_INVALID_PARAMETER One or more of the parameters has an unsupported value.
@retval EFI_DEVICE_ERROR The command could not be sent to the network interface. @retval EFI_DEVICE_ERROR The command could not be sent to the network interface.
@retval EFI_UNSUPPORTED This function is not supported by the network interface. @retval EFI_UNSUPPORTED This function is not supported by the network interface.
@ -382,13 +382,13 @@ EFI_STATUS
/** /**
Modifies or resets the current station address, if supported. Modifies or resets the current station address, if supported.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param Reset Flag used to reset the station address to the network interfaces @param Reset Flag used to reset the station address to the network interfaces
permanent address. permanent address.
@param New New station address to be used for the network interface. @param New The new station address to be used for the network interface.
@retval EFI_SUCCESS The network interfaces station address was updated. @retval EFI_SUCCESS The network interfaces station address was updated.
@retval EFI_NOT_STARTED The network interface has not been started @retval EFI_NOT_STARTED The network interface has not been started.
@retval EFI_INVALID_PARAMETER One or more of the parameters has an unsupported value. @retval EFI_INVALID_PARAMETER One or more of the parameters has an unsupported value.
@retval EFI_DEVICE_ERROR The command could not be sent to the network interface. @retval EFI_DEVICE_ERROR The command could not be sent to the network interface.
@retval EFI_UNSUPPORTED This function is not supported by the network interface. @retval EFI_UNSUPPORTED This function is not supported by the network interface.
@ -435,7 +435,7 @@ EFI_STATUS
/** /**
Converts a multicast IP address to a multicast HW MAC address. Converts a multicast IP address to a multicast HW MAC address.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param IPv6 Set to TRUE if the multicast IP address is IPv6 [RFC 2460]. Set @param IPv6 Set to TRUE if the multicast IP address is IPv6 [RFC 2460]. Set
to FALSE if the multicast IP address is IPv4 [RFC 791]. to FALSE if the multicast IP address is IPv4 [RFC 791].
@param IP The multicast IP address that is to be converted to a multicast @param IP The multicast IP address that is to be converted to a multicast
@ -466,7 +466,7 @@ EFI_STATUS
Performs read and write operations on the NVRAM device attached to a Performs read and write operations on the NVRAM device attached to a
network interface. network interface.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param ReadWrite TRUE for read operations, FALSE for write operations. @param ReadWrite TRUE for read operations, FALSE for write operations.
@param Offset Byte offset in the NVRAM device at which to start the read or @param Offset Byte offset in the NVRAM device at which to start the read or
write operation. This must be a multiple of NvRamAccessSize and write operation. This must be a multiple of NvRamAccessSize and
@ -496,7 +496,7 @@ EFI_STATUS
Reads the current interrupt status and recycled transmit buffer status from Reads the current interrupt status and recycled transmit buffer status from
a network interface. a network interface.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param InterruptStatus A pointer to the bit mask of the currently active interrupts @param InterruptStatus A pointer to the bit mask of the currently active interrupts
If this is NULL, the interrupt status will not be read from If this is NULL, the interrupt status will not be read from
the device. If this is not NULL, the interrupt status will the device. If this is not NULL, the interrupt status will
@ -528,7 +528,7 @@ EFI_STATUS
/** /**
Places a packet in the transmit queue of a network interface. Places a packet in the transmit queue of a network interface.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param HeaderSize The size, in bytes, of the media header to be filled in by @param HeaderSize The size, in bytes, of the media header to be filled in by
the Transmit() function. If HeaderSize is non-zero, then it the Transmit() function. If HeaderSize is non-zero, then it
must be equal to This->Mode->MediaHeaderSize and the DestAddr must be equal to This->Mode->MediaHeaderSize and the DestAddr
@ -573,7 +573,7 @@ EFI_STATUS
/** /**
Receives a packet from a network interface. Receives a packet from a network interface.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param HeaderSize The size, in bytes, of the media header received on the network @param HeaderSize The size, in bytes, of the media header received on the network
interface. If this parameter is NULL, then the media header size interface. If this parameter is NULL, then the media header size
will not be returned. will not be returned.

View File

@ -6,14 +6,14 @@
a single hardware device or a virtual device that is an aggregation a single hardware device or a virtual device that is an aggregation
of multiple physical devices. of multiple physical devices.
Copyright (c) 2006 - 2008, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -148,7 +148,7 @@ typedef EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL SIMPLE_TEXT_OUTPUT_INTERFACE;
/** /**
Reset the text output device hardware and optionaly run diagnostics Reset the text output device hardware and optionaly run diagnostics
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param ExtendedVerification Driver may perform more exhaustive verfication @param ExtendedVerification Driver may perform more exhaustive verfication
operation of the device during reset. operation of the device during reset.
@ -167,7 +167,7 @@ EFI_STATUS
/** /**
Write a string to the output device. Write a string to the output device.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param String The NULL-terminated string to be displayed on the output @param String The NULL-terminated string to be displayed on the output
device(s). All output devices must also support the Unicode device(s). All output devices must also support the Unicode
drawing character codes defined in this file. drawing character codes defined in this file.
@ -193,7 +193,7 @@ EFI_STATUS
Verifies that all characters in a string can be output to the Verifies that all characters in a string can be output to the
target device. target device.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param String The NULL-terminated string to be examined for the output @param String The NULL-terminated string to be examined for the output
device(s). device(s).
@ -214,7 +214,7 @@ EFI_STATUS
Returns information for an available text mode that the output device(s) Returns information for an available text mode that the output device(s)
supports. supports.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param ModeNumber The mode number to return information on. @param ModeNumber The mode number to return information on.
@param Columns Returns the geometry of the text output device for the @param Columns Returns the geometry of the text output device for the
requested ModeNumber. requested ModeNumber.
@ -238,7 +238,7 @@ EFI_STATUS
/** /**
Sets the output device(s) to a specified mode. Sets the output device(s) to a specified mode.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param ModeNumber The mode number to set. @param ModeNumber The mode number to set.
@retval EFI_SUCCESS The requested text mode was set. @retval EFI_SUCCESS The requested text mode was set.
@ -257,7 +257,7 @@ EFI_STATUS
Sets the background and foreground colors for the OutputString () and Sets the background and foreground colors for the OutputString () and
ClearScreen () functions. ClearScreen () functions.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param Attribute The attribute to set. Bits 0..3 are the foreground color, and @param Attribute The attribute to set. Bits 0..3 are the foreground color, and
bits 4..6 are the background color. All other bits are undefined bits 4..6 are the background color. All other bits are undefined
and must be zero. The valid Attributes are defined in this file. and must be zero. The valid Attributes are defined in this file.
@ -278,7 +278,7 @@ EFI_STATUS
Clears the output device(s) display to the currently selected background Clears the output device(s) display to the currently selected background
color. color.
@param This Protocol instance pointer. @param This The protocol instance pointer.
@retval EFI_SUCCESS The operation completed successfully. @retval EFI_SUCCESS The operation completed successfully.
@retval EFI_DEVICE_ERROR The device had an error and could not complete the request. @retval EFI_DEVICE_ERROR The device had an error and could not complete the request.
@ -294,7 +294,7 @@ EFI_STATUS
/** /**
Sets the current coordinates of the cursor position Sets the current coordinates of the cursor position
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param Column The position to set the cursor to. Must be greater than or @param Column The position to set the cursor to. Must be greater than or
equal to zero and less than the number of columns and rows equal to zero and less than the number of columns and rows
by QueryMode (). by QueryMode ().
@ -319,7 +319,7 @@ EFI_STATUS
/** /**
Makes the cursor visible or invisible Makes the cursor visible or invisible
@param This Protocol instance pointer. @param This The protocol instance pointer.
@param Visible If TRUE, the cursor is set to be visible. If FALSE, the cursor is @param Visible If TRUE, the cursor is set to be visible. If FALSE, the cursor is
set to be invisible. set to be invisible.
@ -356,7 +356,7 @@ typedef struct {
/// ///
INT32 Mode; INT32 Mode;
/// ///
/// The current character output attribute /// The current character output attribute.
/// ///
INT32 Attribute; INT32 Attribute;
/// ///

View File

@ -2,14 +2,14 @@
EFI_TAPE_IO_PROTOCOL as defined in the UEFI 2.0. EFI_TAPE_IO_PROTOCOL as defined in the UEFI 2.0.
Provide services to control and access a tape device. Provide services to control and access a tape device.
Copyright (c) 2006 - 2008, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -47,8 +47,8 @@ typedef struct _EFI_TAPE_HEADER {
Reads from the tape. Reads from the tape.
@param This A pointer to the EFI_TAPE_IO_PROTOCOL instance. @param This A pointer to the EFI_TAPE_IO_PROTOCOL instance.
@param BufferSize Size of the buffer in bytes pointed to by Buffer. @param BufferSize The size of the buffer in bytes pointed to by Buffer.
@param Buffer Pointer to the buffer for data to be read into. @param Buffer The pointer to the buffer for data to be read into.
@retval EFI_SUCCESS Data was successfully transferred from the media. @retval EFI_SUCCESS Data was successfully transferred from the media.
@retval EFI_END_OF_FILE A filemark was encountered which limited the data @retval EFI_END_OF_FILE A filemark was encountered which limited the data
@ -63,7 +63,7 @@ typedef struct _EFI_TAPE_HEADER {
The transfer was aborted since the current position of the The transfer was aborted since the current position of the
media may be incorrect. media may be incorrect.
@retval EFI_INVALID_PARAMETER A NULL Buffer was specified with a non-zero @retval EFI_INVALID_PARAMETER A NULL Buffer was specified with a non-zero
BufferSize or the device is operating in fixed block BufferSize, or the device is operating in fixed block
size mode and the BufferSize was not a multiple of size mode and the BufferSize was not a multiple of
device's fixed block size device's fixed block size
@retval EFI_DEVICE_ERROR A device error occurred while attempting to transfer data @retval EFI_DEVICE_ERROR A device error occurred while attempting to transfer data
@ -83,7 +83,7 @@ EFI_STATUS
@param This A pointer to the EFI_TAPE_IO_PROTOCOL instance. @param This A pointer to the EFI_TAPE_IO_PROTOCOL instance.
@param BufferSize Size of the buffer in bytes pointed to by Buffer. @param BufferSize Size of the buffer in bytes pointed to by Buffer.
@param Buffer Pointer to the buffer for data to be written from. @param Buffer The pointer to the buffer for data to be written from.
@retval EFI_SUCCESS Data was successfully transferred to the media. @retval EFI_SUCCESS Data was successfully transferred to the media.
@retval EFI_END_OF_MEDIA The logical end of media has been reached. Data may have @retval EFI_END_OF_MEDIA The logical end of media has been reached. Data may have
@ -99,7 +99,7 @@ EFI_STATUS
@retval EFI_WRITE_PROTECTED The media in the device is write-protected. The transfer @retval EFI_WRITE_PROTECTED The media in the device is write-protected. The transfer
was aborted since a write cannot be completed. was aborted since a write cannot be completed.
@retval EFI_INVALID_PARAMETER A NULL Buffer was specified with a non-zero @retval EFI_INVALID_PARAMETER A NULL Buffer was specified with a non-zero
BufferSize or the device is operating in fixed block BufferSize, or the device is operating in fixed block
size mode and the BufferSize was not a multiple of size mode and the BufferSize was not a multiple of
device's fixed block size device's fixed block size
@retval EFI_DEVICE_ERROR A device error occurred while attempting to transfer data @retval EFI_DEVICE_ERROR A device error occurred while attempting to transfer data

View File

@ -2,14 +2,14 @@
TCG Service Protocol as defined in TCG_EFI_Protocol_1_20_Final TCG Service Protocol as defined in TCG_EFI_Protocol_1_20_Final
See http://trustedcomputinggroup.org for the latest specification See http://trustedcomputinggroup.org for the latest specification
Copyright (c) 2007 - 2009, Intel Corporation Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -31,13 +31,13 @@ typedef struct {
} TCG_VERSION; } TCG_VERSION;
typedef struct _TCG_EFI_BOOT_SERVICE_CAPABILITY { typedef struct _TCG_EFI_BOOT_SERVICE_CAPABILITY {
UINT8 Size; /// Size of this structure UINT8 Size; /// Size of this structure.
TCG_VERSION StructureVersion; TCG_VERSION StructureVersion;
TCG_VERSION ProtocolSpecVersion; TCG_VERSION ProtocolSpecVersion;
UINT8 HashAlgorithmBitmap; /// Hash algorithms UINT8 HashAlgorithmBitmap; /// Hash algorithms .
/// this protocol is capable of : 01=SHA-1 /// This protocol is capable of : 01=SHA-1.
BOOLEAN TPMPresentFlag; /// 00h = TPM not present BOOLEAN TPMPresentFlag; /// 00h = TPM not present.
BOOLEAN TPMDeactivatedFlag; /// 01h = TPM currently deactivated BOOLEAN TPMDeactivatedFlag; /// 01h = TPM currently deactivated.
} TCG_EFI_BOOT_SERVICE_CAPABILITY; } TCG_EFI_BOOT_SERVICE_CAPABILITY;
typedef UINT32 TCG_ALGORITHM_ID; typedef UINT32 TCG_ALGORITHM_ID;
@ -66,7 +66,7 @@ typedef UINT32 TCG_ALGORITHM_ID;
this is a pointer to the address of the start of this is a pointer to the address of the start of
the last entry in the event log in memory. the last entry in the event log in memory.
@retval EFI_SUCCESS Operation completed successfully. @retval EFI_SUCCESS The operation completed successfully.
@retval EFI_INVALID_PARAMETER ProtocolCapability does not match TCG capability. @retval EFI_INVALID_PARAMETER ProtocolCapability does not match TCG capability.
**/ **/
typedef typedef
@ -83,14 +83,14 @@ EFI_STATUS
/** /**
This service abstracts the capability to do a hash operation on a data buffer. This service abstracts the capability to do a hash operation on a data buffer.
@param This Indicates the calling context @param This Indicates the calling context.
@param HashData Pointer to the data buffer to be hashed @param HashData The pointer to the data buffer to be hashed.
@param HashDataLen Length of the data buffer to be hashed @param HashDataLen The length of the data buffer to be hashed.
@param AlgorithmId Identification of the Algorithm to use for the hashing operation @param AlgorithmId Identification of the Algorithm to use for the hashing operation.
@param HashedDataLen Resultant length of the hashed data @param HashedDataLen Resultant length of the hashed data.
@param HashedDataResult Resultant buffer of the hashed data @param HashedDataResult Resultant buffer of the hashed data.
@retval EFI_SUCCESS Operation completed successfully. @retval EFI_SUCCESS The operation completed successfully.
@retval EFI_INVALID_PARAMETER HashDataLen is NULL. @retval EFI_INVALID_PARAMETER HashDataLen is NULL.
@retval EFI_INVALID_PARAMETER HashDataLenResult is NULL. @retval EFI_INVALID_PARAMETER HashDataLenResult is NULL.
@retval EFI_OUT_OF_RESOURCES Cannot allocate buffer of size *HashedDataLen. @retval EFI_OUT_OF_RESOURCES Cannot allocate buffer of size *HashedDataLen.
@ -112,16 +112,16 @@ EFI_STATUS
This service abstracts the capability to add an entry to the Event Log. This service abstracts the capability to add an entry to the Event Log.
@param This Indicates the calling context @param This Indicates the calling context
@param TCGLogData Pointer to the start of the data buffer containing @param TCGLogData The pointer to the start of the data buffer containing
the TCG_PCR_EVENT data structure. All fields in the TCG_PCR_EVENT data structure. All fields in
this structure are properly filled by the caller. this structure are properly filled by the caller.
@param EventNumber The event number of the event just logged @param EventNumber The event number of the event just logged.
@param Flags Indicate additional flags. Only one flag has been @param Flags Indicates additional flags. Only one flag has been
defined at this time, which is 0x01 and means the defined at this time, which is 0x01 and means the
extend operation should not be performed. All extend operation should not be performed. All
other bits are reserved. other bits are reserved.
@retval EFI_SUCCESS Operation completed successfully. @retval EFI_SUCCESS The operation completed successfully.
@retval EFI_OUT_OF_RESOURCES Insufficient memory in the event log to complete this action. @retval EFI_OUT_OF_RESOURCES Insufficient memory in the event log to complete this action.
**/ **/
typedef typedef
@ -136,13 +136,13 @@ EFI_STATUS
/** /**
This service is a proxy for commands to the TPM. This service is a proxy for commands to the TPM.
@param This Indicates the calling context @param This Indicates the calling context.
@param TpmInputParameterBlockSize Size of the TPM input parameter block @param TpmInputParameterBlockSize Size of the TPM input parameter block.
@param TpmInputParameterBlock Pointer to the TPM input parameter block @param TpmInputParameterBlock The pointer to the TPM input parameter block.
@param TpmOutputParameterBlockSize Size of the TPM output parameter block @param TpmOutputParameterBlockSize Size of the TPM output parameter block.
@param TpmOutputParameterBlock Pointer to the TPM output parameter block @param TpmOutputParameterBlock The pointer to the TPM output parameter block.
@retval EFI_SUCCESS Operation completed successfully. @retval EFI_SUCCESS The operation completed successfully.
@retval EFI_INVALID_PARAMETER Invalid ordinal. @retval EFI_INVALID_PARAMETER Invalid ordinal.
@retval EFI_UNSUPPORTED Current Task Priority Level >= EFI_TPL_CALLBACK. @retval EFI_UNSUPPORTED Current Task Priority Level >= EFI_TPL_CALLBACK.
@retval EFI_TIMEOUT The TIS timed-out. @retval EFI_TIMEOUT The TIS timed-out.
@ -161,20 +161,20 @@ EFI_STATUS
This service abstracts the capability to do a hash operation on a data buffer, extend a specific TPM PCR with the hash result, and add an entry to the Event Log This service abstracts the capability to do a hash operation on a data buffer, extend a specific TPM PCR with the hash result, and add an entry to the Event Log
@param This Indicates the calling context @param This Indicates the calling context
@param HashData Physical address of the start of the data buffer @param HashData The physical address of the start of the data buffer
to be hashed, extended, and logged. to be hashed, extended, and logged.
@param HashDataLen The length, in bytes, of the buffer referenced by HashData @param HashDataLen The length, in bytes, of the buffer referenced by HashData
@param AlgorithmId Identification of the Algorithm to use for the hashing operation @param AlgorithmId Identification of the Algorithm to use for the hashing operation
@param TCGLogData The physical address of the start of the data @param TCGLogData The physical address of the start of the data
buffer containing the TCG_PCR_EVENT data structure. buffer containing the TCG_PCR_EVENT data structure.
@param EventNumber The event number of the event just logged. @param EventNumber The event number of the event just logged.
@param EventLogLastEntry Physical address of the first byte of the entry @param EventLogLastEntry The physical address of the first byte of the entry
just placed in the Event Log. If the Event Log was just placed in the Event Log. If the Event Log was
empty when this function was called then this physical empty when this function was called then this physical
address will be the same as the physical address of address will be the same as the physical address of
the start of the Event Log. the start of the Event Log.
@retval EFI_SUCCESS Operation completed successfully. @retval EFI_SUCCESS The operation completed successfully.
@retval EFI_UNSUPPORTED AlgorithmId != TPM_ALG_SHA. @retval EFI_UNSUPPORTED AlgorithmId != TPM_ALG_SHA.
@retval EFI_UNSUPPORTED Current TPL >= EFI_TPL_CALLBACK. @retval EFI_UNSUPPORTED Current TPL >= EFI_TPL_CALLBACK.
@retval EFI_DEVICE_ERROR The command was unsuccessful. @retval EFI_DEVICE_ERROR The command was unsuccessful.

View File

@ -4,17 +4,17 @@
and destroy child of the driver to communicate with other host using TCP protocol. and destroy child of the driver to communicate with other host using TCP protocol.
The EFI TCPv4 Protocol provides services to send and receive data stream. The EFI TCPv4 Protocol provides services to send and receive data stream.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is introduced in UEFI Specification 2.0 This Protocol is introduced in UEFI Specification 2.0.
**/ **/
@ -225,14 +225,14 @@ typedef struct {
/** /**
Get the current operational status. Get the current operational status.
@param This Pointer to the EFI_TCP4_PROTOCOL instance. @param This The pointer to the EFI_TCP4_PROTOCOL instance.
@param Tcp4State Pointer to the buffer to receive the current TCP state. @param Tcp4State The pointer to the buffer to receive the current TCP state.
@param Tcp4ConfigData Pointer to the buffer to receive the current TCP configuration. @param Tcp4ConfigData The pointer to the buffer to receive the current TCP configuration.
@param Ip4ModeData Pointer to the buffer to receive the current IPv4 configuration @param Ip4ModeData The pointer to the buffer to receive the current IPv4 configuration
data used by the TCPv4 instance. data used by the TCPv4 instance.
@param MnpConfigData Pointer to the buffer to receive the current MNP configuration @param MnpConfigData The pointer to the buffer to receive the current MNP configuration
data used indirectly by the TCPv4 instance. data used indirectly by the TCPv4 instance.
@param SnpModeData Pointer to the buffer to receive the current SNP configuration @param SnpModeData The pointer to the buffer to receive the current SNP configuration
data used indirectly by the TCPv4 instance. data used indirectly by the TCPv4 instance.
@retval EFI_SUCCESS The mode data was read. @retval EFI_SUCCESS The mode data was read.
@ -255,8 +255,8 @@ EFI_STATUS
/** /**
Initialize or brutally reset the operational parameters for this EFI TCPv4 instance. Initialize or brutally reset the operational parameters for this EFI TCPv4 instance.
@param This Pointer to the EFI_TCP4_PROTOCOL instance. @param This The pointer to the EFI_TCP4_PROTOCOL instance.
@param Tcp4ConfigData Pointer to the configure data to configure the instance. @param Tcp4ConfigData The pointer to the configure data to configure the instance.
@retval EFI_SUCCESS The operational settings are set, changed, or reset @retval EFI_SUCCESS The operational settings are set, changed, or reset
successfully. successfully.
@ -283,7 +283,7 @@ EFI_STATUS
/** /**
Add or delete a route entry to the route table Add or delete a route entry to the route table
@param This Pointer to the EFI_TCP4_PROTOCOL instance. @param This The pointer to the EFI_TCP4_PROTOCOL instance.
@param DeleteRoute Set it to TRUE to delete this route from the routing table. Set it to @param DeleteRoute Set it to TRUE to delete this route from the routing table. Set it to
FALSE to add this route to the routing table. FALSE to add this route to the routing table.
DestinationAddress and SubnetMask are used as the DestinationAddress and SubnetMask are used as the
@ -326,8 +326,8 @@ EFI_STATUS
/** /**
Initiate a nonblocking TCP connection request for an active TCP instance. Initiate a nonblocking TCP connection request for an active TCP instance.
@param This Pointer to the EFI_TCP4_PROTOCOL instance. @param This The pointer to the EFI_TCP4_PROTOCOL instance.
@param ConnectionToken Pointer to the connection token to return when the TCP three @param ConnectionToken The pointer to the connection token to return when the TCP three
way handshake finishes. way handshake finishes.
@retval EFI_SUCCESS The connection request is successfully initiated and the state @retval EFI_SUCCESS The connection request is successfully initiated and the state
@ -355,8 +355,8 @@ EFI_STATUS
/** /**
Listen on the passive instance to accept an incoming connection request. This is a nonblocking operation. Listen on the passive instance to accept an incoming connection request. This is a nonblocking operation.
@param This Pointer to the EFI_TCP4_PROTOCOL instance. @param This The pointer to the EFI_TCP4_PROTOCOL instance.
@param ListenToken Pointer to the listen token to return when operation finishes. @param ListenToken The pointer to the listen token to return when operation finishes.
@retval EFI_SUCCESS The listen token has been queued successfully. @retval EFI_SUCCESS The listen token has been queued successfully.
@retval EFI_NOT_STARTED This EFI TCPv4 Protocol instance has not been configured. @retval EFI_NOT_STARTED This EFI TCPv4 Protocol instance has not been configured.
@ -383,8 +383,8 @@ EFI_STATUS
/** /**
Queues outgoing data into the transmit queue. Queues outgoing data into the transmit queue.
@param This Pointer to the EFI_TCP4_PROTOCOL instance. @param This The pointer to the EFI_TCP4_PROTOCOL instance.
@param Token Pointer to the completion token to queue to the transmit queue. @param Token The pointer to the completion token to queue to the transmit queue.
@retval EFI_SUCCESS The data has been queued for transmission. @retval EFI_SUCCESS The data has been queued for transmission.
@retval EFI_NOT_STARTED This EFI TCPv4 Protocol instance has not been configured. @retval EFI_NOT_STARTED This EFI TCPv4 Protocol instance has not been configured.
@ -422,8 +422,8 @@ EFI_STATUS
/** /**
Places an asynchronous receive request into the receiving queue. Places an asynchronous receive request into the receiving queue.
@param This Pointer to the EFI_TCP4_PROTOCOL instance. @param This The pointer to the EFI_TCP4_PROTOCOL instance.
@param Token Pointer to a token that is associated with the receive data @param Token The pointer to a token that is associated with the receive data
descriptor. descriptor.
@retval EFI_SUCCESS The receive completion token was cached. @retval EFI_SUCCESS The receive completion token was cached.
@ -465,8 +465,8 @@ EFI_STATUS
Disconnecting a TCP connection gracefully or reset a TCP connection. This function is a Disconnecting a TCP connection gracefully or reset a TCP connection. This function is a
nonblocking operation. nonblocking operation.
@param This Pointer to the EFI_TCP4_PROTOCOL instance. @param This The pointer to the EFI_TCP4_PROTOCOL instance.
@param CloseToken Pointer to the close token to return when operation finishes. @param CloseToken The pointer to the close token to return when operation finishes.
@retval EFI_SUCCESS The Close() is called successfully. @retval EFI_SUCCESS The Close() is called successfully.
@retval EFI_NOT_STARTED This EFI TCPv4 Protocol instance has not been configured. @retval EFI_NOT_STARTED This EFI TCPv4 Protocol instance has not been configured.
@ -494,8 +494,8 @@ EFI_STATUS
/** /**
Abort an asynchronous connection, listen, transmission or receive request. Abort an asynchronous connection, listen, transmission or receive request.
@param This Pointer to the EFI_TCP4_PROTOCOL instance. @param This The pointer to the EFI_TCP4_PROTOCOL instance.
@param Token Pointer to a token that has been issued by @param Token The pointer to a token that has been issued by
EFI_TCP4_PROTOCOL.Connect(), EFI_TCP4_PROTOCOL.Connect(),
EFI_TCP4_PROTOCOL.Accept(), EFI_TCP4_PROTOCOL.Accept(),
EFI_TCP4_PROTOCOL.Transmit() or EFI_TCP4_PROTOCOL.Transmit() or
@ -527,7 +527,7 @@ EFI_STATUS
/** /**
Poll to receive incoming data and transmit outgoing segments. Poll to receive incoming data and transmit outgoing segments.
@param This Pointer to the EFI_TCP4_PROTOCOL instance. @param This The pointer to the EFI_TCP4_PROTOCOL instance.
@retval EFI_SUCCESS Incoming or outgoing data was processed. @retval EFI_SUCCESS Incoming or outgoing data was processed.
@retval EFI_INVALID_PARAMETER This is NULL. @retval EFI_INVALID_PARAMETER This is NULL.

View File

@ -4,17 +4,17 @@
The EFI UDPv4 Protocol provides simple packet-oriented services The EFI UDPv4 Protocol provides simple packet-oriented services
to transmit and receive UDP packets. to transmit and receive UDP packets.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
This Protocol is introduced in UEFI Specification 2.0 This Protocol is introduced in UEFI Specification 2.0.
**/ **/
@ -124,11 +124,11 @@ typedef struct {
optionally to retrieve the operational mode data of underlying networks or optionally to retrieve the operational mode data of underlying networks or
drivers. drivers.
@param This Pointer to the EFI_UDP4_PROTOCOL instance. @param This The pointer to the EFI_UDP4_PROTOCOL instance.
@param Udp4ConfigData Pointer to the buffer to receive the current configuration data. @param Udp4ConfigData The pointer to the buffer to receive the current configuration data.
@param Ip4ModeData Pointer to the EFI IPv4 Protocol mode data structure. @param Ip4ModeData The pointer to the EFI IPv4 Protocol mode data structure.
@param MnpConfigData Pointer to the managed network configuration data structure. @param MnpConfigData The pointer to the managed network configuration data structure.
@param SnpModeData Pointer to the simple network mode data structure. @param SnpModeData The pointer to the simple network mode data structure.
@retval EFI_SUCCESS The mode data was read. @retval EFI_SUCCESS The mode data was read.
@retval EFI_NOT_STARTED When Udp4ConfigData is queried, no configuration data is @retval EFI_NOT_STARTED When Udp4ConfigData is queried, no configuration data is
@ -162,8 +162,8 @@ EFI_STATUS
With different parameters in UdpConfigData, Configure() can be used to bind With different parameters in UdpConfigData, Configure() can be used to bind
this instance to specified port. this instance to specified port.
@param This Pointer to the EFI_UDP4_PROTOCOL instance. @param This The pointer to the EFI_UDP4_PROTOCOL instance.
@param Udp4ConfigData Pointer to the buffer to receive the current configuration data. @param Udp4ConfigData The pointer to the buffer to receive the current configuration data.
@retval EFI_SUCCESS The configuration settings were set, changed, or reset successfully. @retval EFI_SUCCESS The configuration settings were set, changed, or reset successfully.
@retval EFI_NO_MAPPING When using a default address, configuration (DHCP, BOOTP, @retval EFI_NO_MAPPING When using a default address, configuration (DHCP, BOOTP,
@ -194,10 +194,10 @@ EFI_STATUS
filtering. If the JoinFlag is FALSE and the MulticastAddress is NULL, then all filtering. If the JoinFlag is FALSE and the MulticastAddress is NULL, then all
currently joined groups are left. currently joined groups are left.
@param This Pointer to the EFI_UDP4_PROTOCOL instance. @param This The pointer to the EFI_UDP4_PROTOCOL instance.
@param JoinFlag Set to TRUE to join a multicast group. Set to FALSE to leave one @param JoinFlag Set to TRUE to join a multicast group. Set to FALSE to leave one
or all multicast groups. or all multicast groups.
@param MulticastAddress Pointer to multicast group address to join or leave. @param MulticastAddress The pointer to multicast group address to join or leave.
@retval EFI_SUCCESS The operation completed successfully. @retval EFI_SUCCESS The operation completed successfully.
@retval EFI_NOT_STARTED The EFI UDPv4 Protocol instance has not been started. @retval EFI_NOT_STARTED The EFI UDPv4 Protocol instance has not been started.
@ -245,7 +245,7 @@ EFI_STATUS
copies will be updated automatically whenever the IP driver reconfigures its copies will be updated automatically whenever the IP driver reconfigures its
instances; as a result, the previous modification to these copies will be lost. instances; as a result, the previous modification to these copies will be lost.
@param This Pointer to the EFI_UDP4_PROTOCOL instance. @param This The pointer to the EFI_UDP4_PROTOCOL instance.
@param DeleteRoute Set to TRUE to delete this route from the routing table. @param DeleteRoute Set to TRUE to delete this route from the routing table.
Set to FALSE to add this route to the routing table. Set to FALSE to add this route to the routing table.
@param SubnetAddress The destination network address that needs to be routed. @param SubnetAddress The destination network address that needs to be routed.
@ -284,7 +284,7 @@ EFI_STATUS
Drivers and applications that are experiencing packet loss should try calling Drivers and applications that are experiencing packet loss should try calling
the Poll() function more often. the Poll() function more often.
@param This Pointer to the EFI_UDP4_PROTOCOL instance. @param This The pointer to the EFI_UDP4_PROTOCOL instance.
@retval EFI_SUCCESS Incoming or outgoing data was processed. @retval EFI_SUCCESS Incoming or outgoing data was processed.
@retval EFI_INVALID_PARAMETER This is NULL. @retval EFI_INVALID_PARAMETER This is NULL.
@ -310,8 +310,8 @@ EFI_STATUS
will enable the user to receive the notification and receiving status. That will enable the user to receive the notification and receiving status. That
notification function is guaranteed to not be re-entered. notification function is guaranteed to not be re-entered.
@param This Pointer to the EFI_UDP4_PROTOCOL instance. @param This The pointer to the EFI_UDP4_PROTOCOL instance.
@param Token Pointer to a token that is associated with the receive data @param Token The pointer to a token that is associated with the receive data
descriptor. descriptor.
@retval EFI_SUCCESS The receive completion token was cached. @retval EFI_SUCCESS The receive completion token was cached.
@ -344,8 +344,8 @@ EFI_STATUS
and context for the event will enable the user to receive the notification and and context for the event will enable the user to receive the notification and
transmitting status. transmitting status.
@param This Pointer to the EFI_UDP4_PROTOCOL instance. @param This The pointer to the EFI_UDP4_PROTOCOL instance.
@param Token Pointer to the completion token that will be placed into the @param Token The pointer to the completion token that will be placed into the
transmit queue. transmit queue.
@retval EFI_SUCCESS The data has been queued for transmission. @retval EFI_SUCCESS The data has been queued for transmission.
@ -381,8 +381,8 @@ EFI_STATUS
the asynchronous operation has completed, this function will not signal the the asynchronous operation has completed, this function will not signal the
token and EFI_NOT_FOUND is returned. token and EFI_NOT_FOUND is returned.
@param This Pointer to the EFI_UDP4_PROTOCOL instance. @param This The pointer to the EFI_UDP4_PROTOCOL instance.
@param Token Pointer to a token that has been issued by @param Token The pointer to a token that has been issued by
EFI_UDP4_PROTOCOL.Transmit() or EFI_UDP4_PROTOCOL.Transmit() or
EFI_UDP4_PROTOCOL.Receive().If NULL, all pending EFI_UDP4_PROTOCOL.Receive().If NULL, all pending
tokens are aborted. tokens are aborted.

View File

@ -3,14 +3,14 @@
This protocol is used to allow code running in the boot services environment This protocol is used to allow code running in the boot services environment
to perform lexical comparison functions on Unicode strings for given languages. to perform lexical comparison functions on Unicode strings for given languages.
Copyright (c) 2006 - 2008, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -55,9 +55,9 @@ typedef EFI_UNICODE_COLLATION_PROTOCOL UNICODE_COLLATION_INTERFACE;
@param Str1 A pointer to a Null-terminated string. @param Str1 A pointer to a Null-terminated string.
@param Str2 A pointer to a Null-terminated string. @param Str2 A pointer to a Null-terminated string.
@retval 0 Str1 is equivalent to Str2 @retval 0 Str1 is equivalent to Str2.
@retval >0 Str1 is lexically greater than Str2 @retval >0 Str1 is lexically greater than Str2.
@retval <0 Str1 is lexically less than Str2 @retval <0 Str1 is lexically less than Str2.
**/ **/
typedef typedef

View File

@ -6,13 +6,13 @@
types defined via this include file and can be ported easily to any types defined via this include file and can be ported easily to any
environment. environment.
Copyright (c) 2006 - 2007, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/

View File

@ -1,15 +1,14 @@
/** @file /** @file
Defines data types and constants introduced in UEFI. Defines data types and constants introduced in UEFI.
Copyright (c) 2006 - 2009, Intel Corporation<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
Portions copyright (c) 2008-2009 Apple Inc. All rights reserved.<BR> This program and the accompanying materials are licensed and made available under
All rights reserved. This program and the accompanying materials the terms and conditions of the BSD License that accompanies this distribution.
are licensed and made available under the terms and conditions of the BSD License The full text of the license may be found at
which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php.
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -27,7 +26,7 @@
/// ///
typedef GUID EFI_GUID; typedef GUID EFI_GUID;
/// ///
/// Function return status for EFI API /// Function return status for EFI API.
/// ///
typedef RETURN_STATUS EFI_STATUS; typedef RETURN_STATUS EFI_STATUS;
/// ///
@ -91,7 +90,7 @@ typedef struct {
} EFI_IPv4_ADDRESS; } EFI_IPv4_ADDRESS;
/// ///
/// 16-byte buffer. An IPv6 internet protocol address /// 16-byte buffer. An IPv6 internet protocol address.
/// ///
typedef struct { typedef struct {
UINT8 Addr[16]; UINT8 Addr[16];
@ -194,27 +193,27 @@ typedef union {
#define EFI_PAGES_TO_SIZE(a) ( (a) << EFI_PAGE_SHIFT) #define EFI_PAGES_TO_SIZE(a) ( (a) << EFI_PAGE_SHIFT)
/// ///
/// PE32+ Machine type for IA32 UEFI images /// PE32+ Machine type for IA32 UEFI images.
/// ///
#define EFI_IMAGE_MACHINE_IA32 0x014C #define EFI_IMAGE_MACHINE_IA32 0x014C
/// ///
/// PE32+ Machine type for IA64 UEFI images /// PE32+ Machine type for IA64 UEFI images.
/// ///
#define EFI_IMAGE_MACHINE_IA64 0x0200 #define EFI_IMAGE_MACHINE_IA64 0x0200
/// ///
/// PE32+ Machine type for EBC UEFI images /// PE32+ Machine type for EBC UEFI images.
/// ///
#define EFI_IMAGE_MACHINE_EBC 0x0EBC #define EFI_IMAGE_MACHINE_EBC 0x0EBC
/// ///
/// PE32+ Machine type for X64 UEFI images /// PE32+ Machine type for X64 UEFI images.
/// ///
#define EFI_IMAGE_MACHINE_X64 0x8664 #define EFI_IMAGE_MACHINE_X64 0x8664
/// ///
/// PE32+ Machine type for ARM mixed ARM and Thumb/Thumb2 images /// PE32+ Machine type for ARM mixed ARM and Thumb/Thumb2 images.
/// ///
#define EFI_IMAGE_MACHINE_ARMTHUMB_MIXED 0x01C2 #define EFI_IMAGE_MACHINE_ARMTHUMB_MIXED 0x01C2

View File

@ -1,14 +1,14 @@
/** @file /** @file
EFI Guid Partition Table Format Definition. EFI Guid Partition Table Format Definition.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -21,19 +21,19 @@
/// ///
#define PRIMARY_PART_HEADER_LBA 1 #define PRIMARY_PART_HEADER_LBA 1
/// ///
/// EFI Partition Table Signature: "EFI PART" /// EFI Partition Table Signature: "EFI PART".
/// ///
#define EFI_PTAB_HEADER_ID SIGNATURE_64 ('E','F','I',' ','P','A','R','T') #define EFI_PTAB_HEADER_ID SIGNATURE_64 ('E','F','I',' ','P','A','R','T')
#pragma pack(1) #pragma pack(1)
/// ///
/// GPT Partition Table Header /// GPT Partition Table Header.
/// ///
typedef struct { typedef struct {
/// ///
/// The table header for the GPT partition Table. /// The table header for the GPT partition Table.
/// This header contains EFI_PTAB_HEADER_ID /// This header contains EFI_PTAB_HEADER_ID.
/// ///
EFI_TABLE_HEADER Header; EFI_TABLE_HEADER Header;
/// ///
@ -82,7 +82,7 @@ typedef struct {
} EFI_PARTITION_TABLE_HEADER; } EFI_PARTITION_TABLE_HEADER;
/// ///
/// GPT Partition Entry /// GPT Partition Entry.
/// ///
typedef struct { typedef struct {
/// ///
@ -110,7 +110,7 @@ typedef struct {
/// partition indicates that deletion or modification of the contents can result in loss of platform /// partition indicates that deletion or modification of the contents can result in loss of platform
/// features or failure for the platform to boot or operate. The system cannot function normally if /// features or failure for the platform to boot or operate. The system cannot function normally if
/// this partition is removed, and it should be considered part of the hardware of the system. /// this partition is removed, and it should be considered part of the hardware of the system.
/// Actions such as running diagnostics, system recovery, or even OS install or boot could /// Actions such as running diagnostics, system recovery, or even OS install or boot, could
/// potentially stop working if this partition is removed. Unless OS software or firmware /// potentially stop working if this partition is removed. Unless OS software or firmware
/// recognizes this partition, it should never be removed or modified as the UEFI firmware or /// recognizes this partition, it should never be removed or modified as the UEFI firmware or
/// platform hardware may become non-functional. /// platform hardware may become non-functional.

View File

@ -3,14 +3,14 @@
IFR is primarily consumed by the EFI presentation engine, and produced by EFI IFR is primarily consumed by the EFI presentation engine, and produced by EFI
internal application and drivers as well as all add-in card option-ROM drivers internal application and drivers as well as all add-in card option-ROM drivers
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
These definitions are from UEFI 2.1 and 2.2. These definitions are from UEFI 2.1 and 2.2.
@ -86,7 +86,7 @@ typedef struct {
// //
/// ///
/// Contents of EFI_NARROW_GLYPH.Attributes /// Contents of EFI_NARROW_GLYPH.Attributes.
///@{ ///@{
#define EFI_GLYPH_NON_SPACING 0x01 #define EFI_GLYPH_NON_SPACING 0x01
#define EFI_GLYPH_WIDE 0x02 #define EFI_GLYPH_WIDE 0x02
@ -187,7 +187,7 @@ typedef struct _EFI_HII_GLYPH_INFO {
} EFI_HII_GLYPH_INFO; } EFI_HII_GLYPH_INFO;
/// ///
/// The fixed header consists of a standard record header and /// The fixed header consists of a standard record header,
/// then the character values in this section, the flags /// then the character values in this section, the flags
/// (including the encoding method) and the offsets of the glyph /// (including the encoding method) and the offsets of the glyph
/// information, the glyph bitmaps and the character map. /// information, the glyph bitmaps and the character map.
@ -1274,10 +1274,10 @@ typedef struct _EFI_IFR_TO_BOOLEAN {
/// ///
/// For EFI_IFR_TO_STRING, when converting from /// For EFI_IFR_TO_STRING, when converting from
/// unsigned integers, these flags control the format: /// unsigned integers, these flags control the format:
/// 0 = unsigned decimal /// 0 = unsigned decimal.
/// 1 = signed decimal /// 1 = signed decimal.
/// 2 = hexadecimal (lower-case alpha) /// 2 = hexadecimal (lower-case alpha).
/// 3 = hexadecimal (upper-case alpha) /// 3 = hexadecimal (upper-case alpha).
///@{ ///@{
#define EFI_IFR_STRING_UNSIGNED_DEC 0 #define EFI_IFR_STRING_UNSIGNED_DEC 0
#define EFI_IFR_STRING_SIGNED_DEC 1 #define EFI_IFR_STRING_SIGNED_DEC 1
@ -1287,8 +1287,8 @@ typedef struct _EFI_IFR_TO_BOOLEAN {
/// ///
/// When converting from a buffer, these flags control the format: /// When converting from a buffer, these flags control the format:
/// 0 = ASCII /// 0 = ASCII.
/// 8 = Unicode /// 8 = Unicode.
///@{ ///@{
#define EFI_IFR_STRING_ASCII 0 #define EFI_IFR_STRING_ASCII 0
#define EFI_IFR_STRING_UNICODE 8 #define EFI_IFR_STRING_UNICODE 8
@ -1778,7 +1778,7 @@ typedef struct _EFI_IFR_ANIMATION {
} EFI_IFR_ANIMATION; } EFI_IFR_ANIMATION;
/// ///
/// HII animation package header /// HII animation package header.
/// ///
typedef struct _EFI_HII_ANIMATION_PACKAGE_HDR { typedef struct _EFI_HII_ANIMATION_PACKAGE_HDR {
/// ///
@ -1794,7 +1794,7 @@ typedef struct _EFI_HII_ANIMATION_PACKAGE_HDR {
/// ///
/// Animation information is encoded as a series of blocks, /// Animation information is encoded as a series of blocks,
/// with each block prefixed by a single byte header EFI_HII_ANIMATION_BLOCK /// with each block prefixed by a single byte header EFI_HII_ANIMATION_BLOCK.
/// ///
typedef struct _EFI_HII_ANIMATION_BLOCK { typedef struct _EFI_HII_ANIMATION_BLOCK {
UINT8 BlockType; UINT8 BlockType;
@ -1802,7 +1802,7 @@ typedef struct _EFI_HII_ANIMATION_BLOCK {
} EFI_HII_ANIMATION_BLOCK; } EFI_HII_ANIMATION_BLOCK;
/// ///
/// Animation block types /// Animation block types.
/// ///
#define EFI_HII_AIBT_END 0x00 #define EFI_HII_AIBT_END 0x00
#define EFI_HII_AIBT_OVERLAY_IMAGES 0x10 #define EFI_HII_AIBT_OVERLAY_IMAGES 0x10
@ -1825,11 +1825,11 @@ typedef struct _EFI_HII_ANIMATION_BLOCK {
typedef struct _EFI_HII_AIBT_EXT1_BLOCK { typedef struct _EFI_HII_AIBT_EXT1_BLOCK {
/// ///
/// Standard animation header, where Header.BlockType = EFI_HII_AIBT_EXT1 /// Standard animation header, where Header.BlockType = EFI_HII_AIBT_EXT1.
/// ///
EFI_HII_ANIMATION_BLOCK Header; EFI_HII_ANIMATION_BLOCK Header;
/// ///
/// The block type /// The block type.
/// ///
UINT8 BlockType2; UINT8 BlockType2;
/// ///
@ -1840,7 +1840,7 @@ typedef struct _EFI_HII_AIBT_EXT1_BLOCK {
typedef struct _EFI_HII_AIBT_EXT2_BLOCK { typedef struct _EFI_HII_AIBT_EXT2_BLOCK {
/// ///
/// Standard animation header, where Header.BlockType = EFI_HII_AIBT_EXT2 /// Standard animation header, where Header.BlockType = EFI_HII_AIBT_EXT2.
/// ///
EFI_HII_ANIMATION_BLOCK Header; EFI_HII_ANIMATION_BLOCK Header;
/// ///
@ -1855,7 +1855,7 @@ typedef struct _EFI_HII_AIBT_EXT2_BLOCK {
typedef struct _EFI_HII_AIBT_EXT4_BLOCK { typedef struct _EFI_HII_AIBT_EXT4_BLOCK {
/// ///
/// Standard animation header, where Header.BlockType = EFI_HII_AIBT_EXT4 /// Standard animation header, where Header.BlockType = EFI_HII_AIBT_EXT4.
/// ///
EFI_HII_ANIMATION_BLOCK Header; EFI_HII_ANIMATION_BLOCK Header;
/// ///

View File

@ -1,14 +1,14 @@
/** @file /** @file
This includes some definitions introduced in UEFI that will be used in both PEI and DXE phases. This includes some definitions introduced in UEFI that will be used in both PEI and DXE phases.
Copyright (c) 2006 - 2009, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -35,7 +35,7 @@ typedef enum {
/// ///
EfiLoaderData, EfiLoaderData,
/// ///
/// The code portions of a loaded Boot Services Driver /// The code portions of a loaded Boot Services Driver.
/// ///
EfiBootServicesCode, EfiBootServicesCode,
/// ///
@ -144,7 +144,7 @@ typedef struct {
/// key associated w/ the public/private 2048-bit RSA key-pair. The /// key associated w/ the public/private 2048-bit RSA key-pair. The
/// WIN_CERTIFICATE shall be used to describe the signature of the /// WIN_CERTIFICATE shall be used to describe the signature of the
/// Variable data *Data. In addition, the signature will also /// Variable data *Data. In addition, the signature will also
/// include the MonotonicCount value to guard against replay attacks /// include the MonotonicCount value to guard against replay attacks.
/// ///
typedef struct { typedef struct {
/// ///

View File

@ -3,18 +3,18 @@
structure prototypes, global variables and constants that structure prototypes, global variables and constants that
are needed for porting PXE to EFI. are needed for porting PXE to EFI.
Copyright (c) 2006 - 2010, Intel Corporation Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
All rights reserved. This program and the accompanying materials This program and the accompanying materials are licensed and made available under
are licensed and made available under the terms and conditions of the BSD License the terms and conditions of the BSD License that accompanies this distribution.
which accompanies this distribution. The full text of the license may be found at The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@par Revision Reference: @par Revision Reference:
32/64-bit PXE specification: 32/64-bit PXE specification:
alpha-4, 99-Dec-17 alpha-4, 99-Dec-17.
**/ **/
@ -30,12 +30,12 @@
) )
/// ///
/// UNDI ROM ID and devive ID signature /// UNDI ROM ID and devive ID signature.
/// ///
#define PXE_BUSTYPE_PXE PXE_BUSTYPE ('!', 'P', 'X', 'E') #define PXE_BUSTYPE_PXE PXE_BUSTYPE ('!', 'P', 'X', 'E')
/// ///
/// BUS ROM ID signatures /// BUS ROM ID signatures.
/// ///
#define PXE_BUSTYPE_PCI PXE_BUSTYPE ('P', 'C', 'I', 'R') #define PXE_BUSTYPE_PCI PXE_BUSTYPE ('P', 'C', 'I', 'R')
#define PXE_BUSTYPE_PC_CARD PXE_BUSTYPE ('P', 'C', 'C', 'R') #define PXE_BUSTYPE_PC_CARD PXE_BUSTYPE ('P', 'C', 'C', 'R')
@ -76,7 +76,7 @@ typedef UINT32 PXE_UINT32;
typedef UINTN PXE_UINTN; typedef UINTN PXE_UINTN;
/// ///
/// typedef unsigned long PXE_UINT64; /// Typedef unsigned long PXE_UINT64.
/// ///
typedef UINT64 PXE_UINT64; typedef UINT64 PXE_UINT64;
@ -226,12 +226,12 @@ typedef PXE_UINT16 PXE_OPFLAGS;
#define PXE_OPFLAGS_RESET_DISABLE_FILTERS 0x0002 #define PXE_OPFLAGS_RESET_DISABLE_FILTERS 0x0002
/// ///
/// UNDI Shutdown /// UNDI Shutdown.
/// ///
/// No OpFlags /// No OpFlags.
/// ///
/// UNDI Interrupt Enables /// UNDI Interrupt Enables.
/// ///
/// ///
/// Select whether to enable or disable external interrupt signals. /// Select whether to enable or disable external interrupt signals.
@ -267,7 +267,7 @@ typedef PXE_UINT16 PXE_OPFLAGS;
#define PXE_OPFLAGS_INTERRUPT_SOFTWARE 0x0008 #define PXE_OPFLAGS_INTERRUPT_SOFTWARE 0x0008
/// ///
/// UNDI Receive Filters /// UNDI Receive Filters.
/// ///
/// ///
/// Select whether to enable or disable receive filters. /// Select whether to enable or disable receive filters.
@ -315,20 +315,20 @@ typedef PXE_UINT16 PXE_OPFLAGS;
#define PXE_OPFLAGS_RECEIVE_FILTER_ALL_MULTICAST 0x0010 #define PXE_OPFLAGS_RECEIVE_FILTER_ALL_MULTICAST 0x0010
/// ///
/// UNDI Station Address /// UNDI Station Address.
/// ///
#define PXE_OPFLAGS_STATION_ADDRESS_READ 0x0000 #define PXE_OPFLAGS_STATION_ADDRESS_READ 0x0000
#define PXE_OPFLAGS_STATION_ADDRESS_WRITE 0x0000 #define PXE_OPFLAGS_STATION_ADDRESS_WRITE 0x0000
#define PXE_OPFLAGS_STATION_ADDRESS_RESET 0x0001 #define PXE_OPFLAGS_STATION_ADDRESS_RESET 0x0001
/// ///
/// UNDI Statistics /// UNDI Statistics.
/// ///
#define PXE_OPFLAGS_STATISTICS_READ 0x0000 #define PXE_OPFLAGS_STATISTICS_READ 0x0000
#define PXE_OPFLAGS_STATISTICS_RESET 0x0001 #define PXE_OPFLAGS_STATISTICS_RESET 0x0001
/// ///
/// UNDI MCast IP to MAC /// UNDI MCast IP to MAC.
/// ///
/// ///
/// Identify the type of IP address in the CPB. /// Identify the type of IP address in the CPB.
@ -338,7 +338,7 @@ typedef PXE_UINT16 PXE_OPFLAGS;
#define PXE_OPFLAGS_MCAST_IPV6_TO_MAC 0x0001 #define PXE_OPFLAGS_MCAST_IPV6_TO_MAC 0x0001
/// ///
/// UNDI NvData /// UNDI NvData.
/// ///
/// ///
/// Select the type of non-volatile data operation. /// Select the type of non-volatile data operation.
@ -348,7 +348,7 @@ typedef PXE_UINT16 PXE_OPFLAGS;
#define PXE_OPFLAGS_NVDATA_WRITE 0x0001 #define PXE_OPFLAGS_NVDATA_WRITE 0x0001
/// ///
/// UNDI Get Status /// UNDI Get Status.
/// ///
/// ///
/// Return current interrupt status. This will also clear any interrupts /// Return current interrupt status. This will also clear any interrupts
@ -374,14 +374,14 @@ typedef PXE_UINT16 PXE_OPFLAGS;
#define PXE_OPFLAGS_GET_MEDIA_STATUS 0x0004 #define PXE_OPFLAGS_GET_MEDIA_STATUS 0x0004
/// ///
/// UNDI Fill Header /// UNDI Fill Header.
/// ///
#define PXE_OPFLAGS_FILL_HEADER_OPMASK 0x0001 #define PXE_OPFLAGS_FILL_HEADER_OPMASK 0x0001
#define PXE_OPFLAGS_FILL_HEADER_FRAGMENTED 0x0001 #define PXE_OPFLAGS_FILL_HEADER_FRAGMENTED 0x0001
#define PXE_OPFLAGS_FILL_HEADER_WHOLE 0x0000 #define PXE_OPFLAGS_FILL_HEADER_WHOLE 0x0000
/// ///
/// UNDI Transmit /// UNDI Transmit.
/// ///
/// ///
/// S/W UNDI only. Return after the packet has been transmitted. A /// S/W UNDI only. Return after the packet has been transmitted. A
@ -397,13 +397,13 @@ typedef PXE_UINT16 PXE_OPFLAGS;
#define PXE_OPFLAGS_TRANSMIT_WHOLE 0x0000 #define PXE_OPFLAGS_TRANSMIT_WHOLE 0x0000
/// ///
/// UNDI Receive /// UNDI Receive.
/// ///
/// No OpFlags /// No OpFlags.
/// ///
/// ///
/// PXE STATFLAGS /// PXE STATFLAGS.
/// ///
typedef PXE_UINT16 PXE_STATFLAGS; typedef PXE_UINT16 PXE_STATFLAGS;
@ -423,7 +423,7 @@ typedef PXE_UINT16 PXE_STATFLAGS;
#define PXE_STATFLAGS_COMMAND_QUEUED 0x4000 #define PXE_STATFLAGS_COMMAND_QUEUED 0x4000
/// ///
/// UNDI Get State /// UNDI Get State.
/// ///
#define PXE_STATFLAGS_GET_STATE_MASK 0x0003 #define PXE_STATFLAGS_GET_STATE_MASK 0x0003
#define PXE_STATFLAGS_GET_STATE_INITIALIZED 0x0002 #define PXE_STATFLAGS_GET_STATE_INITIALIZED 0x0002
@ -431,13 +431,13 @@ typedef PXE_UINT16 PXE_STATFLAGS;
#define PXE_STATFLAGS_GET_STATE_STOPPED 0x0000 #define PXE_STATFLAGS_GET_STATE_STOPPED 0x0000
/// ///
/// UNDI Start /// UNDI Start.
/// ///
/// No additional StatFlags /// No additional StatFlags.
/// ///
/// ///
/// UNDI Get Init Info /// UNDI Get Init Info.
/// ///
#define PXE_STATFLAGS_CABLE_DETECT_MASK 0x0001 #define PXE_STATFLAGS_CABLE_DETECT_MASK 0x0001
#define PXE_STATFLAGS_CABLE_DETECT_NOT_SUPPORTED 0x0000 #define PXE_STATFLAGS_CABLE_DETECT_NOT_SUPPORTED 0x0000
@ -448,22 +448,22 @@ typedef PXE_UINT16 PXE_STATFLAGS;
#define PXE_STATFLAGS_GET_STATUS_NO_MEDIA_SUPPORTED 0x0002 #define PXE_STATFLAGS_GET_STATUS_NO_MEDIA_SUPPORTED 0x0002
/// ///
/// UNDI Initialize /// UNDI Initialize.
/// ///
#define PXE_STATFLAGS_INITIALIZED_NO_MEDIA 0x0001 #define PXE_STATFLAGS_INITIALIZED_NO_MEDIA 0x0001
/// ///
/// UNDI Reset /// UNDI Reset.
/// ///
#define PXE_STATFLAGS_RESET_NO_MEDIA 0x0001 #define PXE_STATFLAGS_RESET_NO_MEDIA 0x0001
/// ///
/// UNDI Shutdown /// UNDI Shutdown.
/// ///
/// No additional StatFlags /// No additional StatFlags.
/// ///
/// UNDI Interrupt Enables /// UNDI Interrupt Enables.
/// ///
/// ///
/// If set, receive interrupts are enabled. /// If set, receive interrupts are enabled.
@ -481,7 +481,7 @@ typedef PXE_UINT16 PXE_STATFLAGS;
#define PXE_STATFLAGS_INTERRUPT_COMMAND 0x0004 #define PXE_STATFLAGS_INTERRUPT_COMMAND 0x0004
/// ///
/// UNDI Receive Filters /// UNDI Receive Filters.
/// ///
/// ///
@ -511,30 +511,30 @@ typedef PXE_UINT16 PXE_STATFLAGS;
#define PXE_STATFLAGS_RECEIVE_FILTER_ALL_MULTICAST 0x0010 #define PXE_STATFLAGS_RECEIVE_FILTER_ALL_MULTICAST 0x0010
/// ///
/// UNDI Station Address /// UNDI Station Address.
/// ///
/// No additional StatFlags /// No additional StatFlags.
/// ///
/// ///
/// UNDI Statistics /// UNDI Statistics.
/// ///
/// No additional StatFlags /// No additional StatFlags.
/// ///
/// ///
//// UNDI MCast IP to MAC //// UNDI MCast IP to MAC.
//// ////
//// No additional StatFlags //// No additional StatFlags.
/// ///
/// UNDI NvData /// UNDI NvData.
/// ///
/// No additional StatFlags /// No additional StatFlags.
/// ///
/// ///
/// UNDI Get Status /// UNDI Get Status.
/// ///
/// ///
@ -581,19 +581,19 @@ typedef PXE_UINT16 PXE_STATFLAGS;
#define PXE_STATFLAGS_GET_STATUS_NO_MEDIA 0x0040 #define PXE_STATFLAGS_GET_STATUS_NO_MEDIA 0x0040
/// ///
/// UNDI Fill Header /// UNDI Fill Header.
/// ///
/// No additional StatFlags /// No additional StatFlags.
/// ///
/// ///
/// UNDI Transmit /// UNDI Transmit.
/// ///
/// No additional StatFlags. /// No additional StatFlags.
/// ///
/// UNDI Receive /// UNDI Receive
/// ///.
/// ///
/// No additional StatFlags. /// No additional StatFlags.
@ -715,28 +715,28 @@ typedef UINT16 PXE_MEDIA_PROTOCOL;
#define PXE_IFTYPE_FIBRE_CHANNEL 0x12 #define PXE_IFTYPE_FIBRE_CHANNEL 0x12
typedef struct s_pxe_hw_undi { typedef struct s_pxe_hw_undi {
PXE_UINT32 Signature; ///< PXE_ROMID_SIGNATURE PXE_UINT32 Signature; ///< PXE_ROMID_SIGNATURE.
PXE_UINT8 Len; ///< sizeof(PXE_HW_UNDI) PXE_UINT8 Len; ///< sizeof(PXE_HW_UNDI).
PXE_UINT8 Fudge; ///< makes 8-bit cksum equal zero PXE_UINT8 Fudge; ///< makes 8-bit cksum equal zero.
PXE_UINT8 Rev; ///< PXE_ROMID_REV PXE_UINT8 Rev; ///< PXE_ROMID_REV.
PXE_UINT8 IFcnt; ///< physical connector count PXE_UINT8 IFcnt; ///< physical connector count.
PXE_UINT8 MajorVer; ///< PXE_ROMID_MAJORVER PXE_UINT8 MajorVer; ///< PXE_ROMID_MAJORVER.
PXE_UINT8 MinorVer; ///< PXE_ROMID_MINORVER PXE_UINT8 MinorVer; ///< PXE_ROMID_MINORVER.
PXE_UINT16 reserved; ///< zero, not used PXE_UINT16 reserved; ///< zero, not used.
PXE_UINT32 Implementation; ///< implementation flags PXE_UINT32 Implementation; ///< implementation flags.
///< reserved ///< vendor use ///< reserved ///< vendor use.
///< UINT32 Status; ///< status port ///< UINT32 Status; ///< status port.
///< UINT32 Command; ///< command port ///< UINT32 Command; ///< command port.
///< UINT64 CDBaddr; ///< CDB address port ///< UINT64 CDBaddr; ///< CDB address port.
///< ///<
} PXE_HW_UNDI; } PXE_HW_UNDI;
/// ///
/// Status port bit definitions /// Status port bit definitions.
/// ///
/// ///
/// UNDI operation state /// UNDI operation state.
/// ///
#define PXE_HWSTAT_STATE_MASK 0xC0000000 #define PXE_HWSTAT_STATE_MASK 0xC0000000
#define PXE_HWSTAT_BUSY 0xC0000000 #define PXE_HWSTAT_BUSY 0xC0000000
@ -745,12 +745,12 @@ typedef struct s_pxe_hw_undi {
#define PXE_HWSTAT_STOPPED 0x00000000 #define PXE_HWSTAT_STOPPED 0x00000000
/// ///
/// If set, last command failed /// If set, last command failed.
/// ///
#define PXE_HWSTAT_COMMAND_FAILED 0x20000000 #define PXE_HWSTAT_COMMAND_FAILED 0x20000000
/// ///
/// If set, identifies enabled receive filters /// If set, identifies enabled receive filters.
/// ///
#define PXE_HWSTAT_PROMISCUOUS_MULTICAST_RX_ENABLED 0x00001000 #define PXE_HWSTAT_PROMISCUOUS_MULTICAST_RX_ENABLED 0x00001000
#define PXE_HWSTAT_PROMISCUOUS_RX_ENABLED 0x00000800 #define PXE_HWSTAT_PROMISCUOUS_RX_ENABLED 0x00000800
@ -759,7 +759,7 @@ typedef struct s_pxe_hw_undi {
#define PXE_HWSTAT_UNICAST_RX_ENABLED 0x00000100 #define PXE_HWSTAT_UNICAST_RX_ENABLED 0x00000100
/// ///
/// If set, identifies enabled external interrupts /// If set, identifies enabled external interrupts.
/// ///
#define PXE_HWSTAT_SOFTWARE_INT_ENABLED 0x00000080 #define PXE_HWSTAT_SOFTWARE_INT_ENABLED 0x00000080
#define PXE_HWSTAT_TX_COMPLETE_INT_ENABLED 0x00000040 #define PXE_HWSTAT_TX_COMPLETE_INT_ENABLED 0x00000040
@ -767,7 +767,7 @@ typedef struct s_pxe_hw_undi {
#define PXE_HWSTAT_CMD_COMPLETE_INT_ENABLED 0x00000010 #define PXE_HWSTAT_CMD_COMPLETE_INT_ENABLED 0x00000010
/// ///
/// If set, identifies pending interrupts /// If set, identifies pending interrupts.
/// ///
#define PXE_HWSTAT_SOFTWARE_INT_PENDING 0x00000008 #define PXE_HWSTAT_SOFTWARE_INT_PENDING 0x00000008
#define PXE_HWSTAT_TX_COMPLETE_INT_PENDING 0x00000004 #define PXE_HWSTAT_TX_COMPLETE_INT_PENDING 0x00000004
@ -775,7 +775,7 @@ typedef struct s_pxe_hw_undi {
#define PXE_HWSTAT_CMD_COMPLETE_INT_PENDING 0x00000001 #define PXE_HWSTAT_CMD_COMPLETE_INT_PENDING 0x00000001
/// ///
/// Command port definitions /// Command port definitions.
/// ///
/// ///
@ -795,7 +795,7 @@ typedef struct s_pxe_hw_undi {
#define PXE_HWCMD_UNICAST_RX_ENABLE 0x00000100 #define PXE_HWCMD_UNICAST_RX_ENABLE 0x00000100
/// ///
/// Use these to enable/disable external interrupts /// Use these to enable/disable external interrupts.
/// ///
#define PXE_HWCMD_SOFTWARE_INT_ENABLE 0x00000080 #define PXE_HWCMD_SOFTWARE_INT_ENABLE 0x00000080
#define PXE_HWCMD_TX_COMPLETE_INT_ENABLE 0x00000040 #define PXE_HWCMD_TX_COMPLETE_INT_ENABLE 0x00000040
@ -803,7 +803,7 @@ typedef struct s_pxe_hw_undi {
#define PXE_HWCMD_CMD_COMPLETE_INT_ENABLE 0x00000010 #define PXE_HWCMD_CMD_COMPLETE_INT_ENABLE 0x00000010
/// ///
/// Use these to clear pending external interrupts /// Use these to clear pending external interrupts.
/// ///
#define PXE_HWCMD_CLEAR_SOFTWARE_INT 0x00000008 #define PXE_HWCMD_CLEAR_SOFTWARE_INT 0x00000008
#define PXE_HWCMD_CLEAR_TX_COMPLETE_INT 0x00000004 #define PXE_HWCMD_CLEAR_TX_COMPLETE_INT 0x00000004
@ -811,19 +811,19 @@ typedef struct s_pxe_hw_undi {
#define PXE_HWCMD_CLEAR_CMD_COMPLETE_INT 0x00000001 #define PXE_HWCMD_CLEAR_CMD_COMPLETE_INT 0x00000001
typedef struct s_pxe_sw_undi { typedef struct s_pxe_sw_undi {
PXE_UINT32 Signature; ///< PXE_ROMID_SIGNATURE PXE_UINT32 Signature; ///< PXE_ROMID_SIGNATURE.
PXE_UINT8 Len; ///< sizeof(PXE_SW_UNDI) PXE_UINT8 Len; ///< sizeof(PXE_SW_UNDI).
PXE_UINT8 Fudge; ///< makes 8-bit cksum zero PXE_UINT8 Fudge; ///< makes 8-bit cksum zero.
PXE_UINT8 Rev; ///< PXE_ROMID_REV PXE_UINT8 Rev; ///< PXE_ROMID_REV.
PXE_UINT8 IFcnt; ///< physical connector count PXE_UINT8 IFcnt; ///< physical connector count.
PXE_UINT8 MajorVer; ///< PXE_ROMID_MAJORVER PXE_UINT8 MajorVer; ///< PXE_ROMID_MAJORVER.
PXE_UINT8 MinorVer; ///< PXE_ROMID_MINORVER PXE_UINT8 MinorVer; ///< PXE_ROMID_MINORVER.
PXE_UINT16 reserved1; ///< zero, not used PXE_UINT16 reserved1; ///< zero, not used.
PXE_UINT32 Implementation; ///< Implementation flags PXE_UINT32 Implementation; ///< Implementation flags.
PXE_UINT64 EntryPoint; ///< API entry point PXE_UINT64 EntryPoint; ///< API entry point.
PXE_UINT8 reserved2[3]; ///< zero, not used PXE_UINT8 reserved2[3]; ///< zero, not used.
PXE_UINT8 BusCnt; ///< number of bustypes supported PXE_UINT8 BusCnt; ///< number of bustypes supported.
PXE_UINT32 BusType[1]; ///< list of supported bustypes PXE_UINT32 BusType[1]; ///< list of supported bustypes.
} PXE_SW_UNDI; } PXE_SW_UNDI;
typedef union u_pxe_undi { typedef union u_pxe_undi {
@ -832,13 +832,13 @@ typedef union u_pxe_undi {
} PXE_UNDI; } PXE_UNDI;
/// ///
/// Signature of !PXE structure /// Signature of !PXE structure.
/// ///
#define PXE_ROMID_SIGNATURE PXE_BUSTYPE ('!', 'P', 'X', 'E') #define PXE_ROMID_SIGNATURE PXE_BUSTYPE ('!', 'P', 'X', 'E')
/// ///
/// !PXE structure format revision /// !PXE structure format revision
/// ///.
#define PXE_ROMID_REV 0x02 #define PXE_ROMID_REV 0x02
/// ///
@ -850,7 +850,7 @@ typedef union u_pxe_undi {
#define PXE_ROMID_MINORVER 0x01 #define PXE_ROMID_MINORVER 0x01
/// ///
/// Implementation flags /// Implementation flags.
/// ///
#define PXE_ROMID_IMP_HW_UNDI 0x80000000 #define PXE_ROMID_IMP_HW_UNDI 0x80000000
#define PXE_ROMID_IMP_SW_VIRT_ADDR 0x40000000 #define PXE_ROMID_IMP_SW_VIRT_ADDR 0x40000000
@ -921,9 +921,9 @@ typedef union pxe_device {
/// ///
/// cpb and db definitions /// cpb and db definitions
/// ///
#define MAX_PCI_CONFIG_LEN 64 ///< # of dwords #define MAX_PCI_CONFIG_LEN 64 ///< # of dwords.
#define MAX_EEPROM_LEN 128 ///< # of dwords #define MAX_EEPROM_LEN 128 ///< # of dwords.
#define MAX_XMIT_BUFFERS 32 ///< recycling Q length for xmit_done #define MAX_XMIT_BUFFERS 32 ///< recycling Q length for xmit_done.
#define MAX_MCAST_ADDRESS_CNT 8 #define MAX_MCAST_ADDRESS_CNT 8
typedef struct s_pxe_cpb_start_30 { typedef struct s_pxe_cpb_start_30 {
@ -1048,7 +1048,7 @@ typedef struct s_pxe_cpb_start_31 {
/// used with the DMA, it converts the given virtual address to it's /// used with the DMA, it converts the given virtual address to it's
/// physical address and write that in the mapped address pointer. /// physical address and write that in the mapped address pointer.
/// ///
/// This field can be set to zero if there is no mapping service available /// This field can be set to zero if there is no mapping service available.
/// ///
UINT64 Map_Mem; UINT64 Map_Mem;
@ -1056,10 +1056,10 @@ typedef struct s_pxe_cpb_start_31 {
/// PXE_VOID UnMap_Mem(UINT64 unq_id, UINT64 virtual_addr, UINT32 size, /// PXE_VOID UnMap_Mem(UINT64 unq_id, UINT64 virtual_addr, UINT32 size,
/// UINT32 Direction, UINT64 mapped_addr); /// UINT32 Direction, UINT64 mapped_addr);
/// ///
/// UNDI will pass the virtual and mapped addresses of a buffer /// UNDI will pass the virtual and mapped addresses of a buffer.
/// This call will un map the given address /// This call will un map the given address.
/// ///
/// This field can be set to zero if there is no unmapping service available /// This field can be set to zero if there is no unmapping service available.
/// ///
UINT64 UnMap_Mem; UINT64 UnMap_Mem;
@ -1067,11 +1067,11 @@ typedef struct s_pxe_cpb_start_31 {
/// PXE_VOID Sync_Mem(UINT64 unq_id, UINT64 virtual, /// PXE_VOID Sync_Mem(UINT64 unq_id, UINT64 virtual,
/// UINT32 size, UINT32 Direction, UINT64 mapped_addr); /// UINT32 size, UINT32 Direction, UINT64 mapped_addr);
/// ///
/// UNDI will pass the virtual and mapped addresses of a buffer /// UNDI will pass the virtual and mapped addresses of a buffer.
/// This call will synchronize the contents of both the virtual and mapped /// This call will synchronize the contents of both the virtual and mapped.
/// buffers for the given Direction. /// buffers for the given Direction.
/// ///
/// This field can be set to zero if there is no service available /// This field can be set to zero if there is no service available.
/// ///
UINT64 Sync_Mem; UINT64 Sync_Mem;
@ -1195,7 +1195,7 @@ typedef struct s_pxe_pci_config_info {
UINT32 BusType; UINT32 BusType;
/// ///
/// This identifies the PCI network device that this UNDI interface /// This identifies the PCI network device that this UNDI interface.
/// is bound to. /// is bound to.
/// ///
UINT16 Bus; UINT16 Bus;

View File

@ -5,15 +5,14 @@
If a code construct is defined in the UEFI 2.1 specification it must be included If a code construct is defined in the UEFI 2.1 specification it must be included
by this include file. by this include file.
Copyright (c) 2006 - 2010, Intel Corporation<BR> Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved<BR>
Portions copyright (c) 2008-2009 Apple Inc. All rights reserved.<BR> This program and the accompanying materials are licensed and made available under
All rights reserved. This program and the accompanying materials the terms and conditions of the BSD License that accompanies this distribution.
are licensed and made available under the terms and conditions of the BSD License The full text of the license may be found at
which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php.
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/ **/
@ -31,20 +30,20 @@
/// ///
typedef enum { typedef enum {
/// ///
/// Allocate any available range of pages that satisfies the request /// Allocate any available range of pages that satisfies the request.
/// ///
AllocateAnyPages, AllocateAnyPages,
/// ///
/// Allocate any available range of pages whose uppermost address is less than /// Allocate any available range of pages whose uppermost address is less than
/// or equal to a specified maximum address /// or equal to a specified maximum address.
/// ///
AllocateMaxAddress, AllocateMaxAddress,
/// ///
/// Allocate pages at a specified address /// Allocate pages at a specified address.
/// ///
AllocateAddress, AllocateAddress,
/// ///
/// Maximum enumeration value that may be used for bounds checking /// Maximum enumeration value that may be used for bounds checking.
/// ///
MaxAllocateType MaxAllocateType
} EFI_ALLOCATE_TYPE; } EFI_ALLOCATE_TYPE;
@ -56,7 +55,7 @@ typedef enum {
#define EFI_TIME_IN_DAYLIGHT 0x02 #define EFI_TIME_IN_DAYLIGHT 0x02
/// ///
/// Value definition for EFI_TIME.TimeZone /// Value definition for EFI_TIME.TimeZone.
/// ///
#define EFI_UNSPECIFIED_TIMEZONE 0x07FF #define EFI_UNSPECIFIED_TIMEZONE 0x07FF
@ -80,16 +79,16 @@ typedef enum {
#define EFI_MEMORY_RUNTIME 0x8000000000000000ULL #define EFI_MEMORY_RUNTIME 0x8000000000000000ULL
/// ///
/// Memory descriptor version number /// Memory descriptor version number.
/// ///
#define EFI_MEMORY_DESCRIPTOR_VERSION 1 #define EFI_MEMORY_DESCRIPTOR_VERSION 1
/// ///
/// Definition of an EFI memory descriptor /// Definition of an EFI memory descriptor.
/// ///
typedef struct { typedef struct {
/// ///
/// Type of the memory region. See EFI_MEMORY_TYPE /// Type of the memory region. See EFI_MEMORY_TYPE.
/// ///
UINT32 Type; UINT32 Type;
/// ///
@ -120,7 +119,7 @@ typedef struct {
@param Type The type of allocation to perform. @param Type The type of allocation to perform.
@param MemoryType The type of memory to allocate. @param MemoryType The type of memory to allocate.
@param Pages The number of contiguous 4 KB pages to allocate. @param Pages 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 @param Memory The pointer to a physical address. On input, the way in which the address is
used depends on the value of Type. used depends on the value of Type.
@retval EFI_SUCCESS The requested pages were allocated. @retval EFI_SUCCESS The requested pages were allocated.
@ -219,7 +218,7 @@ EFI_STATUS
/** /**
Returns pool memory to the system. 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_SUCCESS The memory was returned to the system.
@retval EFI_INVALID_PARAMETER Buffer was invalid. @retval EFI_INVALID_PARAMETER Buffer was invalid.
@ -378,7 +377,7 @@ EFI_STATUS
Invoke a notification event Invoke a notification event
@param Event Event whose notification function is being invoked. @param Event Event whose notification function is being invoked.
@param Context Pointer to the notification function's context, @param Context The pointer to the notification function's context,
which is implementation-dependent. which is implementation-dependent.
**/ **/
@ -394,10 +393,10 @@ VOID
@param Type The type of event to create and its mode and attributes. @param Type The type of event to create and its mode and attributes.
@param NotifyTpl The task priority level of event notifications, if needed. @param NotifyTpl The task priority level of event notifications, if needed.
@param NotifyFunction Pointer to the event's notification function, if any. @param NotifyFunction The pointer to the event's notification function, if any.
@param NotifyContext Pointer to the notification function's context; corresponds to parameter @param NotifyContext The pointer to the notification function's context; corresponds to parameter
Context in the notification function. Context in the notification function.
@param Event Pointer to the newly created event if the call succeeds; undefined @param Event The pointer to the newly created event if the call succeeds; undefined
otherwise. otherwise.
@retval EFI_SUCCESS The event structure was created. @retval EFI_SUCCESS The event structure was created.
@ -420,13 +419,13 @@ EFI_STATUS
@param Type The type of event to create and its mode and attributes. @param Type The type of event to create and its mode and attributes.
@param NotifyTpl The task priority level of event notifications,if needed. @param NotifyTpl The task priority level of event notifications,if needed.
@param NotifyFunction Pointer to the event's notification function, if any. @param NotifyFunction The pointer to the event's notification function, if any.
@param NotifyContext Pointer to the notification function's context; corresponds to parameter @param NotifyContext The pointer to the notification function's context; corresponds to parameter
Context in the notification function. Context in the notification function.
@param EventGroup Pointer to the unique identifier of the group to which this event belongs. @param EventGroup The pointer to the unique identifier of the group to which this event belongs.
If this is NULL, then the function behaves as if the parameters were passed If this is NULL, then the function behaves as if the parameters were passed
to CreateEvent. to CreateEvent.
@param Event Pointer to the newly created event if the call succeeds; undefined @param Event The pointer to the newly created event if the call succeeds; undefined
otherwise. otherwise.
@retval EFI_SUCCESS The event structure was created. @retval EFI_SUCCESS The event structure was created.
@ -450,7 +449,7 @@ EFI_STATUS
/// ///
typedef enum { typedef enum {
/// ///
/// An event's timer settings is to be cancelled and not trigger time is to be set /// An event's timer settings is to be cancelled and not trigger time is to be set/
/// ///
TimerCancel, TimerCancel,
/// ///
@ -506,7 +505,7 @@ EFI_STATUS
@param NumberOfEvents The number of events in the Event array. @param NumberOfEvents The number of events in the Event array.
@param Event An array of EFI_EVENT. @param Event An array of EFI_EVENT.
@param Index Pointer to the index of the event which satisfied the wait condition. @param Index The pointer to the index of the event which satisfied the wait condition.
@retval EFI_SUCCESS The event indicated by Index was signaled. @retval EFI_SUCCESS The event indicated by Index was signaled.
@retval EFI_INVALID_PARAMETER 1) NumberOfEvents is 0. @retval EFI_INVALID_PARAMETER 1) NumberOfEvents is 0.
@ -811,7 +810,7 @@ EFI_STATUS
@param SourceBuffer If not NULL, a pointer to the memory location containing a copy @param SourceBuffer If not NULL, a pointer to the memory location containing a copy
of the image to be loaded. of the image to be loaded.
@param SourceSize The size in bytes of SourceBuffer. Ignored if SourceBuffer is NULL. @param SourceSize The size in bytes of SourceBuffer. Ignored if SourceBuffer is NULL.
@param ImageHandle Pointer to the returned image handle that is created when the @param ImageHandle The pointer to the returned image handle that is created when the
image is successfully loaded. image is successfully loaded.
@retval EFI_SUCCESS Image was loaded into memory correctly. @retval EFI_SUCCESS Image was loaded into memory correctly.
@ -839,12 +838,12 @@ EFI_STATUS
Transfers control to a loaded image's entry point. Transfers control to a loaded image's entry point.
@param ImageHandle Handle of image to be started. @param ImageHandle Handle of image to be started.
@param ExitDataSize Pointer to the size, in bytes, of ExitData. @param ExitDataSize The pointer to the size, in bytes, of ExitData.
@param ExitData Pointer to a pointer to a data buffer that includes a Null-terminated @param ExitData The pointer to a pointer to a data buffer that includes a Null-terminated
string, optionally followed by additional binary data. string, optionally followed by additional binary data.
@retval EFI_INVALID_PARAMETER ImageHandle is either an invalid image handle or the image @retval EFI_INVALID_PARAMETER ImageHandle is either an invalid image handle or the image
has already been initialized with StartImage has already been initialized with StartImage.
@return Exit code from image @return Exit code from image
**/ **/
@ -863,7 +862,7 @@ EFI_STATUS
image on entry. image on entry.
@param ExitStatus The image's exit code. @param ExitStatus The image's exit code.
@param ExitDataSize The size, in bytes, of ExitData. Ignored if ExitStatus is EFI_SUCCESS. @param ExitDataSize The size, in bytes, of ExitData. Ignored if ExitStatus is EFI_SUCCESS.
@param ExitData Pointer to a data buffer that includes a Null-terminated string, @param ExitData The pointer to a data buffer that includes a Null-terminated string,
optionally followed by additional binary data. The string is a optionally followed by additional binary data. The string is a
description that the caller may use to further indicate the reason description that the caller may use to further indicate the reason
for the image's exit. ExitData is only valid if ExitStatus for the image's exit. ExitData is only valid if ExitStatus
@ -944,7 +943,7 @@ EFI_STATUS
@retval EFI_SUCCESS The timeout has been set. @retval EFI_SUCCESS The timeout has been set.
@retval EFI_INVALID_PARAMETER The supplied WatchdogCode is invalid. @retval EFI_INVALID_PARAMETER The supplied WatchdogCode is invalid.
@retval EFI_UNSUPPORTED The system does not have a watchdog timer. @retval EFI_UNSUPPORTED The system does not have a watchdog timer.
@retval EFI_DEVICE_ERROR The watch dog timer could not be programmed due to a hardware @retval EFI_DEVICE_ERROR The watchdog timer could not be programmed due to a hardware
error. error.
**/ **/
@ -1005,7 +1004,7 @@ VOID
/** /**
Returns a monotonically increasing count for the platform. Returns a monotonically increasing count for the platform.
@param Count Pointer to returned value. @param Count The pointer to returned value.
@retval EFI_SUCCESS The next monotonic count was returned. @retval EFI_SUCCESS The next monotonic count was returned.
@retval EFI_INVALID_PARAMETER Count is NULL. @retval EFI_INVALID_PARAMETER Count is NULL.
@ -1021,7 +1020,7 @@ EFI_STATUS
/** /**
Returns the next high 32 bits of the platform's monotonic counter. Returns the next high 32 bits of the platform's monotonic counter.
@param HighCount Pointer to returned value. @param HighCount The pointer to returned value.
@retval EFI_SUCCESS The next high monotonic count was returned. @retval EFI_SUCCESS The next high monotonic count was returned.
@retval EFI_INVALID_PARAMETER HighCount is NULL. @retval EFI_INVALID_PARAMETER HighCount is NULL.
@ -1060,8 +1059,8 @@ EFI_STATUS
/** /**
Copies the contents of one buffer to another buffer. Copies the contents of one buffer to another buffer.
@param Destination Pointer to the destination buffer of the memory copy. @param Destination The pointer to the destination buffer of the memory copy.
@param Source Pointer to the source buffer of the memory copy. @param Source The pointer to the source buffer of the memory copy.
@param Length Number of bytes to copy from Source to Destination. @param Length Number of bytes to copy from Source to Destination.
**/ **/
@ -1076,7 +1075,7 @@ VOID
/** /**
The SetMem() function fills a buffer with a specified value. The SetMem() function fills a buffer with a specified value.
@param Buffer Pointer to the buffer to fill. @param Buffer The pointer to the buffer to fill.
@param Size Number of bytes in Buffer to fill. @param Size Number of bytes in Buffer to fill.
@param Value Value to fill Buffer with. @param Value Value to fill Buffer with.
@ -1577,7 +1576,7 @@ typedef struct {
} EFI_CAPSULE_BLOCK_DESCRIPTOR; } EFI_CAPSULE_BLOCK_DESCRIPTOR;
/// ///
/// EFI Capsule Header /// EFI Capsule Header.
/// ///
typedef struct { typedef struct {
/// ///
@ -1732,7 +1731,7 @@ EFI_STATUS
#define EFI_RUNTIME_SERVICES_REVISION EFI_2_30_SYSTEM_TABLE_REVISION #define EFI_RUNTIME_SERVICES_REVISION EFI_2_30_SYSTEM_TABLE_REVISION
/// ///
/// EFI Runtime Services Table /// EFI Runtime Services Table.
/// ///
typedef struct { typedef struct {
/// ///
@ -1784,7 +1783,7 @@ typedef struct {
#define EFI_BOOT_SERVICES_REVISION EFI_2_30_SYSTEM_TABLE_REVISION #define EFI_BOOT_SERVICES_REVISION EFI_2_30_SYSTEM_TABLE_REVISION
/// ///
/// EFI Boot Services Table /// EFI Boot Services Table.
/// ///
typedef struct { typedef struct {
/// ///
@ -1971,7 +1970,7 @@ typedef struct {
@param SystemTable A pointer to the EFI System Table. @param SystemTable A pointer to the EFI System Table.
@retval EFI_SUCCESS The operation completed successfully. @retval EFI_SUCCESS The operation completed successfully.
@retval Others Some unexpected error happened. @retval Others An unexpected error occurred.
**/ **/
typedef typedef
EFI_STATUS EFI_STATUS
@ -2040,7 +2039,7 @@ typedef union {
} EFI_BOOT_KEY_DATA; } EFI_BOOT_KEY_DATA;
/// ///
/// EFI Key Option /// EFI Key Option.
/// ///
typedef struct { typedef struct {
/// ///