]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Code Scrub for Protocol and Ppi Definition
authorlgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 25 Jul 2008 10:37:15 +0000 (10:37 +0000)
committerlgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 25 Jul 2008 10:37:15 +0000 (10:37 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5564 6f19259b-4bc3-4df7-8a09-765794883524

105 files changed:
MdePkg/Include/Ppi/Decompress.h
MdePkg/Include/Ppi/FirmwareVolume.h
MdePkg/Include/Ppi/FirmwareVolumeInfo.h
MdePkg/Include/Ppi/GuidedSectionExtraction.h
MdePkg/Include/Ppi/LoadFile.h
MdePkg/Include/Ppi/LoadImage.h
MdePkg/Include/Ppi/Pcd.h
MdePkg/Include/Ppi/ReadOnlyVariable2.h
MdePkg/Include/Ppi/Reset.h
MdePkg/Include/Ppi/SecPlatformInformation.h
MdePkg/Include/Ppi/Security2.h
MdePkg/Include/Ppi/TemporaryRamSupport.h
MdePkg/Include/Protocol/AbsolutePointer.h
MdePkg/Include/Protocol/AcpiTable.h
MdePkg/Include/Protocol/Arp.h
MdePkg/Include/Protocol/AuthenticationInfo.h
MdePkg/Include/Protocol/Bds.h
MdePkg/Include/Protocol/Bis.h
MdePkg/Include/Protocol/BlockIo.h
MdePkg/Include/Protocol/BusSpecificDriverOverride.h
MdePkg/Include/Protocol/ComponentName.h
MdePkg/Include/Protocol/ComponentName2.h
MdePkg/Include/Protocol/Cpu.h
MdePkg/Include/Protocol/DebugPort.h
MdePkg/Include/Protocol/DebugSupport.h
MdePkg/Include/Protocol/Decompress.h
MdePkg/Include/Protocol/DeviceIo.h
MdePkg/Include/Protocol/DevicePath.h
MdePkg/Include/Protocol/DevicePathFromText.h
MdePkg/Include/Protocol/DevicePathToText.h
MdePkg/Include/Protocol/DevicePathUtilities.h
MdePkg/Include/Protocol/Dhcp4.h
MdePkg/Include/Protocol/DiskIo.h
MdePkg/Include/Protocol/DriverBinding.h
MdePkg/Include/Protocol/DriverConfiguration.h
MdePkg/Include/Protocol/DriverConfiguration2.h
MdePkg/Include/Protocol/DriverDiagnostics.h
MdePkg/Include/Protocol/DriverDiagnostics2.h
MdePkg/Include/Protocol/DriverFamilyOverride.h
MdePkg/Include/Protocol/DriverHealth.h
MdePkg/Include/Protocol/DriverSupportedEfiVersion.h
MdePkg/Include/Protocol/Ebc.h
MdePkg/Include/Protocol/EdidActive.h
MdePkg/Include/Protocol/EdidDiscovered.h
MdePkg/Include/Protocol/EdidOverride.h
MdePkg/Include/Protocol/FirmwareVolume2.h
MdePkg/Include/Protocol/FirmwareVolumeBlock.h
MdePkg/Include/Protocol/FormBrowser2.h
MdePkg/Include/Protocol/GraphicsOutput.h
MdePkg/Include/Protocol/GuidedSectionExtraction.h
MdePkg/Include/Protocol/Hash.h
MdePkg/Include/Protocol/HiiConfigAccess.h
MdePkg/Include/Protocol/HiiConfigRouting.h
MdePkg/Include/Protocol/HiiDatabase.h
MdePkg/Include/Protocol/HiiFont.h
MdePkg/Include/Protocol/HiiImage.h
MdePkg/Include/Protocol/HiiString.h
MdePkg/Include/Protocol/IScsiInitiatorName.h
MdePkg/Include/Protocol/Ip4.h
MdePkg/Include/Protocol/Ip4Config.h
MdePkg/Include/Protocol/LoadFile.h
MdePkg/Include/Protocol/LoadedImage.h
MdePkg/Include/Protocol/ManagedNetwork.h
MdePkg/Include/Protocol/Metronome.h
MdePkg/Include/Protocol/MonotonicCounter.h
MdePkg/Include/Protocol/Mtftp4.h
MdePkg/Include/Protocol/NetworkInterfaceIdentifier.h
MdePkg/Include/Protocol/Pcd.h
MdePkg/Include/Protocol/PciIo.h
MdePkg/Include/Protocol/PciRootBridgeIo.h
MdePkg/Include/Protocol/PlatformDriverOverride.h
MdePkg/Include/Protocol/PlatformToDriverConfiguration.h
MdePkg/Include/Protocol/PxeBaseCode.h
MdePkg/Include/Protocol/PxeBaseCodeCallBack.h
MdePkg/Include/Protocol/RealTimeClock.h
MdePkg/Include/Protocol/Reset.h
MdePkg/Include/Protocol/Runtime.h
MdePkg/Include/Protocol/ScsiIo.h
MdePkg/Include/Protocol/ScsiPassThru.h
MdePkg/Include/Protocol/ScsiPassThruExt.h
MdePkg/Include/Protocol/Security.h
MdePkg/Include/Protocol/SecurityPolicy.h
MdePkg/Include/Protocol/SerialIo.h
MdePkg/Include/Protocol/ServiceBinding.h
MdePkg/Include/Protocol/SimpleFileSystem.h
MdePkg/Include/Protocol/SimpleNetwork.h
MdePkg/Include/Protocol/SimplePointer.h
MdePkg/Include/Protocol/SimpleTextIn.h
MdePkg/Include/Protocol/SimpleTextInEx.h
MdePkg/Include/Protocol/SimpleTextOut.h
MdePkg/Include/Protocol/SmbusHc.h
MdePkg/Include/Protocol/StatusCode.h
MdePkg/Include/Protocol/TapeIo.h
MdePkg/Include/Protocol/TcgService.h
MdePkg/Include/Protocol/Tcp4.h
MdePkg/Include/Protocol/Timer.h
MdePkg/Include/Protocol/Udp4.h
MdePkg/Include/Protocol/UgaDraw.h
MdePkg/Include/Protocol/UgaIo.h
MdePkg/Include/Protocol/UnicodeCollation.h
MdePkg/Include/Protocol/Usb2HostController.h
MdePkg/Include/Protocol/UsbHostController.h
MdePkg/Include/Protocol/Variable.h
MdePkg/Include/Protocol/VariableWrite.h
MdePkg/Include/Protocol/WatchdogTimer.h

index 07623d1c89abb6bb9e32b391661a735042dfbe53..4cbaa103545c5ad4ac61f1f9aa6f2adbe56ae052 100644 (file)
@@ -61,7 +61,8 @@ EFI_STATUS
 );\r
 \r
 \r
-/**                                                              \r
+/**\r
+  @par Ppi Description:                                                              \r
   This PPI's single member function decompresses a compression\r
   encapsulated section. It is used by the PEI Foundation to\r
   process sectioned files. Prior to the installation of this PPI,\r
index 2c2a3eaca27eb456a982ea96e505f791b45553a7..5a8f87c49bdf96fa0c65bd32de649f34c40fd191 100644 (file)
@@ -225,6 +225,7 @@ EFI_STATUS
 \r
 \r
 /*\r
+  @par Ppi Description:\r
   This PPI provides functions for accessing a memory-mapped firmware volume of a specific format.\r
 \r
   @param  ProcessVolume       Process a firmware volume and create a volume handle.\r
index e66bfed51b376ee94c8a6d80cff91dbb1e9402ed..1a7487bce06007ec2172bc66e0ff4bc69217c089 100644 (file)
@@ -27,6 +27,7 @@
 typedef struct _EFI_PEI_FIRMWARE_VOLUME_INFO_PPI  EFI_PEI_FIRMWARE_VOLUME_INFO_PPI;\r
 \r
 /**\r
+  @par Ppi Description:\r
   This PPI describes the location and format of a firmware volume. \r
   The FvFormat can be EFI_FIRMWARE_FILE_SYSTEM2_GUID or the GUID for \r
   a user-defined format. The  EFI_FIRMWARE_FILE_SYSTEM2_GUID is \r
index 360ae951b32939c8b8cda71c0ea19e0f2838bd96..27f3e180738808ee15dd913b1dac9f8c44d4ec5f 100644 (file)
@@ -105,6 +105,7 @@ EFI_STATUS
 \r
 \r
 /**\r
+  @par Ppi Description:\r
   If a GUID-defined section is encountered when doing section extraction,\r
   the PEI Foundation or the EFI_PEI_FILE_LOADER_PPI instance\r
   calls the appropriate instance of the GUIDed Section\r
index 39ad72ea81cd6042d9849518428a5416d931b210..96955f764a9019988fa83db2b06764e7372e8a56 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Load image file from fv to memory. \r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -79,6 +79,7 @@ EFI_STATUS
 \r
 \r
 /**\r
+  @par Ppi Description:\r
   This PPI is a pointer to the Load File service.\r
   This service will be published by a PEIM. The PEI Foundation\r
   will use this service to launch the known PEI module images.\r
index 7e0679bd1d82c9ee62bf0d358ce68f18dcfbbd55..1c180a70aaa484c9f43227a67a4a1d02c3a258be 100644 (file)
@@ -2,7 +2,7 @@
   The file descript the PPI which notifies other drivers \r
   of the PEIM being initialized by the PEI Dispatcher.\r
 \r
-  Copyright (c) 2006 - 2007, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -27,6 +27,7 @@
 typedef struct _EFI_PEI_LOADED_IMAGE_PPI  EFI_PEI_LOADED_IMAGE_PPI;\r
 \r
 /*\r
+  @par Ppi Description:\r
   This interface is installed by the PEI Dispatcher after the image has been\r
   loaded and after all security checks have been performed, \r
   to notify other PEIMs of the files which are being loaded.\r
index 4198e8ed1d52c8becf93316626b37a46136f8d8c..d5cc3b59dbcac3aae07d0dad07c2cd7c4f62f330 100644 (file)
@@ -193,7 +193,7 @@ UINTN
 \r
 \r
 /**\r
-  Retrieves an 8-bit value for a given PCD token.\r
+  Retrieves an 8-bit value for a given PCD token and token space.\r
 \r
   Retrieves the 8-bit value of a particular PCD token.  \r
   If the TokenNumber is invalid or the token space\r
@@ -216,7 +216,7 @@ UINT8
 \r
 \r
 /**\r
-  Retrieves an 16-bit value for a given PCD token.\r
+  Retrieves an 16-bit value for a given PCD token and token space.\r
 \r
   Retrieves the 16-bit value of a particular PCD token.  \r
   If the TokenNumber is invalid or the token space\r
@@ -239,7 +239,7 @@ UINT16
 \r
 \r
 /**\r
-  Retrieves an 32-bit value for a given PCD token.\r
+  Retrieves an 32-bit value for a given PCD token and token space.\r
 \r
   Retrieves the 32-bit value of a particular PCD token.  \r
   If the TokenNumber is invalid or the token space\r
@@ -262,7 +262,7 @@ UINT32
 \r
 \r
 /**\r
-  Retrieves an 64-bit value for a given PCD token.\r
+  Retrieves an 64-bit value for a given PCD token and token space.\r
 \r
   Retrieves the 64-bit value of a particular PCD token.  \r
   If the TokenNumber is invalid or the token space\r
@@ -285,7 +285,7 @@ UINT64
 \r
 \r
 /**\r
-  Retrieves a pointer to a value for a given PCD token.\r
+  Retrieves a pointer to a value for a given PCD token and token space.\r
 \r
   Retrieves the current pointer to the buffer for a PCD token number.  \r
   Do not make any assumptions about the alignment of the pointer that \r
@@ -308,7 +308,7 @@ VOID *
 \r
 \r
 /**\r
-  Retrieves an Boolean value for a given PCD token.\r
+  Retrieves an Boolean value for a given PCD token and token space.\r
 \r
   Retrieves the Boolean value of a particular PCD token.  \r
   If the TokenNumber is invalid or the token space\r
@@ -331,7 +331,7 @@ BOOLEAN
 \r
 \r
 /**\r
-  Retrieves the size of the value for a given PCD token.\r
+  Retrieves the size of the value for a given PCD token and token space.\r
 \r
   Retrieves the current size of a particular PCD token.  \r
   If the TokenNumber is invalid, the results are unpredictable.\r
@@ -819,6 +819,104 @@ EFI_STATUS
 //\r
 // Interface structure for the PCD PPI\r
 //\r
+/**\r
+  @par Ppi Description:\r
+  This service abstracts the ability to set/get Platform Configuration Database (PCD).\r
+\r
+  @param SetSku\r
+  Sets the SKU value for subsequent calls to set or get PCD token values.\r
+  \r
+  @param Get8\r
+  Retrieves an 8-bit value for a given PCD token.\r
+\r
+  @param Get16\r
+  Retrieves an 16-bit value for a given PCD token.\r
+\r
+  @param Get32\r
+  Retrieves an 32-bit value for a given PCD token.\r
+\r
+  @param Get64\r
+  Retrieves an 64-bit value for a given PCD token.\r
+\r
+  @param GetPtr\r
+  Retrieves a pointer to a value for a given PCD token.\r
+\r
+  @param GetBool\r
+  Retrieves an Boolean value for a given PCD token.\r
+\r
+  @param GetSize\r
+  Retrieves the size of the value for a given PCD token.\r
+\r
+  @param Get8Ex\r
+  Retrieves an 8-bit value for a given PCD token and token space.\r
+\r
+  @param Get16Ex\r
+  Retrieves an 16-bit value for a given PCD token and token space.\r
+\r
+  @param Get32Ex\r
+  Retrieves an 32-bit value for a given PCD token and token space.\r
+\r
+  @param Get64Ex\r
+  Retrieves an 64-bit value for a given PCD token and token space.\r
+\r
+  @param GetPtrEx\r
+  Retrieves a pointer to a value for a given PCD token and token space.\r
+\r
+  @param GetBoolEx\r
+  Retrieves an Boolean value for a given PCD token and token space.\r
+\r
+  @param GetSizeEx\r
+  Retrieves the size of the value for a given PCD token and token space.\r
+\r
+  @param Set8\r
+  Sets an 8-bit value for a given PCD token.\r
+\r
+  @param Set16\r
+  Sets an 16-bit value for a given PCD token.\r
+\r
+  @param Set32\r
+  Sets an 32-bit value for a given PCD token.\r
+\r
+  @param Set64\r
+  Sets an 64-bit value for a given PCD token.\r
+\r
+  @param SetPtr\r
+  Sets the buffer of a specified size for a given PCD token.\r
+\r
+  @param SetBool\r
+  Sets an Boolean value for a given PCD token.\r
+\r
+  @param Set8Ex\r
+  Sets an 8-bit value for a given PCD token and token space.\r
+\r
+  @param Set16Ex\r
+  Sets an 16-bit value for a given PCD token and token space.\r
+\r
+  @param Set32Ex\r
+  Sets an 32-bit value for a given PCD token and token space.\r
+\r
+  @param Set64Ex\r
+  Sets an 64-bit value for a given PCD token and token space.\r
+\r
+  @param SetPtrEx\r
+  Sets the buffer of a specified size for a given PCD token and token space.\r
+\r
+  @param SetBoolEx\r
+  Sets an Boolean value for a given PCD token and token space.\r
+  \r
+  @param CallbackOnSet\r
+  Specifies a function to be called anytime the value of a designated token is changed.\r
+  \r
+  @param CancelCallback\r
+  Cancels a previously set callback function for a particular PCD token number.\r
+  \r
+  @param GetNextToken\r
+  Retrieves the next valid PCD token for a given namespace.\r
+  \r
+  @param GetNextTokenSpace\r
+  Retrieves the next valid PCD token namespace for a given namespace.\r
\r
+**/\r
 typedef struct {\r
   PCD_PPI_SET_SKU              SetSku;\r
 \r
index eeace52d1ce1e5b561eab9b30df355e790f8b8ee..49a455017ec45e72539e3fbb61f6e31a1948061e 100644 (file)
@@ -120,6 +120,7 @@ EFI_STATUS
   );\r
 \r
 /**\r
+  @par Ppi Description:\r
   This PPI provides a lightweight, read-only variant of the full EFI \r
   variable services. \r
 \r
index ccefd9679083cd88b9d31ff8768ff2b773572fcf..717f5df506fbe661d4942a20c7f2f00a9ce26b0f 100644 (file)
@@ -30,6 +30,7 @@
   }\r
 \r
 /**\r
+  @par Ppi Description:\r
   This PPI provides provide a simple reset service. \r
 \r
   @param ResetSystem\r
index 21783656df227a98b14bcbe9f60e6f04a6208376..b1651129b7686c12b0699d64e8c1e2eee670a9c8 100644 (file)
@@ -102,6 +102,7 @@ EFI_STATUS
 \r
 \r
 /**\r
+  @par Ppi Description:\r
   This service abstracts platform-specific information. It is necessary \r
   to convey this information to the PEI Foundation so that it can \r
   discover where to begin dispatching PEIMs.\r
index c39e17381e4e179fae3eced68dd1f1414141f3f5..5dbcd1a12325a7fc80115c890f5e1d7e5f2a5997 100644 (file)
@@ -2,7 +2,7 @@
   This file declares Pei Security2 PPI.\r
 \r
   This PPI is installed by some platform PEIM that abstracts the security \r
-  policy to the PEI Foundation, namely the case of a PEIM¡¯s authentication \r
+  policy to the PEI Foundation, namely the case of a PEIM's authentication \r
   state being returned during the PEI section extraction process.\r
 \r
   Copyright (c) 2006 - 2008, Intel Corporation\r
@@ -105,7 +105,7 @@ EFI_STATUS
 );\r
 \r
 /**\r
-   \r
+  @par Ppi Description: \r
   This PPI is a means by which the platform builder can indicate\r
   a response to a PEIM's authentication state. This can be in\r
   the form of a requirement for the PEI Foundation to skip a\r
index 7b3cef024f99cb7485db4bc342fa40832c946839..26afa7f62b21f9d718fd57d47f22d49e29b6a404 100644 (file)
@@ -57,6 +57,7 @@ EFI_STATUS
 );\r
 \r
 /**\r
+  @par Ppi Description:\r
   This service abstracts the ability to migrate contents of the platform early memory store.\r
 \r
   @param ResetSystem\r
index 2d1d48316d36c681c6907d72c8de688fcfb44ca8..ca7ca6c820fc412f602c0041834bf3203c46b93f 100644 (file)
@@ -2,7 +2,7 @@
   The file provides services that allow information about a\r
   absolute pointer device to be retrieved.\r
   \r
-  Copyright (c) 2006 - 2007, Intel Corporation\r
+  Copyright (c) 2006 - 2008, Intel Corporation\r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -32,12 +32,7 @@ typedef struct _EFI_ABSOLUTE_POINTER_PROTOCOL EFI_ABSOLUTE_POINTER_PROTOCOL;
 /**\r
   The following data values in the EFI_ABSOLUTE_POINTER_MODE\r
   interface are read-only and are changed by using the appropriate\r
-  interface functions:\r
-  Attributes The following bits are set as needed (or'd\r
-  together) to indicate the capabilities of the device\r
-  supported. The remaining bits are undefined and should be\r
-  returned as 0.\r
-\r
+  interface functions.\r
   \r
   @param AbsoluteMinX The Absolute Minimum of the device on the\r
                       x-axis.\r
@@ -63,6 +58,10 @@ typedef struct _EFI_ABSOLUTE_POINTER_PROTOCOL EFI_ABSOLUTE_POINTER_PROTOCOL;
                       then the pointer device does not support a\r
                       zaxis. \r
 \r
+  @param Attributes   The following bits are set as needed (or'd\r
+                      together) to indicate the capabilities of the device\r
+                      supported. The remaining bits are undefined and should be 0.\r
+\r
 **/\r
 typedef struct {\r
   UINT64 AbsoluteMinX;\r
@@ -96,15 +95,15 @@ typedef struct {
   process is not defined by this specification and is left up to\r
   the platform firmware or driver to implement.\r
 \r
-  @param This A pointer to the EFI_ABSOLUTE_POINTER_PROTOCOL\r
-              instance.\r
+  @param This                 A pointer to the EFI_ABSOLUTE_POINTER_PROTOCOL\r
+                              instance.\r
 \r
   @param ExtendedVerification Indicates that the driver may\r
                               perform a more exhaustive\r
                               verification operation of the\r
                               device during reset.\r
 \r
-  @retval EFI_SUCCESS The device was reset.\r
+  @retval EFI_SUCCESS       The device was reset.\r
   \r
   @retval EFI_DEVICE_ERROR  The device is not functioning\r
                             correctly and could not be reset.\r
@@ -159,7 +158,7 @@ EFI_STATUS
                   support an z-axis, and this field must be\r
                   ignored.\r
 \r
-  @param ActiveButtons  Bits are set to 1 in this structure item\r
+  @param ActiveButtons Bits are set to 1 in this structure item\r
                        to indicate that device buttons are\r
                        active.\r
 \r
@@ -184,17 +183,17 @@ typedef struct {
   information, then EFI_DEVICE_ERROR is returned.\r
 \r
 \r
-  @param This A pointer to the EFI_ABSOLUTE_POINTER_PROTOCOL\r
-              instance.\r
+  @param This   A pointer to the EFI_ABSOLUTE_POINTER_PROTOCOL\r
+                instance.\r
 \r
   @param State  A pointer to the state information on the\r
                 pointer device.\r
 \r
-  @retval EFI_SUCCESS The state of the pointer device was\r
-                      returned in State.\r
+  @retval EFI_SUCCESS       The state of the pointer device was\r
+                            returned in State.\r
 \r
-  @retval EFI_NOT_READY The state of the pointer device has not\r
-                        changed since the last call to GetState().\r
+  @retval EFI_NOT_READY     The state of the pointer device has not\r
+                            changed since the last call to GetState().\r
 \r
   @retval EFI_DEVICE_ERROR  A device error occurred while\r
                             attempting to retrieve the pointer\r
@@ -204,12 +203,13 @@ typedef struct {
 typedef\r
 EFI_STATUS\r
 (EFIAPI *EFI_ABSOLUTE_POINTER_GET_STATE)(\r
-  IN           EFI_ABSOLUTE_POINTER_PROTOCOL *This,\r
-  IN OUT    EFI_ABSOLUTE_POINTER_STATE    *State\r
+  IN           EFI_ABSOLUTE_POINTER_PROTOCOL  *This,\r
+  IN OUT    EFI_ABSOLUTE_POINTER_STATE *State\r
 );\r
 \r
 \r
 /**\r
+  @par Protocol Description:\r
   The EFI_ABSOLUTE_POINTER_PROTOCOL provides a set of services\r
   for a pointer device that can be used as an input device from an\r
   application written to this specification. The services include\r
@@ -219,14 +219,14 @@ EFI_STATUS
   provided.\r
 \r
 \r
-  @param Reset  Resets the pointer device.\r
+  @param Reset        Resets the pointer device.\r
 \r
-  @param GetState Retrieves the current state of the pointer\r
-                  device.\r
+  @param GetState     Retrieves the current state of the pointer\r
+                      device.\r
 \r
   @param WaitForInput Event to use with WaitForEvent() to wait\r
                       for input from the pointer device.\r
-  @param Mode Pointer to EFI_ABSOLUTE_POINTER_MODE data.\r
+  @param Mode         Pointer to EFI_ABSOLUTE_POINTER_MODE data.\r
 \r
 **/\r
 struct _EFI_ABSOLUTE_POINTER_PROTOCOL {\r
index 99159f47bacd90e15129588c313b4737eee12776..9ccf2ecea0a207656b6d2dd1c48c6dfa6f48c0a3 100644 (file)
@@ -2,7 +2,7 @@
   The file provides the protocol to install or remove an ACPI\r
   table from a platform. \r
   \r
-  Copyright (c) 2006 - 2007, Intel Corporation\r
+  Copyright (c) 2006 - 2008, Intel Corporation\r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -39,18 +39,18 @@ typedef struct _EFI_ACPI_TABLE_PROTOCOL EFI_ACPI_TABLE_PROTOCOL;
   longer considered valid.   \r
 \r
 \r
-  @param This A pointer to a EFI_ACPI_TABLE_PROTOCOL.\r
+  @param This                 A pointer to a EFI_ACPI_TABLE_PROTOCOL.\r
 \r
-  @param AcpiTableBuffer  A pointer to a buffer containing the\r
-                          ACPI table to be installed.\r
+  @param AcpiTableBuffer      A pointer to a buffer containing the\r
+                              ACPI table to be installed.\r
 \r
   @param AcpiTableBufferSize  Specifies the size, in bytes, of\r
                               the AcpiTableBuffer buffer.\r
 \r
 \r
-  @param TableKey   Returns a key to refer to the ACPI table.\r
+  @param TableKey             Returns a key to refer to the ACPI table.\r
   \r
-  @retval EFI_SUCCESS The table was successfully inserted\r
+  @retval EFI_SUCCESS           The table was successfully inserted\r
   \r
   @retval EFI_INVALID_PARAMETER Either AcpiTableBuffer is NULL,\r
                                 TableKey is NULL, or\r
@@ -83,15 +83,15 @@ EFI_STATUS
   EFI_CONFIGURATION_TABLE pointer to the RSDT is no longer\r
   considered valid.\r
 \r
-  @param This A pointer to a EFI_ACPI_TABLE_PROTOCOL.\r
+  @param This                   A pointer to a EFI_ACPI_TABLE_PROTOCOL.\r
 \r
-  @param TableKey Specifies the table to uninstall. The key was\r
-                  returned from InstallAcpiTable().\r
+  @param TableKey               Specifies the table to uninstall. The key was\r
+                                returned from InstallAcpiTable().\r
 \r
-  @retval EFI_SUCCESS The table was successfully inserted\r
+  @retval EFI_SUCCESS           The table was successfully inserted\r
 \r
-  @retval EFI_NOT_FOUND TableKey does not refer to a valid key\r
-                        for a table entry.\r
+  @retval EFI_NOT_FOUND         TableKey does not refer to a valid key\r
+                                for a table entry.\r
 \r
   @retval EFI_OUT_OF_RESOURCES  Insufficient resources exist to\r
                                 complete the request.\r
@@ -105,12 +105,12 @@ EFI_STATUS
 );\r
 \r
 /**\r
+  @par Protocol Description:\r
   The EFI_ACPI_TABLE_PROTOCOL provides the ability for a component\r
   to install and uninstall ACPI tables from a platform.\r
 \r
 \r
-  @param InstallAcpiTable Installs an ACPI table into the\r
-                          system.\r
+  @param InstallAcpiTable   Installs an ACPI table into the system.\r
 \r
   @param UninstallAcpiTable Removes a previously installed ACPI\r
                             table from the system.\r
index 33e86dc8cedb59fee019aceb313fbd36ef543e0c..9527ad51af24fc710109b7a8af750cc14d157fbf 100644 (file)
@@ -10,7 +10,7 @@
   address to hardware address used by a data link protocol.\r
   \r
   \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -59,8 +59,8 @@ typedef struct {
 /**\r
   Assigns a station address (protocol type and network address) to this instance of the ARP cache.\r
 \r
-  @param  This                   A pointer to the EFI_ARP_PROTOCOL instance.\r
-  @param  ConfigData             A pointer to the EFI_ARP_CONFIG_DATA structure.Buffer\r
+  @param  This                  A pointer to the EFI_ARP_PROTOCOL instance.\r
+  @param  ConfigData            A pointer to the EFI_ARP_CONFIG_DATA structure.Buffer\r
 \r
   @retval EFI_SUCCESS           The new station address was successfully registered.\r
   @retval EFI_INVALID_PARAMETER One or more of the following conditions is TRUE:\r
@@ -93,10 +93,14 @@ EFI_STATUS
                           nonzero value will override the one given by Configure() if\r
                           the entry to be added is dynamic entry.\r
   @param  Overwrite       If TRUE, the matching cache entry will be overwritten with the\r
-                          supplied parameters. If FALSE, EFI_ACCESS_DENIED\r
+                          supplied parameters. If FALSE, EFI_ACCESS_DENIED is returned \r
+                          if the corresponding cache entry already exists.\r
 \r
   @retval EFI_SUCCESS           The entry has been added or updated.\r
   @retval EFI_INVALID_PARAMETER One or more of the following conditions is TRUE:\r
+                                This is NULL. DenyFlag is FALSE and TargetHwAddress is NULL.\r
+                                DenyFlag is FALSE and TargetSwAddress is NULL. TargetHwAddress is NULL and TargetSwAddress is NULL. \r
+                                Both TargetSwAddress and TargetHwAddress are not NULL when DenyFlag is TRUE.\r
   @retval EFI_OUT_OF_RESOURCES  The new ARP cache entry could not be allocated.\r
   @retval EFI_ACCESS_DENIED     The ARP cache entry already exists and Overwrite is not true.\r
   @retval EFI_NOT_STARTED       The ARP driver instance has not been configured.\r
@@ -132,6 +136,8 @@ EFI_STATUS
 \r
   @retval EFI_SUCCESS           The requested ARP cache entries were copied into the buffer.\r
   @retval EFI_INVALID_PARAMETER One or more of the following conditions is TRUE:\r
+                                This is NULL. Both EntryCount and EntryLength are NULL, \r
+                                when Refresh is FALSE.\r
   @retval EFI_NOT_FOUND         No matching entries were found.\r
   @retval EFI_NOT_STARTED       The ARP driver instance has not been configured.\r
 \r
@@ -177,7 +183,7 @@ EFI_STATUS
 /**\r
   Removes all dynamic ARP cache entries that were added by this interface.\r
 \r
-  @param  This                   A pointer to the EFI_ARP_PROTOCOL instance.\r
+  @param  This                  A pointer to the EFI_ARP_PROTOCOL instance.\r
                                  \r
   @retval EFI_SUCCESS           The cache has been flushed.\r
   @retval EFI_INVALID_PARAMETER This is NULL.\r
@@ -251,6 +257,33 @@ EFI_STATUS
   )\r
 ;  \r
 \r
+/**\r
+  @par Protocol Description:\r
+  ARP is used to resolve local network protocol addresses into \r
+  network hardware addresses.\r
+\r
+  @param Configure\r
+  Adds a new station address (protocol type and network address) to the ARP cache.\r
+  \r
+  @param Add\r
+  Manually inserts an entry to the ARP cache for administrative purpose.\r
+\r
+  @param Find\r
+  Locates one or more entries in the ARP cache.\r
+\r
+  @param Delete\r
+  Removes an entry from the ARP cache.\r
+  \r
+  @param Flush\r
+  Removes all dynamic ARP cache entries of a specified protocol type.\r
+  \r
+  @param Request\r
+  Starts an ARP request session.\r
+  \r
+  @param Cancel\r
+  Abort previous ARP request session.\r
+\r
+**/\r
 struct _EFI_ARP_PROTOCOL {\r
   EFI_ARP_CONFIGURE         Configure;\r
   EFI_ARP_ADD               Add;\r
index e3849663b4621522e788766388919c681be2eaab..df2a2195169a3603ecf76dce5d3deecd8541f67b 100644 (file)
@@ -3,7 +3,7 @@
   This protocol is used on any device handle to obtain authentication information \r
   associated with the physical or logical device.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -68,9 +68,9 @@ typedef struct {
 /**\r
   Retrieves the Authentication information associated with a particular controller handle.\r
 \r
-  @param  This                   Pointer to the EFI_AUTHENTICATION_INFO_PROTOCOL\r
-  @param  ControllerHandle       Handle to the Controller\r
-  @param  Buffer                 Pointer to the authentication information.\r
+  @param  This                  Pointer to the EFI_AUTHENTICATION_INFO_PROTOCOL\r
+  @param  ControllerHandle      Handle to the Controller\r
+  @param  Buffer                Pointer to the authentication information.\r
 \r
   @retval EFI_SUCCESS           Successfully retrieved Authentication information for the given ControllerHandle\r
   @retval EFI_INVALID_PARAMETER No matching Authentication information found for the given ControllerHandle\r
@@ -90,9 +90,9 @@ EFI_STATUS
 /**\r
   Set the Authentication information for a given controller handle.\r
 \r
-  @param  This                  Pointer to the EFI_AUTHENTICATION_INFO_PROTOCOL\r
-  @param  ControllerHandle      Handle to the Controller\r
-  @param  Buffer                Pointer to the authentication information.\r
+  @param  This                 Pointer to the EFI_AUTHENTICATION_INFO_PROTOCOL\r
+  @param  ControllerHandle     Handle to the Controller\r
+  @param  Buffer               Pointer to the authentication information.\r
                                 \r
   @retval EFI_SUCCESS          Successfully set Authentication information for the given ControllerHandle\r
   @retval EFI_UNSUPPORTED      If the platform policies do not allow setting of the Authentication\r
@@ -111,6 +111,18 @@ EFI_STATUS
   )\r
 ;  \r
 \r
+/**\r
+  @par Protocol Description:\r
+  This protocol is used on any device handle to obtain authentication \r
+  information associated with the physical or logical device.\r
+\r
+  @param Get\r
+  Used to retrieve the Authentication Information associated with the controller handle\r
+  \r
+  @param Set\r
+  Used to set the Authentication information associated with the controller handle\r
+  \r
+**/  \r
 struct _EFI_AUTHENTICATION_INFO_PROTOCOL {\r
   EFI_AUTHENTICATION_PROTOCOL_INFO_GET Get;\r
   EFI_AUTHENTICATION_PROTOCOL_INFO_SET Set;\r
index e8d0a5de1d7bcc33f6bec45310a8e59ac2b494a2..8bcfa93fac9da72e4b53a0a9c9a9482cf7e46801 100644 (file)
@@ -1,9 +1,9 @@
 /** @file\r
-  Boot Device Selection Architectural Protocol as defined in DXE CIS\r
+  Boot Device Selection Architectural Protocol as defined in PI spec Volume 2 DXE\r
 \r
   When the DXE core is done it calls the BDS via this protocol.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -12,9 +12,6 @@
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
 \r
-  @par Revision Reference:\r
-  Version 0.91B.\r
-\r
 **/\r
 \r
 #ifndef __ARCH_PROTOCOL_BDS_H__\r
index aa4905b04e54775a6f61ef96c2d42386fd22dc6a..e01d049cbfaffe4208205c2d1576992867a2ea6f 100644 (file)
@@ -1,7 +1,9 @@
 /** @file\r
-  This file defines the BIS protocol.\r
+  BIS protocol are defined in the UEFI specification.\r
+  The EFI_BIS_PROTOCOL is used to check a digital signature of a data block \r
+  against a digital certificate for the purpose of an integrity and authorization check.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -397,6 +399,60 @@ EFI_STATUS
   OUT EFI_BIS_DATA            **SignatureInfo      \r
   );\r
 \r
+/**\r
+  @par Protocol Description:\r
+  The EFI_BIS_PROTOCOL is used to check a digital signature of a data block against a digital\r
+  certificate for the purpose of an integrity and authorization check.\r
+\r
+  @param initialize\r
+  Initializes an application instance of the EFI_BIS protocol,\r
+  returning a handle for the application instance. Other functions in\r
+  the EFI_BIS protocol require a valid application instance\r
+  handle obtained from this function.\r
+  \r
+  @param Shutdown \r
+  Ends the lifetime of an application instance of the EFI_BIS\r
+  protocol, invalidating its application instance handle. The\r
+  application instance handle may no longer be used in other\r
+  functions in the EFI_BIS protocol.\r
+\r
+  @param Free \r
+  Frees memory structures allocated and returned by other\r
+  functions in the EFI_BIS protocol. \r
+\r
+  @param GetBootObjectAuthorizationCertificate\r
+  Retrieves the current digital certificate (if any) used by the\r
+  EFI_BIS protocol as the source of authorization for verifying\r
+  boot objects and altering configuration parameters.\r
+\r
+  @param GetBootObjectAuthorizationCheckFlag\r
+  Retrieves the current setting of the authorization check flag that\r
+  indicates whether or not authorization checks are required for\r
+  boot objects.\r
+\r
+  @param GetBootObjectAuthorizationUpdateToken\r
+  Retrieves an uninterpreted token whose value gets included and\r
+  signed in a subsequent request to alter the configuration\r
+  parameters, to protect against attempts to replay such a request.\r
+\r
+  @param GetSignatureInfo \r
+  Retrieves information about the digital signature algorithms\r
+  supported and the identity of the installed authorization\r
+  certificate, if any.\r
+\r
+  @param UpdateBootObjectAuthorization\r
+  Requests that the configuration parameters be altered by\r
+  installing or removing an authorization certificate or changing the\r
+  setting of the check flag. \r
+\r
+  @param VerifyBootObject\r
+  Verifies a boot object according to the supplied digital signature\r
+  and the current authorization certificate and check flag setting.\r
+\r
+  @param VerifyObjectWithCredential\r
+  Verifies a data object according to a supplied digital signature\r
+  and a supplied digital certificate.  \r
+**/\r
 struct _EFI_BIS_PROTOCOL {\r
   EFI_BIS_INITIALIZE                                  Initialize;\r
   EFI_BIS_SHUTDOWN                                    Shutdown;\r
index c42ecc5da01f9023412cb7885c5631e5d354c59f..ecfd3a7551320ff44f5f7bd733b3cd08c2a8b6a2 100644 (file)
@@ -4,7 +4,7 @@
   The Block IO protocol is used to abstract block devices like hard drives,\r
   DVD-ROMs and floppy drives.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -132,31 +132,51 @@ EFI_STATUS
 \r
 /**\r
   Block IO read only mode data and updated only via members of BlockIO\r
+  \r
+  @param MediaId\r
+  The curent media Id. If the media changes, this value is changed.\r
+  \r
+  @param RemovableMedia\r
+  TRUE if the media is removable; otherwise, FALSE.\r
+  \r
+  @param MediaPresent\r
+  TRUE if there is a media currently present in the device;\r
+  othersise, FALSE. THis field shows the media present status\r
+  as of the most recent ReadBlocks() or WriteBlocks() call.\r
+\r
+  @param LogicalPartition\r
+  TRUE if LBA 0 is the first block of a partition; otherwise\r
+  FALSE. For media with only one partition this would be TRUE.\r
+  \r
+  @param ReadOnly\r
+  TRUE if the media is marked read-only otherwise, FALSE.\r
+  This field shows the read-only status as of the most recent WriteBlocks () call.\r
+  \r
+  @param WriteCaching\r
+  TRUE if the WriteBlock () function caches write data.\r
+\r
+  @param BlockSize\r
+  The intrinsic block size of the device. If the media changes, then\r
+  this field is updated.  \r
+\r
+  @param IoAlign\r
+  Supplies the alignment requirement for any buffer to read or write block(s).\r
+  \r
+  @param LastBlock\r
+  The last logical block address on the device.\r
+  If the media changes, then this field is updated.   \r
 \r
 **/\r
 typedef struct {\r
-  UINT32  MediaId;    /**< The curent media Id. If the media changes, this value is changed.**/\r
-  BOOLEAN RemovableMedia;  /**< TRUE if the media is removable; otherwise, FALSE.**/\r
-  BOOLEAN MediaPresent;    /**< TRUE if there is a media currently present in the device;\r
-                             othersise, FALSE. THis field shows the media present status\r
-                             as of the most recent ReadBlocks() or WriteBlocks() call.\r
-                           **/\r
-  BOOLEAN LogicalPartition;  /**< TRUE if LBA 0 is the first block of a partition; otherwise\r
-                               FALSE. For media with only one partition this would be TRUE.\r
-                             **/\r
-  BOOLEAN ReadOnly;    /**< TRUE if the media is marked read-only otherwise, FALSE.\r
-                            This field shows the read-only status as of the most recent WriteBlocks () call.\r
-                        **/\r
-  BOOLEAN WriteCaching;    /**< TRUE if the WriteBlock () function caches write data.**/\r
-\r
-  UINT32  BlockSize;    /**< The intrinsic block size of the device. If the media changes, then\r
-                          this field is updated.\r
-                        **/\r
-  UINT32  IoAlign;      /**< Supplies the alignment requirement for any buffer to read or write block(s).**/\r
-\r
-  EFI_LBA LastBlock;    /**< The last logical block address on the device.\r
-                          If the media changes, then this field is updated.\r
-                         **/\r
+  UINT32  MediaId;    \r
+  BOOLEAN RemovableMedia;\r
+  BOOLEAN MediaPresent;\r
+  BOOLEAN LogicalPartition;\r
+  BOOLEAN ReadOnly;\r
+  BOOLEAN WriteCaching; \r
+  UINT32  BlockSize; \r
+  UINT32  IoAlign; \r
+  EFI_LBA LastBlock; \r
 } EFI_BLOCK_IO_MEDIA;\r
 \r
 #define EFI_BLOCK_IO_PROTOCOL_REVISION  0x00010000\r
@@ -165,6 +185,31 @@ typedef struct {
 // \r
 #define EFI_BLOCK_IO_INTERFACE_REVISION   EFI_BLOCK_IO_PROTOCOL_REVISION\r
 \r
+/**\r
+  @par Protocol Description:\r
+  This protocol provides control over block devices.\r
+\r
+  @param Revision \r
+  The revision to which the block IO interface adheres. All future\r
+  revisions must be backwards compatible. If a future version is not\r
+  back wards compatible, it is not the same GUID.\r
+  \r
+  @param Media \r
+  A pointer to the EFI_BLOCK_IO_MEDIA data for this device.\r
+\r
+  @param Reset \r
+  Resets the block device hardware.\r
+\r
+  @param ReadBlocks \r
+  Reads the requested number of blocks from the device. \r
+\r
+  @param WriteBlocks \r
+  Writes the requested number of blocks to the device. \r
+\r
+  @param FlushBlocks \r
+  Flushes and cache blocks. This function is optional and only\r
+  needs to be supported on block devices that cache writes. \r
+**/\r
 struct _EFI_BLOCK_IO_PROTOCOL {\r
   UINT64              Revision;\r
 \r
index 1c3fe35c4708bf710445323a255809861d1d9c85..14d24d31c44fdf2c1d508f94c3e23263e259f0db 100644 (file)
@@ -1,7 +1,12 @@
 /** @file\r
   Bus Specific Driver Override protocol as defined in the UEFI 2.0 specification.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Bus drivers that have a bus specific algorithm for matching drivers to controllers are\r
+  required to produce this protocol for each controller. For example, a PCI Bus Driver will produce an\r
+  instance of this protocol for every PCI controller that has a PCI option ROM that contains one or\r
+  more UEFI drivers. The protocol instance is attached to the handle of the PCI controller.\r
+\r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -55,6 +60,16 @@ EFI_STATUS
 //\r
 // Interface structure for the Bus Specific Driver Override Protocol\r
 //\r
+/**\r
+  @par Protocol Description:\r
+  This protocol matches one or more drivers to a controller. This protocol is produced by a bus driver,\r
+  and it is installed on the child handles of buses that require a bus specific algorithm for matching\r
+  drivers to controllers.\r
+\r
+  @param GetDriver\r
+  Uses a bus specific algorithm to retrieve a driver image handle for a controller.\r
\r
+**/\r
 struct _EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_PROTOCOL {\r
   EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_GET_DRIVER GetDriver;\r
 };\r
index 894e6f04df8d6f626d5f5c5241a4a5873858eba4..7ac7ce0a31e088a18f3ae15694b36286666d7cd3 100644 (file)
@@ -1,7 +1,9 @@
 /** @file\r
-  EFI Component Name Protocol\r
+  EFI Component Name Protocol as defined in the EFI 1.1 specification.\r
+  This protocol is used to retrieve user readable names of EFI Drivers \r
+  and controllers managed by EFI Drivers.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -112,6 +114,24 @@ EFI_STATUS
 //\r
 // Interface structure for the Component Name Protocol\r
 //\r
+/**\r
+  @par Protocol Description:\r
+  This protocol is used to retrieve user readable names of drivers \r
+  and controllers managed by UEFI Drivers.\r
+\r
+  @param GetDriverName\r
+  Retrieves a Unicode string that is the user readable name of the driver.\r
+  \r
+  @param GetControllerName\r
+  Retrieves a Unicode string that is the user readable name of a\r
+  controller that is being managed by a driver.\r
+  \r
+  @param SupportedLanguages \r
+  A Null-terminated ASCII string that contains one or more\r
+  ISO 639-2 language codes. This is the list of language codes\r
+  that this protocol supports.\r
+  \r
+**/\r
 struct _EFI_COMPONENT_NAME_PROTOCOL {\r
   EFI_COMPONENT_NAME_GET_DRIVER_NAME      GetDriverName;\r
   EFI_COMPONENT_NAME_GET_CONTROLLER_NAME  GetControllerName;\r
index bc6a903d154a6f795eee85354cd358966af785d3..7cec01699e0178955c4de48681b6ae7e5a2036ae 100644 (file)
@@ -1,7 +1,9 @@
 /** @file\r
-  EFI Component Name 2 Protocol\r
+  UEFI Component Name 2 Protocol as defined in the UEFI 2.1 specification.\r
+  This protocol is used to retrieve user readable names of drivers \r
+  and controllers managed by UEFI Drivers.\r
 \r
-  Copyright (c) 2006 - 2007, Intel Corporation\r
+  Copyright (c) 2006 - 2008, Intel Corporation\r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -31,7 +33,7 @@ typedef struct _EFI_COMPONENT_NAME2_PROTOCOL  EFI_COMPONENT_NAME2_PROTOCOL;
   the EFI Driver.\r
 \r
   @param  This       A pointer to the\r
-                     EFI_COMPONENT_NAME_PROTOCOL instance.\r
+                     EFI_COMPONENT_NAME2_PROTOCOL instance.\r
   \r
   @param  Language   A pointer to a Null-terminated ASCII string\r
                      array indicating the language. This is the\r
@@ -76,7 +78,7 @@ EFI_STATUS
   the controller that is being managed by an EFI Driver.\r
 \r
   @param  This             A pointer to the\r
-                           EFI_COMPONENT_NAME_PROTOCOL instance.\r
+                           EFI_COMPONENT_NAME2_PROTOCOL instance.\r
 \r
   @param  ControllerHandle The handle of a controller that the\r
                            driver specified by This is managing.\r
@@ -152,8 +154,28 @@ EFI_STATUS
   );\r
 \r
 //\r
-// Interface structure for the Component Name Protocol\r
+// Interface structure for the Component Name2 Protocol\r
 //\r
+/**\r
+  @par Protocol Description:\r
+  This protocol is used to retrieve user readable names of drivers \r
+  and controllers managed by UEFI Drivers.\r
+\r
+  @param GetDriverName\r
+  Retrieves a Unicode string that is the user readable name of the driver.\r
+  \r
+  @param GetControllerName\r
+  Retrieves a Unicode string that is the user readable name of a\r
+  controller that is being managed by a driver.\r
+  \r
+  @param SupportedLanguages \r
+  A Null-terminated ASCII string array that contains one or more\r
+  supported language codes. This is the list of language codes that\r
+  this protocol supports. The number of languages supported by a\r
+  driver is up to the driver writer. SupportedLanguages is\r
+  specified in RFC 3066 format.\r
+  \r
+**/\r
 struct _EFI_COMPONENT_NAME2_PROTOCOL {\r
   EFI_COMPONENT_NAME2_GET_DRIVER_NAME      GetDriverName;\r
   EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME  GetControllerName;\r
index 3acc1372313022f70f6f194a5e409ec2c7b22419..1cb354c119ade5a40466db4d0aa74eec49295ace 100644 (file)
@@ -1,9 +1,9 @@
 /** @file\r
-  CPU Architectural Protocol as defined in DXE CIS\r
+  CPU Architectural Protocol as defined in PI spec Volume 2 DXE\r
 \r
   This code abstracts the DXE core from processor implementation details.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -12,9 +12,6 @@
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
 \r
-  @par Revision Reference:\r
-  Version 0.91B.\r
-\r
 **/\r
 \r
 #ifndef __ARCH_PROTOCOL_CPU_H__\r
index 94293e19171c0ee17e890b81bd6fcdb6084414c5..265c47abbe21386072b03d917de440201aa360a0 100644 (file)
@@ -4,7 +4,7 @@
   This protocol is used by debug agent to communicate with the\r
   remote debug host.\r
   \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -116,6 +116,22 @@ EFI_STATUS
 //\r
 // DebugPort protocol definition\r
 //\r
+/**\r
+  @par Protocol Description:\r
+  This protocol provides the communication link between the debug agent and the remote host.\r
+\r
+  @param Reset\r
+  Resets the debugport hardware.\r
+  \r
+  @param Write\r
+  Send a buffer of characters to the debugport device.\r
+\r
+  @param Read \r
+  Receive a buffer of characters from the debugport device.\r
+\r
+  @param Poll \r
+  Determine if there is any data available to be read from the debugport device.\r
+**/ \r
 struct _EFI_DEBUGPORT_PROTOCOL {\r
   EFI_DEBUGPORT_RESET Reset;\r
   EFI_DEBUGPORT_WRITE Write;\r
index c16cf4412032ef3cfd90a2160858c353da83194e..1fa4843ecdaccd712b3b699e91ff3b1bc12f6479 100644 (file)
@@ -5,7 +5,7 @@
   The DebugSupport protocol is used by source level debuggers to abstract the\r
   processor and handle context save and restore operations.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -616,6 +616,33 @@ EFI_STATUS
 //\r
 // DebugSupport protocol definition\r
 //\r
+/**\r
+  @par Protocol Description:\r
+  This protocol provides the services to allow the debug agent to register \r
+  callback functions that are called either periodically or when specific \r
+  processor exceptions occur.\r
+\r
+  @param Isa\r
+  Declares the processor architecture for this instance of the EFI\r
+  Debug Support protocol.\r
+\r
+  @param GetMaximumProcessorIndex\r
+  Returns the maximum processor index value that may be used.\r
+\r
+  @param RegisterPeriodicCallback\r
+  Registers a callback function that will be invoked periodically\r
+  and asynchronously to the execution of EFI.\r
+\r
+  @param RegisterExceptionCallback\r
+  Registers a callback function that will be called each time the\r
+  specified processor exception occurs.\r
+\r
+  @param InvalidateInstructionCache\r
+  Invalidate the instruction cache of the processor. This is required\r
+  by processor architectures where instruction and data caches are\r
+  not coherent when instructions in the code under debug has been\r
+  modified by the debug agent.\r
+**/\r
 struct _EFI_DEBUG_SUPPORT_PROTOCOL {\r
   EFI_INSTRUCTION_SET_ARCHITECTURE  Isa;\r
   EFI_GET_MAXIMUM_PROCESSOR_INDEX   GetMaximumProcessorIndex;\r
index 83d59a3dcdc98e5348b5818f472eaedcd3a7a8ca..0cc9bb7e36f070b9eba1eab2caa14857dc73e990 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
-  The Decompress Protocol Interface\r
+  The Decompress Protocol Interface as defined in UEFI spec\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -109,6 +109,22 @@ EFI_STATUS
   IN     UINT32                           ScratchSize\r
   );\r
 \r
+/**\r
+  @par Protocol Description:\r
+  Provides a decompression service.\r
+\r
+  @param GetInfo\r
+  Given the compressed source buffer, this function retrieves the\r
+  size of the uncompressed destination buffer and the size of the\r
+  scratch buffer required to perform the decompression. It is the\r
+  caller's responsibility to allocate the destination buffer and the\r
+  scratch buffer prior to calling EFI_DECOMPRESS_PROTOCOL.Decompress().\r
+\r
+  @param Decompresss\r
+  Decompresses a compressed source buffer into an uncompressed\r
+  destination buffer. It is the caller's responsibility to allocate the\r
+  destination buffer and a scratch buffer prior to making this call.\r
+**/ \r
 struct _EFI_DECOMPRESS_PROTOCOL {\r
   EFI_DECOMPRESS_GET_INFO   GetInfo;\r
   EFI_DECOMPRESS_DECOMPRESS Decompress;\r
index da3eee4269383f0d2189e34509e0a99d7b76f1f3..0bc4394904750d14c878b21a7ff9ff93ad29694c 100644 (file)
@@ -4,7 +4,7 @@
   Device IO is used to abstract hardware access to devices. It includes\r
   memory mapped IO, IO, PCI Config space, and DMA.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -213,6 +213,40 @@ EFI_STATUS
   IN EFI_PHYSICAL_ADDRESS             HostAddress\r
   );\r
 \r
+/**\r
+  @par Protocol Description:\r
+  This protocol provides the basic Memory, I/O, and PCI interfaces that \r
+  are used to abstract accesses to devices.\r
+\r
+  @param Mem \r
+  Allows reads and writes to memory mapped I/O space.\r
+\r
+  @param Io \r
+  Allows reads and writes to I/O space.\r
+\r
+  @param Pci \r
+  Allows reads and writes to PCI configuration space.\r
+\r
+  @param Map \r
+  Provides the device specific addresses needed to access system memory for DMA. \r
+\r
+  @param PciDevicePath \r
+  Provides an EFI Device Path for a PCI device with the given PCI\r
+  configuration space address.\r
+\r
+  @param Unmap \r
+  Releases any resources allocated by Map(). \r
+\r
+  @param AllocateBuffer \r
+  Allocates pages that are suitable for a common buffer mapping. \r
+\r
+  @param Flush \r
+  Flushes any posted write data to the device. \r
+\r
+  @param FreeBuffer \r
+  Free pages that were allocated with AllocateBuffer(). \r
+\r
+**/ \r
 struct _EFI_DEVICE_IO_PROTOCOL {\r
   EFI_IO_ACCESS           Mem;\r
   EFI_IO_ACCESS           Io;\r
index c7653a4b99cde068a0d9a5b7b9e39c49389609b6..fddf972bef8bdc399c9776089934f5c964c145c1 100644 (file)
@@ -5,7 +5,7 @@
   from a software point of view. It also must persist from boot to boot, so \r
   it can not contain things like PCI bus numbers that change from boot to boot.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
index 9fe0a6f92fbe3a86b2a86db845d4e7a88fbbdee1..5caf5dff056c7afa49a526cd40e4d23a0ce851f6 100644 (file)
@@ -2,7 +2,7 @@
   EFI_DEVICE_PATH_FROM_TEXT_PROTOCOL as defined in UEFI 2.0.  \r
   This protocol provides service to convert text to device paths and device nodes.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -62,7 +62,18 @@ EFI_DEVICE_PATH_PROTOCOL*
   IN CONST CHAR16                 *TextDevicePath\r
   )\r
 ;  \r
+\r
+/**\r
+  @par Protocol Description:\r
+  This protocol converts text to device paths and device nodes.\r
+\r
+  @param ConvertTextToDeviceNode\r
+  Convert text to a device node.\r
+  \r
+  @param ConvertTextToDevicePath\r
+  Convert text to a device path\r
   \r
+**/   \r
 typedef struct {\r
   EFI_DEVICE_PATH_FROM_TEXT_NODE  ConvertTextToDeviceNode;\r
   EFI_DEVICE_PATH_FROM_TEXT_PATH  ConvertTextToDevicePath;\r
index 0946794c38b1fa50e6f6a8ef37d9e1c93927b629..bf043e09a9cc257159bbea3badfeea13798ed857 100644 (file)
@@ -2,7 +2,7 @@
   EFI_DEVICE_PATH_TO_TEXT_PROTOCOL as defined in UEFI 2.0.  \r
   This protocol provides service to convert device nodes and paths to text.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -74,6 +74,17 @@ CHAR16*
   )\r
 ;    \r
 \r
+/**\r
+  @par Protocol Description:\r
+  This protocol converts device paths and device nodes to text.\r
+\r
+  @param ConvertTextToDeviceNode\r
+  Convert the device node to text.\r
+  \r
+  @param ConvertTextToDevicePath\r
+  Convert the device path to text.\r
+  \r
+**/\r
 typedef struct {\r
   EFI_DEVICE_PATH_TO_TEXT_NODE        ConvertDeviceNodeToText;\r
   EFI_DEVICE_PATH_TO_TEXT_PATH        ConvertDevicePathToText;\r
index 3874d63491dbf8a120ce16f6689ed454714ac460..7a8c50934e1bf1a863869c8bf19004978dea4659 100644 (file)
@@ -2,7 +2,7 @@
   EFI_DEVICE_PATH_UTILITIES_PROTOCOL as defined in UEFI 2.0.  \r
   Use to create and manipulate device paths and device nodes.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -178,7 +178,34 @@ BOOLEAN
   )\r
 ;                                                                                                       \r
   \r
+/**\r
+  @par Protocol Description:\r
+  This protocol is used to creates and manipulates device paths and device nodes.\r
+\r
+  @param GetDevicePathSize \r
+  Returns the size of the specified device path, in bytes.\r
+\r
+  @param DuplicateDevicePath\r
+  Duplicates a device path structure.\r
\r
+  @param AppendDeviceNode \r
+  Appends the device node to the specified device path.\r
+\r
+  @param AppendDevicePath \r
+  Appends the device path to the specified device path.\r
+\r
+  @param AppendDevicePathInstance\r
+  Appends a device path instance to another device path.\r
+\r
+  @param GetNextDevicePathInstance\r
+  Retrieves the next device path instance from a device path data structure.\r
+\r
+  @param IsDevicePathMultiInstance\r
+  Returns TRUE if this is a multi-instance device path.\r
 \r
+  @param CreateDeviceNode \r
+  Allocates memory for a device node with the specified type and sub-type.\r
+**/ \r
 typedef struct {\r
   EFI_DEVICE_PATH_UTILS_GET_DEVICE_PATH_SIZE GetDevicePathSize;\r
   EFI_DEVICE_PATH_UTILS_DUP_DEVICE_PATH      DuplicateDevicePath;\r
index d0e46203261a1a1689726b2505110e897009a08c..95c7701ed08afd3d7dfa4942aa70d7aeb246b7e8 100644 (file)
@@ -4,7 +4,7 @@
   These protocols are used to collect configuration information for the EFI IPv4 Protocol\r
   drivers and to provide DHCPv4 server and PXE boot server discovery services.\r
 \r
-  Copyright (c) 2006, Intel Corporation\r
+  Copyright (c) 2006 - 2008, Intel Corporation\r
   All rights reserved. This program and the accompanying materials\r
   are licensed and made available under the terms and conditions of the BSD License\r
   which accompanies this distribution.  The full text of the license may be found at\r
@@ -420,7 +420,42 @@ EFI_STATUS
   )\r
 ;\r
 \r
-\r
+/**\r
+  @par Protocol Description:\r
+  This protocol is used to collect configuration information for the EFI IPv4 Protocol drivers\r
+  and to provide DHCPv4 server and PXE boot server discovery services.\r
+\r
+  @param GetModeData \r
+  Gets the EFI DHCPv4 Protocol driver status and operational data.\r
+\r
+  @param Configure \r
+  Initializes, changes, or resets operational settings for the EFI\r
+  DHCPv4 Protocol driver.\r
+  \r
+  @param Start\r
+  Starts the DHCP configuration process. \r
+  \r
+  @param RenewRebind \r
+  Tries to manually extend the lease time by sending a request packet.\r
+\r
+  @param Release \r
+  Releases the current configuration and returns the EFI DHCPv4\r
+  Protocol driver to the initial state.\r
+  \r
+  @param Stop\r
+  Stops the DHCP configuration process no matter what state the\r
+  driver is in. After being stopped, this driver will not automatically\r
+  communicate with the DHCP server.\r
+  \r
+  @param Build \r
+  Puts together a DHCP or PXE packet. \r
+  \r
+  @param TransmitReceive \r
+  Transmits a DHCP or PXE packet and waits for response packets.\r
+\r
+  @param Parse \r
+  Parses the packed DHCP or PXE option data. \r
+**/\r
 struct _EFI_DHCP4_PROTOCOL {\r
   EFI_DHCP4_GET_MODE_DATA      GetModeData;\r
   EFI_DHCP4_CONFIGURE          Configure;\r
index 6fb2bcf9465b09aacabcc6b79dbeb57f4539222f..2f15b705540f49548fad9482e68b56ab103805a2 100644 (file)
@@ -5,7 +5,7 @@
   oriented devices. The Disk IO protocol is intended to layer on top of the\r
   Block IO protocol.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -100,6 +100,22 @@ EFI_STATUS
 // \r
 #define EFI_DISK_IO_INTERFACE_REVISION  EFI_DISK_IO_PROTOCOL_REVISION\r
 \r
+/**\r
+  @par Protocol Description:\r
+  This protocol is used to abstract Block I/O interfaces.\r
+\r
+  @param Revision \r
+  The revision to which the disk I/O interface adheres. All future\r
+  revisions must be backwards compatible. If a future version is not\r
+  backwards compatible, it is not the same GUID.\r
+\r
+  @param ReadDisk \r
+  Reads data from the disk.\r
+  \r
+  @param WriteDisk \r
+  Writes data to the disk.\r
+\r
+**/\r
 struct _EFI_DISK_IO_PROTOCOL {\r
   UINT64          Revision;\r
   EFI_DISK_READ   ReadDisk;\r
index 751d38b96bddb6bfebc0ce4b1fc65561bb1d485e..689c1a0a88c1611fc5c3633be551697a84022057 100644 (file)
@@ -1,7 +1,10 @@
 /** @file\r
-  EFI ControllerHandle Driver Protocol\r
+  UEFI DriverBinding Protocol is defined in UEFI specification.\r
+  \r
+  This protocol is produced by every driver that follows the UEFI Driver Model, \r
+  and it is the central component that allows drivers and controllers to be managed.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -97,6 +100,61 @@ EFI_STATUS
 //\r
 // Interface structure for the ControllerHandle Driver Protocol\r
 //\r
+/**\r
+  @par Protocol Description:\r
+  This protocol provides the services required to determine if a driver supports a given controller. \r
+  If a controller is supported, then it also provides routines to start and stop the controller.\r
+  \r
+  @param Supported \r
+  Tests to see if this driver supports a given controller. This service\r
+  is called by the EFI boot service ConnectController(). In\r
+  order to make drivers as small as possible, there are a few calling\r
+  restrictions for this service. ConnectController() must\r
+  follow these calling restrictions. If any other agent wishes to call\r
+  Supported() it must also follow these calling restrictions.\r
+\r
+\r
+  @param Start \r
+  Starts a controller using this driver. This service is called by the\r
+  EFI boot service ConnectController(). In order to make\r
+  drivers as small as possible, there are a few calling restrictions for\r
+  this service. ConnectController() must follow these\r
+  calling restrictions. If any other agent wishes to call Start() it\r
+  must also follow these calling restrictions. \r
+  \r
+  @param Stop \r
+  Stops a controller using this driver. This service is called by the\r
+  EFI boot service DisconnectController(). In order to\r
+  make drivers as small as possible, there are a few calling\r
+  restrictions for this service. DisconnectController()\r
+  must follow these calling restrictions. If any other agent wishes\r
+  to call Stop() it must also follow these calling restrictions.\r
+  \r
+  @param Version \r
+  The version number of the UEFI driver that produced the\r
+  EFI_DRIVER_BINDING_PROTOCOL. This field is used by\r
+  the EFI boot service ConnectController() to determine\r
+  the order that driver's Supported() service will be used when\r
+  a controller needs to be started. EFI Driver Binding Protocol\r
+  instances with higher Version values will be used before ones\r
+  with lower Version values. The Version values of 0x0-\r
+  0x0f and 0xfffffff0-0xffffffff are reserved for\r
+  platform/OEM specific drivers. The Version values of 0x10-\r
+  0xffffffef are reserved for IHV-developed drivers.\r
+  \r
+  @param ImageHandle \r
+  The image handle of the UEFI driver that produced this instance\r
+  of the EFI_DRIVER_BINDING_PROTOCOL.\r
+  \r
+  @param DriverBindingHandle\r
+  The handle on which this instance of the\r
+  EFI_DRIVER_BINDING_PROTOCOL is installed. In most\r
+  cases, this is the same handle as ImageHandle. However, for\r
+  UEFI drivers that produce more than one instance of the\r
+  EFI_DRIVER_BINDING_PROTOCOL, this value may not be\r
+  the same as ImageHandle.\r
+\r
+**/\r
 struct _EFI_DRIVER_BINDING_PROTOCOL {\r
   EFI_DRIVER_BINDING_SUPPORTED  Supported;\r
   EFI_DRIVER_BINDING_START      Start;\r
index 2b34dce0cd5903864245195d5c7c937f9b9073a9..c7a275213236c94c4d368a4cfd425dac11807a0c 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   EFI Driver Configuration Protocol\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -33,7 +33,7 @@ typedef struct _EFI_DRIVER_CONFIGURATION_PROTOCOL  EFI_DRIVER_CONFIGURATION_PROT
   Allows the user to set controller specific options for a controller that a \r
   driver is currently managing.\r
 \r
-  @param  This             A pointer to the EFI_DRIVER_CONFIGURATION_ PROTOCOL instance.\r
+  @param  This             A pointer to the EFI_DRIVER_CONFIGURATION_PROTOCOL instance.\r
   @param  ControllerHandle The handle of the controller to set options on.\r
   @param  ChildHandle      The handle of the child controller to set options on.  This\r
                            is an optional parameter that may be NULL.  It will be NULL\r
@@ -121,7 +121,7 @@ EFI_STATUS
 /**\r
   Forces a driver to set the default configuration options for a controller.\r
 \r
-  @param  This             A pointer to the EFI_DRIVER_CONFIGURATION_ PROTOCOL instance.\r
+  @param  This             A pointer to the EFI_DRIVER_CONFIGURATION_PROTOCOL instance.\r
   @param  ControllerHandle The handle of the controller to force default configuration options on.\r
   @param  ChildHandle      The handle of the child controller to force default configuration options on  This is an optional parameter that may be NULL.  It will be NULL for device drivers.  It will also be NULL for a bus drivers that wish to force default configuration options for the bus controller.  It will not be NULL for a bus driver that wishes to force default configuration options for one of its child controllers.\r
   @param  DefaultType      The type of default configuration options to force on the controller specified by ControllerHandle and ChildHandle.  See Table 9-1 for legal values.  A DefaultType of 0x00000000 must be supported by this protocol.\r
@@ -148,15 +148,6 @@ EFI_STATUS
   );\r
 \r
 \r
-//\r
-//\r
-struct _EFI_DRIVER_CONFIGURATION_PROTOCOL {\r
-  EFI_DRIVER_CONFIGURATION_SET_OPTIONS    SetOptions;\r
-  EFI_DRIVER_CONFIGURATION_OPTIONS_VALID  OptionsValid;\r
-  EFI_DRIVER_CONFIGURATION_FORCE_DEFAULTS ForceDefaults;\r
-  CHAR8                                   *SupportedLanguages;\r
-};\r
-\r
 /**\r
   Interface structure for the Driver Configuration Protocol.\r
 \r
@@ -177,6 +168,13 @@ struct _EFI_DRIVER_CONFIGURATION_PROTOCOL {
                              codes that this protocol supports.\r
 \r
 **/\r
+struct _EFI_DRIVER_CONFIGURATION_PROTOCOL {\r
+  EFI_DRIVER_CONFIGURATION_SET_OPTIONS    SetOptions;\r
+  EFI_DRIVER_CONFIGURATION_OPTIONS_VALID  OptionsValid;\r
+  EFI_DRIVER_CONFIGURATION_FORCE_DEFAULTS ForceDefaults;\r
+  CHAR8                                   *SupportedLanguages;\r
+};\r
+\r
 \r
 extern EFI_GUID gEfiDriverConfigurationProtocolGuid;\r
 \r
index a490f53f21d6fcd6c47fd07e2aec9827bcbf37a6..201599c98f449335caad442a257473b882a359b9 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
-  EFI Driver Configuration Protocol\r
+  UEFI Driver Configuration2 Protocol\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -44,7 +44,7 @@ typedef enum {
   Allows the user to set controller specific options for a controller that a \r
   driver is currently managing.\r
 \r
-  @param  This             A pointer to the EFI_DRIVER_CONFIGURATIONPROTOCOL instance.\r
+  @param  This             A pointer to the EFI_DRIVER_CONFIGURATION2_PROTOCOL instance.\r
   @param  ControllerHandle The handle of the controller to set options on.\r
   @param  ChildHandle      The handle of the child controller to set options on.  This\r
                            is an optional parameter that may be NULL.  It will be NULL\r
@@ -52,10 +52,9 @@ typedef enum {
                            options for the bus controller.  It will not be NULL for a\r
                            bus driver that wishes to set options for one of its child\r
                            controllers.\r
-  @param  Language         A pointer to a three character ISO 639-2 language identifier.\r
-                           This is the language of the user interface that should be\r
-                           presented to the user, and it must match one of the languages\r
-                           specified in SupportedLanguages.  The number of languages\r
+  @param  Language         A Null-terminated ASCII string that contains one or more RFC 3066\r
+                           language codes. This is the list of language codes that this\r
+                           protocol supports. The number of languages\r
                            supported by a driver is up to the driver writer.\r
   @param  ActionRequired   A pointer to the action that the calling agent is required\r
                            to perform when this function returns.  See "Related\r
@@ -95,7 +94,7 @@ EFI_STATUS
 /**\r
   Tests to see if a controller's current configuration options are valid.\r
 \r
-  @param  This             A pointer to the EFI_DRIVER_CONFIGURATION_PROTOCOL instance.\r
+  @param  This             A pointer to the EFI_DRIVER_CONFIGURATION2_PROTOCOL instance.\r
   @param  ControllerHandle The handle of the controller to test if it's current\r
                            configuration options are valid.\r
   @param  ChildHandle      The handle of the child controller to test if it's current\r
@@ -132,7 +131,7 @@ EFI_STATUS
 /**\r
   Forces a driver to set the default configuration options for a controller.\r
 \r
-  @param  This             A pointer to the EFI_DRIVER_CONFIGURATIONPROTOCOL instance.\r
+  @param  This             A pointer to the EFI_DRIVER_CONFIGURATION2_PROTOCOL instance.\r
   @param  ControllerHandle The handle of the controller to force default configuration options on.\r
   @param  ChildHandle      The handle of the child controller to force default configuration options on  This is an optional parameter that may be NULL.  It will be NULL for device drivers.  It will also be NULL for a bus drivers that wish to force default configuration options for the bus controller.  It will not be NULL for a bus driver that wishes to force default configuration options for one of its child controllers.\r
   @param  DefaultType      The type of default configuration options to force on the controller specified by ControllerHandle and ChildHandle.  See Table 9-1 for legal values.  A DefaultType of 0x00000000 must be supported by this protocol.\r
@@ -158,16 +157,6 @@ EFI_STATUS
   OUT EFI_DRIVER_CONFIGURATION_ACTION_REQUIRED                *ActionRequired\r
   );\r
 \r
-\r
-//\r
-//\r
-struct _EFI_DRIVER_CONFIGURATION2_PROTOCOL {\r
-  EFI_DRIVER_CONFIGURATION2_SET_OPTIONS     SetOptions;\r
-  EFI_DRIVER_CONFIGURATION2_OPTIONS_VALID   OptionsValid;\r
-  EFI_DRIVER_CONFIGURATION2_FORCE_DEFAULTS  ForceDefaults;\r
-  CHAR8                                     *SupportedLanguages;\r
-};\r
-\r
 /**\r
   Interface structure for the Driver Configuration Protocol.\r
 \r
@@ -183,11 +172,21 @@ struct _EFI_DRIVER_CONFIGURATION2_PROTOCOL {
   @param ForceDefaults       Forces a driver to set the default configuration options \r
                              for a controller.\r
 \r
-  @param SupportedLanguages  A Null-terminated ASCII string that contains one or more \r
-                             ISO 639-2 language codes.  This is the list of language \r
-                             codes that this protocol supports.\r
+  @param SupportedLanguages  A Null-terminated ASCII string that\r
+                             contains one or more RFC 3066\r
+                             language codes.  This is the list\r
+                             of language codes that this\r
+                             protocol supports.\r
 \r
 **/\r
+struct _EFI_DRIVER_CONFIGURATION2_PROTOCOL {\r
+  EFI_DRIVER_CONFIGURATION2_SET_OPTIONS     SetOptions;\r
+  EFI_DRIVER_CONFIGURATION2_OPTIONS_VALID   OptionsValid;\r
+  EFI_DRIVER_CONFIGURATION2_FORCE_DEFAULTS  ForceDefaults;\r
+  CHAR8                                     *SupportedLanguages;\r
+};\r
+\r
+\r
 \r
 extern EFI_GUID gEfiDriverConfiguration2ProtocolGuid;\r
 \r
index f406faa7fe483ea0e09bf7998ad06f846a0d8fcf..0751202153b911e3b831f497ca301b2517c1ad35 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   EFI Driver Diagnostics Protocol\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
index aae0864983b9aa53c858b1c85cb76334df5d646d..99ae5d08078c2a52bc2b9455f439ff1991d0f675 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
-  EFI Driver Diagnostics Protocol\r
+  UEFI Driver Diagnostics2 Protocol\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -27,7 +27,7 @@ typedef struct _EFI_DRIVER_DIAGNOSTICS2_PROTOCOL  EFI_DRIVER_DIAGNOSTICS2_PROTOC
 /**\r
   Runs diagnostics on a controller.\r
 \r
-  @param  This             A pointer to the EFI_DRIVER_DIAGNOSTICS_PROTOCOL instance.\r
+  @param  This             A pointer to the EFI_DRIVER_DIAGNOSTICS2_PROTOCOL instance.\r
   @param  ControllerHandle The handle of the controller to run diagnostics on.\r
   @param  ChildHandle      The handle of the child controller to run diagnostics on\r
                            This is an optional parameter that may be NULL.  It will\r
@@ -38,12 +38,14 @@ typedef struct _EFI_DRIVER_DIAGNOSTICS2_PROTOCOL  EFI_DRIVER_DIAGNOSTICS2_PROTOC
   @param  DiagnosticType   Indicates type of diagnostics to perform on the controller\r
                            specified by ControllerHandle and ChildHandle.   See\r
                            "Related Definitions" for the list of supported types.\r
-  @param  Language         A pointer to a three character ISO 639-2 language\r
-                           identifier.  This is the language in which the optional\r
-                           error message should be returned in Buffer, and it must\r
-                           match one of the languages specified in SupportedLanguages.\r
-                           The number of languages supported by a driver is up to\r
-                           the driver writer.\r
+  @param  Language         A pointer to a Null-terminated ASCII string\r
+                           array indicating the language. This is the\r
+                           language of the driver name that the caller\r
+                           is requesting, and it must match one of the\r
+                           languages specified in SupportedLanguages.\r
+                           The number of languages supported by a\r
+                           driver is up to the driver writer. Language\r
+                           is specified in RFC 3066 language code format.\r
   @param  ErrorType        A GUID that defines the format of the data returned in Buffer.\r
   @param  BufferSize       The size, in bytes, of the data returned in Buffer.\r
   @param  Buffer           A buffer that contains a Null-terminated Unicode string\r
@@ -94,7 +96,7 @@ EFI_STATUS
 //\r
 \r
 /**\r
-  Interface structure for the Driver Diagnostics Protocol.\r
+  Interface structure for the Driver Diagnostics2 Protocol.\r
 \r
   @par Protocol Description:\r
   Used to perform diagnostics on a controller that an EFI Driver is managing.\r
index 14d314b29a1fd30f258bccb21bf4fce86ed40e73..270481266a3f850877462ded6facf647fc149a48 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
-  EFI Driver Family Protocol\r
+  UEFI Driver Family Protocol\r
 \r
-  Copyright (c) 2007, Intel Corporation                                                         \r
+  Copyright (c) 2007 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -47,6 +47,7 @@ UINT32
   );\r
 \r
 /**\r
+  @par Protocol Description:\r
   When installed, the Driver Family Override Protocol produces a GUID that represets \r
   a family of drivers.  Drivers with the same GUID are members of the same family \r
   When drivers are connected to controllers, drivers with a higher revision value \r
@@ -55,10 +56,10 @@ UINT32
   Connect Controller uses five rules to build a prioritied list of drivers when \r
   a request is made to connect a driver to a controller.  The Driver Family Protocol\r
   rule is between the Platform Specific Driver Override Protocol and above the \r
-  Bus Specific Driver Override Protocol  \r
+  Bus Specific Driver Override Protocol.  \r
 \r
-  @param FamilyGuid    A pointer to the GUID that represnets the family of drivers\r
-                       that the driver producing this protocol is a member.\r
+  @param GetVersion\r
+  This function returns the version value associated with the driver specified by This.\r
 \r
 **/\r
 struct _EFI_DRIVER_FAMILY_OVERRIDE_PROTOCOL {\r
index f826cbd4ce41bde9bc2210d47b5d8335d8b57171..d177c8d89030ebe6d00e7321e5359f5895a2011e 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   EFI Driver Health Protocol\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -183,7 +183,8 @@ EFI_STATUS
                            drivers when an attempt is made to repair a bus controller.\r
                            If will not be NULL when an attempt is made to repair a \r
                            child controller produced by the driver.\r
-  @param  RepairNotify     A notification function that may be used by a driver to \r
+  @param  ProgressNotification\r
+                           A notification function that may be used by a driver to \r
                            report the progress of the repair operation.  This is \r
                            an optional parameter that may be NULL.  \r
 \r
index 56ff40ec437f46a2ad026eee337d5ca9752e9406..3bd3e00baea1d96119ff21a1459f310465467647 100644 (file)
@@ -1,10 +1,10 @@
 /** @file\r
-  The file provides information about the version of the EFI\r
+  The protocol provides information about the version of the EFI\r
   specification that a driver is following. This protocol is\r
   required for EFI drivers that are on PCI and other plug in\r
   cards.\r
 \r
-  Copyright (c) 2006 - 2007, Intel Corporation\r
+  Copyright (c) 2006 - 2008, Intel Corporation\r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -23,7 +23,7 @@
 \r
 \r
 /**\r
-  \r
+  @par Protocol Description:  \r
   The EFI_DRIVER_SUPPORTED_EFI_VERSION_PROTOCOL provides a\r
   mechanism for an EFI driver to publish the version of the EFI   \r
   specification it conforms to. This protocol must be placed on   \r
@@ -34,7 +34,7 @@
                 Future versions of this specification may grow\r
                 the size of the structure.\r
   \r
-  @param firmwareVersion The version of the EFI specification\r
+  @param FirmwareVersion The version of the EFI specification\r
                          that this driver conforms to.\r
                          EFI_2_10_SYSTEM_TABLE_REVISION for this\r
                          version of this specification.\r
index 9bcd5beb30dd9462c1b8229673b1534fe6eefe8b..7710b2144e086502b6e8d4e49b5c9b7262a97096 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Describes the protocol interface to the EBC interpreter.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
 typedef struct _EFI_EBC_PROTOCOL EFI_EBC_PROTOCOL;\r
 \r
 /**\r
-  Create a thunk for an image entry point. In short, given the physical address\r
-  of the entry point for a loaded image, create a thunk that does some \r
-  fixup of arguments (and perform any other necessary overhead) and then\r
-  calls the original entry point. The caller can then use the returned pointer\r
-  to the created thunk as the new entry point to image.\r
-\r
-  @param  This          protocol instance pointer\r
-  @param  ImageHandle   handle to the image. The EBC interpreter may use this to keep\r
-                        track of any resource allocations performed in loading and\r
-                        executing the image.\r
-  @param  EbcEntryPoint the entry point for the image (as defined in the file header)\r
-  @param  Thunk pointer to thunk pointer where the address of the created\r
-                        thunk is returned.\r
-\r
-  @return Standard EFI_STATUS\r
-\r
+  Creates a thunk for an EBC entry point, returning the address of the thunk.\r
+  \r
+  A PE32+ EBC image, like any other PE32+ image, contains an optional header that specifies the\r
+  entry point for image execution. However for EBC images this is the entry point of EBC\r
+  instructions, so is not directly executable by the native processor. Therefore when an EBC image is\r
+  loaded, the loader must call this service to get a pointer to native code (thunk) that can be executed\r
+  which will invoke the interpreter to begin execution at the original EBC entry point.\r
+\r
+  @param  This          A pointer to the EFI_EBC_PROTOCOL instance.\r
+  @param  ImageHandle   Handle of image for which the thunk is being created.\r
+  @param  EbcEntryPoint Address of the actual EBC entry point or protocol service the thunk should call.\r
+  @param  Thunk         Returned pointer to a thunk created.\r
+\r
+  @retval EFI_SUCCESS            The function completed successfully.\r
+  @retval EFI_INVALID_PARAMETER  Image entry point is not 2-byte aligned.\r
+  @retval EFI_OUT_OF_RESOURCES   Memory could not be allocated for the thunk.\r
 **/\r
 typedef\r
 EFI_STATUS\r
@@ -58,15 +58,18 @@ EFI_STATUS
   );\r
 \r
 /**\r
-  Perform any cleanup necessary when an image is unloaded. Basically it gives\r
-  the EBC interpreter the chance to free up any resources allocated during\r
-  load and execution of an EBC image.\r
+  Called prior to unloading an EBC image from memory.\r
 \r
-  @param  This        protocol instance pointer\r
-  @param  ImageHandle the handle of the image being unloaded.\r
+  This function is called after an EBC image has exited, but before the image is actually unloaded. It\r
+  is intended to provide the interpreter with the opportunity to perform any cleanup that may be\r
+  necessary as a result of loading and executing the image.\r
 \r
-  @return Standard EFI_STATUS.\r
+  @param  This          A pointer to the EFI_EBC_PROTOCOL instance.\r
+  @param  ImageHandle   Image handle of the EBC image that is being unloaded from memory.\r
 \r
+  @retval EFI_SUCCESS            The function completed successfully.\r
+  @retval EFI_INVALID_PARAMETER  Image handle is not recognized as belonging \r
+                                 to an EBC image that has been executed.\r
 **/\r
 typedef\r
 EFI_STATUS\r
@@ -76,13 +79,13 @@ EFI_STATUS
   );\r
 \r
 /**\r
-  The I-Cache-flush registration service takes a pointer to a function to\r
-  call to flush the I-Cache. Here's the prototype for that function pointer.\r
+  This is the prototype for the Flush callback routine. A pointer to a routine \r
+  of this type is passed to the EBC EFI_EBC_REGISTER_ICACHE_FLUSH protocol service.\r
 \r
-  @param  Start  physical start address of CPU instruction cache to flush.\r
-  @param  Length how many bytes to flush of the instruction cache.\r
+  @param  Start  The beginning physical address to flush from the processor's instruction cache.\r
+  @param  Length The number of bytes to flush from the processor's instruction cache.\r
 \r
-  @return Standard EFI_STATUS.\r
+  @retval EFI_SUCCESS            The function completed successfully.\r
 \r
 **/\r
 typedef\r
@@ -97,11 +100,10 @@ EFI_STATUS
   a function to call to flush the CPU's instruction cache following creation\r
   of a thunk. It is not required.\r
 \r
-  @param  This  protocol instance pointer\r
-  @param  Flush pointer to the function to call to flush the CPU instruction\r
-  cache.\r
+  @param  This       A pointer to the EFI_EBC_PROTOCOL instance.\r
+  @param  Flush      Pointer to a function of type EBC_ICACH_FLUSH.\r
 \r
-  @return Standard EFI_STATUS.\r
+  @retval EFI_SUCCESS            The function completed successfully.\r
 \r
 **/\r
 typedef\r
@@ -112,13 +114,16 @@ EFI_STATUS
   );\r
 \r
 /**\r
-  This routine can be called to get the VM revision. It returns the same\r
-  value as the EBC BREAK 1 instruction returns.\r
+  Called to get the version of the interpreter.\r
+\r
+  This function is called to get the version of the loaded EBC interpreter. The value and format of the\r
+  returned version is identical to that returned by the EBC BREAK 1 instruction.\r
 \r
-  @param  This    protocol instance pointer\r
-  @param  Version pointer to where to return the VM version\r
+  @param  This       A pointer to the EFI_EBC_PROTOCOL instance.  \r
+  @param  Version Pointer to where to store the returned version of the interpreter.\r
 \r
-  @return Standard EFI_STATUS.\r
+  @retval EFI_SUCCESS            The function completed successfully.\r
+  @retval EFI_INVALID_PARAMETER  Version pointer is NULL.\r
 \r
 **/\r
 typedef\r
@@ -131,6 +136,31 @@ EFI_STATUS
 //\r
 // Prototype for the actual EBC protocol interface\r
 //\r
+/**\r
+  This protocol provides the services that allow execution of EBC images.\r
+\r
+  @par Protocol Description:\r
+  The EFI EBC protocol provides services to load and execute EBC images, which will typically be\r
+  loaded into option ROMs. The image loader will load the EBC image, perform standard relocations,\r
+  and invoke the CreateThunk() service to create a thunk for the EBC image's entry point. The\r
+  image can then be run using the standard EFI start image services.\r
+\r
+  @param CreateThunk \r
+  Creates a thunk for an EBC image entry point or protocol service,\r
+  and returns a pointer to the thunk. \r
+  \r
+  @param UnloadImage \r
+  Called when an EBC image is unloaded to allow the interpreter to\r
+  perform any cleanup associated with the image execution. \r
+  \r
+  @param RegisterICacheFlush\r
+  Called to register a callback function that the EBC interpreter can\r
+  call to flush the processor instruction cache after creating thunks.\r
+  \r
+  @param GetVersion \r
+  Called to get the version of the associated EBC interpreter.\r
+\r
+**/\r
 struct _EFI_EBC_PROTOCOL {\r
   EFI_EBC_CREATE_THUNK          CreateThunk;\r
   EFI_EBC_UNLOAD_IMAGE          UnloadImage;\r
index d1b1c06e2eeac0d7e0602d6adbfd5493925ca0c9..32baf199d95a7b6cef12d9b8fadccf167d550166 100644 (file)
@@ -3,7 +3,7 @@
 \r
   Placed on the video output device child handle that are actively displaying output.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
     0xbd8c1056, 0x9f36, 0x44ec, {0x92, 0xa8, 0xa6, 0x33, 0x7f, 0x81, 0x79, 0x86 } \\r
   }\r
 \r
+/**\r
+  @par Protocol Description:\r
+  This protocol contains the EDID information for an active video output device. This is either the\r
+  EDID information retrieved from the EFI_EDID_OVERRIDE_PROTOCOL if an override is\r
+  available, or an identical copy of the EDID information from the\r
+  EFI_EDID_DISCOVERED_PROTOCOL if no overrides are available.\r
+\r
+  @param SizeOfEdid \r
+  The size, in bytes, of the Edid buffer. 0 if no EDID information\r
+  is available from the video output device. Otherwise, it must be a\r
+  minimum of 128 bytes.\r
+  \r
+  @param Edid \r
+  A pointer to a read-only array of bytes that contains the EDID\r
+  information for an active video output device. This pointer is\r
+  NULL if no EDID information is available for the video output\r
+  device. The minimum size of a valid Edid buffer is 128 bytes.\r
+  EDID information is defined in the E-DID EEPROM\r
+  specification published by VESA (www.vesa.org).\r
+**/\r
 typedef struct {\r
   UINT32   SizeOfEdid;\r
   UINT8    *Edid;\r
index 8ecef1b6c108ec66cfe9a1670f244cfe0ad92fdf..cf3765384f5591a3664828c3a27a7c3a0e4549a8 100644 (file)
@@ -4,7 +4,7 @@
   This protocol is placed on the video output device child handle and it represents\r
   the EDID information being used for output device represented by the child handle.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
     0x1c0c34f6, 0xd380, 0x41fa, {0xa0, 0x49, 0x8a, 0xd0, 0x6c, 0x1a, 0x66, 0xaa } \\r
   }\r
 \r
+/**\r
+  @par Protocol Description:\r
+  This protocol contains the EDID information retrieved from a video output device.\r
+\r
+  @param SizeOfEdid \r
+  The size, in bytes, of the Edid buffer. 0 if no EDID information\r
+  is available from the video output device. Otherwise, it must be a\r
+  minimum of 128 bytes.\r
+  \r
+  @param Edid \r
+  A pointer to a read-only array of bytes that contains the EDID\r
+  information for an active video output device. This pointer is\r
+  NULL if no EDID information is available for the video output\r
+  device. The minimum size of a valid Edid buffer is 128 bytes.\r
+  EDID information is defined in the E-DID EEPROM\r
+  specification published by VESA (www.vesa.org).\r
+**/\r
 typedef struct {\r
   UINT32   SizeOfEdid;\r
   UINT8    *Edid;\r
index 6d6fdfedf5a8739fabcc78ca36e6fbeff6047405..7ed938afa8efd181356f047189e43d70610b86e6 100644 (file)
@@ -4,7 +4,7 @@
   Allow platform to provide EDID information to producer of the Graphics Output\r
   protocol.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -57,6 +57,15 @@ EFI_STATUS
   )\r
 ;\r
 \r
+/**\r
+  @par Protocol Description:\r
+  This protocol is produced by the platform to allow the platform to provide \r
+  EDID information to the producer of the Graphics Output protocol.\r
+\r
+  @param GetEdid \r
+  Returns EDID values and attributes that the Video BIOS must use. \r
+\r
+**/\r
 struct _EFI_EDID_OVERRIDE_PROTOCOL {\r
   EFI_EDID_OVERRIDE_PROTOCOL_GET_EDID   GetEdid;\r
 };\r
index 66fa1e4a39c499df1b9289fc7efb08ac46a2c70c..fd07c95f55a93466ada38ac56f284972d4f05aa1 100644 (file)
@@ -5,7 +5,7 @@
   the system during the DXE phase. The Firmware Volume Protocol also provides\r
   mechanisms for determining and modifying some attributes of the firmware volume.\r
 \r
-  Copyright (c) 2006 - 2007, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -94,11 +94,9 @@ typedef UINT64  EFI_FV_ATTRIBUTES;
   GetVolumeAttributes() function. GetVolumeAttributes() is\r
   callable only from TPL_NOTIFY and below. Behavior of\r
   GetVolumeAttributes() at any EFI_TPL above TPL_NOTIFY is\r
-  undefined. Type EFI_TPL is defined in RaiseTPL() in the UEFI\r
-  2.0 specification.\r
-  \r
-  @param  This    Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-                  instance.\r
+  undefined.\r
+\r
+  @param  This          Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL instance.\r
   \r
   @param  FvAttributes  Pointer to an EFI_FV_ATTRIBUTES in which\r
                         the attributes and current settings are\r
@@ -132,12 +130,9 @@ EFI_STATUS
   prevents further modification to all the attribute bits.\r
   SetVolumeAttributes() is callable only from TPL_NOTIFY and\r
   below. Behavior of SetVolumeAttributes() at any EFI_TPL above\r
-  TPL_NOTIFY is undefined. Type EFI_TPL is defined in\r
-  RaiseTPL() in the UEFI 2.0 specification.\r
-\r
+  TPL_NOTIFY is undefined.\r
 \r
-  @param  This  Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-                instance.\r
+  @param  This          Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL instance.\r
   \r
   @param  FvAttributes  On input, FvAttributes is a pointer to\r
                         an EFI_FV_ATTRIBUTES containing the\r
@@ -148,10 +143,10 @@ EFI_STATUS
                         modified and the firmware volume\r
                         settings are not changed.\r
   \r
-  @retval EFI_SUCCESS   The requested firmware volume attributes\r
-                        were set and the resulting\r
-                        EFI_FV_ATTRIBUTES is returned in\r
-                        FvAttributes.\r
+  @retval EFI_SUCCESS           The requested firmware volume attributes\r
+                                were set and the resulting\r
+                                EFI_FV_ATTRIBUTES is returned in\r
+                                FvAttributes.\r
 \r
   @retval EFI_INVALID_PARAMETER FvAttributes:EFI_FV_READ_STATUS\r
                                 is set to 1 on input, but the\r
@@ -251,37 +246,35 @@ EFI_STATUS
   other output parameters are returned with valid values.\r
   ReadFile() is callable only from TPL_NOTIFY and below.\r
   Behavior of ReadFile() at any EFI_TPL above TPL_NOTIFY is\r
-  undefined. Type EFI_TPL is defined in RaiseTPL() in the UEFI\r
-  2.0 specification.\r
-  \r
-  @param  This  Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-                instance.\r
+  undefined.\r
+\r
+  @param  This                  Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL instance.\r
   \r
-  @param  NameGuid  Pointer to an EFI_GUID, which is the file\r
-                    name. All firmware file names are EFI_GUIDs.\r
-                    A single firmware volume must not have two\r
-                    valid files with the same file name\r
-                    EFI_GUID.\r
+  @param  NameGuid              Pointer to an EFI_GUID, which is the file\r
+                                name. All firmware file names are EFI_GUIDs.\r
+                                A single firmware volume must not have two\r
+                                valid files with the same file name\r
+                                EFI_GUID.\r
   \r
-  @param  Buffer  Pointer to a pointer to a buffer in which the\r
-                  file contents are returned, not including the\r
-                  file header.\r
-  @param  BufferSize  Pointer to a caller-allocated UINTN. It\r
-                      indicates the size of the memory\r
-                      represented by Buffer.\r
+  @param  Buffer                Pointer to a pointer to a buffer in which the\r
+                                file contents are returned, not including the\r
+                                file header.\r
+\r
+  @param  BufferSize            Pointer to a caller-allocated UINTN. It\r
+                                indicates the size of the memory\r
+                                represented by Buffer.\r
   \r
-  @param  FoundType   Pointer to a caller-allocated\r
-                      EFI_FV_FILETYPE.\r
+  @param  FoundType             Pointer to a caller-allocated EFI_FV_FILETYPE.\r
   \r
-  @param  FileAttributes  Pointer to a  caller-allocated\r
-                          EFI_FV_FILE_ATTRIBUTES.\r
+  @param  FileAttributes        Pointer to a  caller-allocated\r
+                                EFI_FV_FILE_ATTRIBUTES.\r
   \r
   @param  AuthenticationStatus  Pointer to a caller-allocated\r
                                 UINT32 in which the\r
                                 authentication status is\r
                                 returned.\r
   \r
-  @retval EFI_SUCCESS   The call completed successfully.\r
+  @retval EFI_SUCCESS                 The call completed successfully.\r
   \r
   @retval EFI_WARN_BUFFER_TOO_SMALL   The buffer is too small to\r
                                       contain the requested\r
@@ -289,17 +282,15 @@ EFI_STATUS
                                       filled and the output is\r
                                       truncated.\r
 \r
-  @retval EFI_OUT_OF_RESOURCES  An allocation failure occurred.\r
+  @retval EFI_OUT_OF_RESOURCES        An allocation failure occurred.\r
 \r
-  @retval EFI_NOT_FOUND   Name was not found in the firmware\r
-                          volume.\r
+  @retval EFI_NOT_FOUND               Name was not found in the firmware volume.\r
 \r
-  @retval EFI_DEVICE_ERROR  A hardware error occurred when\r
-                            attempting to access the firmware\r
-                            volume.\r
+  @retval EFI_DEVICE_ERROR            A hardware error occurred when\r
+                                      attempting to access the firmware volume.\r
 \r
-  @retval EFI_ACCESS_DENIED The firmware volume is configured to\r
-                            isallow reads.\r
+  @retval EFI_ACCESS_DENIED           The firmware volume is configured to\r
+                                      isallow reads.\r
 \r
 **/\r
 typedef\r
@@ -343,36 +334,33 @@ EFI_STATUS
   parameters are returned with valid values. ReadSection() is\r
   callable only from TPL_NOTIFY and below. Behavior of\r
   ReadSection() at any EFI_TPL above TPL_NOTIFY is\r
-  undefined. Type EFI_TPL is defined in RaiseTPL() in the UEFI\r
-  2.0 specification.\r
-\r
-\r
-  @param This   Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-                instance.\r
-  \r
-  @param NameGuid   Pointer to an EFI_GUID, which indicates the\r
-                    file name from which the requested section\r
-                    will be read.\r
-  \r
-  @param SectionType  Indicates the section type to return.\r
-                      SectionType in conjunction with\r
-                      SectionInstance indicates which section to\r
-                      return.\r
-  \r
-  @param SectionInstance  Indicates which instance of sections\r
-                          with a type of SectionType to return.\r
-                          SectionType in conjunction with\r
-                          SectionInstance indicates which\r
-                          section to return. SectionInstance is\r
-                          zero based.\r
-  \r
-  @param Buffer   Pointer to a pointer to a buffer in which the\r
-                  section contents are returned, not including\r
-                  the section header.\r
-  \r
-  @param BufferSize   Pointer to a caller-allocated UINTN. It\r
-                      indicates the size of the memory\r
-                      represented by Buffer.\r
+  undefined.\r
+\r
+  @param  This                Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL instance.\r
\r
+  @param NameGuid             Pointer to an EFI_GUID, which indicates the\r
+                              file name from which the requested section\r
+                              will be read.\r
+  \r
+  @param SectionType          Indicates the section type to return.\r
+                              SectionType in conjunction with\r
+                              SectionInstance indicates which section to\r
+                              return.\r
+  \r
+  @param SectionInstance      Indicates which instance of sections\r
+                              with a type of SectionType to return.\r
+                              SectionType in conjunction with\r
+                              SectionInstance indicates which\r
+                              section to return. SectionInstance is\r
+                              zero based.\r
+  \r
+  @param Buffer               Pointer to a pointer to a buffer in which the\r
+                              section contents are returned, not including\r
+                              the section header.\r
+  \r
+  @param BufferSize           Pointer to a caller-allocated UINTN. It\r
+                              indicates the size of the memory\r
+                              represented by Buffer.\r
   \r
   @param AuthenticationStatus Pointer to a caller-allocated\r
                               UINT32 in which the authentication\r
@@ -462,39 +450,37 @@ typedef struct {
   Architectural Elements 84 August 21, 2006 Version 1.0\r
   WriteFile() is callable only from TPL_NOTIFY and below.\r
   Behavior of WriteFile() at any EFI_TPL above TPL_NOTIFY is\r
-  undefined. Type EFI_TPL is defined in RaiseTPL() in the UEFI 2.0\r
-  specification.\r
-\r
-  @param This Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-              instance. NumberOfFiles Indicates the number of\r
-              elements in the array pointed to by FileData.\r
+  undefined. \r
 \r
+  @param This           Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL instance.\r
 \r
-  @param WritePolicy  Indicates the level of reliability for the\r
-                      write in the event of a power failure or\r
-                      other system failure during the write\r
-                      operation.\r
+  @param NumberOfFiles  Indicates the number of elements in the array pointed to by FileData\r
 \r
-  @param FileData   Pointer to an array of\r
-                    EFI_FV_WRITE_FILE_DATA. Each element of\r
-                    FileData[] represents a file to be written.\r
+  @param WritePolicy    Indicates the level of reliability for the\r
+                        write in the event of a power failure or\r
+                        other system failure during the write\r
+                        operation.\r
\r
+  @param FileData       Pointer to an array of\r
+                        EFI_FV_WRITE_FILE_DATA. Each element of\r
+                        FileData[] represents a file to be written.\r
 \r
 \r
-  @retval EFI_SUCCESS The write completed successfully.\r
+  @retval EFI_SUCCESS             The write completed successfully.\r
   \r
-  @retval EFI_OUT_OF_RESOURCES  The firmware volume does not\r
-                                have enough free space to\r
-                                storefile(s).\r
+  @retval EFI_OUT_OF_RESOURCES    The firmware volume does not\r
+                                  have enough free space to\r
+                                  storefile(s).\r
   \r
-  @retval EFI_DEVICE_ERROR  A hardware error occurred when\r
-                            attempting to access the firmware volume.\r
+  @retval EFI_DEVICE_ERROR        A hardware error occurred when\r
+                                  attempting to access the firmware volume.\r
   \r
-  @retval EFI_WRITE_PROTECTED   The firmware volume is\r
-                                configured to disallow writes.\r
+  @retval EFI_WRITE_PROTECTED     The firmware volume is\r
+                                  configured to disallow writes.\r
   \r
-  @retval EFI_NOT_FOUND   A delete was requested, but the\r
-                          requested file was not found in the\r
-                          firmware volume.\r
+  @retval EFI_NOT_FOUND           A delete was requested, but the\r
+                                  requested file was not found in the\r
+                                  firmware volume.\r
   \r
   @retval EFI_INVALID_PARAMETER   A delete was requested with a\r
                                   multiple file write.\r
@@ -536,22 +522,16 @@ EFI_STATUS
   implementation specific and no semantic content is implied.\r
   GetNextFile() is callable only from TPL_NOTIFY and below.\r
   Behavior of GetNextFile() at any EFI_TPL above TPL_NOTIFY is\r
-  undefined. Type EFI_TPL is defined in RaiseTPL() in the UEFI 2.0\r
-  specification. Status Codes Returned\r
-\r
-\r
-  @param This Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-              instance. Key Pointer to a caller-allocated buffer\r
-              that contains implementation-specific data that is\r
-              used to track where to begin the search for the\r
-              next file. The size of the buffer must be at least\r
-              This->KeySize bytes long. To re-initialize the\r
-              search and begin from the beginning of the\r
-              firmware volume, the entire buffer must be cleared\r
-              to zero. Other than clearing the buffer to\r
-              initiate a new search, the caller must not modify\r
-              the data in the buffer between calls to\r
-              GetNextFile().\r
+  undefined. \r
+\r
+  @param This       Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL instance.\r
+\r
+  @param Key        Pointer to a caller-allocated buffer that contains implementation-specific data that is\r
+                    used to track where to begin the search for the next file. The size of the buffer must be\r
+                    at least This->KeySize bytes long. To re-initialize the search and begin from the\r
+                    beginning of the firmware volume, the entire buffer must be cleared to zero. Other\r
+                    than clearing the buffer to initiate a new search, the caller must not modify the data in\r
+                    the buffer between calls to GetNextFile().\r
 \r
   @param FileType   Pointer to a caller-allocated\r
                     EFI_FV_FILETYPE. The GetNextFile() API can\r
@@ -576,16 +556,16 @@ EFI_STATUS
                     EFI_FV_FILE_ATTRIBUTES is defined in\r
                     ReadFile().\r
 \r
-  @param Size   Pointer to a caller-allocated UINTN. If a\r
-                matching file is found, the file's size is\r
-                returned in *Size. If no matching file is found,\r
-                Size is not modified.\r
+  @param Size       Pointer to a caller-allocated UINTN. If a\r
+                    matching file is found, the file's size is\r
+                    returned in *Size. If no matching file is found,\r
+                    Size is not modified.\r
 \r
-  @retval EFI_SUCCESS The output parameters are filled with data\r
-                      obtained from the first matching file that\r
-                      was found.\r
+  @retval EFI_SUCCESS       The output parameters are filled with data\r
+                            obtained from the first matching file that\r
+                            was found.\r
 \r
-  @retval FI_NOT_FOUND  No files of type FileType were found.\r
+  @retval FI_NOT_FOUND      No files of type FileType were found.\r
 \r
 \r
   @retval EFI_DEVICE_ERROR  A hardware error occurred when\r
@@ -619,28 +599,28 @@ EFI_STATUS
   this specification are required information types that all file\r
   systems must support.\r
 \r
-  @param This A pointer to the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-              instance that is the file handle the requested\r
-              information is for.\r
+  @param This             A pointer to the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
+                          instance that is the file handle the requested\r
+                          information is for.\r
   \r
   @param InformationType  The type identifier for the\r
                           information being requested.\r
   \r
-  @param BufferSize   On input, the size of Buffer. On output,\r
-                      the amount of data returned in Buffer. In\r
-                      both cases, the size is measured in bytes.\r
+  @param BufferSize       On input, the size of Buffer. On output,\r
+                          the amount of data returned in Buffer. In\r
+                          both cases, the size is measured in bytes.\r
   \r
-  @param Buffer   A pointer to the data buffer to return. The\r
-                  buffer's type is indicated by InformationType.\r
+  @param Buffer           A pointer to the data buffer to return. The\r
+                          buffer's type is indicated by InformationType.\r
   \r
   \r
-  @retval EFI_SUCCESS   The information was retrieved.\r
+  @retval EFI_SUCCESS           The information was retrieved.\r
   \r
-  @retval EFI_UNSUPPORTED   The InformationType is not known.\r
+  @retval EFI_UNSUPPORTED       The InformationType is not known.\r
   \r
-  @retval EFI_NO_MEDIA  The device has no medium.\r
+  @retval EFI_NO_MEDIA          The device has no medium.\r
   \r
-  @retval EFI_DEVICE_ERROR  The device reported an error.\r
+  @retval EFI_DEVICE_ERROR      The device reported an error.\r
   \r
   @retval EFI_VOLUME_CORRUPTED  The file system structures are\r
                                 corrupted.\r
@@ -669,37 +649,37 @@ EFI_STATUS
   on the requested firmware volume.\r
 \r
 \r
-  @param This   A pointer to the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-                instance that is the file handle the information\r
-                is for.\r
+  @param This             A pointer to the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
+                          instance that is the file handle the information\r
+                          is for.\r
 \r
   @param InformationType  The type identifier for the\r
                           information being set.\r
 \r
-  @param BufferSize   The size, in bytes, of Buffer.\r
+  @param BufferSize       The size, in bytes, of Buffer.\r
 \r
-  @param Buffer A pointer to the data buffer to write. The\r
-                buffer's type is indicated by InformationType.\r
+  @param Buffer           A pointer to the data buffer to write. The\r
+                          buffer's type is indicated by InformationType.\r
 \r
-  @retval EFI_SUCCESS The information was set.\r
+  @retval EFI_SUCCESS           The information was set.\r
 \r
-  @retval EFI_UNSUPPORTED The InformationType is not known.\r
+  @retval EFI_UNSUPPORTED       The InformationType is not known.\r
 \r
-  @retval EFI_NO_MEDIA  The device has no medium.\r
+  @retval EFI_NO_MEDIA          The device has no medium.\r
 \r
-  @retval EFI_DEVICE_ERROR  The device reported an error.\r
+  @retval EFI_DEVICE_ERROR      The device reported an error.\r
 \r
   @retval EFI_VOLUME_CORRUPTED  The file system structures are\r
                                 corrupted.\r
 \r
 \r
-  @retval EFI_WRITE_PROTECTED The media is read only.\r
+  @retval EFI_WRITE_PROTECTED   The media is read only.\r
 \r
-  @retval EFI_VOLUME_FULL   The volume is full.\r
+  @retval EFI_VOLUME_FULL       The volume is full.\r
 \r
-  @retval EFI_BAD_BUFFER_SIZE BufferSize is smaller than the\r
-                              size of the type indicated by\r
-                              InformationType.\r
+  @retval EFI_BAD_BUFFER_SIZE   BufferSize is smaller than the\r
+                                size of the type indicated by\r
+                                InformationType.\r
 \r
 **/\r
 typedef\r
@@ -713,6 +693,7 @@ EFI_STATUS
 \r
 \r
 /**\r
+  @par Protocol Description:\r
   The Firmware Volume Protocol contains the file-level\r
   abstraction to the firmware volume as well as some firmware\r
   volume attribute reporting and configuration services. The\r
@@ -726,45 +707,33 @@ EFI_STATUS
   Protocol.\r
 \r
   @param  GetVolumeAttributes   Retrieves volume capabilities\r
-                                and current settings. See the\r
-                                GetVolumeAttributes() function\r
-                                description.\r
+                                and current settings. \r
 \r
   @param  SetVolumeAttributes   Modifies the current settings of\r
-                                the firmware volume. See the\r
-                                SetVolumeAttributes() function\r
-                                description.\r
+                                the firmware volume.\r
 \r
-  @param  ReadFile  Reads an entire file from the firmware\r
-                    volume. See the ReadFile() function\r
-                    description.\r
+  @param  ReadFile              Reads an entire file from the firmware\r
+                                volume. \r
 \r
-  @param  ReadSection   Reads a single section from a file into\r
-                        a buffer.\r
+  @param  ReadSection           Reads a single section from a file into\r
+                                a buffer.\r
 \r
-  @param  WriteFile   Writes an entire file into the firmware\r
-                      volume. See the WriteFile() function\r
-                      description.\r
+  @param  WriteFile             Writes an entire file into the firmware\r
+                                volume. \r
 \r
-  @param  GetNextFile Provides service to allow searching the\r
-                      firmware volume. See the GetNextFile()\r
-                      function description.\r
+  @param  GetNextFile           Provides service to allow searching the\r
+                                firmware volume.\r
 \r
-  @param  KeySize   Data field that indicates the size in bytes\r
-                    of the Key input buffer for the\r
-                    GetNextFile() API.\r
+  @param  KeySize               Data field that indicates the size in bytes\r
+                                of the Key input buffer for the\r
+                                GetNextFile() API.\r
 \r
-  @param  ParentHandle  Handle of the parent firmware volume.\r
-                        Type EFI_HANDLE is defined in\r
-                        InstallProtocolInterface() in the UEFI\r
-                        2.0 specification.\r
+  @param  ParentHandle          Handle of the parent firmware volume.\r
 \r
-  @param  GetInfo   Gets the requested file or volume\r
-                    information. See the GetInfo() function\r
-                    description.\r
-  @param  SetInfo   Sets the requested file information. See the\r
-                    SetInfo() function description.\r
+  @param  GetInfo               Gets the requested file or volume\r
+                                information. \r
 \r
+  @param  SetInfo               Sets the requested file information.\r
 **/\r
 struct _EFI_FIRMWARE_VOLUME2_PROTOCOL {\r
   EFI_FV_GET_ATTRIBUTES   GetVolumeAttributes;\r
index d4ea802f239611ab3f188bd4659afe0479b49665..c7e0c2f769fac1bc370ecc66a77115b997152750 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   This file provides control over block-oriented firmware devices.\r
 \r
-  Copyright (c) 2006 - 2007, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -29,8 +29,7 @@ typedef struct _EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL EFI_FIRMWARE_VOLUME_BLOCK_PRO
   The GetAttributes() function retrieves the attributes and\r
   current settings of the block. Status Codes Returned\r
 \r
-  @param This   Indicates the EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL\r
-                instance.\r
+  @param This       Indicates the EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL instance.\r
 \r
   @param Attributes Pointer to EFI_FVB_ATTRIBUTES in which the\r
                     attributes and current settings are\r
@@ -53,8 +52,7 @@ EFI_STATUS
   The SetAttributes() function sets configurable firmware volume\r
   attributes and returns the new settings of the firmware volume.\r
 \r
-  @param This   Indicates the EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL\r
-                instance.\r
+  @param This         Indicates the EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL instance.\r
 \r
   @param Attributes   On input, Attributes is a pointer to\r
                       EFI_FVB_ATTRIBUTES that contains the\r
@@ -63,10 +61,8 @@ EFI_STATUS
                       settings of the firmware volume. Type\r
                       EFI_FVB_ATTRIBUTES is defined in\r
                       EFI_FIRMWARE_VOLUME_HEADER.\r
-\r
   \r
-  @retval EFI_SUCCESS The firmware volume attributes were\r
-                      returned.\r
+  @retval EFI_SUCCESS           The firmware volume attributes were returned.\r
 \r
   @retval EFI_INVALID_PARAMETER The attributes requested are in\r
                                 conflict with the capabilities\r
@@ -87,22 +83,16 @@ EFI_STATUS
   a memory-mapped firmware volume. This function should be called\r
   only for memory-mapped firmware volumes.\r
 \r
-  @param This   Indicates the EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL\r
-                nstance.\r
+  @param This     Indicates the EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL instance.\r
   \r
   @param Address  Pointer to a caller-allocated\r
                   EFI_PHYSICAL_ADDRESS that, on successful\r
                   return from GetPhysicalAddress(), contains the\r
-                  base address of the firmware volume. Type\r
-                  EFI_PHYSICAL_ADDRESS is defined in\r
-                  AllocatePages() in the UEFI 2.0 specification.\r
+                  base address of the firmware volume.\r
   \r
-  @retval EFI_SUCCESS The firmware volume base address is\r
-                      returned.\r
+  @retval EFI_SUCCESS       The firmware volume base address is returned.\r
   \r
-  @retval EFI_NOT_SUPPORTED The firmware volume is not memory\r
-                            mapped.\r
-\r
+  @retval EFI_NOT_SUPPORTED The firmware volume is not memory mapped.\r
 \r
 **/\r
 typedef\r
@@ -119,15 +109,12 @@ EFI_STATUS
   retrieve the block map (see EFI_FIRMWARE_VOLUME_HEADER).\r
 \r
 \r
-  @param This   Indicates the EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL\r
-                instance.\r
+  @param This           Indicates the EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL instance.\r
 \r
-  @param Lba  Indicates the block for which to return the size.\r
-              Type EFI_LBA is defined in the BLOCK_IO Protocol\r
-              (section 11.6) in the UEFI 2.0 specification.\r
+  @param Lba            Indicates the block for which to return the size.\r
 \r
-  @param BlockSize  Pointer to a caller-allocated UINTN in which\r
-                    the size of the block is returned.\r
+  @param BlockSize      Pointer to a caller-allocated UINTN in which\r
+                        the size of the block is returned.\r
 \r
   @param NumberOfBlocks Pointer to a caller-allocated UINTN in\r
                         which the number of consecutive blocks,\r
@@ -136,11 +123,9 @@ EFI_STATUS
                         BlockSize.\r
 \r
   \r
-  @retval EFI_SUCCESS The firmware volume base address is\r
-                      returned.\r
+  @retval EFI_SUCCESS             The firmware volume base address is returned.\r
   \r
-  @retval EFI_INVALID_PARAMETER   The requested LBA is out of\r
-                                  range.\r
+  @retval EFI_INVALID_PARAMETER   The requested LBA is out of range.\r
 \r
 **/\r
 typedef\r
@@ -167,13 +152,12 @@ EFI_STATUS
   indicate the number of bytes actually read. The caller must be\r
   aware that a read may be partially completed.\r
 \r
-  @param This Indicates the EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL\r
-              instance. Lba The starting logical block index\r
-              from which to read. Type EFI_LBA is defined in the\r
-              BLOCK_IO Protocol (section 11.6) in the UEFI 2.0\r
-              specification.\r
+  @param This     Indicates the EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL instance.\r
+  \r
+  @param Lba      The starting logical block index\r
+                  from which to read.\r
 \r
-  @param Offset Offset into the block at which to begin reading.\r
+  @param Offset   Offset into the block at which to begin reading.\r
 \r
   @param NumBytes Pointer to a UINTN. At entry, *NumBytes\r
                   contains the total size of the buffer. At\r
@@ -183,8 +167,8 @@ EFI_STATUS
   @param Buffer   Pointer to a caller-allocated buffer that will\r
                   be used to hold the data that is read.\r
 \r
-  @retval EFI_SUCCESS The firmware volume was read successfully\r
-                      and contents are in Buffer.\r
+  @retval EFI_SUCCESS         The firmware volume was read successfully\r
+                              and contents are in Buffer.\r
   \r
   @retval EFI_BAD_BUFFER_SIZE Read attempted across an LBA\r
                               boundary. On output, NumBytes\r
@@ -209,8 +193,6 @@ EFI_STATUS
   IN OUT    UINT8                               *Buffer\r
 );\r
 \r
-\r
-\r
 /**\r
   The Write() function writes the specified number of bytes from\r
   the provided buffer to the specified block and offset. If the\r
@@ -239,25 +221,21 @@ EFI_STATUS
   fully flushed to the hardware before the Write() service\r
   returns.\r
 \r
-  @param This Indicates the EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL\r
-              instance.\r
+  @param This     Indicates the EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL instance.\r
   \r
-  @param Lba  The starting logical block index to write to. Type\r
-              EFI_LBA is defined in the BLOCK_IO Protocol\r
-              (section 11.6) in the UEFI 2.0 specification.\r
-              Offset Offset into the block at which to begin\r
-              writing.\r
+  @param Lba      The starting logical block index to write to.\r
+  \r
+  @param Offset   Offset into the block at which to begin writing.\r
   \r
   @param NumBytes Pointer to a UINTN. At entry, *NumBytes\r
                   contains the total size of the buffer. At\r
                   exit, *NumBytes contains the total number of\r
                   bytes actually written.\r
   \r
-  @param Buffer Pointer to a caller-allocated buffer that\r
-                contains the source for the write.\r
+  @param Buffer   Pointer to a caller-allocated buffer that\r
+                  contains the source for the write.\r
   \r
-  @retval EFI_SUCCESS The firmware volume was written\r
-                      successfully.\r
+  @retval EFI_SUCCESS         The firmware volume was written successfully.\r
   \r
   @retval EFI_BAD_BUFFER_SIZE The write was attempted across an\r
                               LBA boundary. On output, NumBytes\r
@@ -347,6 +325,7 @@ EFI_STATUS
 \r
 \r
 /**\r
+  @par Protocol Description:\r
   The Firmware Volume Block Protocol is the low-level interface\r
   to a firmware volume. File-level access to a firmware volume\r
   should not be done using the Firmware Volume Block Protocol.\r
@@ -372,40 +351,28 @@ EFI_STATUS
 \r
   @param GetPhysicalAddress   Retrieves the memory-mapped\r
                               address of the firmware volume.\r
-                              See the GetPhysicalAddress()\r
-                              function description. \r
 \r
   @param GetBlockSize   Retrieves the size for a specific block.\r
                         Also returns the number of consecutive\r
-                        similarly sized blocks. See the\r
-                        GetBlockSize() function description.\r
-\r
-  @param Read   Reads n bytes into a buffer from the firmware\r
-                volume hardware. See the Read() function\r
-                description.\r
-\r
-  @param Write  Writes n bytes from a buffer into the firmware\r
-                volume hardware. See the Write() function\r
-                description.\r
-\r
-  @param EraseBlocks  Erases specified block(s) and sets all\r
-                      values as indicated by the\r
-                      EFI_FVB_ERASE_POLARITY bit. See the\r
-                      EraseBlocks() function description. Type\r
-                      EFI_FVB_ERASE_POLARITY is defined in\r
-                      EFI_FIRMWARE_VOLUME_HEADER. ParentHandle\r
-                      Handle of the parent firmware volume. Type\r
-                      EFI_HANDLE is defined in\r
-                      InstallProtocolInterface() in the UEFI 2.0\r
-                      specification.\r
-  \r
-  @param GetAttributes Retrieves the current volume attributes.\r
-                       See the GetAttributes() function\r
-                       description.\r
+                        similarly sized blocks.\r
+\r
+  @param Read           Reads n bytes into a buffer from the firmware\r
+                        volume hardware.\r
+\r
+  @param Write          Writes n bytes from a buffer into the firmware\r
+                        volume hardware.\r
+\r
+  @param EraseBlocks    Erases specified block(s) and sets all\r
+                        values as indicated by the\r
+                        EFI_FVB_ERASE_POLARITY bit. See the\r
+                        EraseBlocks() function description. Type\r
+                        EFI_FVB_ERASE_POLARITY is defined in\r
+                        EFI_FIRMWARE_VOLUME_HEADER. ParentHandle\r
+                        Handle of the parent firmware volume.\r
   \r
-  @param SetAttributes Sets the current volume attributes. See\r
-                       the SetAttributes() function description.\r
+  @param GetAttributes  Retrieves the current volume attributes.\r
   \r
+  @param SetAttributes  Sets the current volume attributes.\r
 \r
 **/\r
 struct _EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL {\r
index 6645556a4a3e707f6a7003323fd64c6998bd1ced..1eaf7a2fee0d1640e44e3d449bb13db2a80b3401 100644 (file)
@@ -1,9 +1,10 @@
 /** @file\r
-\r
-  The file provides services to call for drivers to leverage the\r
-  EFI configuration driver interface.\r
+  This protocol is defined in UEFI spec.\r
+  \r
+  The EFI_FORM_BROWSER2_PROTOCOL is the interface to call for drivers to \r
+  leverage the EFI configuration driver interface.\r
   \r
-  Copyright (c) 2006 - 2007, Intel Corporation\r
+  Copyright (c) 2006 - 2008, Intel Corporation\r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -14,8 +15,8 @@
 \r
 **/\r
 \r
-#ifndef __EFI_FORM_BROWSER_H__\r
-#define __EFI_FORM_BROWSER_H__\r
+#ifndef __EFI_FORM_BROWSER2_H__\r
+#define __EFI_FORM_BROWSER2_H__\r
 \r
 #define EFI_FORM_BROWSER2_PROTOCOL_GUID \\r
   {0xb9d4c360, 0xbcfb, 0x4f9b, {0x92, 0x98, 0x53, 0xc1, 0x36, 0x98, 0x22, 0x58 }}\r
@@ -30,17 +31,18 @@ typedef struct _EFI_FORM_BROWSER2_PROTOCOL   EFI_FORM_BROWSER2_PROTOCOL;
   @param LeftColumn   Value that designates the text column\r
                       where the browser window will begin from\r
                       the left-hand side of the screen\r
-                      RightColumn Value that designates the text\r
+                      \r
+  @param RightColumn  Value that designates the text\r
                       column where the browser window will end\r
                       on the right-hand side of the screen.\r
 \r
-  @param TopRow   Value that designates the text row from the\r
-                  top of the screen where the browser window\r
-                  will start.\r
+  @param TopRow       Value that designates the text row from the\r
+                      top of the screen where the browser window\r
+                      will start.\r
 \r
-  @param BottomRow  Value that designates the text row from the\r
-                    bottom of the screen where the browser\r
-                    window will end. \r
+  @param BottomRow    Value that designates the text row from the\r
+                      bottom of the screen where the browser\r
+                      window will end. \r
 **/\r
 typedef struct {\r
   UINTN   LeftColumn;\r
@@ -58,62 +60,38 @@ typedef UINTN EFI_BROWSER_ACTION_REQUEST;
 \r
 \r
 /**\r
-   \r
-  This function is the primary interface to the internal\r
-  forms-based browser. By calling this routine, one is directing\r
-  the browser to use a variety of passed-in information or\r
-  primarily use the HII database as the source of information.\r
-\r
-  @param This   A pointer to the EFI_FORM_BROWSER2_PROTOCOL\r
-                instance.\r
-\r
-  @param Handle   A pointer to an array of HII handles to\r
-                  display. This value should correspond to the\r
-                  value of the HII form package that is required\r
-                  to be displayed.\r
-\r
-  @param HandleCount  The number of handles in the array\r
-                      specified by Handle.\r
-\r
-  @param SingleUse  If FALSE, the browser operates as a standard\r
-                    forms processor and exits only when\r
-                    explicitly requested by the user. If TRUE,\r
-                    the browser will return immediately after\r
-                    processing the first user-generated\r
-                    selection.\r
-\r
-  @param ScreenDimensions   Allows the browser to be called so\r
-                            that it occupies a portion of the\r
-                            physical screen instead of\r
-                            dynamically determining the screen\r
-                            dimensions. If the input values\r
-                            violate the platform policy then the\r
-                            dimensions will be dynamically\r
-                            adjusted to comply.\r
-\r
-  @param ResetRequired  This BOOLEAN value will tell the caller\r
-                        if a reset is required based on the data\r
-                        that might have been changed. The\r
-                        ResetRequired parameter is primarily\r
-                        applicable for configuration\r
-                        applications, and is an optional\r
-                        parameter.\r
-\r
-  @retval EFI_SUCCESS   The function completed successfully\r
-  \r
-  @retval EFI_NOT_FOUND   The variable was not found.\r
-  \r
-  @retval EFI_BUFFER_TOO_SMALL  The DataSize is too small for\r
-                                the result. DataSize has been\r
-                                updated with the size needed to\r
-                                complete the request.\r
-  \r
-  @retval EFI_INVALID_PARAMETER   One of the parameters has an\r
-                                  invalid value.\r
+  This function is the primary interface to the internal forms-based browser. \r
+  The forms browser will display forms associated with the specified Handles. \r
+  The browser will select all forms in packages which have the specified Type \r
+  and (for EFI_HII_PACKAGE_TYPE_GUID) the specified PackageGuid.\r
+\r
+  @param This            A pointer to the EFI_FORM_BROWSER2_PROTOCOL instance\r
+\r
+  @param Handles         A pointer to an array of Handles. This value should correspond \r
+                         to the value of the HII form package that is required to be displayed. Type\r
+\r
+  @param HandleCount     The number of Handles specified in Handle.\r
+\r
+  @param FormSetGuid     This field points to the EFI_GUID which must match the Guid\r
+                         field in the EFI_IFR_FORM_SET op-code for the specified\r
+                         forms-based package. If FormSetGuid is NULL, then this\r
+                         function will display the first found forms package.\r
+\r
+  @param FormId          This field specifies which EFI_IFR_FORM to render as the first\r
+                         displayable page. If this field has a value of 0x0000, then\r
+                         the forms browser will render the specified forms in their encoded order.\r
+\r
+  @param ScreenDimensions Points to recommended form dimensions, including any non-content area, in \r
+                          characters.\r
+\r
+  @param ActionRequest   Points to the action recommended by the form.\r
+\r
+  @retval EFI_SUCCESS           The function completed successfully\r
   \r
-  @retval EFI_DEVICE_ERROR  The variable could not be saved due\r
-                            to a hardware failure.\r
+  @retval EFI_NOT_FOUND         The variable was not found.\r
   \r
+  @retval EFI_INVALID_PARAMETER One of the parameters has an\r
+                                invalid value.  \r
 **/\r
 typedef\r
 EFI_STATUS\r
@@ -134,15 +112,15 @@ EFI_STATUS
   browser. This routine called this service in the browser to\r
   retrieve or set certain uncommitted state information.\r
 \r
-  @param This   A pointer to the EFI_FORM_BROWSER2_PROTOCOL\r
-                instance.\r
+  @param This           A pointer to the EFI_FORM_BROWSER2_PROTOCOL instance.\r
 \r
   @param ResultsDataSize  A pointer to the size of the buffer\r
-                          associated with ResultsData. \r
+                          associated with ResultsData. On input, the size in\r
+                          bytes of ResultsData. On output, the size of data returned in ResultsData.\r
 \r
-  @param ResultsData  A string returned from an IFR browser or\r
-                      equivalent. The results string will have\r
-                      no routing information in them.\r
+  @param ResultsData    A string returned from an IFR browser or\r
+                        equivalent. The results string will have\r
+                        no routing information in them.\r
 \r
   @param RetrieveData   A BOOLEAN field which allows an agent to\r
                         retrieve (if RetrieveData = TRUE) data\r
@@ -157,9 +135,8 @@ EFI_STATUS
   @param VariableName   An optional field to indicate the target\r
                         human-readable variable name.\r
 \r
-\r
-  @retval EFI_SUCCESS   The results have been distributed or are\r
-                        awaiting distribution.\r
+  @retval EFI_SUCCESS           The results have been distributed or are\r
+                                awaiting distribution.\r
   \r
   @retval EFI_OUT_OF_RESOURCES  The ResultsDataSize specified\r
                                 was too small to contain the\r
@@ -178,16 +155,11 @@ EFI_STATUS
 );\r
 \r
 /**\r
-   \r
-  This protocol is the interface to call for drivers to leverage\r
-  the EFI configuration driver interface.\r
+  @par Protocol Description: \r
+  This interface will allow the caller to direct the configuration \r
+  driver to use either the HII database or use the passed-in packet of data.\r
 \r
-  @param SendForm   Provides direction to the configuration\r
-                    driver whether to use the HII database or to\r
-                    use a passed-in set of data. This functions\r
-                    also establishes a pointer to the calling\r
-                    driver's callback interface. See the\r
-                    SendForm() function description.\r
+  @param SendForm         Browse the specified configuration forms.\r
 \r
   @param BrowserCallback  Routine used to expose internal\r
                           configuration state of the browser.\r
@@ -195,9 +167,7 @@ EFI_STATUS
                           handler routines which were called by\r
                           the browser and in-turn need to get\r
                           additional information from the\r
-                          browser itself. See the\r
-                          BrowserCallback() function\r
-                          description.\r
+                          browser itself.\r
 \r
 **/\r
 struct _EFI_FORM_BROWSER2_PROTOCOL {\r
index afcc2b7d29bda04e1b9720e329a301a229cbf534..110691328e5d0e426eb24c5842e7f35a88436487 100644 (file)
@@ -3,7 +3,7 @@
 \r
   Abstraction of a very simple graphics device.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -182,6 +182,27 @@ typedef struct {
   UINTN                                  FrameBufferSize;\r
 } EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE;\r
 \r
+/**\r
+  @par Protocol Description:\r
+  Provides a basic abstraction to set video modes and copy pixels to and from \r
+  the graphics controller's frame buffer. The linear address of the hardware \r
+  frame buffer is also exposed so software can write directly to the video hardware.\r
+\r
+  @param QueryMode\r
+  Returns information for an available graphics mode that the graphics device \r
+  and the set of active video output devices supports.\r
+  \r
+  @param SetMode \r
+  Set the video device into the specified mode and clears the visible portions \r
+  of the output display to black.\r
+  \r
+  @param Blt\r
+  Software abstraction to draw on the video device's frame buffer.\r
+  \r
+  @param Mode\r
+  Pointer to EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE data.\r
+\r
+**/\r
 struct _EFI_GRAPHICS_OUTPUT_PROTOCOL {\r
   EFI_GRAPHICS_OUTPUT_PROTOCOL_QUERY_MODE  QueryMode;\r
   EFI_GRAPHICS_OUTPUT_PROTOCOL_SET_MODE    SetMode;\r
index 55692e8080a76f154b3af4f02f7d3b2577fac54e..7c95b1a4b4a535839c8788428c4bd1b14e8a32ce 100644 (file)
@@ -4,7 +4,7 @@
   instance of the GUIDed Section Extraction Protocol to extract\r
   the section stream contained therein.\r
 \r
-  Copyright (c) 2006 - 2007, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -62,8 +62,7 @@ typedef struct _EFI_GUIDED_SECTION_EXTRACTION_PROTOCOL EFI_GUIDED_SECTION_EXTRAC
   defined in RaiseTPL() in the UEFI 2.0 specification.\r
 \r
   \r
-  @param This   Indicates the\r
-                EFI_GUIDED_SECTION_EXTRACTION_PROTOCOL instance.\r
+  @param This         Indicates the EFI_GUIDED_SECTION_EXTRACTION_PROTOCOL instance.\r
   \r
   @param InputSection Buffer containing the input GUIDed section\r
                       to be processed. OutputBuffer OutputBuffer\r
@@ -102,10 +101,9 @@ typedef struct _EFI_GUIDED_SECTION_EXTRACTION_PROTOCOL EFI_GUIDED_SECTION_EXTRAC
                               the value of AuthenticationStatus\r
                               is undefined.\r
 \r
-\r
-  @retval EFI_SUCCESS The InputSection was successfully\r
-                      processed and the section contents were\r
-                      returned.\r
+  @retval EFI_SUCCESS           The InputSection was successfully\r
+                                processed and the section contents were\r
+                                returned.\r
 \r
   @retval EFI_OUT_OF_RESOURCES  The system has insufficient\r
                                 resources to process the\r
@@ -129,9 +127,15 @@ EFI_STATUS
 \r
 \r
 /**\r
-  \r
-  Takes the GUIDed section as input and produces the section\r
-  stream data. See the ExtractSection() function description.\r
+  @par Protocol Description:\r
+  Typically, protocol interface structures are identified by associating them with a GUID. Each\r
+  instance of a protocol with a given GUID must have the same interface structure. While all instances\r
+  of the GUIDed Section Extraction Protocol must have the same interface structure, they do not all\r
+  have the same GUID. The GUID that is associated with an instance of the GUIDed Section\r
+  Extraction Protocol is used to correlate it with the GUIDed section type that it is intended to process.\r
+\r
+  @param ExtractSection\r
+  Takes the GUIDed section as input and produces the section stream data.\r
 \r
 **/\r
 struct _EFI_GUIDED_SECTION_EXTRACTION_PROTOCOL {\r
index 0fe1a9c339e1108787f8838bb376e9f7e80a579c..3a30c62afd56aa00afb870ad3c71c92c88c4f113 100644 (file)
@@ -6,7 +6,7 @@
   so that a multiple drivers can use the underlying hashing services.\r
   The EFI Service Binding Protocol defines the generic Service Binding Protocol functions.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -130,6 +130,18 @@ EFI_STATUS
   )\r
 ;    \r
 \r
+/**\r
+  @par Protocol Description:\r
+  This protocol allows creating a hash of an arbitrary message digest \r
+  using one or more hash algorithms.\r
+\r
+  @param GetHashSize\r
+  Return the size of a specific type of resulting hash.\r
+  \r
+  @param Hash\r
+  Create a hash for the specified message.\r
+\r
+**/\r
 struct _EFI_HASH_PROTOCOL {\r
   EFI_HASH_GET_HASH_SIZE          GetHashSize;\r
   EFI_HASH_HASH                   Hash;\r
index 54cc489304d48b6ea9d3a0822eafc318d34b5b65..0af01900e11721632f9a207258c99dc9e2715e41 100644 (file)
@@ -1,10 +1,11 @@
 /** @file\r
 \r
-  The file provides services to forward results to PCOL-based\r
-  handler if EFI HII results processing protocol invokes this\r
-  protocol.\r
+  The EFI HII results processing protocol invokes this type of protocol \r
+  when it needs to forward results to a driver's configuration handler. \r
+  This protocol is published by drivers providing and requesting \r
+  configuration data from HII. It may only be invoked by HII.\r
   \r
-  Copyright (c) 2006 - 2007, Intel Corporation\r
+  Copyright (c) 2006 - 2008, Intel Corporation\r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -46,14 +47,14 @@ typedef UINTN EFI_BROWSER_ACTION;
   converted from Hex UNICODE to binary) is a reference to a\r
   string in the associated string pack.\r
 \r
-  @param This   Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL.\r
+  @param This       Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL.\r
 \r
-  @param Request  A null-terminated Unicode string in\r
-                  <ConfigRequest> format. Note that this\r
-                  includes the routing information as well as\r
-                  the configurable name / value pairs. It is\r
-                  invalid for this string to be in\r
-                  <MultiConfigRequest> format.\r
+  @param Request    A null-terminated Unicode string in\r
+                    <ConfigRequest> format. Note that this\r
+                    includes the routing information as well as\r
+                    the configurable name / value pairs. It is\r
+                    invalid for this string to be in\r
+                    <MultiConfigRequest> format.\r
 \r
   @param Progress   On return, points to a character in the\r
                     Request string. Points to the string's null\r
@@ -64,19 +65,19 @@ typedef UINTN EFI_BROWSER_ACTION;
                     name / value pair) if the request was not\r
                     successful\r
 \r
-  @param Results  A null-terminated Unicode string in\r
-                  <ConfigAltResp> format which has all values\r
-                  filled in for the names in the Request string.\r
-                  String to be allocated by the called function.\r
+  @param Results    A null-terminated Unicode string in\r
+                    <ConfigAltResp> format which has all values\r
+                    filled in for the names in the Request string.\r
+                    String to be allocated by the called function.\r
 \r
-  @retval EFI_SUCCESS   The Results string is filled with the\r
-                        values corresponding to all requested\r
-                        names.\r
+  @retval EFI_SUCCESS             The Results string is filled with the\r
+                                  values corresponding to all requested\r
+                                  names.\r
 \r
-  @retval EFI_OUT_OF_MEMORY   Not enough memory to store the\r
-                              parts of the results that must be\r
-                              stored awaiting possible future\r
-                              protocols.\r
+  @retval EFI_OUT_OF_MEMORY       Not enough memory to store the\r
+                                  parts of the results that must be\r
+                                  stored awaiting possible future\r
+                                  protocols.\r
 \r
   @retval EFI_INVALID_PARAMETER   For example, passing in a NULL\r
                                   for the Request parameter\r
@@ -85,13 +86,13 @@ typedef UINTN EFI_BROWSER_ACTION;
                                   Progress parameter would be\r
                                   set to NULL. \r
 \r
-  @retval EFI_NOT_FOUND   Routing data doesn't match any\r
-                          known driver. Progress set to the\r
-                          first character in the routing header.\r
-                          Note: There is no requirement that the\r
-                          driver validate the routing data. It\r
-                          must skip the <ConfigHdr> in order to\r
-                          process the names.\r
+  @retval EFI_NOT_FOUND           Routing data doesn't match any\r
+                                  known driver. Progress set to the\r
+                                  first character in the routing header.\r
+                                  Note: There is no requirement that the\r
+                                  driver validate the routing data. It\r
+                                  must skip the <ConfigHdr> in order to\r
+                                  process the names.\r
 \r
   @retval EFI_INVALID_PARAMETER   Illegal syntax. Progress set\r
                                   to most recent & before the\r
@@ -124,11 +125,12 @@ EFI_STATUS
   format, it may use the ConfigToBlock helper function (above) to\r
   simplify the job.\r
 \r
-  @param This   Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL.\r
+  @param This           Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL.\r
 \r
   @param Configuration  A null-terminated Unicode string in\r
-                        <ConfigString> format. Progress a\r
-                        pointer to a string filled in with the\r
+                        <ConfigString> format. \r
+  \r
+  @param Progress       A pointer to a string filled in with the\r
                         offset of the most recent '&' before the\r
                         first failing name / value pair (or the\r
                         beginn ing of the string if the failure\r
@@ -136,20 +138,20 @@ EFI_STATUS
                         the terminating NULL if all was\r
                         successful.\r
 \r
-  @retval EFI_SUCCESS   The results have been distributed or are\r
-                        awaiting distribution.\r
+  @retval EFI_SUCCESS             The results have been distributed or are\r
+                                  awaiting distribution.\r
   \r
-  @retval EFI_OUT_OF_MEMORY   Not enough memory to store the\r
-                              parts of the results that must be\r
-                              stored awaiting possible future\r
-                              protocols.\r
+  @retval EFI_OUT_OF_MEMORY       Not enough memory to store the\r
+                                  parts of the results that must be\r
+                                  stored awaiting possible future\r
+                                  protocols.\r
   \r
   @retval EFI_INVALID_PARAMETERS  Passing in a NULL for the\r
                                   Results parameter would result\r
                                   in this type of error.\r
   \r
-  @retval EFI_NOT_FOUND   Target for the specified routing data\r
-                          was not found\r
+  @retval EFI_NOT_FOUND           Target for the specified routing data\r
+                                  was not found\r
 \r
 **/\r
 typedef\r
@@ -166,36 +168,24 @@ EFI_STATUS
   This data consists of a unique key that is used to identify\r
   which data is either being passed back or being asked for.\r
 \r
-  @param This   Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL.\r
-\r
-  @param KeyValue   A unique value which is sent to the original\r
-                    exporting driver so that it can identify the\r
-                    type of data to expect. The format of the\r
-                    data tends to vary based on the opcode that\r
-                    generated the callback.\r
-\r
-  @param Data   A pointer to the data being sent to the original\r
-                exporting driver. The format of the data should\r
-                be the same as that of the question invoking the\r
-                callback and will be known to the recipient.\r
-\r
-  @retval EFI_SUCCESS   The firmware has successfully stored the\r
-                        variable and its data as defined by the\r
-                        Attributes.\r
-\r
-  @retval EFI_INVALID_PARAMETER   An invalid combination of\r
-                                  Attributes bits was supplied,\r
-                                  or the DataSize exceeds the\r
-                                  maximum allowed.\r
-\r
-  @retval EFI_OUT_OF_RESOURCES  Not enough storage is available\r
-                                to hold the variable and its\r
-                                data.\r
-\r
-  @retval EFI_DEVICE_ERROR  The variable could not be saved due\r
-                            to a hardware failure.\r
-\r
-\r
+  @param  This                   Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL.\r
+  @param  Action                 Specifies the type of action taken by the browser.\r
+  @param  QuestionId             A unique value which is sent to the original\r
+                                 exporting driver so that it can identify the type\r
+                                 of data to expect. The format of the data tends to \r
+                                 vary based on the opcode that enerated the callback.\r
+  @param  Type                   The type of value for the question.\r
+  @param  Value                  A pointer to the data being sent to the original\r
+                                 exporting driver.\r
+  @param  ActionRequest          On return, points to the action requested by the\r
+                                 callback function.\r
+\r
+  @retval EFI_SUCCESS            The callback successfully handled the action.\r
+  @retval EFI_OUT_OF_RESOURCES   Not enough storage is available to hold the\r
+                                 variable and its data.\r
+  @retval EFI_DEVICE_ERROR       The variable could not be saved.\r
+  @retval EFI_UNSUPPORTED        The specified Action is not supported by the\r
+                                 callback.\r
 **/\r
 typedef\r
 EFI_STATUS\r
@@ -209,7 +199,7 @@ EFI_STATUS
   )\r
   ;\r
 /**\r
-   \r
+  @par Protocol Description:   \r
   This protocol provides a callable interface between the HII and\r
   drivers. Only drivers which provide IFR data to HII are required\r
   to publish this protocol.\r
@@ -220,14 +210,13 @@ EFI_STATUS
                         analogous to the similarly named\r
                         function in the HII Routing Protocol.\r
   \r
-  @param RouteConfig  This function breaks apart the UNICODE\r
-                      results strings and returns configuration\r
-                      information as specified by the request.\r
+  @param RouteConfig    This function breaks apart the UNICODE\r
+                        results strings and returns configuration\r
+                        information as specified by the request.\r
   \r
-  @param Callback   This function is called from the\r
-                    configuration browser to communicate certain\r
-                    activities that were initiated by a user.\r
-\r
+  @param Callback       This function is called from the\r
+                        configuration browser to communicate certain\r
+                        activities that were initiated by a user.\r
 \r
 **/\r
 struct _EFI_HII_CONFIG_ACCESS_PROTOCOL {\r
index 34de9c57b53d316045a85f310fee529a16002743..535723936c0487036efb92fd1af96ce91d1ed133 100644 (file)
@@ -5,7 +5,7 @@
   information from configuration applications, routing the\r
   results to the appropriate drivers.\r
   \r
-  Copyright (c) 2006 - 2007, Intel Corporation\r
+  Copyright (c) 2006 - 2008, Intel Corporation\r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -54,11 +54,11 @@ typedef struct _EFI_HII_CONFIG_ROUTING_PROTOCOL EFI_HII_CONFIG_ROUTING_PROTOCOL;
   GUID=...&NAME=00480050&PATH=...&Fred=16&George=16&Ron=12&Neville=11&\r
   GUID=...&NAME=00480050&PATH=...&ALTCFG=0037&Fred=12&Neville=7\r
 \r
-  @param This   Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL\r
-                instance.\r
+  @param This       Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL\r
+                    instance.\r
 \r
-  @param Request  A null-terminated Unicode string in\r
-                  <MultiConfigRequest> format.\r
+  @param Request    A null-terminated Unicode string in\r
+                    <MultiConfigRequest> format.\r
 \r
   @param Progress   On return, points to a character in the\r
                     Request string. Points to the string's null\r
@@ -75,14 +75,14 @@ typedef struct _EFI_HII_CONFIG_ROUTING_PROTOCOL EFI_HII_CONFIG_ROUTING_PROTOCOL;
                     Request string. String to be allocated by\r
                     the called function.\r
 \r
-  @retval EFI_SUCCESS   The Results string is filled with the\r
-                        values corresponding to all requested\r
-                        names.\r
+  @retval EFI_SUCCESS             The Results string is filled with the\r
+                                  values corresponding to all requested\r
+                                  names.\r
 \r
-  @retval EFI_OUT_OF_MEMORY   Not enough memory to store the\r
-                              parts of the results that must be\r
-                              stored awaiting possible future\r
-                              protocols.\r
+  @retval EFI_OUT_OF_MEMORY       Not enough memory to store the\r
+                                  parts of the results that must be\r
+                                  stored awaiting possible future\r
+                                  protocols.\r
 \r
   @retval EFI_INVALID_PARAMETER   For example, passing in a NULL\r
                                   for the Request parameter\r
@@ -127,8 +127,7 @@ EFI_STATUS
   the configuration using the corresponding drivers??\r
   EFI_HII_CONFIG_ACCESS_PROTOCOL.ExtractConfig() interfaces below.\r
   \r
-  @param This   Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL\r
-                instance.\r
+  @param This     Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance.\r
   \r
   @param Results  A null-terminated Unicode string in\r
                   <MultiConfigAltResp> format which has all\r
@@ -136,14 +135,14 @@ EFI_STATUS
                   string. String to be allocated by this\r
                   function. De-allocation is up to the caller.\r
   \r
-  @retval EFI_SUCCESS   The Results string is filled with the\r
-                        values corresponding to all requested\r
-                        names.\r
+  @retval EFI_SUCCESS             The Results string is filled with the\r
+                                  values corresponding to all requested\r
+                                  names.\r
   \r
-  @retval EFI_OUT_OF_MEMORY   Not enough memory to store the\r
-                              parts of the results that must be\r
-                              stored awaiting possible future\r
-                              protocols.\r
+  @retval EFI_OUT_OF_MEMORY       Not enough memory to store the\r
+                                  parts of the results that must be\r
+                                  stored awaiting possible future\r
+                                  protocols.\r
   \r
   @retval EFI_INVALID_PARAMETERS  For example, passing in a NULL\r
                                   for the Results parameter\r
@@ -170,33 +169,32 @@ EFI_STATUS
   to the driver whose routing information is defined by the\r
   <ConfigHdr> in turn.\r
 \r
-  @param This   Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL\r
-                instance.\r
+  @param This           Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance.\r
 \r
   @param Configuration  A null-terminated Unicode string in\r
                         <MulltiConfigResp> format.\r
 \r
-  @param Progress   A pointer to a string filled in with the\r
-                    offset of the most recent '&' before the\r
-                    first failing name / value pair (or the\r
-                    beginning of the string if the failure is in\r
-                    the first name / value pair) or the\r
-                    terminating NULL if all was successful.\r
+  @param Progress       A pointer to a string filled in with the\r
+                        offset of the most recent '&' before the\r
+                        first failing name / value pair (or the\r
+                        beginning of the string if the failure is in\r
+                        the first name / value pair) or the\r
+                        terminating NULL if all was successful.\r
 \r
-  @retval EFI_SUCCESS   The results have been distributed or are\r
-                        awaiting distribution.\r
+  @retval EFI_SUCCESS             The results have been distributed or are\r
+                                  awaiting distribution.\r
   \r
-  @retval EFI_OUT_OF_MEMORY   Not enough memory to store the\r
-                              parts of the results that must be\r
-                              stored awaiting possible future\r
-                              protocols.\r
+  @retval EFI_OUT_OF_MEMORY       Not enough memory to store the\r
+                                  parts of the results that must be\r
+                                  stored awaiting possible future\r
+                                  protocols.\r
   \r
   @retval EFI_INVALID_PARAMETERS  Passing in a NULL for the\r
                                   Results parameter would result\r
                                   in this type of error.\r
   \r
-  @retval EFI_NOT_FOUND   Target for the specified routing data\r
-                          was not found\r
+  @retval EFI_NOT_FOUND           Target for the specified routing data\r
+                                  was not found\r
 \r
 **/\r
 typedef\r
@@ -220,20 +218,19 @@ EFI_STATUS
   spaces). The call fails if, for any (offset, width) pair in\r
   ConfigRequest, offset+value >= BlockSize.\r
 \r
-  @param This   Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL\r
-                instance.\r
+  @param This      Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance.\r
 \r
   @param ConfigRequest  A null-terminated Unicode string in\r
                         <ConfigRequest> format.\r
 \r
-  @param Block  Array of bytes defining the block's\r
-                configuration.\r
+  @param Block      Array of bytes defining the block's\r
+                    configuration.\r
 \r
   @param BlockSize  Length in bytes of Block.\r
 \r
-  @param Config   Filled-in configuration string. String\r
-                  allocated by the function. Returned only if\r
-                  call is successful.\r
+  @param Config     Filled-in configuration string. String\r
+                    allocated by the function. Returned only if\r
+                    call is successful.\r
 \r
   @param Progress   A pointer to a string filled in with the\r
                     offset of the most recent '&' before the\r
@@ -242,12 +239,13 @@ EFI_STATUS
                     the first name / value pair) or the\r
                     terminating NULL if all was successful.\r
 \r
-  @retval EFI_SUCCESS   The request succeeded. Progress points\r
-                        to the null terminator at the end of the\r
-                        ConfigRequest string.\r
-  @retval EFI_OUT_OF_MEMORY   Not enough memory to allocate\r
-                              Config. Progress points to the\r
-                              first character of ConfigRequest.\r
+  @retval EFI_SUCCESS             The request succeeded. Progress points\r
+                                  to the null terminator at the end of the\r
+                                  ConfigRequest string.\r
+\r
+  @retval EFI_OUT_OF_MEMORY       Not enough memory to allocate\r
+                                  Config. Progress points to the\r
+                                  first character of ConfigRequest.\r
 \r
   @retval EFI_INVALID_PARAMETERS  Passing in a NULL for the\r
                                   ConfigRequest or Block\r
@@ -256,11 +254,11 @@ EFI_STATUS
                                   to the first character of\r
                                   ConfigRequest.\r
 \r
-  @retval EFI_NOT_FOUND   Target for the specified routing data\r
-                          was not found. Progress points to the\r
-                          'G' in "GUID" of the errant routing\r
-                          data. EFI_DEVICE_ERROR Block not large\r
-                          enough. Progress undefined.\r
+  @retval EFI_NOT_FOUND           Target for the specified routing data\r
+                                  was not found. Progress points to the\r
+                                  'G' in "GUID" of the errant routing\r
+                                  data. EFI_DEVICE_ERROR Block not large\r
+                                  enough. Progress undefined.\r
 \r
   @retval EFI_INVALID_PARAMETER   Encountered non <BlockName>\r
                                   formatted string. Block is\r
@@ -283,7 +281,6 @@ EFI_STATUS
 \r
 \r
 /**\r
-   \r
   This function maps a configuration containing a series of\r
   <BlockConfig> formatted name value pairs in ConfigResp into a\r
   Block so it may be stored in a linear mapped storage such as a\r
@@ -297,13 +294,12 @@ EFI_STATUS
   The results are\r
   55 AA 02 07 04 05\r
 \r
-  @param This   Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL\r
-                instance.\r
+  @param This           Points to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance.\r
 \r
-  @param ConfigResp    null-terminated Unicode string in\r
-                      <ConfigResp> format.\r
+  @param ConfigResp     A null-terminated Unicode string in\r
+                        <ConfigResp> format.\r
 \r
-  @param CurrentBlock   A possibly null array of bytes\r
+  @param Block          A possibly null array of bytes\r
                         representing the current block. Only\r
                         bytes referenced in the ConfigResp\r
                         string in the block are modified. If\r
@@ -314,18 +310,31 @@ EFI_STATUS
                         parameter is updated and an appropriate\r
                         status (see below) is returned.\r
 \r
-  @param BlockSize  The length of the Block in units of UINT8.\r
-                    On input, this is the size of the Block. On\r
-                    output, if successful, contains the index of\r
-                    the last modified byte in the Block.\r
-\r
-  @param Progress   On return, points to an element of the\r
-                    ConfigResp string filled in with the offset\r
-                    of the most recent "&" before the first\r
-                    failing name / value pair (or the beginning\r
-                    of the string if the failure is in the first\r
-                    name / value pair) or the terminating NULL\r
-                    if all was successful.\r
+  @param BlockSize      The length of the Block in units of UINT8.\r
+                        On input, this is the size of the Block. On\r
+                        output, if successful, contains the index of\r
+                        the last modified byte in the Block.\r
+\r
+  @param Progress       On return, points to an element of the\r
+                        ConfigResp string filled in with the offset\r
+                        of the most recent "&" before the first\r
+                        failing name / value pair (or the beginning\r
+                        of the string if the failure is in the first\r
+                        name / value pair) or the terminating NULL\r
+                        if all was successful.\r
+\r
+  @retval EFI_SUCCESS            The request succeeded. Progress points to the null\r
+                                 terminator at the end of the ConfigResp string.\r
+  @retval EFI_OUT_OF_RESOURCES   Not enough memory to allocate Config.     Progress\r
+                                 points to the first character of ConfigResp.\r
+  @retval EFI_INVALID_PARAMETER  Passing in a NULL for the ConfigResp or\r
+                                 Block parameter would result in this type of\r
+                                 error. Progress points to the first character of\r
+                                         ConfigResp.\r
+  @retval EFI_INVALID_PARAMETER  Encountered non <BlockName> formatted name /\r
+                                 value pair. Block is left updated and\r
+                                 Progress points at the '&' preceding the first\r
+                                 non-<BlockName>.\r
 \r
 **/\r
 typedef\r
@@ -338,6 +347,38 @@ EFI_STATUS
   OUT       EFI_STRING                      *Progress\r
 );\r
 \r
+/**\r
+  This helper function is to be called by drivers to extract portions of \r
+  a larger configuration string.\r
+          \r
+  @param This              A pointer to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance.    \r
+  @param Configuration     A null-terminated Unicode string in <MultiConfigAltResp> format.\r
+  @param Guid              A pointer to the GUID value to search for in the \r
+                           routing portion of the ConfigResp string when retrieving \r
+                           the requested data. If Guid is NULL, then all GUID \r
+                           values will be searched for.\r
+  @param Name              A pointer to the NAME value to search for in the \r
+                           routing portion of the ConfigResp string when retrieving \r
+                           the requested data. If Name is NULL, then all Name \r
+                           values will be searched for.                         \r
+  @param DevicePath        A pointer to the PATH value to search for in the \r
+                           routing portion of the ConfigResp string when retrieving \r
+                           the requested data. If DevicePath is NULL, then all \r
+                           DevicePath values will be searched for.             \r
+  @param AltCfgId          A pointer to the ALTCFG value to search for in the \r
+                           routing portion of the ConfigResp string when retrieving \r
+                           the requested data.  If this parameter is NULL, \r
+                           then the current setting will be retrieved.\r
+  @param AltCfgResp        A pointer to a buffer which will be allocated by the \r
+                           function which contains the retrieved string as requested.  \r
+                           This buffer is only allocated if the call was successful. \r
+  \r
+  @retval EFI_SUCCESS             The request succeeded. The requested data was extracted \r
+                                  and placed in the newly allocated AltCfgResp buffer.\r
+  @retval EFI_OUT_OF_RESOURCES    Not enough memory to allocate AltCfgResp.    \r
+  @retval EFI_INVALID_PARAMETER   Any parameter is invalid.\r
+  @retval EFI_NOT_FOUND           Target for the specified routing data was not found.\r
+**/\r
 typedef\r
 EFI_STATUS \r
 (EFIAPI * EFI_HII_GET_ALT_CFG)(\r
@@ -349,51 +390,38 @@ EFI_STATUS
   IN  CONST UINT16                             *AltCfgId,\r
   OUT EFI_STRING                               *AltCfgResp \r
   )\r
-/*++\r
-\r
-  Routine Description:\r
-    This helper function is to be called by drivers to extract portions of \r
-    a larger configuration string.\r
-    \r
-  Arguments:          \r
-    This                   - A pointer to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance.    \r
-    Configuration          - A null-terminated Unicode string in <MultiConfigAltResp> format.\r
-    Guid                   - A pointer to the GUID value to search for in the \r
-                             routing portion of the ConfigResp string when retrieving \r
-                             the requested data. If Guid is NULL, then all GUID \r
-                             values will be searched for.\r
-    Name                   - A pointer to the NAME value to search for in the \r
-                             routing portion of the ConfigResp string when retrieving \r
-                             the requested data. If Name is NULL, then all Name \r
-                             values will be searched for.                         \r
-    DevicePath             - A pointer to the PATH value to search for in the \r
-                             routing portion of the ConfigResp string when retrieving \r
-                             the requested data. If DevicePath is NULL, then all \r
-                             DevicePath values will be searched for.             \r
-    AltCfgId               - A pointer to the ALTCFG value to search for in the \r
-                             routing portion of the ConfigResp string when retrieving \r
-                             the requested data.  If this parameter is NULL, \r
-                             then the current setting will be retrieved.\r
-    AltCfgResp             - A pointer to a buffer which will be allocated by the \r
-                             function which contains the retrieved string as requested.  \r
-                             This buffer is only allocated if the call was successful. \r
-    \r
-  Returns:              \r
-    EFI_SUCCESS            - The request succeeded. The requested data was extracted \r
-                             and placed in the newly allocated AltCfgResp buffer.\r
-    EFI_OUT_OF_RESOURCES   - Not enough memory to allocate AltCfgResp.    \r
-    EFI_INVALID_PARAMETER  - Any parameter is invalid.\r
-    EFI_NOT_FOUND          - Target for the specified routing data was not found.\r
-                             \r
---*/        \r
 ;\r
 \r
-\r
 /**\r
-   \r
+  @par Protocol Description:   \r
   This protocol defines the configuration routing interfaces\r
   between external applications and the HII. There may only be one\r
   instance of this protocol in the system.\r
+  \r
+  @param ExtractConfig\r
+  This function allows a caller to extract the current configuration for \r
+  one or more named elements from one or more drivers.\r
+\r
+  @param ExportConfig\r
+  This function allows the caller to request the current configuration for \r
+  the entirety of the current HII database and returns the data \r
+  in a null-terminated Unicode string.\r
+\r
+  @param RouteConfig\r
+  This function processes the results of processing forms and routes it \r
+  to the appropriate handlers or storage.\r
+\r
+  @param BlockToConfig\r
+  This helper function is to be called by drivers to map configuration data \r
+  stored in byte array ("block") formats such as UEFI Variables into current \r
+  configuration strings.\r
+\r
+  @param ConfigToBlock\r
+  This helper function is to be called by drivers to map configuration strings \r
+  to configurations stored in byte array ("block") formats such as UEFI Variables.\r
+\r
+  @param GetAltConfig\r
+  This helper function is to be called by drivers to extract portions of a larger configuration string.\r
 \r
 **/\r
 struct _EFI_HII_CONFIG_ROUTING_PROTOCOL {\r
index fe54778236c46e18f4f09eff471015b65f36fd6b..210dd87e973f1ff14ea189059c62e8c8b7870fb5 100644 (file)
@@ -47,9 +47,10 @@ typedef UINTN   EFI_HII_DATABASE_NOTIFY_TYPE;
                       field of EFI_HII_PACKAGE_GUID_HEADER.\r
                       Otherwise, it must be NULL.\r
 \r
-  @param Package  Points to the package referred to by the\r
-                  notification Handle The handle of the package\r
-                  list which contains the specified package.\r
+  @param Package      Points to the package referred to by the notification. \r
+  \r
+  @param Handle       The handle of the package\r
+                      list which contains the specified package.\r
 \r
   @param NotifyType   The type of change concerning the\r
                       database. See\r
@@ -79,25 +80,22 @@ EFI_STATUS
   corresponding call to\r
   EFI_HII_DATABASE_PROTOCOL.RemovePackageList().\r
 \r
-  @param This   A pointer to the EFI_HII_DATABASE_PROTOCOL\r
-                instance.\r
+  @param This           A pointer to the EFI_HII_DATABASE_PROTOCOL instance.\r
 \r
-  @param PackageList  A pointer to an\r
-                      EFI_HII_PACKAGE_LIST_HEADER structure.\r
+  @param PackageList    A pointer to an EFI_HII_PACKAGE_LIST_HEADER structure.\r
 \r
-  @param DriverHandle   Associate the package list with this EFI\r
-                        handle Handle A pointer to the\r
-                        EFI_HII_HANDLE  instance.\r
+  @param DriverHandle   Associate the package list with this EFI handle.\r
+  \r
+  @param Handle         A pointer to the EFI_HII_HANDLE instance.\r
 \r
-  @retval EFI_SUCCESS   The package list associated with the\r
-                        Handle was added to the HII database.\r
+  @retval EFI_SUCCESS           The package list associated with the\r
+                                Handle was added to the HII database.\r
 \r
   @retval EFI_OUT_OF_RESOURCES  Unable to allocate necessary\r
                                 resources for the new database\r
                                 contents.\r
 \r
-  @retval EFI_INVALID_PARAMETER   PackageList is NULL or Handle\r
-                                  is NULL.\r
+  @retval EFI_INVALID_PARAMETER PackageList is NULL or Handle is NULL.\r
 \r
 **/\r
 typedef\r
@@ -119,14 +117,13 @@ EFI_STATUS
   call to EFI_HII_DATABASE_PROTOCOL.NewPackageList(), there should\r
   be a corresponding call to RemovePackageList.\r
 \r
-  @param This   A pointer to the EFI_HII_DATABASE_PROTOCOL\r
-                instance.\r
+  @param This             A pointer to the EFI_HII_DATABASE_PROTOCOL instance.\r
   \r
-  @param Handle   The handle that was registered to the data\r
-                  that is requested for removal.\r
+  @param Handle           The handle that was registered to the data\r
+                          that is requested for removal.\r
   \r
-  @retval EFI_SUCCESS   The data associated with the Handle was\r
-                        removed from the HII database.\r
+  @retval EFI_SUCCESS     The data associated with the Handle was\r
+                          removed from the HII database.\r
   @retval EFI_NOT_FOUND   The specified Handle is not in database.\r
 \r
 **/\r
@@ -161,20 +158,18 @@ EFI_STATUS
   - Call any functions registered with the notification type\r
   ADD_PACK.\r
 \r
-  @param This   A pointer to the EFI_HII_DATABASE_PROTOCOL\r
-                instance.\r
+  @param This         A pointer to the EFI_HII_DATABASE_PROTOCOL instance.\r
   \r
-  @param Handle   The handle that was registered to the data\r
-                  that is requested for removal.\r
+  @param Handle       The handle that was registered to the data\r
+                      that is requested for removal.\r
   \r
   @param PackageList  A pointer to an EFI_HII_PACKAGE_LIST\r
                       package.\r
   \r
-  @retval EFI_SUCCESS   The HII database was successfully\r
-                        updated.\r
+  @retval EFI_SUCCESS            The HII database was successfully updated.\r
   \r
-  @retval EFI_OUT_OF_RESOURCES  Unable to allocate enough memory\r
-                                for the updated database.\r
+  @retval EFI_OUT_OF_RESOURCES   Unable to allocate enough memory\r
+                                 for the updated database.\r
   \r
   @retval EFI_INVALID_PARAMETER  PackageList was NULL.\r
   @retval EFI_NOT_FOUND          The specified Handle is not in database.\r
@@ -196,45 +191,39 @@ EFI_STATUS
   pseudo-type EFI_HII_PACKAGE_TYPE_ALL will cause all package   \r
   handles to be listed.\r
   \r
-  @param This   A pointer to the EFI_HII_DATABASE_PROTOCOL\r
-                instance.\r
+  @param This                 A pointer to the EFI_HII_DATABASE_PROTOCOL instance.\r
   \r
-  @param PackageType  Specifies the package type of the packages\r
-                      to list or EFI_HII_PACKAGE_TYPE_ALL for\r
-                      all packages to be listed.\r
+  @param PackageType          Specifies the package type of the packages\r
+                              to list or EFI_HII_PACKAGE_TYPE_ALL for\r
+                              all packages to be listed.\r
   \r
-  @param PackageGuid  If PackageType is\r
-                      EFI_HII_PACKAGE_TYPE_GUID, then this is\r
-                      the pointer to the GUID which must match\r
-                      the Guid field of\r
-                      EFI_HII_PACKAGE_GUID_HEADER. Otherwise, it\r
-                      must be NULL.\r
+  @param PackageGuid          If PackageType is\r
+                              EFI_HII_PACKAGE_TYPE_GUID, then this is\r
+                              the pointer to the GUID which must match\r
+                              the Guid field of\r
+                              EFI_HII_PACKAGE_GUID_HEADER. Otherwise, it\r
+                              must be NULL.\r
   \r
   @param HandleBufferLength   On input, a pointer to the length\r
                               of the handle buffer. On output,\r
                               the length of the handle buffer\r
-                              that is required for the handles\r
-                              found.\r
-\r
-  @param Handle   An array of EFI_HII_HANDLE  instances returned.\r
-\r
+                              that is required for the handles found.\r
 \r
-  @retval EFI_SUCCESS The matching handles are outputed successfully.\r
-                           HandleBufferLength is updated with the actual length.\r
+  @param Handle               An array of EFI_HII_HANDLE  instances returned.\r
 \r
-  @retval EFI_BUFFER_TOO_SMALL The HandleBufferLength parameter\r
+  @retval EFI_SUCCESS           The matching handles are outputed successfully.\r
+                                HandleBufferLength is updated with the actual length.\r
+  @retval EFI_BUFFER_TOO_SMALL  The HandleBufferLength parameter\r
                                 indicates that Handle is too\r
                                 small to support the number of\r
                                 handles. HandleBufferLength is\r
                                 updated with a value that will\r
                                 enable the data to fit.\r
-  @retval EFI_NOT_FOUND No matching handle could not be found in database.\r
-  @retval EFI_INVALID_PARAMETER  Handle or HandleBufferLength was NULL.\r
-  @retval EFI_INVALID_PARAMETER  PackageType is not a EFI_HII_PACKAGE_TYPE_GUID but\r
-                          PackageGuid is not NULL, PackageType is a EFI_HII_\r
-                           PACKAGE_TYPE_GUID but PackageGuid is NULL.\r
-\r
-\r
+  @retval EFI_NOT_FOUND         No matching handle could not be found in database.\r
+  @retval EFI_INVALID_PARAMETER Handle or HandleBufferLength was NULL.\r
+  @retval EFI_INVALID_PARAMETER PackageType is not a EFI_HII_PACKAGE_TYPE_GUID but\r
+                                PackageGuid is not NULL, PackageType is a EFI_HII_\r
+                                PACKAGE_TYPE_GUID but PackageGuid is NULL.\r
 **/\r
 typedef\r
 EFI_STATUS\r
@@ -243,14 +232,9 @@ EFI_STATUS
   IN        UINT8                     PackageType,\r
   IN CONST  EFI_GUID                  *PackageGuid,\r
   IN OUT    UINTN                     *HandleBufferLength,\r
-  OUT       EFI_HII_HANDLE             *Handle\r
+  OUT       EFI_HII_HANDLE            *Handle\r
 );\r
 \r
-\r
-\r
-\r
-\r
-\r
 /**\r
 \r
   This function will export one or all package lists in the\r
@@ -263,27 +247,26 @@ EFI_STATUS
   EFI_OUT_OF_RESOURCES will be returned and the actual package\r
   size will be returned in BufferSize.\r
 \r
-  @param This   A pointer to the EFI_HII_DATABASE_PROTOCOL\r
-                instance.\r
+  @param This         A pointer to the EFI_HII_DATABASE_PROTOCOL instance.\r
+\r
 \r
-  @param Handle   An EFI_HII_HANDLE  that corresponds to the\r
-                  desired package list in the HII database to\r
-                  export or NULL to indicate all package lists\r
-                  should be exported. \r
+  @param Handle       An EFI_HII_HANDLE  that corresponds to the\r
+                      desired package list in the HII database to\r
+                      export or NULL to indicate all package lists\r
+                      should be exported. \r
 \r
   @param BufferSize   On input, a pointer to the length of the\r
                       buffer. On output, the length of the\r
                       buffer that is required for the exported\r
                       data.\r
 \r
-  @param Buffer   A pointer to a buffer that will contain the\r
-                  results of the export function.\r
+  @param Buffer       A pointer to a buffer that will contain the\r
+                      results of the export function.\r
   \r
   \r
-  @retval EFI_SUCCESS   Package exported.\r
+  @retval EFI_SUCCESS           Package exported.\r
   \r
-  @retval EFI_OUT_OF_RESOURCES  BufferSize is too small to hold\r
-                                the package.\r
+  @retval EFI_OUT_OF_RESOURCES  BufferSize is too small to hold the package.\r
 \r
 **/\r
 typedef\r
@@ -309,44 +292,42 @@ EFI_STATUS
   exiting.\r
   \r
   \r
-  @param This   A pointer to the EFI_HII_DATABASE_PROTOCOL\r
-                instance.\r
+  @param This             A pointer to the EFI_HII_DATABASE_PROTOCOL instance.\r
 \r
-  @param PackageType  The package type. See\r
-                      EFI_HII_PACKAGE_TYPE_x in EFI_HII_PACKAGE_HEADER. \r
+  @param PackageType      The package type. See\r
+                          EFI_HII_PACKAGE_TYPE_x in EFI_HII_PACKAGE_HEADER. \r
 \r
-  @param PackageGuid  If PackageType is\r
-                      EFI_HII_PACKAGE_TYPE_GUID, then this is\r
-                      the pointer to the GUID which must match\r
-                      the Guid field of\r
-                      EFI_HII_PACKAGE_GUID_HEADER. Otherwise, it\r
-                      must be NULL.\r
+  @param PackageGuid      If PackageType is\r
+                          EFI_HII_PACKAGE_TYPE_GUID, then this is\r
+                          the pointer to the GUID which must match\r
+                          the Guid field of\r
+                          EFI_HII_PACKAGE_GUID_HEADER. Otherwise, it\r
+                          must be NULL.\r
 \r
   @param PackageNotifyFn  Points to the function to be called\r
                           when the event specified by\r
                           NotificationType occurs. See\r
                           EFI_HII_DATABASE_NOTIFY.\r
 \r
-  @param NotifyType   Describes the types of notification which\r
-                      this function will be receiving. See\r
-                      EFI_HII_DATABASE_NOTIFY_TYPE for more a\r
-                      list of types.\r
+  @param NotifyType       Describes the types of notification which\r
+                          this function will be receiving. See\r
+                          EFI_HII_DATABASE_NOTIFY_TYPE for more a\r
+                          list of types.\r
 \r
-  @param NotifyHandle   Points to the unique handle assigned to\r
-                        the registered notification. Can be used\r
-                        in\r
-                        EFI_HII_DATABASE_PROTOCOL.UnregisterPack\r
-                        to stop notifications.\r
+  @param NotifyHandle     Points to the unique handle assigned to\r
+                          the registered notification. Can be used\r
+                          in EFI_HII_DATABASE_PROTOCOL.UnregisterPack\r
+                          to stop notifications.\r
 \r
 \r
-  @retval EFI_SUCCESS   Notification registered successfully.\r
+  @retval EFI_SUCCESS           Notification registered successfully.\r
 \r
   @retval EFI_OUT_OF_RESOURCES  Unable to allocate necessary\r
                                 data structures.\r
 \r
-  @retval EFI_INVALID_PARAMETER   PackageGuid is not NULL when\r
-                                  PackageType is not\r
-                                  EFI_HII_PACKAGE_TYPE_GUID.\r
+  @retval EFI_INVALID_PARAMETER PackageGuid is not NULL when\r
+                                PackageType is not\r
+                                EFI_HII_PACKAGE_TYPE_GUID.\r
 \r
 **/\r
 typedef\r
@@ -365,17 +346,15 @@ EFI_STATUS
    \r
   Removes the specified HII database package-related notification.\r
   \r
-  @param This   A pointer to the EFI_HII_DATABASE_PROTOCOL\r
-                instance.\r
-  \r
+  @param This                 A pointer to the EFI_HII_DATABASE_PROTOCOL instance.\r
+\r
   @param NotificationHandle   The handle of the notification\r
                               function being unregistered.\r
   \r
-  @retval EFI_SUCCESS   Unregister the notification\r
-                        Successsfully\r
+  @retval EFI_SUCCESS   Unregister the notification Successsfully\r
   \r
   @retval EFI_NOT_FOUND The incoming notification handle does not exist \r
-                         in current hii database.\r
+                        in current hii database.\r
   \r
 **/\r
 typedef\r
@@ -391,17 +370,18 @@ EFI_STATUS
   This routine retrieves an array of GUID values for each keyboard\r
   layout that was previously registered in the system.\r
 \r
-  @param This   A pointer to the EFI_HII_PROTOCOL instance.\r
+  @param This                 A pointer to the EFI_HII_PROTOCOL instance.\r
 \r
   @param KeyGuidBufferLength  On input, a pointer to the length\r
                               of the keyboard GUID buffer. On\r
                               output, the length of the handle\r
                               buffer that is required for the\r
-                              handles found. KeyGuidBuffer An\r
-                              array of keyboard layout GUID\r
+                              handles found. \r
+  \r
+  @param KeyGuidBuffer        An array of keyboard layout GUID\r
                               instances returned.\r
 \r
-  @retval EFI_SUCCESS   KeyGuidBuffer was updated successfully.\r
+  @retval EFI_SUCCESS           KeyGuidBuffer was updated successfully.\r
   \r
   @retval EFI_BUFFER_TOO_SMALL  The KeyGuidBufferLength\r
                                 parameter indicates that\r
@@ -428,20 +408,23 @@ EFI_STATUS
   character(s) that are associated with a particular set of key\r
   strokes.\r
 \r
-  @param This   A pointer to the EFI_HII_PROTOCOL instance.\r
+  @param This                   A pointer to the EFI_HII_PROTOCOL instance.\r
   \r
-  @param KeyGuid  A pointer to the unique ID associated with a\r
-                  given keyboard layout. If KeyGuid is NULL then\r
-                  the current layout will be retrieved.\r
+  @param KeyGuid                A pointer to the unique ID associated with a\r
+                                given keyboard layout. If KeyGuid is NULL then\r
+                                the current layout will be retrieved.\r
+\r
+  @param KeyboardLayoutLength   On input, a pointer to the length of the\r
+                                KeyboardLayout buffer.  On output, the length of\r
+                                the data placed into KeyboardLayout.\r
   \r
-  @param KeyboardLayout A pointer to a buffer containing the\r
-                        retrieved keyboard layout. below.\r
+  @param KeyboardLayout         A pointer to a buffer containing the\r
+                                retrieved keyboard layout.\r
   \r
   @retval EFI_SUCCESS   The keyboard layout was retrieved\r
                         successfully.\r
   \r
-  @retval EFI_NOT_FOUND   The requested keyboard layout was not\r
-                          found.\r
+  @retval EFI_NOT_FOUND The requested keyboard layout was not found.\r
 \r
 **/\r
 typedef\r
@@ -462,18 +445,15 @@ EFI_STATUS
   current keyboard layout being changed can be notified of this\r
   change.\r
 \r
-  @param This   A pointer to the EFI_HII_DATABASE_PROTOCOL\r
-                instance.\r
+  @param This      A pointer to the EFI_HII_PROTOCOL instance.\r
 \r
-  @param KeyGuid  A pointer to the unique ID associated with a\r
-                  given keyboard layout.\r
+  @param KeyGuid   A pointer to the unique ID associated with a\r
+                   given keyboard layout.\r
 \r
+  @retval EFI_SUCCESS    The current keyboard layout was successfully set.\r
 \r
-  @retval EFI_SUCCESS   The current keyboard layout was\r
-                        successfully set.\r
-  \r
-  @retval EFI_NOT_FOUND   The referenced keyboard layout was not\r
-                          found, so action was taken.\r
+  @retval EFI_NOT_FOUND  The referenced keyboard layout was not\r
+                         found, so action was taken.\r
 \r
 **/\r
 typedef\r
@@ -487,22 +467,19 @@ EFI_STATUS
    \r
   Return the EFI handle associated with a package list.\r
   \r
-  @param This   A pointer to the EFI_HII_DATABASE_PROTOCOL\r
-                instance.\r
+  @param This               A pointer to the EFI_HII_PROTOCOL instance.\r
   \r
   @param PackageListHandle  An EFI_HII_HANDLE  that corresponds\r
                             to the desired package list in the\r
                             HIIdatabase.\r
   \r
-  @param DriverHandle   On return, contains the EFI_HANDLE which\r
-                        was registered with the package list in\r
-                        NewPackageList().\r
+  @param DriverHandle       On return, contains the EFI_HANDLE which\r
+                            was registered with the package list in\r
+                            NewPackageList().\r
   \r
-  @retval EFI_SUCCESS   The DriverHandle was returned\r
-                        successfully.\r
+  @retval EFI_SUCCESS            The DriverHandle was returned successfully.\r
   \r
-  @retval EFI_INVALID_PARAMETER   The PackageListHandle was not\r
-                                  valid.\r
+  @retval EFI_INVALID_PARAMETER  The PackageListHandle was not valid.\r
 \r
 **/\r
 typedef\r
@@ -514,9 +491,10 @@ EFI_STATUS
 );\r
 \r
 /**\r
-   \r
-  @param NewPackageList Add a new package list to the HII\r
-                        database.\r
+  @par Protocol Description:\r
+  Database manager for HII-related data structures.\r
+\r
+  @param NewPackageList     Add a new package list to the HII database.\r
 \r
   @param RemovePackageList  Remove a package list from the HII\r
                             database.\r
@@ -530,15 +508,17 @@ EFI_STATUS
   @param ExportPackageLists Export package lists from the HII\r
                             database.\r
 \r
-  @param RegisterPackageNotify  Register notification when\r
-                                packages of a certain type are\r
-                                installed.\r
+  @param RegisterPackageNotify  \r
+                            Register notification when\r
+                            packages of a certain type are\r
+                            installed.\r
 \r
-  @param UnregisterPackageNotify  Unregister notification of\r
-                                  packages.\r
+  @param UnregisterPackageNotify \r
+                            Unregister notification of packages.\r
 \r
-  @param FindKeyboardLayouts  Retrieves a list of the keyboard\r
-                              layouts in the system.\r
+  @param FindKeyboardLayouts  \r
+                            Retrieves a list of the keyboard\r
+                            layouts in the system.\r
 \r
   @param GetKeyboardLayout  Allows a program to extract the\r
                             current keyboard layout. See the\r
index de2097e744fe775df8b68920d0065cba1370a6a4..f2da3068fb90b41d6be72cf6cc7904bb041647a2 100644 (file)
@@ -42,18 +42,17 @@ typedef UINT32  EFI_HII_OUT_FLAGS;
 \r
   Definition of EFI_HII_ROW_INFO.\r
 \r
-  @param StartIndex The index of the first character in the\r
-                    string which is displayed on the line.\r
+  @param StartIndex     The index of the first character in the\r
+                        string which is displayed on the line.\r
 \r
-  @param EndIndex The index of the last character in the string\r
-                  which is displayed on the line. If this is the\r
-                  same as StartIndex, then no characters are\r
-                  displayed.\r
+  @param EndIndex       The index of the last character in the string\r
+                        which is displayed on the line. If this is the\r
+                        same as StartIndex, then no characters are\r
+                        displayed.\r
 \r
-  @param LineHeight The height of the line, in pixels.\r
+  @param LineHeight     The height of the line, in pixels.\r
 \r
-  @param LineWidth  The width of the text on the line, in\r
-                    pixels.\r
+  @param LineWidth      The width of the text on the line, in pixels.\r
 \r
   @param BaselineOffset The number of pixels above the bottom of\r
                         the row of the font baseline or 0 if\r
@@ -129,20 +128,21 @@ typedef struct {
   attempt to match with any font style. This flag cannot be used\r
   with EFI_FONT_INFO_SYS_STYLE or EFI_FONT_INFO_RESTYLE.\r
 \r
-  @param FontInfo Points to the font information or NULL if the\r
-                  string should use the default system font.\r
-  \r
+\r
   @param ForegroundColor  The color of the "on" pixels in the\r
                           glyph in the bitmap.\r
   \r
   @param BackgroundColor  The color of the "off" pixels in the\r
                           glyph in the bitmap.\r
   \r
-  @param FontInfoMask   The font information mask determines\r
-                        which portion of the font information\r
-                        will be used and what to do if the\r
-                        specific font is not available.\r
-  \r
+  @param FontInfoMask     The font information mask determines\r
+                          which portion of the font information\r
+                          will be used and what to do if the\r
+                          specific font is not available.\r
+\r
+  @param FontInfo         Points to the font information or NULL if the\r
+                          string should use the default system font.\r
+    \r
 **/\r
 typedef struct _EFI_FONT_DISPLAY_INFO {\r
   EFI_GRAPHICS_OUTPUT_BLT_PIXEL ForegroundColor;\r
@@ -172,11 +172,11 @@ typedef struct _EFI_FONT_DISPLAY_INFO {
   EFI_HII_OUT_FLAG_CLIP_CLEAN_X is specified) even though those\r
   pixels were not drawn. If EFI_HII_OUT_FLAG_CLIP_CLEAN_X is set,\r
   then it modifies the behavior of EFI_HII_OUT_FLAG_CLIP so that\r
-  if a character????s right-most on pixel cannot fit, then it will\r
+  if a character's right-most on pixel cannot fit, then it will\r
   not be drawn at all. This flag requires that\r
   EFI_HII_OUT_FLAG_CLIP be set. If EFI_HII_OUT_FLAG_CLIP_CLEAN_Y\r
   is set, then it modifies the behavior of EFI_HII_OUT_FLAG_CLIP\r
-  so that if a row????s bottom-most pixel cannot fit, then it will\r
+  so that if a row's bottom-most pixel cannot fit, then it will\r
   not be drawn at all. This flag requires that\r
   EFI_HII_OUT_FLAG_CLIP be set. If EFI_HII_OUT_FLAG_WRAP is set,\r
   then text will be wrapped at the right-most line-break\r
@@ -185,7 +185,7 @@ typedef struct _EFI_FONT_DISPLAY_INFO {
   the text will behave as if EFI_HII_OUT_FLAG_CLIP_CLEAN_X is set.\r
   This flag cannot be used with EFI_HII_OUT_FLAG_CLIP_CLEAN_X. If\r
   EFI_HII_OUT_FLAG_TRANSPARENT is set, then BackgroundColor is\r
-  ignored and all ????off???? pixels in the character????s drawn\r
+  ignored and all 'off' pixels in the character's drawn\r
   will use the pixel value from Blt. This flag cannot be used if\r
   Blt is NULL upon entry. If EFI_HII_IGNORE_IF_NO_GLYPH is set,\r
   then characters which have no glyphs are not drawn. Otherwise,\r
@@ -196,45 +196,44 @@ typedef struct _EFI_FONT_DISPLAY_INFO {
   directly to the output device specified by Screen. Otherwise the\r
   string will be rendered to the bitmap specified by Bitmap.\r
 \r
-  @param This A pointer to the EFI_HII_FONT_PROTOCOL instance.\r
+  @param This             A pointer to the EFI_HII_FONT_PROTOCOL instance.\r
 \r
-  @param Flags  Describes how the string is to be drawn.\r
+  @param Flags            Describes how the string is to be drawn.\r
 \r
-  @param String Points to the null-terminated string to be\r
-                displayed.\r
+  @param String           Points to the null-terminated string to be \r
 \r
-  @param StringInfo Points to the string output information,\r
-                    including the color and font. If NULL, then\r
-                    the string will be output in the default\r
-                    system font and color.\r
+  @param StringInfo       Points to the string output information,\r
+                          including the color and font. If NULL, then\r
+                          the string will be output in the default\r
+                          system font and color.\r
 \r
-  @param Blt  If this points to a non-NULL on entry, this points\r
-              to the image, which is Width pixels wide and\r
-              Height pixels high. The string will be drawn onto\r
-              this image and EFI_HII_OUT_FLAG_CLIP is implied.\r
-              If this points to a NULL on entry, then a buffer\r
-              will be allocated to hold the generated image and\r
-              the pointer updated on exit. It is the caller's\r
-              responsibility to free this buffer.\r
+  @param Blt              If this points to a non-NULL on entry, this points\r
+                          to the image, which is Width pixels wide and\r
+                          Height pixels high. The string will be drawn onto\r
+                          this image and EFI_HII_OUT_FLAG_CLIP is implied.\r
+                          If this points to a NULL on entry, then a buffer\r
+                          will be allocated to hold the generated image and\r
+                          the pointer updated on exit. It is the caller's\r
+                          responsibility to free this buffer.\r
 \r
-  @param BltX, BltY Specifies the offset from the left and top\r
-                    edge of the image of the first character\r
-                    cell in the image.\r
-\r
-  @param RowInfoArray If this is non-NULL on entry, then on\r
-                    exit, this will point to an allocated buffer\r
-                    containing row information and\r
-                    RowInfoArraySize will be updated to contain\r
-                    the number of elements. This array describes\r
-                    the characters which were at least partially\r
-                    drawn and the heights of the rows. It is the\r
-                    caller's responsibility to free this buffer.\r
+  @param BltX, BltY       Specifies the offset from the left and top\r
+                          edge of the image of the first character\r
+                          cell in the image.\r
+\r
+  @param RowInfoArray     If this is non-NULL on entry, then on\r
+                          exit, this will point to an allocated buffer\r
+                          containing row information and\r
+                          RowInfoArraySize will be updated to contain\r
+                          the number of elements. This array describes\r
+                          the characters which were at least partially\r
+                          drawn and the heights of the rows. It is the\r
+                          caller's responsibility to free this buffer.\r
 \r
   @param RowInfoArraySize If this is non-NULL on entry, then on\r
                           exit it contains the number of\r
                           elements in RowInfoArray.\r
 \r
-  @param ColumnInfoArray If this is non-NULL, then on return it\r
+  @param ColumnInfoArray  If this is non-NULL, then on return it\r
                           will be filled with the horizontal\r
                           offset for each character in the\r
                           string on the row where it is\r
@@ -248,14 +247,13 @@ typedef struct _EFI_FONT_DISPLAY_INFO {
                           normalized that some character cells\r
                           overlap.\r
 \r
-  @retval EFI_SUCCESS The string was successfully updated.\r
+  @retval EFI_SUCCESS           The string was successfully updated.\r
   \r
-  @retval EFI_OUT_OF_RESOURCES  Unable to allocate an output\r
-                                buffer for RowInfoArray or Blt.\r
+  @retval EFI_OUT_OF_RESOURCES  Unable to allocate an output buffer for RowInfoArray or Blt.\r
   \r
-  @retval EFI_INVALID_PARAMETER The String or Blt.\r
-  @retval EFI_INVALID_PARAMETER Flags were invalid combination..\r
+  @retval EFI_INVALID_PARAMETER The String or Blt was NULL.\r
 \r
+  @retval EFI_INVALID_PARAMETER Flags were invalid combination.\r
 **/\r
 typedef\r
 EFI_STATUS\r
@@ -292,11 +290,11 @@ EFI_STATUS
   specified by Height (unless EFI_HII_OUT_FLAG_CLIP_CLEAN_Y is\r
   specified) even though those pixels were not drawn. If\r
   EFI_HII_OUT_FLAG_CLIP_CLEAN_X is set, then it modifies the\r
-  behavior of EFI_HII_OUT_FLAG_CLIP so that if a character????s\r
+  behavior of EFI_HII_OUT_FLAG_CLIP so that if a character's\r
   right-most on pixel cannot fit, then it will not be drawn at\r
   all. This flag requires that EFI_HII_OUT_FLAG_CLIP be set. If\r
   EFI_HII_OUT_FLAG_CLIP_CLEAN_Y is set, then it modifies the\r
-  behavior of EFI_HII_OUT_FLAG_CLIP so that if a row????s bottom\r
+  behavior of EFI_HII_OUT_FLAG_CLIP so that if a row's bottom\r
   most pixel cannot fit, then it will not be drawn at all. This\r
   flag requires that EFI_HII_OUT_FLAG_CLIP be set. Draft for\r
   Review HII Protocols Version 2.1 November 3, 2006 1285 If\r
@@ -320,12 +318,13 @@ EFI_STATUS
   by Bitmap.\r
 \r
 \r
-  @param This A pointer to the EFI_HII_FONT_PROTOCOL instance.\r
+  @param This       A pointer to the EFI_HII_FONT_PROTOCOL instance.\r
 \r
-  @param Flags  Describes how the string is to be drawn.\r
+  @param Flags      Describes how the string is to be drawn.\r
 \r
-  @param PackageList  The package list in the HII database to\r
-                      search for the specified string.\r
+  @param PackageList  \r
+                    The package list in the HII database to\r
+                    search for the specified string.\r
 \r
   @param StringId   The string's id, which is unique within\r
                     PackageList.\r
@@ -339,28 +338,28 @@ EFI_STATUS
                     the string will be output in the default\r
                     system font and color.\r
 \r
-  @param Blt  If this points to a non-NULL on entry, this points\r
-              to the image, which is Width pixels wide and\r
-              Height pixels high. The string will be drawn onto\r
-              this image and EFI_HII_OUT_FLAG_CLIP is implied.\r
-              If this points to a NULL on entry, then a buffer\r
-              will be allocated to hold the generated image and\r
-              the pointer updated on exit. It is the caller's\r
-              responsibility to free this buffer.\r
+  @param Blt        If this points to a non-NULL on entry, this points\r
+                    to the image, which is Width pixels wide and\r
+                    Height pixels high. The string will be drawn onto\r
+                    this image and EFI_HII_OUT_FLAG_CLIP is implied.\r
+                    If this points to a NULL on entry, then a buffer\r
+                    will be allocated to hold the generated image and\r
+                    the pointer updated on exit. It is the caller's\r
+                    responsibility to free this buffer.\r
 \r
   @param BltX, BltY Specifies the offset from the left and top\r
                     edge of the output image of the first\r
                     character cell in the image.\r
 \r
-  @param RowInfoArray If this is non-NULL on entry, then on\r
-                      exit, this will point to an allocated\r
-                      buffer containing row information and\r
-                      RowInfoArraySize will be updated to\r
-                      contain the number of elements. This array\r
-                      describes the characters which were at\r
-                      least partially drawn and the heights of\r
-                      the rows. It is the caller's\r
-                      responsibility to free this buffer.\r
+  @param RowInfoArray     If this is non-NULL on entry, then on\r
+                          exit, this will point to an allocated\r
+                          buffer containing row information and\r
+                          RowInfoArraySize will be updated to\r
+                          contain the number of elements. This array\r
+                          describes the characters which were at\r
+                          least partially drawn and the heights of\r
+                          the rows. It is the caller's\r
+                          responsibility to free this buffer.\r
 \r
   @param RowInfoArraySize If this is non-NULL on entry, then on\r
                           exit it contains the number of\r
@@ -380,7 +379,7 @@ EFI_STATUS
                           some character cells overlap.\r
 \r
 \r
-  @retval EFI_SUCCESS The string was successfully updated.\r
+  @retval EFI_SUCCESS           The string was successfully updated.\r
 \r
   @retval EFI_OUT_OF_RESOURCES  Unable to allocate an output\r
                                 buffer for RowInfoArray or Blt.\r
@@ -388,9 +387,9 @@ EFI_STATUS
   @retval EFI_INVALID_PARAMETER The String or Blt or Height or\r
                                 Width was NULL.\r
   @retval EFI_INVALID_PARAMETER The Blt or PackageList was NULL.\r
-  @retval EFI_INVALID_PARAMETER  Flags were invalid combination.\r
-  @retval EFI_NOT_FOUND   The specified PackageList is not in the Database or the stringid is not \r
-                        in the specified PackageList. \r
+  @retval EFI_INVALID_PARAMETER Flags were invalid combination.\r
+  @retval EFI_NOT_FOUND         The specified PackageList is not in the Database \r
+                                or the stringid is not in the specified PackageList. \r
 \r
 **/\r
 typedef\r
@@ -415,34 +414,33 @@ EFI_STATUS
 \r
   Convert the glyph for a single character into a bitmap.\r
 \r
-  @param This A pointer to the EFI_HII_FONT_PROTOCOL instance.\r
+  @param This       A pointer to the EFI_HII_FONT_PROTOCOL instance.\r
 \r
-  @param Char Character to retrieve.\r
+  @param Char       Character to retrieve.\r
 \r
   @param StringInfo Points to the string font and color\r
                     information or NULL if the string should use\r
                     the default system font and color.\r
 \r
-  @param Blt  Thus must point to a NULL on entry. A buffer will\r
-              be allocated to hold the output and the pointer\r
-              updated on exit. It is the caller's responsibility\r
-              to free this buffer.\r
+  @param Blt        Thus must point to a NULL on entry. A buffer will\r
+                    be allocated to hold the output and the pointer\r
+                    updated on exit. It is the caller's responsibility\r
+                    to free this buffer.\r
 \r
-  @param Baseline Number of pixels from the bottom of the bitmap\r
-                  to the baseline.\r
+  @param Baseline   Number of pixels from the bottom of the bitmap\r
+                    to the baseline.\r
 \r
 \r
-  @retval EFI_SUCCESS Glyph bitmap created.\r
+  @retval EFI_SUCCESS             Glyph bitmap created.\r
 \r
-  @retval EFI_OUT_OF_RESOURCES  Unable to allocate the output\r
-                                buffer Blt.\r
+  @retval EFI_OUT_OF_RESOURCES    Unable to allocate the output buffer Blt.\r
 \r
   @retval EFI_WARN_UNKNOWN_GLYPH  The glyph was unknown and was\r
                                   replaced with the glyph for\r
                                   Unicode character 0xFFFD.\r
 \r
-  @retval EFI_INVALID_PARAMETER Blt is NULL or Width is NULL or\r
-                                Height is NULL\r
+  @retval EFI_INVALID_PARAMETER   Blt is NULL or Width is NULL or\r
+                                  Height is NULL\r
 \r
 \r
 **/\r
@@ -463,29 +461,29 @@ EFI_STATUS
   all of the characters in the string must exist in order for a\r
   candidate font to be returned.\r
 \r
-  @param This A pointer to the EFI_HII_FONT_PROTOCOL instance.\r
+  @param This           A pointer to the EFI_HII_FONT_PROTOCOL instance.\r
 \r
-  @param FontHandle On entry, points to the font handle returned\r
-                    by a previous call to GetFontInfo() or NULL\r
-                    to start with the first font. On return,\r
-                    points to the returned font handle or points\r
-                    to NULL if there are no more matching fonts.\r
+  @param FontHandle     On entry, points to the font handle returned\r
+                        by a previous call to GetFontInfo() or NULL\r
+                        to start with the first font. On return,\r
+                        points to the returned font handle or points\r
+                        to NULL if there are no more matching fonts.\r
 \r
-  @param StringInfoIn Upon entry, points to the font to return\r
-                      information about. If NULL, then the information about the system default \r
-                      font will be returned.\r
+  @param StringInfoIn   Upon entry, points to the font to return\r
+                        information about. If NULL, then the information about the system default \r
+                        font will be returned.\r
 \r
   @param StringInfoOut  Upon return, contains the matching\r
                         font's information. If NULL, then no\r
                         information is returned.\r
 \r
-  @param String Points to the string which will be tested to\r
-                determine if all characters are available. If\r
-                NULL, then any font is acceptable.\r
+  @param String         Points to the string which will be tested to\r
+                        determine if all characters are available. If\r
+                        NULL, then any font is acceptable.\r
   \r
-  @retval EFI_SUCCESS Matching font returned successfully.\r
+  @retval EFI_SUCCESS            Matching font returned successfully.\r
   \r
-  @retval EFI_NOT_FOUND No matching font was found.\r
+  @retval EFI_NOT_FOUND          No matching font was found.\r
   \r
   @retval EFI_INVALID_PARAMETER  StringInfoIn->FontInfoMask is an invalid combination.\r
 \r
@@ -503,19 +501,16 @@ EFI_STATUS
 );\r
 \r
 /**\r
+  @par Protocol Description:\r
+  The protocol provides the service to retrieve the font informations.\r
 \r
-  The protocol provides the service to retrieve the font\r
-  informations;\r
+  @param StringToImage    Render a string to a bitmap or to the display.\r
 \r
-  @param StringToImage  Render a string to a bitmap or to the\r
-                        display.\r
+  @param StringIdToImage  Render a string to a bitmap or to the display.\r
 \r
-  @param StringIdToImage  Render a string to a bitmap or to the\r
-                          display.\r
-  @param GetGlyph Return a specific glyph in a specific font.\r
+  @param GetGlyph         Return a specific glyph in a specific font.\r
 \r
-  @param GetFontInfo  Return font information for a specific\r
-                      font.\r
+  @param GetFontInfo      Return font information for a specific font.\r
 \r
 **/\r
 struct _EFI_HII_FONT_PROTOCOL {\r
index 96cfc24d79ba4a7964c87cad1b04f9f375c82c62..a9da9e66882ab76d894840f5131b29dc4421d27c 100644 (file)
@@ -58,14 +58,14 @@ typedef struct _EFI_IMAGE_INPUT {
   owned by PackageList, and returns a new image identifier\r
   (ImageId).\r
 \r
-  @param This   A pointer to the EFI_HII_IMAGE_PROTOCOL\r
-                instance. PackageList Handle of the package list\r
-                where this image will be added.\r
+  @param This        A pointer to the EFI_HII_IMAGE_PROTOCOL instance. \r
+  \r
+  @param PackageList Handle of the package list where this image will be added.\r
 \r
-  @param ImageId  On return, contains the new image id, which is\r
-                  unique within PackageList.\r
+  @param ImageId     On return, contains the new image id, which is\r
+                     unique within PackageList.\r
 \r
-  @param Image  Points to the image.\r
+  @param Image       Points to the image.\r
 \r
   @retval EFI_SUCCESS             The new image was added\r
                                   successfully\r
@@ -98,25 +98,24 @@ EFI_STATUS
   updated to the size of buffer actually required to hold the\r
   image.\r
 \r
-  @param This   A pointer to the EFI_HII_IMAGE_PROTOCOL\r
-                instance.\r
+  @param This         A pointer to the EFI_HII_IMAGE_PROTOCOL instance. \r
   \r
   @param PackageList  The package list in the HII database to\r
                       search for the specified image.\r
   \r
-  @param ImageId  The image's id, which is unique within\r
-                  PackageList.\r
+  @param ImageId      The image's id, which is unique within\r
+                      PackageList.\r
   \r
-  @param Image  Points to the new image.\r
+  @param Image        Points to the new image.\r
   \r
-  @retval EFI_SUCCESS   The image was returned successfully.\r
-                                     The specified PackageList is not in the database.\r
-  @retval EFI_NOT_FOUND The image specified by ImageId is not\r
-                        available.\r
+  @retval EFI_SUCCESS            The image was returned successfully.\r
+\r
+  @retval EFI_NOT_FOUND          The image specified by ImageId is not\r
+                                 available. Or The specified PackageList is not in the database.\r
   \r
-  @retval EFI_INVALID_PARAMETER The Image or Langugae was NULL.\r
+  @retval EFI_INVALID_PARAMETER  The Image or Langugae was NULL.\r
   @retval EFI_OUT_OF_RESOURCES   The bitmap could not be retrieved because there was not\r
-                         enough memory.\r
+                                 enough memory.\r
 \r
 \r
 **/\r
@@ -135,24 +134,20 @@ EFI_STATUS
   specified PackageListHandle to the image specified by Image.\r
 \r
 \r
-  @param This   A pointer to the EFI_HII_IMAGE_PROTOCOL\r
-                instance.\r
+  @param This         A pointer to the EFI_HII_IMAGE_PROTOCOL instance. \r
 \r
   @param PackageList  The package list containing the images.\r
 \r
-  @param ImageId  The image id, which is unique within\r
-                  PackageList.\r
+  @param ImageId      The image id, which is unique within PackageList.\r
 \r
-  @param Image  Points to the image.\r
+  @param Image        Points to the image.\r
 \r
-  @retval EFI_SUCCESS The image was successfully updated.\r
+  @retval EFI_SUCCESS           The image was successfully updated.\r
   \r
-  @retval EFI_NOT_FOUND   The image specified by ImageId is not\r
-                                        in the database.\r
-                                        The specified PackageList is not in the database. \r
+  @retval EFI_NOT_FOUND         The image specified by ImageId is not in the database.\r
+                                The specified PackageList is not in the database. \r
   \r
-  @retval EFI_INVALID_PARAMETER   The Image or Language was\r
-                                  NULL.\r
+  @retval EFI_INVALID_PARAMETER The Image or Language was NULL.\r
 \r
 **/\r
 typedef\r
@@ -211,7 +206,7 @@ typedef struct _EFI_IMAGE_OUTPUT {
   images can be clipped. If EFI_HII_DRAW_FLAG_CLIP is set, then\r
   all pixels drawn outside the bounding box specified by Width and\r
   Height are ignored. If EFI_HII_DRAW_FLAG_TRANSPARENT is set,\r
-  then all ????off???? pixels in the images drawn will use the\r
+  then all 'off' pixels in the images drawn will use the\r
   pixel value from Blt. This flag cannot be used if Blt is NULL\r
   upon entry. If EFI_HII_DIRECT_TO_SCREEN is set, then the image\r
   will be written directly to the output device specified by\r
@@ -219,29 +214,28 @@ typedef struct _EFI_IMAGE_OUTPUT {
   specified by Bitmap.\r
 \r
 \r
-  @param This   A pointer to the EFI_HII_IMAGE_PROTOCOL\r
-                instance.\r
+  @param This       A pointer to the EFI_HII_IMAGE_PROTOCOL instance. \r
\r
+  @param Flags      Describes how the image is to be drawn.\r
+                    EFI_HII_DRAW_FLAGS is defined in Related\r
+                    Definitions, below.\r
   \r
-  @param Flags  Describes how the image is to be drawn.\r
-                EFI_HII_DRAW_FLAGS is defined in Related\r
-                Definitions, below.\r
+  @param Image      Points to the image to be displayed. \r
   \r
-  @param Image  Points to the image to be displayed. \r
-  \r
-  @param Blt  If this points to a non-NULL on entry, this points\r
-              to the image, which is Width pixels wide and\r
-              Height pixels high. The image will be drawn onto\r
-              this image and EFI_HII_DRAW_FLAG_CLIP is implied.\r
-              If this points to a NULL on entry, then a buffer\r
-              will be allocated to hold the generated image and\r
-              the pointer updated on exit. It is the caller????s\r
-              responsibility to free this buffer.\r
+  @param Blt        If this points to a non-NULL on entry, this points\r
+                    to the image, which is Width pixels wide and\r
+                    Height pixels high. The image will be drawn onto\r
+                    this image and EFI_HII_DRAW_FLAG_CLIP is implied.\r
+                    If this points to a NULL on entry, then a buffer\r
+                    will be allocated to hold the generated image and\r
+                    the pointer updated on exit. It is the caller's\r
+                    responsibility to free this buffer.\r
 \r
-  @param BltX, BltY   Specifies the offset from the left and top\r
-                      edge of the image of the first pixel in\r
-                      the image.\r
+  @param BltX, BltY Specifies the offset from the left and top\r
+                    edge of the image of the first pixel in\r
+                    the image.\r
 \r
-  @retval EFI_SUCCESS   The image was successfully updated.\r
+  @retval EFI_SUCCESS           The image was successfully updated.\r
 \r
   @retval EFI_OUT_OF_RESOURCES  Unable to allocate an output\r
                                 buffer for RowInfoArray or Blt.\r
@@ -284,50 +278,49 @@ EFI_STATUS
   Height are ignored. The EFI_HII_DRAW_FLAG_TRANSPARENT flag\r
   determines whether the image will be drawn transparent or\r
   opaque. If EFI_HII_DRAW_FLAG_FORCE_TRANS is set, then the image\r
-  will be drawn so that all ????off???? pixels in the image will\r
+  will be drawn so that all 'off' pixels in the image will\r
   be drawn using the pixel value from Blt and all other pixels\r
   will be copied. If EFI_HII_DRAW_FLAG_FORCE_OPAQUE is set, then\r
-  the image????s pixels will be copied directly to the\r
+  the image's pixels will be copied directly to the\r
   destination. If EFI_HII_DRAW_FLAG_DEFAULT is set, then the image\r
   will be drawn transparently or opaque, depending on the\r
-  image????s transparency setting (see EFI_IMAGE_TRANSPARENT).\r
+  image's transparency setting (see EFI_IMAGE_TRANSPARENT).\r
   Images cannot be drawn transparently if Blt is NULL. If\r
   EFI_HII_DIRECT_TO_SCREEN is set, then the image will be written\r
   directly to the output device specified by Screen. Otherwise the\r
   image will be rendered to the bitmap specified by Bitmap.\r
 \r
-  @param This   A pointer to the EFI_HII_IMAGE_PROTOCOL\r
-                instance.\r
+  @param This         A pointer to the EFI_HII_IMAGE_PROTOCOL instance. \r
 \r
-  @param Flags  Describes how the image is to be drawn.\r
+  @param Flags        Describes how the image is to be drawn.\r
 \r
   @param PackageList  The package list in the HII database to\r
                       search for the specified image.\r
 \r
-  @param ImageId  The image's id, which is unique within\r
-                  PackageList.\r
+  @param ImageId      The image's id, which is unique within PackageList.\r
 \r
-  @param Blt  If this points to a non-NULL on entry, this points\r
-              to the image, which is Width pixels wide and\r
-              Height pixels high. The image will be drawn onto\r
-              this image and EFI_HII_DRAW_FLAG_CLIP is implied.\r
-              If this points to a NULL on entry, then a buffer\r
-              will be allocated to hold the generated image and\r
-              the pointer updated on exit. It is the caller's\r
-              responsibility to free this buffer.\r
+  @param Blt          If this points to a non-NULL on entry, this points\r
+                      to the image, which is Width pixels wide and\r
+                      Height pixels high. The image will be drawn onto\r
+                      this image and EFI_HII_DRAW_FLAG_CLIP is implied.\r
+                      If this points to a NULL on entry, then a buffer\r
+                      will be allocated to hold the generated image and\r
+                      the pointer updated on exit. It is the caller's\r
+                      responsibility to free this buffer.\r
 \r
   @param BltX, BltY   Specifies the offset from the left and top\r
                       edge of the output image of the first\r
                       pixel in the image.\r
 \r
-  @retval EFI_SUCCESS   The image was successfully updated.\r
+  @retval EFI_SUCCESS           The image was successfully updated.\r
   \r
   @retval EFI_OUT_OF_RESOURCES  Unable to allocate an output\r
                                 buffer for RowInfoArray or Blt.\r
   \r
-  @retval EFI_NOT_FOUND  The image specified by ImageId is not in the database. \r
-                                        The specified PackageList is not in the database.                            \r
-  @retval EFI_INVALID_PARAMETER  The Blt was NULL.    \r
+  @retval EFI_NOT_FOUND         The image specified by ImageId is not in the database. \r
+                                Or The specified PackageList is not in the database.                            \r
+  \r
+  @retval EFI_INVALID_PARAMETER The Blt was NULL.    \r
 \r
 **/\r
 typedef\r
@@ -344,19 +337,20 @@ IN        UINTN                   BltY
 \r
 \r
 /**\r
-  \r
-  services to access to images in the images database.\r
+  @par Protocol Description:  \r
+  Services to access to images in the images database.\r
 \r
-  @param NewImage   Add a new image.\r
+  @param NewImage    Add a new image.\r
 \r
-  @param GetImage   Retrieve an image and related font\r
-                    information.\r
+  @param GetImage    Retrieve an image and related font\r
+                     information.\r
 \r
-  @param SetImage   Change an image. EFI_INVALID_LANGUAGE The\r
-                    language specified by FirstLanguage is not\r
-                    present in the specified package list.\r
-                    EFI_INVALID_PARAMETER FirstLanguage is NULL\r
-                    or SecondLanguage is NULL.\r
+  @param SetImage    Change an image.\r
+  \r
+  @param DrawImage   Renders an image to a bitmap or to the display.\r
+  \r
+  @param DrawImageId Render an image to a bitmap or the screen containing \r
+                     the contents of the specified image.\r
 \r
 **/\r
 struct _EFI_HII_IMAGE_PROTOCOL {\r
index a7eab33020f6d672bea792cf8d906bfc8e00475a..4e48e75358bde4686d085821bd77fabaa4072f74 100644 (file)
 \r
 typedef struct _EFI_HII_STRING_PROTOCOL EFI_HII_STRING_PROTOCOL;\r
 \r
-\r
-\r
 /**\r
-  This function adds the string String to the group of strings\r
-  owned by PackageList, with the specified font information\r
-  StringFontInfo and returns a new string id.\r
-\r
-  @param This A pointer to the EFI_HII_STRING_PROTOCOL instance.\r
-\r
-  @param PackageList  Handle of the package list where this\r
-                      string will be added.\r
-\r
-  @param Language Points to the language for the new string.\r
-\r
-  @param String   Points to the new null-terminated string.\r
-\r
-  @param StringFontInfo Points to the new string's font\r
-                        information or NULL if the string should\r
-                        have the default system font, size and\r
-                        style. StringId On return, contains the\r
-                        new strings id, which is unique within\r
-                        PackageList.\r
-\r
-  @retval EFI_SUCCESS The new string was added successfully\r
-  \r
-  @retval EFI_OUT_OF_RESOURCES  Could not add the string.\r
-  \r
-  @retval EFI_INVALID_PARAMETER String is NULL or StringId is\r
-                                NULL or Language is NULL.\r
-\r
+  This function adds the string String to the group of strings owned by PackageList, with the\r
+  specified font information StringFontInfo and returns a new string id.\r
+\r
+  @param  This                   A pointer to the EFI_HII_STRING_PROTOCOL instance.\r
+  @param  PackageList            Handle of the package list where this string will\r
+                                 be added.\r
+  @param  StringId               On return, contains the new strings id, which is\r
+                                 unique within PackageList.\r
+  @param  Language               Points to the language for the new string.\r
+  @param  LanguageName           Points to the printable language name to associate\r
+                                 with the passed in  Language field.If LanguageName\r
+                                 is not NULL and the string package header's\r
+                                 LanguageName  associated with a given Language is\r
+                                 not zero, the LanguageName being passed  in will\r
+                                 be ignored.\r
+  @param  String                 Points to the new null-terminated string.\r
+  @param  StringFontInfo         Points to the new string's font information or\r
+                                 NULL if the string should have the default system\r
+                                 font, size and style.\r
+\r
+  @retval EFI_SUCCESS            The new string was added successfully.\r
+  @retval EFI_NOT_FOUND          The specified PackageList could not be found in\r
+                                 database.\r
+  @retval EFI_OUT_OF_RESOURCES   Could not add the string due to lack of resources.\r
+  @retval EFI_INVALID_PARAMETER  String is NULL or StringId is NULL or Language is NULL.\r
+  @retval EFI_INVALID_PARAMETER  The specified StringFontInfo does not exist in\r
+                                 current database.\r
 \r
 **/\r
 typedef\r
@@ -70,58 +68,35 @@ EFI_STATUS
 \r
 \r
 /**\r
+  This function retrieves the string specified by StringId which is associated\r
+  with the specified PackageList in the language Language and copies it into\r
+  the buffer specified by String.\r
+\r
+  @param  This                   A pointer to the EFI_HII_STRING_PROTOCOL instance.\r
+  @param  Language               Points to the language for the retrieved string.\r
+  @param  PackageList            The package list in the HII database to search for\r
+                                 the  specified string.\r
+  @param  StringId               The string's id, which is unique within\r
+                                 PackageList.\r
+  @param  String                 Points to the new null-terminated string.\r
+  @param  StringSize             On entry, points to the size of the buffer pointed\r
+                                 to by  String, in bytes. On return, points to the\r
+                                 length of the string, in bytes.\r
+  @param  StringFontInfo         If not NULL, points to the string's font\r
+                                 information.  It's caller's responsibility to free\r
+                                 this buffer.\r
+\r
+  @retval EFI_SUCCESS            The string was returned successfully.\r
+  @retval EFI_NOT_FOUND          The string specified by StringId is not available.\r
+  @retval EFI_NOT_FOUND          The string specified by StringId is available but\r
+                                 not in the specified language.\r
+                                 The specified PackageList is not in the database.\r
+  @retval EFI_BUFFER_TOO_SMALL   The buffer specified by StringSize is too small to\r
+                                 hold the string.\r
+  @retval EFI_INVALID_PARAMETER  The String or Language or StringSize was NULL.\r
+  @retval EFI_OUT_OF_RESOURCES   There were insufficient resources to complete the\r
+                                 request.\r
 \r
-  This function retrieves the string specified by StringId which\r
-  is associated with the specified PackageList in the language\r
-  Language and copies it into the buffer specified by String. If\r
-  the string specified by StringId is not present in the\r
-  specified PackageList, then EFI_NOT_FOUND is returned. If the\r
-  string specified by StringId is present, but not in the\r
-  specified language then EFI_INVALID_LANGUAGE is returned. If\r
-  the buffer specified by StringSize is too small to hold the\r
-  string, then EFI_BUFFER_TOO_SMALL will be returned. StringSize\r
-  will be updated to the size of buffer actually required to\r
-  hold the string.\r
-\r
-  @param This A pointer to the EFI_HII_STRING_PROTOCOL instance.\r
-  \r
-  @param PackageList  The package list in the HII database to\r
-                      search for the specified string.\r
-  \r
-  @param Language   Points to the language for the retrieved\r
-                    string.\r
-  \r
-  @param StringId   The string's id, which is unique within\r
-                    PackageList.\r
-  \r
-  @param String   Points to the new null-terminated string.\r
-  \r
-  @param StringSize On entry, points to the size of the buffer\r
-                    pointed to by String, in bytes. On return,\r
-                    points to the length of the string, in\r
-                    bytes.\r
-  \r
-  @param StringFontInfo  Points to a buffer that will be callee allocated and will \r
-                      have the string's font information into this buffer.  \r
-                      The caller is responsible for freeing this buffer.  \r
-                      If the parameter is NULL a buffer will not be allocated \r
-                      and the string font information will not be returned.\r
-  \r
-  @retval EFI_SUCCESS The string was returned successfully.\r
-  \r
-  @retval EFI_NOT_FOUND The string specified by StringId is not\r
-                        available. The specified PackageList is not in the database.\r
-  \r
-  @retval EFI_INVALID_LANGUAGE  The string specified by StringId\r
-                                is available but not in the\r
-                                specified language.\r
-  \r
-  @retval EFI_BUFFER_TOO_SMALL  The buffer specified by\r
-                                StringLength is too small to\r
-                                hold the string.\r
-  \r
-  @retval EFI_INVALID_PARAMETER The String or Language was NULL.\r
-  \r
 **/\r
 typedef\r
 EFI_STATUS\r
@@ -136,36 +111,26 @@ EFI_STATUS
 );\r
 \r
 /**\r
-  This function updates the string specified by StringId in the\r
-  specified PackageList to the text specified by String and,\r
-  optionally, the font information specified by StringFontInfo.\r
-  There is no way to change the font information without changing\r
-  the string text.\r
-\r
-  @param This A pointer to the EFI_HII_STRING_PROTOCOL instance.\r
-\r
-  @param PackageList  The package list containing the strings.\r
-\r
-  @param Language Points to the language for the updated string.\r
-\r
-  @param StringId The string id, which is unique within\r
-                  PackageList.\r
-\r
-  @param String   Points to the new null-terminated string.\r
-\r
-  @param StringFontInfo Points to the string's font information\r
-                        or NULL if the string font information\r
-                        is not changed.\r
-\r
-  @retval EFI_SUCCESS   The string was successfully updated.\r
-  \r
-  @retval EFI_NOT_FOUND The string specified by StringId is not\r
-                        in the database. The specified PackageList is not in the database.\r
-  \r
-  @retval EFI_INVALID_PARAMETER The String or Language was NULL.\r
-  \r
-  @retval EFI_OUT_OF_RESOURCES  The system is out of resources\r
-                                to accomplish the task.\r
+  This function updates the string specified by StringId in the specified PackageList to the text\r
+  specified by String and, optionally, the font information specified by StringFontInfo.\r
+\r
+  @param  This                   A pointer to the EFI_HII_STRING_PROTOCOL instance.\r
+  @param  PackageList            The package list containing the strings.\r
+  @param  StringId               The string's id, which is unique within\r
+                                 PackageList.\r
+  @param  Language               Points to the language for the updated string.\r
+  @param  String                 Points to the new null-terminated string.\r
+  @param  StringFontInfo         Points to the string's font information or NULL if\r
+                                 the  string font information is not changed.\r
+\r
+  @retval EFI_SUCCESS            The string was updated successfully.\r
+  @retval EFI_NOT_FOUND          The string specified by StringId is not in the\r
+                                 database.\r
+  @retval EFI_INVALID_PARAMETER  The String or Language was NULL.\r
+  @retval EFI_INVALID_PARAMETER  The specified StringFontInfo does not exist in\r
+                                 current database.\r
+  @retval EFI_OUT_OF_RESOURCES   The system is out of resources to accomplish the\r
+                                 task.\r
 \r
 **/\r
 typedef\r
@@ -181,33 +146,22 @@ EFI_STATUS
 \r
 \r
 /**\r
-\r
   This function returns the list of supported languages.\r
 \r
-  @param This A pointer to the EFI_HII_STRING_PROTOCOL instance.\r
-\r
-  @param PackageList  The package list to examine.\r
-\r
-  @param Languages  Points to the buffer to hold the returned\r
-                    string.\r
-\r
-  @param LanguageSize   On entry, points to the size of the\r
-                        buffer pointed to by Languages, in\r
-                        bytes. On return, points to the length\r
-                        of Languages, in bytes.\r
-\r
-\r
-  @retval EFI_SUCCESS The languages were returned successfully.\r
-  \r
-  @retval EFI_BUFFER_TOO_SMALL  The LanguagesSize is too small\r
-                                to hold the list of supported\r
-                                languages. LanguageSize is\r
-                                updated to contain the required\r
-                                size.\r
-  \r
-  @retval EFI_INVALID_PARAMETER Languages or LanguagesSize is NULL.\r
-  @retval EFI_NOT_FOUND The specified PackageList is not in the database.\r
-\r
+  @param  This                   A pointer to the EFI_HII_STRING_PROTOCOL instance.\r
+  @param  PackageList            The package list to examine.\r
+  @param  Languages              Points to the buffer to hold the returned string.\r
+  @param  LanguagesSize          On entry, points to the size of the buffer pointed\r
+                                 to by  Languages, in bytes. On  return, points to\r
+                                 the length of Languages, in bytes.\r
+\r
+  @retval EFI_SUCCESS            The languages were returned successfully.\r
+  @retval EFI_INVALID_PARAMETER  The Languages or LanguagesSize was NULL.\r
+  @retval EFI_BUFFER_TOO_SMALL   The LanguagesSize is too small to hold the list of\r
+                                 supported languages. LanguageSize is updated to\r
+                                 contain the required size.\r
+  @retval EFI_NOT_FOUND          Could not find string package in specified\r
+                                 packagelist.\r
 \r
 **/\r
 typedef\r
@@ -221,50 +175,32 @@ EFI_STATUS
 \r
 \r
 /**\r
-\r
-  Each string package has associated with it a single primary\r
-  language and zero or more secondary languages. This routine\r
-  returns the secondary languages associated with a package list.\r
-\r
-  @param This   A pointer to the EFI_HII_STRING_PROTOCOL\r
-                instance.\r
-\r
-  @param PackageList  The package list to examine.\r
-\r
-  @param FirstLanguage  Points to the primary language.\r
-\r
-  @param Languages  are specified in the format specified in\r
-                    Appendix M of the UEFI 2.0 specification.\r
-\r
-  @param SecondaryLanguages Points to the buffer to hold the\r
-                            returned list of secondary languages\r
-                            for the specified FirstLanguage. If\r
-                            there are no secondary languages,\r
-                            the function returns successfully,\r
-                            but this is set to NULL.\r
-\r
-  @param SecondaryLanguageSize  On entry, points to the size of\r
-                                the buffer pointed to by\r
-                                Languages, in bytes. On return,\r
-                                points to the length of\r
-                                Languages in bytes.\r
-\r
-  @retval EFI_SUCCESS   Secondary languages correctly returned\r
-\r
-  @retval EFI_BUFFER_TOO_SMALL  The buffer specified by\r
-                                SecondLanguagesSize is too small\r
-                                to hold the returned\r
-                                information. SecondLanguageSize\r
-                                is updated to hold the size of\r
-                                the buffer required.\r
-\r
-  @retval EFI_INVALID_LANGUAGE  The language specified by\r
-                                FirstLanguage is not present in\r
-                                the specified package list.\r
-\r
-  @retval EFI_INVALID_PARAMETER FirstLanguage is NULL or\r
-                                SecondLanguage is NULL.\r
-  @retval EFI_NOT_FOUND The specified PackageList is not in the database.\r
+  Each string package has associated with it a single primary language and zero\r
+  or more secondary languages. This routine returns the secondary languages\r
+  associated with a package list.\r
+\r
+  @param  This                   A pointer to the EFI_HII_STRING_PROTOCOL instance.\r
+  @param  PackageList            The package list to examine.\r
+  @param  FirstLanguage          Points to the primary language.\r
+  @param  SecondaryLanguages     Points to the buffer to hold the returned list of\r
+                                 secondary languages for the specified\r
+                                 FirstLanguage. If there are no secondary\r
+                                 languages, the function  returns successfully, but\r
+                                 this is set to NULL.\r
+  @param  SecondaryLanguagesSize On entry, points to the size of the buffer pointed\r
+                                 to  by SecondaryLanguages, in bytes. On return,\r
+                                 points to the length of SecondaryLanguages in bytes.\r
+\r
+  @retval EFI_SUCCESS            Secondary languages were correctly returned.\r
+  @retval EFI_INVALID_PARAMETER  FirstLanguage or SecondaryLanguages or\r
+                                 SecondaryLanguagesSize was NULL.\r
+  @retval EFI_BUFFER_TOO_SMALL   The buffer specified by SecondaryLanguagesSize is\r
+                                 too small to hold the returned information.\r
+                                 SecondLanguageSize is updated to hold the size of\r
+                                 the buffer required.\r
+  @retval EFI_INVALID_LANGUAGE   The language specified by FirstLanguage is not\r
+                                 present in the specified package list.\r
+  @retval EFI_NOT_FOUND          The specified PackageList is not in the Database.                                \r
 \r
 **/\r
 typedef\r
@@ -279,15 +215,16 @@ EFI_STATUS
 \r
 \r
 /**\r
+  @par Protocol Description:\r
   Services to manipulate the string.\r
    \r
-  @param NewString  Add a new string. GetString Retrieve a\r
-                    string and related string information.\r
+  @param NewString              Add a new string. GetString Retrieve a\r
+                                string and related string information.\r
 \r
-  @param SetString  Change a string. \r
+  @param SetString              Change a string. \r
 \r
-  @param GetLanguages   List the languages for a particular\r
-                        package list.\r
+  @param GetLanguages           List the languages for a particular\r
+                                package list.\r
 \r
   @param GetSecondaryLanguages  List supported secondary\r
                                 languages for a particular\r
index 28c92edf2614ce75dc96fd747e754755826e7618..009610c70a35f8083c8bdae386b6b117a326e9f4 100644 (file)
@@ -2,7 +2,7 @@
   EFI_ISCSI_INITIATOR_NAME_PROTOCOL as defined in UEFI 2.0.\r
   It rovides the ability to get and set the iSCSI Initiator Name.                                                  \r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -73,6 +73,15 @@ typedef EFI_STATUS
   )\r
 ;  \r
 \r
+/**  \r
+  @par Protocol Description:\r
+  iSCSI Initiator Name Protocol for setting and obtaining the iSCSI Initiator Name. \r
+  \r
+  @param Get Used to retrieve the iSCSI Initiator Name.\r
+\r
+  @param Set Used to set the iSCSI Initiator Name.\r
+\r
+**/\r
 struct _EFI_ISCSI_INITIATOR_NAME_PROTOCOL {\r
   EFI_ISCSI_INITIATOR_NAME_GET         Get;\r
   EFI_ISCSI_INITIATOR_NAME_SET         Set;\r
index b9040c2a10acf5161f4902631083a8cfe313b58e..d3576acc7d0637a9e3a259ca867b69556aeb6486 100644 (file)
@@ -11,7 +11,7 @@
     may include support for the Internet Group Management\r
     Protocol (IGMP).\r
   \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -163,7 +163,7 @@ typedef struct {
   @param  This          Pointer to the EFI_IP4_PROTOCOL instance.\r
   @param  Ip4ModeData   Pointer to the EFI IPv4 Protocol mode data structure.\r
   @param  MnpConfigData Pointer to the managed network configuration data structure.\r
-  @param  SnpData       Pointer to the simple network mode data structure.\r
+  @param  SnpModeData   Pointer to the simple network mode data structure.\r
 \r
   @retval EFI_SUCCESS           The operation completed successfully.\r
   @retval EFI_INVALID_PARAMETER This is NULL.\r
@@ -200,7 +200,7 @@ EFI_STATUS
                                 IPv4 address or subnet mask can be changed. The interface must\r
                                 also be stopped when switching to/from raw packet mode.\r
   @retval EFI_DEVICE_ERROR      An unexpected system or network error occurred. The EFI IPv4\r
-                                 Protocol driver instance is not opened.\r
+                                Protocol driver instance is not opened.\r
 \r
 **/\r
 typedef \r
@@ -402,6 +402,35 @@ EFI_STATUS
   )\r
 ;  \r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI IPv4 Protocol implements a simple packet-oriented interface that can be \r
+  used by drivers, daemons, and applications to transmit and receive network packets.\r
+  \r
+  @param GetModeData\r
+  Gets the current operational settings for this instance of the EFI IPv4 Protocol driver. \r
+\r
+  @param Configure\r
+  Changes or resets the operational settings for the EFI IPv4 Protocol. \r
+\r
+  @param Groups\r
+  Joins and leaves multicast groups. \r
+\r
+  @param Routes\r
+  Adds and deletes routing table entries. \r
+\r
+  @param Transmit\r
+  Places outgoing data packets into the transmit queue. \r
+\r
+  @param Receive\r
+  Places a receiving request into the receiving queue. \r
+\r
+  @param Cancel\r
+  Aborts a pending transmit or receive request. \r
+\r
+  @param Poll\r
+  Polls for incoming data packets and processes outgoing data packets. \r
+**/\r
 struct _EFI_IP4_PROTOCOL {\r
   EFI_IP4_GET_MODE_DATA        GetModeData;\r
   EFI_IP4_CONFIGURE            Configure;\r
index 7622ec2f946d227186677d8dba2ed075719c3c7d..6dc9e615bc4006ed60ab3cea32a80ab15b1d1f45 100644 (file)
@@ -3,7 +3,7 @@
   This file provides a definition of the EFI IPv4 Configuration\r
   Protocol.\r
 \r
-  Copyright (c) 2006, Intel Corporation\r
+  Copyright (c) 2006 - 2008, Intel Corporation\r
   All rights reserved. This program and the accompanying materials\r
   are licensed and made available under the terms and conditions of the BSD License\r
   which accompanies this distribution.  The full text of the license may be found at\r
@@ -113,6 +113,21 @@ EFI_STATUS
   )\r
 ;\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_IP4_CONFIG_PROTOCOL driver performs platform- and policy-dependent \r
+  configuration for the EFI IPv4 Protocol driver. \r
+  \r
+  @param Start\r
+  Starts running the configuration policy for the EFI IPv4 Protocol driver. \r
+\r
+  @param Stop\r
+  Stops running the configuration policy for the EFI IPv4 Protocol driver. \r
+\r
+  @param GetData\r
+  Returns the default configuration data (if any) for the EFI IPv4 Protocol driver.  \r
+\r
+**/\r
 struct _EFI_IP4_CONFIG_PROTOCOL {\r
   EFI_IP4_CONFIG_START         Start;\r
   EFI_IP4_CONFIG_STOP          Stop;\r
index 6207ce052f8b3eb8211ffd710164cadef725745f..c2867f49373f6a3a8c4a58d2eeec4aaeb8b7417b 100644 (file)
@@ -7,7 +7,7 @@
 \r
   UEFI 2.0 can boot from any device that produces a LoadFile protocol.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -77,6 +77,14 @@ EFI_STATUS
   )\r
 ;\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_LOAD_FILE_PROTOCOL is a simple protocol used to obtain files from arbitrary devices.\r
\r
+  @param LoadFile \r
+  Causes the driver to load the requested file.\r
+\r
+**/\r
 struct _EFI_LOAD_FILE_PROTOCOL {\r
   EFI_LOAD_FILE LoadFile;\r
 };\r
index c9e5741fadd22cfc4e7225b24d656ccf34732779..f87011930b98cf31dcf43b44938c2f73e78b0af8 100644 (file)
@@ -4,7 +4,7 @@
   Every EFI driver and application is passed an image handle when it is loaded.\r
   This image handle will contain a Loaded Image Protocol.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
 // \r
 #define EFI_LOADED_IMAGE_INFORMATION_REVISION    EFI_LOADED_IMAGE_PROTOCOL_REVISION\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  Can be used on any image handle to obtain information about the loaded image.\r
 \r
+  @param Revision\r
+  Defines the revision of the EFI_LOADED_IMAGE_PROTOCOL structure. \r
+  All future revisions will be backward compatible to the current revision.\r
+\r
+  @param ParentHandle\r
+  Parent image's image handle. NULL if the image is loaded directly from \r
+  the firmware's boot manager. \r
+\r
+  @param SystemTable\r
+  The image's EFI system table pointer. \r
+\r
+  @param DeviceHandle\r
+  The device handle that the EFI Image was loaded from. \r
+\r
+  @param FilePath\r
+  A pointer to the file path portion specific to DeviceHandle \r
+  that the EFI Image was loaded from. \r
+\r
+  @param Reserved\r
+  Reserved. DO NOT USE.\r
+\r
+  @param LoadOptionsSize\r
+  The size in bytes of LoadOptions.\r
+\r
+  @param LoadOptions\r
+  A pointer to the image's binary load options.\r
+\r
+  @param ImageBase\r
+  The base address at which the image was loaded.\r
+\r
+  @param ImageSize\r
+  The size in bytes of the loaded image.\r
+\r
+  @param ImageCodeType\r
+  The memory \r
+\r
+  @param ImageDataType\r
+  The memory \r
+\r
+  @param Unload\r
+  Function that unloads the image. \r
+\r
+**/\r
 typedef struct {\r
   UINT32                    Revision;\r
   EFI_HANDLE                ParentHandle;\r
index 45ff98270ba1f924bf910098f3398dcd76c3198d..4e010fce2055336e8c6ccd98fa6fdc3f60f41ae0 100644 (file)
@@ -297,6 +297,39 @@ EFI_STATUS
   )\r
 ;\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The MNP is used by network applications (and drivers) to \r
+  perform raw (unformatted) asynchronous network packet I/O.\r
\r
+  @param GetModeData\r
+  Returns the current MNP child driver operational parameters. \r
+  May also support returning underlying Simple Network Protocol (SNP) driver mode data. \r
+\r
+  @param Configure\r
+  Sets and clears operational parameters for an MNP child driver. \r
+\r
+  @param McastIpToMac\r
+  Translates a software (IP) multicast address to a hardware (MAC) multicast address. \r
+  This function may be unsupported in some MNP implementations. \r
+\r
+  @param Groups\r
+  Enables and disables receive filters for multicast addresses. \r
+  This function may be unsupported in some MNP implementations. \r
+\r
+  @param Transmit\r
+  Places asynchronous outgoing data packets into the transmit queue. \r
+\r
+  @param Receive\r
+  Places an asynchronous receiving request into the receiving queue. \r
+\r
+  @param Cancel\r
+  Aborts a pending transmit or receive request. \r
+\r
+  @param Poll\r
+  Polls for incoming data packets and processes outgoing data packets. \r
+\r
+**/\r
 struct _EFI_MANAGED_NETWORK_PROTOCOL {\r
   EFI_MANAGED_NETWORK_GET_MODE_DATA       GetModeData;\r
   EFI_MANAGED_NETWORK_CONFIGURE           Configure;\r
index 58e2aa9fb996d637ceaf1d6929ad480c5be2b888..edc4927d35c8402ae7a1dafd04011104d00f8252 100644 (file)
@@ -1,9 +1,9 @@
 /** @file\r
-  Metronome Architectural Protocol as defined in DXE CIS\r
+  Metronome Architectural Protocol as defined in PI SPEC VOLUME 2 DXE\r
 \r
   This code abstracts the DXE core to provide delay services.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -12,9 +12,6 @@
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
 \r
-  @par Revision Reference:\r
-  Version 0.91B.\r
-\r
 **/\r
 \r
 #ifndef __ARCH_PROTOCOL_METRONOME_H__\r
index 3710f541d6333b10d6f633b87273a01558849f20..e72deb06dd0246aad1b4102e5f3b7efacac5d8eb 100644 (file)
@@ -1,9 +1,9 @@
 /** @file\r
-  Monotonic Counter Architectural Protocol as defined in DXE CIS\r
+  Monotonic Counter Architectural Protocol as defined in PI SPEC VOLUME 2 DXE\r
 \r
   This code provides the services required to access the systems monotonic counter\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -12,9 +12,6 @@
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
 \r
-  @par Revision Reference:\r
-  Version 0.91B.\r
-\r
 **/\r
 \r
 #ifndef __ARCH_PROTOCOL_MONTONIC_COUNTER_H__\r
index 0942aeefea51c24022e5acbf81b87cebb06b100e..4191227e9f47883fe598377fdb8669c106334a63 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   EFI Multicast Trivial File Tranfer Protocol Definition\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -471,7 +471,43 @@ EFI_STATUS
   )\r
 ;                                                                                                                 \r
                                                                                                                   \r
-  \r
+/**  \r
+  The EFI MTFTPv4 Protocol provides basic services for client-side unicast \r
+  and/or multicast TFTP operations.\r
+\r
+  @par Protocol Description:\r
+  The EFI_MTFTP4_PROTOCOL is designed to be used by UEFI drivers and applications \r
+  to transmit and receive data files. The EFI MTFTPv4 Protocol driver uses \r
+  the underlying EFI UDPv4 Protocol driver and EFI IPv4 Protocol driver.\r
+\r
+  @param GetModeData\r
+  Reads the current operational settings. \r
+\r
+  @param Configure\r
+  Initializes, changes, or resets the operational settings for \r
+  this instance of the EFI MTFTPv4 Protocol driver. \r
+\r
+  @param GetInfo\r
+  Retrieves information about a file from an MTFTPv4 server. \r
+\r
+  @param ParseOptions\r
+  Parses the options in an MTFTPv4 OACK (options acknowledgement) packet. \r
+\r
+  @param ReadFile\r
+  Downloads a file from an MTFTPv4 server. \r
+\r
+  @param WriteFile\r
+  Uploads a file to an MTFTPv4 server. This function may be unsupported \r
+  in some EFI implementations. \r
+\r
+  @param ReadDirectory\r
+  Downloads a related file directory from an MTFTPv4 server. This function \r
+  may be unsupported in some EFI implementations. \r
+\r
+  @param Poll\r
+  Polls for incoming data packets and processes outgoing data packets. \r
+\r
+**/  \r
 struct _EFI_MTFTP4_PROTOCOL {\r
   EFI_MTFTP4_GET_MODE_DATA     GetModeData;\r
   EFI_MTFTP4_CONFIGURE         Configure;\r
index 460d44fa5a4e2f35ed4f8cfe7fc35ce18138b528..c6514c173db4b853a6f98cc4ed4fcadbbfc77ea1 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   EFI Network Interface Identifier Protocol\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -43,6 +43,48 @@ typedef enum {
   EfiNetworkInterfaceUndi = 1\r
 } EFI_NETWORK_PROTOCOL_TYPE;\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  An optional protocol that is used to describe details about the software \r
+  layer that is used to produce the Simple Network Protocol. \r
+\r
+  @param Revision\r
+  The revision of the EFI_NETWORK_INTERFACE_IDENTIFIER protocol.\r
+\r
+  @param Id\r
+  Address of the first byte of the identifying structure for this network \r
+  interface. This is only valid when the network interface is started \r
+  (see Start()). When the network interface is not started, this field is set to zero.\r
+\r
+  @param ImageAddr\r
+  Address of the unrelocated network interface image.\r
+\r
+  @param ImageSize\r
+  Size of unrelocated network interface image.\r
+\r
+  @param StringId\r
+  A four-character ASCII string that is sent in the class identifier field of\r
+  option 60 in DHCP. For a Type of EfiNetworkInterfaceUndi, this field is UNDI.\r
+\r
+  @param Type\r
+  Network interface type. This will be set to one of the values \r
+  in EFI_NETWORK_INTERFACE_TYPE.\r
+\r
+  @param MajorVer\r
+  Major version number.\r
+\r
+  @param MinorVer\r
+  Minor version number.\r
+\r
+  @param Ipv6Supported\r
+  TRUE if the network interface supports IPv6; otherwise FALSE.\r
+\r
+  @param IfNum\r
+  The network interface number that is being identified by this Network \r
+  Interface Identifier Protocol. This field must be less than or equal \r
+  to the IFcnt field in the !PXE structure.\r
+\r
+**/\r
 struct _EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL {\r
 \r
   UINT64  Revision;\r
index 9344ad2262e6717018e9a9413d4542b5a59b7ec6..9a6880c4499211bd67dfca98b00326d7a4600779 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Platform Configuration Database (PCD) Protocol\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -43,7 +43,7 @@ extern EFI_GUID gPcdProtocolGuid;
   set for that Id, the results are unpredictable.\r
 \r
   @param[in]  SkuId The SKU value that will be used when the PCD service will retrieve and \r
-              set values associated with a PCD token.\r
+                    set values associated with a PCD token.\r
 \r
   @retval VOID\r
 \r
@@ -201,7 +201,7 @@ UINTN
   specified by Guid does not exist, the results are \r
   unpredictable.\r
 \r
-  @param[in]  Guid The token space for the token number.\r
+  @param[in]  Guid        The token space for the token number.\r
   @param[in]  TokenNumber The PCD token number. \r
 \r
   @return The size 8-bit value for the PCD token.\r
@@ -224,7 +224,7 @@ UINT8
   specified by Guid does not exist, the results are \r
   unpredictable.\r
 \r
-  @param[in]  Guid The token space for the token number.\r
+  @param[in]  Guid        The token space for the token number.\r
   @param[in]  TokenNumber The PCD token number. \r
 \r
   @return The size 16-bit value for the PCD token.\r
@@ -247,7 +247,7 @@ UINT16
   specified by Guid does not exist, the results are \r
   unpredictable.\r
 \r
-  @param[in]  Guid The token space for the token number.\r
+  @param[in]  Guid        The token space for the token number.\r
   @param[in]  TokenNumber The PCD token number. \r
 \r
   @return The size 32-bit value for the PCD token.\r
@@ -270,7 +270,7 @@ UINT32
   specified by Guid does not exist, the results are \r
   unpredictable.\r
 \r
-  @param[in]  Guid The token space for the token number.\r
+  @param[in]  Guid        The token space for the token number.\r
   @param[in]  TokenNumber The PCD token number. \r
 \r
   @return The size 64-bit value for the PCD token.\r
@@ -293,7 +293,7 @@ UINT64
   is returned by this function call.  If the TokenNumber is invalid, \r
   the results are unpredictable.\r
 \r
-  @param[in]  Guid The token space for the token number.\r
+  @param[in]  Guid        The token space for the token number.\r
   @param[in]  TokenNumber The PCD token number. \r
 \r
   @return The pointer to the buffer to be retrived.\r
@@ -316,7 +316,7 @@ VOID *
   specified by Guid does not exist, the results are \r
   unpredictable.\r
 \r
-  @param[in]  Guid The token space for the token number.\r
+  @param[in]  Guid        The token space for the token number.\r
   @param[in]  TokenNumber The PCD token number. \r
 \r
   @return The size Boolean value for the PCD token.\r
@@ -337,7 +337,7 @@ BOOLEAN
   Retrieves the current size of a particular PCD token.  \r
   If the TokenNumber is invalid, the results are unpredictable.\r
 \r
-  @param[in]  Guid The token space for the token number.\r
+  @param[in]  Guid        The token space for the token number.\r
   @param[in]  TokenNumber The PCD token number. \r
 \r
   @return The size of the value for the PCD token.\r
@@ -360,7 +360,7 @@ UINTN
   If it is not, an error will be returned.\r
 \r
   @param[in]  TokenNumber The PCD token number. \r
-  @param[in]  Value The value to set for the PCD token.\r
+  @param[in]  Value       The value to set for the PCD token.\r
 \r
   @retval EFI_SUCCESS  Procedure returned successfully.\r
   @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data \r
@@ -386,7 +386,7 @@ EFI_STATUS
   If it is not, an error will be returned.\r
 \r
   @param[in]  TokenNumber The PCD token number. \r
-  @param[in]  Value The value to set for the PCD token.\r
+  @param[in]  Value       The value to set for the PCD token.\r
 \r
   @retval EFI_SUCCESS  Procedure returned successfully.\r
   @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data \r
@@ -412,7 +412,7 @@ EFI_STATUS
   If it is not, an error will be returned.\r
 \r
   @param[in]  TokenNumber The PCD token number. \r
-  @param[in]  Value The value to set for the PCD token.\r
+  @param[in]  Value       The value to set for the PCD token.\r
 \r
   @retval EFI_SUCCESS  Procedure returned successfully.\r
   @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data \r
@@ -438,7 +438,7 @@ EFI_STATUS
   If it is not, an error will be returned.\r
 \r
   @param[in]  TokenNumber The PCD token number. \r
-  @param[in]  Value The value to set for the PCD token.\r
+  @param[in]  Value       The value to set for the PCD token.\r
 \r
   @retval EFI_SUCCESS  Procedure returned successfully.\r
   @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data \r
@@ -463,12 +463,12 @@ EFI_STATUS
   size of the value being set is compatible with the Token's existing definition.  \r
   If it is not, an error will be returned.\r
 \r
-  @param[in]  TokenNumber The PCD token number. \r
+  @param[in]      TokenNumber  The PCD token number. \r
   @param[in, out] SizeOfBuffer A pointer to the length of the value being set for the PCD token.  \r
-                              On input, if the SizeOfValue is greater than the maximum size supported \r
-                              for this TokenNumber then the output value of SizeOfValue will reflect \r
-                              the maximum size supported for this TokenNumber.\r
-  @param[in]  Buffer The buffer to set for the PCD token.\r
+                               On input, if the SizeOfValue is greater than the maximum size supported \r
+                               for this TokenNumber then the output value of SizeOfValue will reflect \r
+                               the maximum size supported for this TokenNumber.\r
+  @param[in]      Buffer       The buffer to set for the PCD token.\r
 \r
   @retval EFI_SUCCESS  Procedure returned successfully.\r
   @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data \r
@@ -495,7 +495,7 @@ EFI_STATUS
   If it is not, an error will be returned.\r
 \r
   @param[in]  TokenNumber The PCD token number. \r
-  @param[in]  Value The value to set for the PCD token.\r
+  @param[in]  Value       The value to set for the PCD token.\r
 \r
   @retval EFI_SUCCESS  Procedure returned successfully.\r
   @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data \r
@@ -520,9 +520,9 @@ EFI_STATUS
   size of the value being set is compatible with the Token's existing definition.  \r
   If it is not, an error will be returned.\r
 \r
-  @param[in]  Guid The 128-bit unique value that designates the namespace from which to extract the value.\r
+  @param[in]  Guid        The 128-bit unique value that designates the namespace from which to extract the value.\r
   @param[in]  TokenNumber The PCD token number. \r
-  @param[in]  Value The value to set for the PCD token.\r
+  @param[in]  Value       The value to set for the PCD token.\r
 \r
   @retval EFI_SUCCESS  Procedure returned successfully.\r
   @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data \r
@@ -548,9 +548,9 @@ EFI_STATUS
   size of the value being set is compatible with the Token's existing definition.  \r
   If it is not, an error will be returned.\r
 \r
-  @param[in]  Guid The 128-bit unique value that designates the namespace from which to extract the value.\r
+  @param[in]  Guid        The 128-bit unique value that designates the namespace from which to extract the value.\r
   @param[in]  TokenNumber The PCD token number. \r
-  @param[in]  Value The value to set for the PCD token.\r
+  @param[in]  Value       The value to set for the PCD token.\r
 \r
   @retval EFI_SUCCESS  Procedure returned successfully.\r
   @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data \r
@@ -576,9 +576,9 @@ EFI_STATUS
   size of the value being set is compatible with the Token's existing definition.  \r
   If it is not, an error will be returned.\r
 \r
-  @param[in]  Guid The 128-bit unique value that designates the namespace from which to extract the value.\r
+  @param[in]  Guid        The 128-bit unique value that designates the namespace from which to extract the value.\r
   @param[in]  TokenNumber The PCD token number. \r
-  @param[in]  Value The value to set for the PCD token.\r
+  @param[in]  Value       The value to set for the PCD token.\r
 \r
   @retval EFI_SUCCESS  Procedure returned successfully.\r
   @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data \r
@@ -604,9 +604,9 @@ EFI_STATUS
   size of the value being set is compatible with the Token's existing definition.  \r
   If it is not, an error will be returned.\r
 \r
-  @param[in]  Guid The 128-bit unique value that designates the namespace from which to extract the value.\r
+  @param[in]  Guid        The 128-bit unique value that designates the namespace from which to extract the value.\r
   @param[in]  TokenNumber The PCD token number. \r
-  @param[in]  Value The value to set for the PCD token.\r
+  @param[in]  Value       The value to set for the PCD token.\r
 \r
   @retval EFI_SUCCESS  Procedure returned successfully.\r
   @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data \r
@@ -632,13 +632,13 @@ EFI_STATUS
   size of the value being set is compatible with the Token's existing definition.  \r
   If it is not, an error will be returned.\r
 \r
-  @param[in]  Guid The 128-bit unique value that designates the namespace from which to extract the value.\r
-  @param[in]  TokenNumber The PCD token number. \r
+  @param[in]  Guid            The 128-bit unique value that designates the namespace from which to extract the value.\r
+  @param[in]  TokenNumber     The PCD token number. \r
   @param[in, out] SizeOfBuffer A pointer to the length of the value being set for the PCD token.  \r
                               On input, if the SizeOfValue is greater than the maximum size supported \r
                               for this TokenNumber then the output value of SizeOfValue will reflect \r
                               the maximum size supported for this TokenNumber.\r
-  @param[in]  Buffer The buffer to set for the PCD token.\r
+  @param[in]  Buffer          The buffer to set for the PCD token.\r
 \r
   @retval EFI_SUCCESS  Procedure returned successfully.\r
   @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data \r
@@ -665,9 +665,9 @@ EFI_STATUS
   size of the value being set is compatible with the Token's existing definition.  \r
   If it is not, an error will be returned.\r
 \r
-  @param[in]  Guid The 128-bit unique value that designates the namespace from which to extract the value.\r
+  @param[in]  Guid        The 128-bit unique value that designates the namespace from which to extract the value.\r
   @param[in]  TokenNumber The PCD token number. \r
-  @param[in]  Value The value to set for the PCD token.\r
+  @param[in]  Value       The value to set for the PCD token.\r
 \r
   @retval EFI_SUCCESS  Procedure returned successfully.\r
   @retval EFI_INVALID_PARAMETER The PCD service determined that the size of the data \r
@@ -697,10 +697,10 @@ EFI_STATUS
   TokenData will be used by PCD service DXE driver to modify the internal data in \r
   PCD database.\r
 \r
-  @param[in]  CallBackGuid The PCD token GUID being set.\r
-  @param[in]  CallBackToken The PCD token number being set.\r
-  @param[in, out]  TokenData A pointer to the token data being set.\r
-  @param[in]  TokenDataSize The size, in bytes, of the data being set.\r
+  @param[in]  CallBackGuid    The PCD token GUID being set.\r
+  @param[in]  CallBackToken   The PCD token number being set.\r
+  @param[in, out] TokenData   A pointer to the token data being set.\r
+  @param[in]  TokenDataSize   The size, in bytes, of the data being set.\r
 \r
   @retval VOID\r
 \r
@@ -719,11 +719,11 @@ VOID
 /**\r
   Specifies a function to be called anytime the value of a designated token is changed.\r
 \r
-  @param[in]  TokenNumber The PCD token number. \r
-  @param[in]  Guid The 128-bit unique value that designates the namespace from which to extract the value.\r
-  @param[in]  CallBackFunction The function prototype called when the value associated with the CallBackToken is set.  \r
+  @param[in]  TokenNumber       The PCD token number. \r
+  @param[in]  Guid              The 128-bit unique value that designates the namespace from which to extract the value.\r
+  @param[in]  CallBackFunction  The function prototype called when the value associated with the CallBackToken is set.  \r
 \r
-  @retval EFI_SUCCESS  The PCD service has successfully established a call event \r
+  @retval EFI_SUCCESS   The PCD service has successfully established a call event \r
                         for the CallBackToken requested.\r
   @retval EFI_NOT_FOUND The PCD service could not find the referenced token number.\r
 \r
@@ -741,11 +741,11 @@ EFI_STATUS
 /**\r
   Cancels a previously set callback function for a particular PCD token number.\r
 \r
-  @param[in]  TokenNumber The PCD token number. \r
-  @param[in]  Guid The 128-bit unique value that designates the namespace from which to extract the value.\r
+  @param[in]  TokenNumber      The PCD token number. \r
+  @param[in]  Guid             The 128-bit unique value that designates the namespace from which to extract the value.\r
   @param[in]  CallBackFunction The function prototype called when the value associated with the CallBackToken is set.  \r
 \r
-  @retval EFI_SUCCESS  The PCD service has successfully established a call event \r
+  @retval EFI_SUCCESS   The PCD service has successfully established a call event \r
                         for the CallBackToken requested.\r
   @retval EFI_NOT_FOUND The PCD service could not find the referenced token number.\r
 \r
@@ -763,16 +763,17 @@ EFI_STATUS
 /**\r
   Retrieves the next valid PCD token for a given namespace.\r
 \r
-  @param[in]  Guid The 128-bit unique value that designates the namespace from which to extract the value.\r
-  @param[in,out]  TokenNumber A pointer to the PCD token number to use to find the subsequent token number.  \r
-                  If the input token namespace or token number does not exist on the platform, \r
-                  an error is returned and the value of *TokenNumber is undefined. To retrieve the "first" token, \r
-                  have the pointer reference a TokenNumber value of 0. If the input token number is 0 and \r
-                  there is no valid token number for this token namespace,  *TokenNumber will be assigned to \r
-                  0 and the function return EFI_SUCCESS. If the token number is the last valid token number, \r
-                  *TokenNumber will be assigned to 0 and the function return EFI_SUCCESS.\r
-\r
-  @retval EFI_SUCCESS  The PCD service retrieved the next valid token number. Or the input token number \r
+  @param[in]      Guid    The 128-bit unique value that designates the namespace from which to extract the value.\r
+  @param[in,out]  TokenNumber \r
+                          A pointer to the PCD token number to use to find the subsequent token number.  \r
+                          If the input token namespace or token number does not exist on the platform, \r
+                          an error is returned and the value of *TokenNumber is undefined. To retrieve the "first" token, \r
+                          have the pointer reference a TokenNumber value of 0. If the input token number is 0 and \r
+                          there is no valid token number for this token namespace,  *TokenNumber will be assigned to \r
+                          0 and the function return EFI_SUCCESS. If the token number is the last valid token number, \r
+                          *TokenNumber will be assigned to 0 and the function return EFI_SUCCESS.\r
+\r
+  @retval EFI_SUCCESS   The PCD service retrieved the next valid token number. Or the input token number \r
                         is already the last valid token number in the PCD database. \r
                         In the later case, *TokenNumber is updated with the value of 0.\r
   @retval EFI_NOT_FOUND If this input token number and token namespace does not exist on the platform.\r
@@ -791,16 +792,16 @@ EFI_STATUS
   Retrieves the next valid PCD token namespace for a given namespace.\r
 \r
   @param[in, out]  Guid An indirect pointer to EFI_GUID.  On input it designates \r
-                    a known token namespace from which the search will start. On output, \r
-                    it designates the next valid token namespace on the platform. If the input \r
-                    token namespace does not exist on the platform, an error is returned and \r
-                    the value of *Guid is undefined. If *Guid is NULL, then the GUID of the \r
-                    first token space of the current platform is assigned to *Guid the function \r
-                    return EFI_SUCCESS. If  *Guid is NULL  and there is no namespace exist in \r
-                    the platform other than the default (NULL) tokennamespace, *Guid is unchanged \r
-                    and the function return EFI_SUCCESS. If this input token namespace is the last \r
-                    namespace on the platform, *Guid will be assigned to NULL and the function return \r
-                    EFI_SUCCESS. \r
+                        a known token namespace from which the search will start. On output, \r
+                        it designates the next valid token namespace on the platform. If the input \r
+                        token namespace does not exist on the platform, an error is returned and \r
+                        the value of *Guid is undefined. If *Guid is NULL, then the GUID of the \r
+                        first token space of the current platform is assigned to *Guid the function \r
+                        return EFI_SUCCESS. If  *Guid is NULL  and there is no namespace exist in \r
+                        the platform other than the default (NULL) tokennamespace, *Guid is unchanged \r
+                        and the function return EFI_SUCCESS. If this input token namespace is the last \r
+                        namespace on the platform, *Guid will be assigned to NULL and the function return \r
+                        EFI_SUCCESS. \r
 \r
   @retval EFI_SUCCESS  The PCD service retrieved the next valid token space Guid. \r
                         Or the input token space Guid is already the last valid token space Guid \r
@@ -814,11 +815,107 @@ EFI_STATUS
   IN  OUT    CONST EFI_GUID      **Guid\r
   );\r
 \r
-\r
-\r
 //\r
 // Interface structure for the PCD Protocol\r
 //\r
+/**\r
+  @par Protocol Description:\r
+  This service abstracts the ability to set/get Platform Configuration Database (PCD).\r
+\r
+  @param SetSku\r
+  Sets the SKU value for subsequent calls to set or get PCD token values.\r
+  \r
+  @param Get8\r
+  Retrieves an 8-bit value for a given PCD token.\r
+\r
+  @param Get16\r
+  Retrieves an 16-bit value for a given PCD token.\r
+\r
+  @param Get32\r
+  Retrieves an 32-bit value for a given PCD token.\r
+\r
+  @param Get64\r
+  Retrieves an 64-bit value for a given PCD token.\r
+\r
+  @param GetPtr\r
+  Retrieves a pointer to a value for a given PCD token.\r
+\r
+  @param GetBool\r
+  Retrieves an Boolean value for a given PCD token.\r
+\r
+  @param GetSize\r
+  Retrieves the size of the value for a given PCD token.\r
+\r
+  @param Get8Ex\r
+  Retrieves an 8-bit value for a given PCD token and token space.\r
+\r
+  @param Get16Ex\r
+  Retrieves an 16-bit value for a given PCD token and token space.\r
+\r
+  @param Get32Ex\r
+  Retrieves an 32-bit value for a given PCD token and token space.\r
+\r
+  @param Get64Ex\r
+  Retrieves an 64-bit value for a given PCD token and token space.\r
+\r
+  @param GetPtrEx\r
+  Retrieves a pointer to a value for a given PCD token and token space.\r
+\r
+  @param GetBoolEx\r
+  Retrieves an Boolean value for a given PCD token and token space.\r
+\r
+  @param GetSizeEx\r
+  Retrieves the size of the value for a given PCD token and token space.\r
+\r
+  @param Set8\r
+  Sets an 8-bit value for a given PCD token.\r
+\r
+  @param Set16\r
+  Sets an 16-bit value for a given PCD token.\r
+\r
+  @param Set32\r
+  Sets an 32-bit value for a given PCD token.\r
+\r
+  @param Set64\r
+  Sets an 64-bit value for a given PCD token.\r
+\r
+  @param SetPtr\r
+  Sets the buffer of a specified size for a given PCD token.\r
+\r
+  @param SetBool\r
+  Sets an Boolean value for a given PCD token.\r
+\r
+  @param Set8Ex\r
+  Sets an 8-bit value for a given PCD token and token space.\r
+\r
+  @param Set16Ex\r
+  Sets an 16-bit value for a given PCD token and token space.\r
+\r
+  @param Set32Ex\r
+  Sets an 32-bit value for a given PCD token and token space.\r
+\r
+  @param Set64Ex\r
+  Sets an 64-bit value for a given PCD token and token space.\r
+\r
+  @param SetPtrEx\r
+  Sets the buffer of a specified size for a given PCD token and token space.\r
+\r
+  @param SetBoolEx\r
+  Sets an Boolean value for a given PCD token and token space.\r
+  \r
+  @param CallbackOnSet\r
+  Specifies a function to be called anytime the value of a designated token is changed.\r
+  \r
+  @param CancelCallback\r
+  Cancels a previously set callback function for a particular PCD token number.\r
+  \r
+  @param GetNextToken\r
+  Retrieves the next valid PCD token for a given namespace.\r
+  \r
+  @param GetNextTokenSpace\r
+  Retrieves the next valid PCD token namespace for a given namespace.\r
\r
+**/\r
 typedef struct {\r
   PCD_PROTOCOL_SET_SKU              SetSku;\r
 \r
index cb3c3bcdf7e59f926087e4ff7eb96561bfe745c8..09d0ea7773b0d0a939e70e65f5da02e4c459f37b 100644 (file)
@@ -1,7 +1,8 @@
 /** @file\r
-  EFI PCI I/O Protocol\r
+  EFI PCI I/O Protocol provides the basic Memory, I/O, PCI configuration, \r
+  and DMA interfaces that a driver uses to access its PCI controller.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -473,9 +474,84 @@ EFI_STATUS
   IN OUT UINT64                       *Length\r
   );\r
 \r
-//\r
-// Interface structure for the PCI I/O Protocol\r
-//\r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_PCI_IO_PROTOCOL provides the basic Memory, I/O, PCI configuration, \r
+  and DMA interfaces that are used to abstract accesses to PCI controllers. \r
+  There is one EFI_PCI_IO_PROTOCOL instance for each PCI controller on a PCI bus. \r
+  A device driver that wishes to manage a PCI controller in a system will have to \r
+  retrieve the EFI_PCI_IO_PROTOCOL instance that is associated with the PCI controller. \r
+\r
+  @param PollMem\r
+  Polls an address in PCI memory space until an exit condition is met, or a timeout occurs. \r
+\r
+  @param PollIo\r
+  Polls an address in PCI I/O space until an exit condition is met, or a timeout occurs. \r
+\r
+  @param Mem.Read\r
+  Allows BAR relative reads to PCI memory space. \r
+\r
+  @param Mem.Write\r
+  Allows BAR relative writes to PCI memory space. \r
+\r
+  @param Io.Read\r
+  Allows BAR relative reads to PCI I/O space. \r
+\r
+  @param Io.Write\r
+  Allows BAR relative writes to PCI I/O space. \r
+\r
+  @param Pci.Read\r
+  Allows PCI controller relative reads to PCI configuration space. \r
+\r
+  @param Pci.Write\r
+  Allows PCI controller relative writes to PCI configuration space. \r
+\r
+  @param CopyMem\r
+  Allows one region of PCI memory space to be copied to another region of PCI memory space. \r
+\r
+  @param Map\r
+  Provides the PCI controller's specific address needed to access system memory for DMA. \r
+\r
+  @param Unmap\r
+  Releases any resources allocated by Map(). \r
+\r
+  @param AllocateBuffer\r
+  Allocates pages that are suitable for a common buffer mapping. \r
+\r
+  @param FreeBuffer\r
+  Frees pages that were allocated with AllocateBuffer(). \r
+\r
+  @param Flush\r
+  Flushes all PCI posted write transactions to system memory. \r
+\r
+  @param GetLocation\r
+  Retrieves this PCI controller's current PCI bus number, device number, and function number. \r
+\r
+  @param Attributes\r
+  Performs an operation on the attributes that this PCI controller supports. \r
+  The operations include getting the set of supported attributes, retrieving \r
+  the current attributes, setting the current\r
+  attributes, enabling attributes, and disabling attributes. \r
+\r
+  @param GetBarAttributes\r
+  Gets the attributes that this PCI controller supports setting on a BAR using \r
+  SetBarAttributes(), and retrieves the list of resource descriptors for a BAR. \r
+\r
+  @param SetBarAttributes\r
+  Sets the attributes for a range of a BAR on a PCI controller. \r
+\r
+  @param RomSize\r
+  The size, in bytes, of the ROM image.\r
+\r
+  @param RomImage\r
+  A pointer to the in memory copy of the ROM image. The PCI Bus Driver is responsible \r
+  for allocating memory for the ROM image, and copying the contents of the ROM to memory. \r
+  The contents of this buffer are either from the PCI option ROM that can be accessed \r
+  through the ROM BAR of the PCI controller, or it is from a platform-specific location. \r
+  The Attributes() function can be used to determine from which of these two sources \r
+  the RomImage buffer was initialized.\r
+\r
+**/\r
 struct _EFI_PCI_IO_PROTOCOL {\r
   EFI_PCI_IO_PROTOCOL_POLL_IO_MEM         PollMem;\r
   EFI_PCI_IO_PROTOCOL_POLL_IO_MEM         PollIo;\r
index b3dbfa9cab641d83dcc50a2d236f2ece2fa76dd9..bf96106a32b76f061cdcbd40292d99436bc4e58b 100644 (file)
@@ -5,7 +5,7 @@
   and PCI Configuration cycles on a PCI Root Bridge. It also provides services to perform \r
   defferent types of bus mastering DMA\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -360,6 +360,72 @@ EFI_STATUS
   OUT VOID                                     **Resources\r
   );\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  Provides the basic Memory, I/O, PCI configuration, and DMA interfaces that are \r
+  used to abstract accesses to PCI controllers behind a PCI Root Bridge Controller. \r
+  \r
+  @param ParentHandle\r
+  The EFI_HANDLE of the PCI Host Bridge of which this PCI Root Bridge is a member.\r
+\r
+  @param PollMem\r
+  Polls an address in memory mapped I/O space until an exit condition is met, \r
+  or a timeout occurs. \r
+\r
+  @param PollIo\r
+  Polls an address in I/O space until an exit condition is met, or a timeout occurs. \r
+\r
+  @param Mem.Read\r
+  Allows reads from memory mapped I/O space. \r
+\r
+  @param Mem.Write\r
+  Allows writes to memory mapped I/O space. \r
+\r
+  @param Io.Read\r
+  Allows reads from I/O space. \r
+\r
+  @param Io.Write\r
+  Allows writes to I/O space. \r
+\r
+  @param Pci.Read\r
+  Allows reads from PCI configuration space. \r
+\r
+  @param Pci.Write\r
+  Allows writes to PCI configuration space. \r
+\r
+  @param CopyMem\r
+  Allows one region of PCI root bridge memory space to be copied to another \r
+  region of PCI root bridge memory space. \r
+\r
+  @param Map\r
+  Provides the PCI controller's specific addresses needed to access system memory for DMA. \r
+\r
+  @param Unmap\r
+  Releases any resources allocated by Map(). \r
+\r
+  @param AllocateBuffer\r
+  Allocates pages that are suitable for a common buffer mapping. \r
+\r
+  @param FreeBuffer\r
+  Free pages that were allocated with AllocateBuffer(). \r
+\r
+  @param Flush\r
+  Flushes all PCI posted write transactions to system memory. \r
+\r
+  @param GetAttributes\r
+  Gets the attributes that a PCI root bridge supports setting with SetAttributes(), \r
+  and the attributes that a PCI root bridge is currently using. \r
+\r
+  @param SetAttributes\r
+  Sets attributes for a resource range on a PCI root bridge. \r
+\r
+  @param Configuration\r
+  Gets the current resource settings for this PCI root bridge. \r
+\r
+  @param SegmentNumber\r
+  The segment number that this PCI root bridge resides.\r
+\r
+**/\r
 struct _EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL {\r
   EFI_HANDLE                                      ParentHandle;\r
   EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL_POLL_IO_MEM     PollMem;\r
index fc3b5abb29dbb333f5ef722f2b65d135dc1d6c87..71e2a518978cc59f2a732781fd2838644bcac83f 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Platform Driver Override protocol as defined in the UEFI 2.1 specification.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -122,6 +122,30 @@ EFI_STATUS
 //\r
 // Interface structure for the Platform Driver Override Protocol\r
 //\r
+/**  \r
+  @par Protocol Description:\r
+  This protocol matches one or more drivers to a controller. A platform driver \r
+  produces this protocol, and it is installed on a separate handle. This protocol \r
+  is used by the ConnectController() boot service to select the best driver \r
+  for a controller. All of the drivers returned by this protocol have a higher \r
+  precedence than drivers found from an EFI Bus Specific Driver Override Protocol \r
+  or drivers found from the general UEFI driver Binding search algorithm. If more \r
+  than one driver is returned by this protocol, then the drivers are returned in \r
+  order from highest precedence to lowest precedence.\r
+\r
+  @param GetDriver\r
+  Retrieves the image handle of a platform override driver for a controller in the system. \r
+\r
+  @param GetDriverPath\r
+  Retrieves the device path of a platform override driver for a controller in the system. \r
+\r
+  @param DriverLoaded\r
+  This function is used after a driver has been loaded using a device path returned \r
+  by GetDriverPath(). This function associates a device path to an image handle, \r
+  so the image handle can be returned the next time that GetDriver() is called for \r
+  the same controller. \r
+\r
+**/\r
 struct _EFI_PLATFORM_DRIVER_OVERRIDE_PROTOCOL {\r
   EFI_PLATFORM_DRIVER_OVERRIDE_GET_DRIVER       GetDriver;\r
   EFI_PLATFORM_DRIVER_OVERRIDE_GET_DRIVER_PATH  GetDriverPath;\r
index a22043f3c238c4462e9f57fc7946cc212a201da7..887b8023ca6f5684fd52ac869985a6aedd640b8e 100644 (file)
@@ -2,7 +2,7 @@
   The file provides the protocol to retrieve configuration\r
   information for a device that a UEFI driver is about to start.\r
 \r
-  Copyright (c) 2006 - 2007, Intel Corporation\r
+  Copyright (c) 2006 - 2008, Intel Corporation \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -48,75 +48,73 @@ typedef struct _EFI_PLATFORM_TO_DRIVER_CONFIGURATION_PROTOCOL EFI_PLATFORM_TO_DR
   ParameterBlock has been processed via a Query and corresponding\r
   Response call it must not be returned again via a Query call.\r
 \r
-  @param This   A pointer to the\r
-                EFI_PLATFORM_TO_DRIVER_CONFIGURATION_PROTOC OL\r
-                instance.\r
+  @param This                 A pointer to the EFI_PLATFORM_TO_DRIVER_CONFIGURATION_PROTOCOL instance.\r
   \r
-  @param ControllerHandle   The handle the platform will return\r
-                            configuration information about.\r
+  @param ControllerHandle     The handle the platform will return\r
+                              configuration information about.\r
   \r
-  @param ChildHandle  The handle of the child controller to\r
-                      return information on. This is an optional\r
-                      parameter that may be NULL. It will be\r
-                      NULL for device drivers, and for bus\r
-                      drivers that attempt to get options for\r
-                      the bus controller. It will not be NULL\r
-                      for a bus driver that attempts to get\r
-                      options for one of its child controllers.\r
+  @param ChildHandle          The handle of the child controller to\r
+                              return information on. This is an optional\r
+                              parameter that may be NULL. It will be\r
+                              NULL for device drivers, and for bus\r
+                              drivers that attempt to get options for\r
+                              the bus controller. It will not be NULL\r
+                              for a bus driver that attempts to get\r
+                              options for one of its child controllers.\r
   \r
   \r
-  @param Instance   Pointer to the Instance value. On output the\r
-                    instance associated with the parameter data\r
-                    return. On input zero means return the first\r
-                    query data or pass in a valid instance\r
-                    number returned from a previous call to\r
-                    Query.\r
-\r
-  @param ParameterTypeGuid  An EFI_GUID that defines the\r
-                            contents of ParameterBlock. UEFI\r
-                            drivers must use the\r
-                            ParameterTypeGuid to determine how\r
-                            to parser the ParameterBlock.\r
-\r
-  @param ParameterBlock   The platform returns a pointer to the\r
-                          ParameterBlock structure which\r
-                          contains details about the\r
-                          configuration parameters specific to\r
-                          the ParameterTypeGuid. This structure\r
-                          is defined based on the protocol and\r
-                          may be different for different\r
-                          protocols. UEFI driver decodes this\r
-                          structure and its contents based on\r
-                          ProtocolGuid. ParameterBlock is\r
-                          allocated by the platform and the\r
-                          platform is responsible for freeing\r
-                          the ParameterBlock after Result is\r
-                          called.\r
+  @param Instance             Pointer to the Instance value. On output the\r
+                              instance associated with the parameter data\r
+                              return. On input zero means return the first\r
+                              query data or pass in a valid instance\r
+                              number returned from a previous call to\r
+                              Query.\r
+\r
+  @param ParameterTypeGuid    An EFI_GUID that defines the\r
+                              contents of ParameterBlock. UEFI\r
+                              drivers must use the\r
+                              ParameterTypeGuid to determine how\r
+                              to parser the ParameterBlock.\r
+\r
+  @param ParameterBlock       The platform returns a pointer to the\r
+                              ParameterBlock structure which\r
+                              contains details about the\r
+                              configuration parameters specific to\r
+                              the ParameterTypeGuid. This structure\r
+                              is defined based on the protocol and\r
+                              may be different for different\r
+                              protocols. UEFI driver decodes this\r
+                              structure and its contents based on\r
+                              ProtocolGuid. ParameterBlock is\r
+                              allocated by the platform and the\r
+                              platform is responsible for freeing\r
+                              the ParameterBlock after Result is\r
+                              called.\r
 \r
   @param ParameterBlockSize   The platform returns the size of\r
                               the ParameterBlock in bytes.\r
 \r
 \r
-  @retval EFI_SUCCESS   The platform return parameter\r
-                        information for ControllerHandle.\r
+  @retval EFI_SUCCESS           The platform return parameter\r
+                                information for ControllerHandle.\r
 \r
-  @retval EFI_NOT_FOUND No more unread Instance exists.\r
+  @retval EFI_NOT_FOUND         No more unread Instance exists.\r
 \r
   @retval EFI_INVALID_PARAMETER ControllerHandle is not a valid\r
                                 EFI_HANDLE.\r
 \r
   @retval EFI_INVALID_PARAMETER Instance is NULL.\r
 \r
-  @retval EFI_DEVICE_ERROR  A device error occurred while\r
-                            attempting to return parameter block\r
-                            information for the controller\r
-                            specified by ControllerHandle and\r
-                            ChildHandle.\r
+  @retval EFI_DEVICE_ERROR      A device error occurred while\r
+                                attempting to return parameter block\r
+                                information for the controller\r
+                                specified by ControllerHandle and\r
+                                ChildHandle.\r
 \r
-  @retval EFI_OUT_RESOURCES There are not enough resources\r
-                            available to set the configuration\r
-                            options for the controller specified\r
-                            by ControllerHandle and ChildHandle.\r
+  @retval EFI_OUT_RESOURCES     There are not enough resources\r
+                                available to set the configuration\r
+                                options for the controller specified\r
+                                by ControllerHandle and ChildHandle.\r
 \r
 \r
 **/\r
@@ -205,45 +203,40 @@ typedef enum {
   ParameterTypeGuid. The platform is responsible for freeing\r
   ParameterBlock and the UEFI driver must not try to free it\r
 \r
-  @param This   A pointer to the\r
-                EFI_PLATFORM_TO_DRIVER_CONFIGURATION_PROTOC OL\r
-                instance.\r
+  @param This               A pointer to the EFI_PLATFORM_TO_DRIVER_CONFIGURATION_PROTOCOL instance.\r
 \r
-  @param ControllerHandle The handle the driver is returning\r
-                          configuration information about.\r
+  @param ControllerHandle   The handle the driver is returning\r
+                            configuration information about.\r
 \r
-  @param ChildHandle  The handle of the child controller to\r
-                      return information on. This is an optional\r
-                      parameter that may be NULL. It will be\r
-                      NULL for device drivers, and for bus\r
-                      drivers that attempt to get options for\r
-                      the bus controller. It will not be NULL\r
-                      for a bus driver that attempts to get\r
-                      options for one of its child controllers.\r
-                      Instance Instance data returned from\r
-                      Query().\r
+  @param ChildHandle        The handle of the child controller to\r
+                            return information on. This is an optional\r
+                            parameter that may be NULL. It will be\r
+                            NULL for device drivers, and for bus\r
+                            drivers that attempt to get options for\r
+                            the bus controller. It will not be NULL\r
+                            for a bus driver that attempts to get\r
+                            options for one of its child controllers.\r
+                            Instance Instance data returned from\r
+                            Query().\r
 \r
-  @param ParameterTypeGuid ParameterTypeGuid returned from\r
-                           Query.\r
+  @param ParameterTypeGuid  ParameterTypeGuid returned from Query.\r
 \r
-  @param ParameterBlock ParameterBlock returned from Query.\r
+  @param ParameterBlock     ParameterBlock returned from Query.\r
 \r
-  @param ParameterBlockSize The ParameterBlock size returned\r
-                            from Query.\r
+  @param ParameterBlockSize The ParameterBlock size returned from Query.\r
 \r
-  @param Configuration  ActionThe driver tells the platform what\r
-                        action is required for ParameterBlock to\r
-                        take effect.\r
-  \r
+  @param Configuration      ActionThe driver tells the platform what\r
+                            action is required for ParameterBlock to\r
+                            take effect.\r
   \r
-  @retval EFI_SUCCESS The platform return parameter information\r
-                      for ControllerHandle.\r
   \r
-  @retval EFI_NOT_FOUND Instance was not found.\r
+  @retval EFI_SUCCESS           The platform return parameter information\r
+                                for ControllerHandle.\r
   \r
-  @retval EFI_INVALID_PARAMETER ControllerHandle is not a valid\r
-                                EFI_HANDLE.\r
+  @retval EFI_NOT_FOUND         Instance was not found.\r
   \r
+  @retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.\r
\r
   @retval EFI_INVALID_PARAMETER Instance is zero.\r
   \r
 **/\r
@@ -262,6 +255,7 @@ EFI_STATUS
 \r
 \r
 /**\r
+  @par Protocol Description:\r
   The EFI_PLATFORM_TO_DRIVER_CONFIGURATION_PROTOCOL is used by the\r
   UEFI driver to query the platform for configuration information.\r
   The UEFI driver calls Query() multiple times to get\r
@@ -273,9 +267,9 @@ EFI_STATUS
   understand the data returned via Query() and thus no action was\r
   taken.\r
 \r
-  @param  Query   Called by the UEFI Driver Start() function to\r
-                  get configuration information from the\r
-                  platform.\r
+  @param  Query     Called by the UEFI Driver Start() function to\r
+                    get configuration information from the\r
+                    platform.\r
   \r
   @param  Response  Called by the UEFI Driver Start() function\r
                     to let the platform know how UEFI driver\r
@@ -305,24 +299,23 @@ struct _EFI_PLATFORM_TO_DRIVER_CONFIGURATION_PROTOCOL {
   parameter block definition, newer ParameterTypeGuid will be\r
   used.\r
 \r
-  @param CLPCommand   A pointer to the DMTF SM CLP command line\r
-                      null-terminated string that the driver is\r
-                      required to parse and process when this\r
-                      EFI_SUCCESS The platform return parameter\r
-                      information for ControllerHandle.\r
-                      EFI_NOT_FOUND Instance was not found.\r
-                      EFI_INVALID_PARAMETER ControllerHandle is\r
-                      not a valid EFI_HANDLE.\r
-                      EFI_INVALID_PARAMETER Instance is zero.\r
-                      function is called. See the DMTF SM CLP\r
-                      Specification 1.0 Final Standard for\r
-                      details on the format and syntax of the\r
-                      CLP command line string. CLPCommand buffer\r
-                      is allocated by the producer of the\r
-                      EFI_PLATFORM_TO_DRIVER_CONFIGURATION_PROTOOL.\r
-\r
-  @param CLPCommandLength   The length of the CLP Command in\r
-                            bytes.\r
+  @param CLPCommand       A pointer to the DMTF SM CLP command line\r
+                          null-terminated string that the driver is\r
+                          required to parse and process when this\r
+                          EFI_SUCCESS The platform return parameter\r
+                          information for ControllerHandle.\r
+                          EFI_NOT_FOUND Instance was not found.\r
+                          EFI_INVALID_PARAMETER ControllerHandle is\r
+                          not a valid EFI_HANDLE.\r
+                          EFI_INVALID_PARAMETER Instance is zero.\r
+                          function is called. See the DMTF SM CLP\r
+                          Specification 1.0 Final Standard for\r
+                          details on the format and syntax of the\r
+                          CLP command line string. CLPCommand buffer\r
+                          is allocated by the producer of the\r
+                          EFI_PLATFORM_TO_DRIVER_CONFIGURATION_PROTOOL.\r
+\r
+  @param CLPCommandLength The length of the CLP Command in bytes.\r
 \r
   @param CLPReturnString  A pointer to the CLP return status\r
                           string that the driver is required to\r
index e98a4976a7b3f9caa425eb4f8c33418b94077d33..c341d46aeca6e1b04f900b2deefe6359b1afd4a4 100644 (file)
@@ -1,7 +1,8 @@
 /** @file\r
-  EFI PXE Base Code Protocol definitions.\r
+  EFI PXE Base Code Protocol definitions, which is used to access PXE-compatible \r
+  devices for network access and network booting.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -607,6 +608,63 @@ EFI_STATUS
 // \r
 #define EFI_PXE_BASE_CODE_INTERFACE_REVISION  EFI_PXE_BASE_CODE_PROTOCOL_REVISION\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_PXE_BASE_CODE_PROTOCOL is used to control PXE-compatible devices.\r
+  An EFI_PXE_BASE_CODE_PROTOCOL will be layered on top of an\r
+  EFI_MANAGED_NETWORK_PROTOCOL protocol in order to perform packet level transactions.\r
+  The EFI_PXE_BASE_CODE_PROTOCOL handle also supports the\r
+  EFI_LOAD_FILE_PROTOCOL protocol. This provides a clean way to obtain control from the\r
+  boot manager if the boot path is from the remote device.\r
+\r
+  @param Revision\r
+  The revision of the EFI_PXE_BASE_CODE_PROTOCOL. All future revisions must \r
+  be backwards compatible. If a future version is not backwards compatible \r
+  it is not the same GUID.\r
+\r
+  @param Start\r
+  Starts the PXE Base Code Protocol. Mode structure information is not valid and \r
+  no other Base Code Protocol functions will operate until the Base Code is started. \r
+\r
+  @param Stop\r
+  Stops the PXE Base Code Protocol. Mode structure information is unchanged by this function. \r
+  No Base Code Protocol functions will operate until the Base Code is restarted. \r
+\r
+  @param Dhcp\r
+  Attempts to complete a DHCPv4 D.O.R.A. (discover / offer / request / acknowledge) \r
+  or DHCPv6 S.A.R.R (solicit / advertise / request / reply) sequence. \r
+\r
+  @param Discover\r
+  Attempts to complete the PXE Boot Server and/or boot image discovery sequence. \r
+\r
+  @param Mtftp\r
+  Performs TFTP and MTFTP services. \r
+\r
+  @param UdpWrite\r
+  Writes a UDP packet to the network interface. \r
+\r
+  @param UdpRead\r
+  Reads a UDP packet from the network interface. \r
+\r
+  @param SetIpFilter\r
+  Updates the IP receive filters of the network device. \r
+\r
+  @param Arp\r
+  Uses the ARP protocol to resolve a MAC address. \r
+\r
+  @param SetParameters\r
+  Updates the parameters that affect the operation of the PXE Base Code Protocol. \r
+\r
+  @param SetStationIp\r
+  Updates the station IP address and subnet mask values. \r
+\r
+  @param SetPackets\r
+  Updates the contents of the cached DHCP and Discover packets. \r
+\r
+  @param Mode\r
+  Pointer to the EFI_PXE_BASE_CODE_MODE data for this device. \r
+\r
+**/\r
 struct _EFI_PXE_BASE_CODE_PROTOCOL {\r
   UINT64                            Revision;\r
   EFI_PXE_BASE_CODE_START           Start;\r
index 265c4e9f453302562b8c360e06c7cdd305e7bbe6..0745d7c655c30ec7c0d79018fdcccb76fa9aeeea 100644 (file)
@@ -1,7 +1,9 @@
 /** @file\r
-  EFI PXE Base Code CallBack Protocol\r
+  EFI PXE Base Code CallBack Protocol is as defined in UEFI specification.\r
+  It is invoked when the PXE Base Code Protocol is about to transmit, has received, \r
+  or is waiting to receive a packet.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -86,6 +88,21 @@ EFI_PXE_BASE_CODE_CALLBACK_STATUS
   IN EFI_PXE_BASE_CODE_PACKET             *Packet     OPTIONAL\r
   );\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  Protocol that is invoked when the PXE Base Code Protocol is about \r
+  to transmit, has received, or is waiting to receive a packet.\r
+\r
+  @param Revision\r
+  The revision of the EFI_PXE_BASE_CODE_PROTOCOL. All future revisions must \r
+  be backwards compatible. If a future version is not backwards compatible \r
+  it is not the same GUID.\r
+\r
+  @param Callback\r
+  Callback routine used by the PXE Base Code Dhcp(), Discover(), Mtftp(), \r
+  UdpWrite(), and Arp() functions.\r
+\r
+**/\r
 struct _EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL {\r
   UINT64            Revision;\r
   EFI_PXE_CALLBACK  Callback;\r
index a44fbaf1d37428f0b3029087da185cf7df9e09af..d25bb75145dd33dde619ae8607359e7b9da1c5b6 100644 (file)
@@ -1,5 +1,5 @@
 /** @file\r
-  Real Time clock Architectural Protocol as defined in DXE CIS\r
+  Real Time clock Architectural Protocol as defined in PI Specification VOLUME 2 DXE\r
 \r
   This code abstracts time and data functions. Used to provide\r
   Time and date related EFI runtime services.\r
@@ -11,7 +11,7 @@
 \r
   No CRC of the EFI system table is required, as it is done in the DXE core.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -20,9 +20,6 @@
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
 \r
-  @par Revision Reference:\r
-  Version 0.91B.\r
-\r
 **/\r
 \r
 #ifndef __ARCH_PROTOCOL_REAL_TIME_CLOCK_H__\r
index 3e7ee4460130e5fee344ff957bdb1b915a033c6c..aa7ed3f490f48ac6dd6efe8752cc3a48d58096f5 100644 (file)
@@ -1,5 +1,5 @@
 /** @file\r
-  Reset Architectural Protocol as defined in the DXE CIS\r
+  Reset Architectural Protocol as defined in PI Specification VOLUME 2 DXE\r
 \r
   Used to provide ResetSystem runtime services\r
 \r
@@ -8,7 +8,7 @@
 \r
   No CRC of the EFI system table is required, as it is done in the DXE core.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -17,9 +17,6 @@
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
 \r
-  @par Revision Reference:\r
-  Version 0.91B.\r
-\r
 **/\r
 \r
 #ifndef __ARCH_PROTOCOL_RESET_H__\r
index a58b7f52427e065724d595960fc3d8b833af63c6..5fb8aee7ca75ab257bd47909e89ed538300d627b 100644 (file)
@@ -1,5 +1,5 @@
 /** @file\r
-  Runtime Architectural Protocol as defined in DXE CIS\r
+  Runtime Architectural Protocol as defined in PI Specification VOLUME 2 DXE\r
 \r
   This code is used to produce the UEFI 2.0 runtime virtual switch over\r
 \r
@@ -13,7 +13,7 @@
   by this driver to produce the runtime transition to virtual mode\r
   calling.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -22,9 +22,6 @@
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
 \r
-  @par Revision Reference:\r
-  Version 0.91.\r
-\r
 **/\r
 \r
 #ifndef __ARCH_PROTOCOL_RUNTIME_H__\r
index 953098bb2509f60907610a543c9c5c9b036c0a5d..030a06229d3677e6ad547dba7d5009b8e719a808 100644 (file)
@@ -1,7 +1,10 @@
 /** @file\r
   EFI_SCSI_IO_PROTOCOL as defined in UEFI 2.0.\r
+  This protocol is used by code, typically drivers, running in the EFI boot \r
+  services environment to access SCSI devices. In particular, functions for \r
+  managing devices on SCSI buses are defined here.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -217,6 +220,34 @@ EFI_STATUS
   )\r
 ;\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  Provides services to manage and communicate with SCSI devices.\r
+\r
+  @param GetDeviceType\r
+  Retrieves the information of the device type which the SCSI device belongs to. \r
+\r
+  @param GetDeviceLocation\r
+  Retrieves the device location information in the SCSI bus. \r
+\r
+  @param ResetBus\r
+  Resets the entire SCSI bus the SCSI device attaches to. \r
+\r
+  @param ResetDevice\r
+  Resets the SCSI Device that is specified by the device handle the SCSI I/O \r
+  protocol attaches. \r
+\r
+  @param ExecuteScsiCommand\r
+  Sends a SCSI command to the SCSI device and waits for the execution completion \r
+  until an exit condition is met, or a timeout occurs. \r
+\r
+  @param IoAlign\r
+  Supplies the alignment requirement for any buffer used in a data transfer. \r
+  IoAlign values of 0 and 1 mean that the buffer can be placed anywhere in memory. \r
+  Otherwise, IoAlign must be a power of 2, and the requirement is that the \r
+  start address of a buffer must be evenly divisible by IoAlign with no remainder.\r
+\r
+**/\r
 struct _EFI_SCSI_IO_PROTOCOL {\r
   EFI_SCSI_IO_PROTOCOL_GET_DEVICE_TYPE      GetDeviceType;\r
   EFI_SCSI_IO_PROTOCOL_GET_DEVICE_LOCATION  GetDeviceLocation;\r
index 4a8d947798cc2d7553eee8869319c0d6a7b400f6..2192e9bf4951c36416389d136454bc42c77db3ea 100644 (file)
@@ -1,7 +1,14 @@
 /** @file\r
-  SCSI Pass Through protocol.\r
-\r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  SCSI Pass Through protocol as defined in EFI 1.1.\r
+  This protocol allows information about a SCSI channel to be collected, \r
+  and allows SCSI Request Packets to be sent to any SCSI devices on a SCSI\r
+  channel even if those devices are not boot devices. This protocol is attached \r
+  to the device handle of each SCSI channel in a system that the protocol \r
+  supports, and can be used for diagnostics. It may also be used to build \r
+  a Block I/O driver for SCSI hard drives and SCSI CD-ROM or DVD drives to\r
+  allow those devices to become boot devices.\r
+\r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -295,6 +302,37 @@ EFI_STATUS
   )\r
 ;\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_SCSI_PASS_THRU_PROTOCOL provides information about a SCSI channel and\r
+  the ability to send SCI Request Packets to any SCSI device attached to that SCSI channel. The\r
+  information includes the Target ID of the host controller on the SCSI channel, the attributes of\r
+  the SCSI channel, the printable name for the SCSI controller, and the printable name of the\r
+  SCSI channel.\r
+\r
+  @param Mode \r
+  A pointer to the EFI_SCSI_PASS_THRU_MODE data for this SCSI channel.\r
+\r
+  @param PassThru \r
+  Sends a SCSI Request Packet to a SCSI device that is connected to the SCSI channel.\r
+\r
+  @param GetNextDevice \r
+  Used to retrieve the list of legal Target IDs and LUNs for the\r
+  SCSI devices on a SCSI channel. \r
+\r
+  @param BuildDevicePath \r
+  Used to allocate and build a device path node for a SCSI device on a SCSI channel.\r
+\r
+  @param GetTargetLun \r
+  Used to translate a device path node to a Target ID and LUN.\r
+\r
+  @param ResetChannel \r
+  Resets the SCSI channel. This operation resets all the SCSI\r
+  devices connected to the SCSI channel.\r
+\r
+  @param ResetTarget \r
+  Resets a SCSI device that is connected to the SCSI channel. \r
+**/\r
 struct _EFI_SCSI_PASS_THRU_PROTOCOL {\r
   EFI_SCSI_PASS_THRU_MODE               *Mode;\r
   EFI_SCSI_PASS_THRU_PASSTHRU           PassThru;\r
index 14c176296bc25c586b3ead31aae38542ad03a89e..7635818ff82fae7855b0f2bf9dcf96d6c9295c50 100644 (file)
@@ -1,7 +1,9 @@
 /** @file\r
   EFI_EXT_SCSI_PASS_THRU_PROTOCOL as defined in UEFI 2.0.\r
+  This protocol provides services that allow SCSI Pass Thru commands \r
+  to be sent to SCSI devices attached to a SCSI channel.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -312,7 +314,38 @@ EFI_STATUS
   IN OUT UINT8                                     **Target\r
   )\r
 ;          \r
-  \r
+\r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_EXT_SCSI_PASS_THRU_PROTOCOL provides information about a SCSI channel \r
+  and the ability to send SCI Request Packets to any SCSI device attached to \r
+  that SCSI channel. The information includes the Target ID of the host controller \r
+  on the SCSI channel and the attributes of the SCSI channel.\r
+\r
+  @param Mode \r
+  A pointer to the EFI_EXT_SCSI_PASS_THRU_MODE data for this SCSI channel. \r
+\r
+  @param PassThru \r
+  Sends a SCSI Request Packet to a SCSI device that is Connected to the SCSI channel. \r
+\r
+  @param GetNextTargetLun \r
+  Retrieves the list of legal Target IDs and LUNs for the SCSI devices on a SCSI channel. \r
+\r
+  @param BuildDevicePath \r
+  Allocates and builds a device path node for a SCSI Device on a SCSI channel. \r
+\r
+  @param GetTargetLun\r
+  Translates a device path node to a Target ID and LUN. \r
+\r
+  @param ResetChannel\r
+  Resets the SCSI channel. This operation resets all the SCSI devices connected to the SCSI channel. \r
+\r
+  @param ResetTargetLun\r
+  Resets a SCSI device that is connected to the SCSI channel. \r
+\r
+  @param GetNextTartget \r
+  Retrieves the list of legal Target IDs for the SCSI devices on a SCSI channel. \r
+**/  \r
 struct _EFI_EXT_SCSI_PASS_THRU_PROTOCOL {\r
   EFI_EXT_SCSI_PASS_THRU_MODE                *Mode;\r
   EFI_EXT_SCSI_PASS_THRU_PASSTHRU            PassThru;\r
index 1db25742d0da268ce883c9f838b093241163829b..9d8c007127d23bd143dafd9db0c733baefbe4ddf 100644 (file)
@@ -1,5 +1,5 @@
 /** @file\r
-  Security Architectural Protocol as defined in the DXE CIS\r
+  Security Architectural Protocol as defined in PI Specification VOLUME 2 DXE\r
 \r
   Used to provide Security services.  Specifically, dependening upon the \r
   authentication state of a discovered driver in a Firmware Volume, the \r
@@ -14,7 +14,7 @@
   in the Schedule-On-Request (SOR) state.  This will allow for later disposition \r
   of the driver by platform agent, such as Platform BDS.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -23,9 +23,6 @@
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
 \r
-  @par Revision Reference:\r
-  Version 0.91B.\r
-\r
 **/\r
 \r
 #ifndef __ARCH_PROTOCOL_SECURITY_H__\r
@@ -117,9 +114,8 @@ EFI_STATUS
   Specification for details on the GUIDed Section Extraction Protocol and \r
   Authentication Sections.\r
 \r
-  @par Protocol Parameters:\r
-\r
-  FileAuthenticationState - This service is called upon fault with respect to \r
+  @param FileAuthenticationState\r
+  This service is called upon fault with respect to \r
   the authentication of a section of a file.\r
 \r
 **/\r
index 83f5eb891e3e4235596222669cef20293944ca7f..b9f2ff024f722fd842659ed78f89bc5015fa2dbd 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
-  Security Policy protocol as defined in the DXE CIS\r
+  Security Policy protocol as defined in PI Specification VOLUME 2 DXE\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -10,9 +10,6 @@
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
 \r
-  @par Revision Reference:\r
-  Version 0.91B.\r
-\r
 **/\r
 \r
 #ifndef _SECURITY_POLICY_H_\r
index 9542ef1d94c1d443b468b5236c759f1353d02d12..3cffd930e5e165bb00f8c5583b1aad83253c93fc 100644 (file)
@@ -4,7 +4,7 @@
   Abstraction of a basic serial device. Targeted at 16550 UART, but\r
   could be much more generic.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -221,22 +221,36 @@ EFI_STATUS
 ;\r
 \r
 /**\r
+  @par Data Structure Description:\r
   The data values in SERIAL_IO_MODE are read-only and are updated by the code \r
   that produces the SERIAL_IO_PROTOCOL member functions.\r
 \r
-  ControlMask - A mask fo the Control bits that the device supports. The device\r
+  @param ControlMask\r
+  A mask fo the Control bits that the device supports. The device\r
   must always support the Input Buffer Empty control bit.\r
-  TimeOut  - If applicable, the number of microseconds to wait before timing out\r
+  \r
+  @param TimeOut\r
+  If applicable, the number of microseconds to wait before timing out\r
   a Read or Write operation.\r
-  BaudRate - If applicable, the current baud rate setting of the device; otherwise,\r
+  \r
+  @param BaudRate\r
+  If applicable, the current baud rate setting of the device; otherwise,\r
   baud rate has the value of zero to indicate that device runs at the\r
   device's designed speed.\r
-  ReceiveFifoDepth - The number of characters the device will buffer on input\r
-  DataBits - The number of characters the device will buffer on input\r
-  Parity   - If applicable, this is the EFI_PARITY_TYPE that is computed or \r
+  \r
+  @param ReceiveFifoDepth\r
+  The number of characters the device will buffer on input\r
+  \r
+  @param DataBits\r
+  The number of characters the device will buffer on input\r
+  \r
+  @param Parity\r
+  If applicable, this is the EFI_PARITY_TYPE that is computed or \r
   checked as each character is transmitted or reveived. If the device\r
   does not support parity the value is the default parity value.\r
-  StopBits - If applicable, the EFI_STOP_BITS_TYPE number of stop bits per\r
+  \r
+  @param StopBits\r
+  If applicable, the EFI_STOP_BITS_TYPE number of stop bits per\r
   character. If the device does not support stop bits the value is\r
   the default stop bit values.\r
 \r
@@ -258,6 +272,43 @@ typedef struct {
 #define EFI_SERIAL_IO_PROTOCOL_REVISION    0x00010000\r
 #define SERIAL_IO_INTERFACE_REVISION  EFI_SERIAL_IO_PROTOCOL_REVISION\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The Serial I/O protocol is used to communicate with UART-style serial devices. \r
+  These can be standard UART serial ports in PC-AT systems, serial ports attached \r
+  to a USB interface, or potentially any character-based I/O device.\r
+\r
+  @param Revision\r
+  The revision to which the EFI_SERIAL_IO_PROTOCOL adheres. All future revisions \r
+  must be backwards compatible. If a future version is not back wards compatible, \r
+  it is not the same GUID.\r
+\r
+  @param Reset\r
+  Resets the hardware device.\r
+\r
+  @param SetAttributes\r
+  Sets communication parameters for a serial device. These include \r
+  the baud rate, receive FIFO depth, transmit/receive time out, parity, data bits, \r
+  and stop bit attributes.\r
+\r
+  @param SetControl\r
+  Sets the control bits on a serial device. These include Request to \r
+  Send and Data Terminal Ready.\r
+\r
+  @param GetControl\r
+  Reads the status of the control bits on a serial device. These include \r
+  Clear to Send, Data Set Ready, Ring Indicator, and Carrier Detect.\r
+\r
+  @param Write\r
+  Sends a buffer of characters to a serial device.\r
+\r
+  @param Read\r
+  Receives a buffer of characters from a serial device.\r
+\r
+  @param Mode\r
+  Pointer to SERIAL_IO_MODE data. \r
+  \r
+**/\r
 struct _EFI_SERIAL_IO_PROTOCOL {\r
   UINT32                      Revision;\r
   EFI_SERIAL_RESET            Reset;\r
index cbaa8ea17f72eedb053679052003884318c984da..c0b5e832321c733c1abf0f57abf7b38987766973 100644 (file)
@@ -1,10 +1,10 @@
 /** @file\r
 \r
-  The file defines the generic Service Binding Protocol\r
-  functions.\r
+  The file defines the generic Service Binding Protocol functions.\r
+  It provides services that are required to create and destroy child \r
+  handles that support a given set of protocols.\r
 \r
-\r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -69,6 +69,24 @@ EFI_STATUS
   )\r
 ;\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_SERVICE_BINDING_PROTOCOL provides member functions to create and destroy \r
+  child handles. A driver is responsible for adding protocols to the child handle \r
+  in CreateChild() and removing protocols in DestroyChild(). It is also required \r
+  that the CreateChild() function opens the parent protocol BY_CHILD_CONTROLLER \r
+  to establish the parent-child relationship, and closes the protocol in DestroyChild().\r
+  The pseudo code for CreateChild() and DestroyChild() is provided to specify the \r
+  required behavior, not to specify the required implementation. Each consumer of \r
+  a software protocol is responsible for calling CreateChild() when it requires the \r
+  protocol and calling DestroyChild() when it is finished with that protocol.\r
+\r
+  @param CreateChild\r
+  Creates a child handle and installs a protocol.\r
+\r
+  @param DestroyChild\r
+  Destroys a child handle with a protocol installed on it.\r
+**/\r
 struct _EFI_SERVICE_BINDING_PROTOCOL {\r
   EFI_SERVICE_BINDING_CREATE_CHILD         CreateChild;\r
   EFI_SERVICE_BINDING_DESTROY_CHILD        DestroyChild;\r
index 8c24425ead1f3f247337a80c61d20f5734d96f1f..dfc8bc31fb1b6ec5a04efd6dcfeec971e3958211 100644 (file)
@@ -7,7 +7,7 @@
 \r
   UEFI 2.0 can boot from any valid EFI image contained in a SimpleFileSystem\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -325,6 +325,49 @@ EFI_STATUS
 // \r
 #define EFI_FILE_REVISION   EFI_FILE_PROTOCOL_REVISION\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_FILE_PROTOCOL provides file IO access to supported file systems.\r
+  An EFI_FILE_PROTOCOL provides access to a file's or directory's contents, \r
+  and is also a reference to a location in the directory tree of the file system \r
+  in which the file resides. With any given file handle, other files may be opened \r
+  relative to this file's location, yielding new file handles.\r
+\r
+  @param Revision\r
+  The version of the EFI_FILE_PROTOCOL interface. The version specified \r
+  by this specification is 0x00010000. Future versions are required \r
+  to be backward compatible to version 1.0.\r
+\r
+  @param Open\r
+  Opens or creates a new file. \r
+\r
+  @param Close\r
+  Closes the current file handle. \r
+\r
+  @param Delete\r
+  Deletes a file. \r
+\r
+  @param Read\r
+  Reads bytes from a file. \r
+\r
+  @param Write\r
+  Writes bytes to a file. \r
+\r
+  @param GetPosition\r
+  Returns the current file position. \r
+\r
+  @param SetPosition\r
+  Sets the current file position. \r
+\r
+  @param GetInfo\r
+  Gets the requested file or volume information. \r
+\r
+  @param SetInfo\r
+  Sets the requested file information. \r
+\r
+  @param Flush\r
+  Flushes all modified data associated with the file to the device. \r
+**/\r
 struct _EFI_FILE_PROTOCOL {\r
   UINT64                Revision;\r
   EFI_FILE_OPEN         Open;\r
index a1a9224704534c357319d759685846b677b49518..74c5163fbb9006940412d33a13e23f62e502c186 100644 (file)
@@ -8,7 +8,7 @@
   MCast - MultiCast\r
   ...\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -565,6 +565,75 @@ EFI_STATUS
 // \r
 #define EFI_SIMPLE_NETWORK_INTERFACE_REVISION   EFI_SIMPLE_NETWORK_PROTOCOL_REVISION\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_SIMPLE_NETWORK_PROTOCOL protocol is used to initialize access \r
+  to a network adapter. Once the network adapter initializes, \r
+  the EFI_SIMPLE_NETWORK_PROTOCOL protocol provides services that \r
+  allow packets to be transmitted and received.\r
+  \r
+  @param Revision\r
+  Revision of the EFI_SIMPLE_NETWORK_PROTOCOL. All future revisions must \r
+  be backwards compatible. If a future version is not backwards compatible \r
+  it is not the same GUID.\r
+\r
+  @param Start\r
+  Prepares the network interface for further command operations. \r
+  No other EFI_SIMPLE_NETWORK_PROTOCOL interface functions will operate \r
+  until this call is made. \r
+\r
+  @param Stop\r
+  Stops further network interface command processing. \r
+  No other EFI_SIMPLE_NETWORK_PROTOCOL interface functions will operate \r
+  after this call is made until another Start() call is made. \r
+\r
+  @param Initialize\r
+  Resets the network adapter and allocates the transmit and receive buffers. \r
+\r
+  @param Reset\r
+  Resets the network adapter and reinitializes it with the parameters \r
+  provided in the previous call to Initialize(). \r
+\r
+  @param Shutdown\r
+  Resets the network adapter and leaves it in a state safe for another driver \r
+  to initialize. The memory buffers assigned in the Initialize() call are released. \r
+  After this call, only the Initialize() or Stop() calls may be used. \r
+\r
+  @param ReceiveFilters\r
+  Enables and disables the receive filters for the network interface and, \r
+  if supported, manages the filtered multicast \r
+  HW MAC (Hardware Media Access Control) address list. \r
+\r
+  @param StationAddress\r
+  Modifies or resets the current station address, if supported. \r
+\r
+  @param Statistics\r
+  Collects statistics from the network interface and allows the statistics to be reset. \r
+\r
+  @param MCastIpToMac\r
+  Maps a multicast IP address to a multicast HW MAC address. \r
+\r
+  @param NvData\r
+  Reads and writes the contents of the NVRAM devices attached to the network interface. \r
+\r
+  @param GetStatus\r
+  Reads the current interrupt status and the list of recycled transmit \r
+  buffers from the network interface. \r
+\r
+  @param Transmit\r
+  Places a packet in the transmit queue. \r
+\r
+  @param Receive\r
+  Retrieves a packet from the receive queue, along with the status \r
+  flags that describe the packet type. \r
+\r
+  @param WaitForPacket\r
+  Event used with WaitForEvent() to wait for a packet to be received.\r
+\r
+  @param Mode\r
+  Pointer to the EFI_SIMPLE_NETWORK_MODE data for the device. \r
+\r
+**/\r
 struct _EFI_SIMPLE_NETWORK_PROTOCOL {\r
   UINT64                              Revision;\r
   EFI_SIMPLE_NETWORK_START            Start;\r
index 94c4f2176df02e23782b8f819eb71b83b5456fcf..2369b85ec6f75df4bda298d250c05a6d3db74163 100644 (file)
@@ -3,7 +3,7 @@
 \r
   Abstraction of a very simple pointer device like a mice or tracekballs.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -83,6 +83,26 @@ EFI_STATUS
   IN OUT EFI_SIMPLE_POINTER_STATE         *State\r
   );\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_SIMPLE_POINTER_PROTOCOL provides a set of services for a pointer \r
+  device that can use used as an input device from an application written \r
+  to this specification. The services include the ability to reset the \r
+  pointer device, retrieve get the state of the pointer device, and \r
+  retrieve the capabilities of the pointer device.\r
+\r
+  @param Reset\r
+  Resets the pointer device. \r
+\r
+  @param GetState\r
+  Retrieves the current state of the pointer device. \r
+\r
+  @param WaitForInput\r
+  Event to use with WaitForEvent() to wait for input from the pointer device.\r
+\r
+  @param Mode\r
+  Pointer to EFI_SIMPLE_POINTER_MODE data. \r
+**/\r
 struct _EFI_SIMPLE_POINTER_PROTOCOL {\r
   EFI_SIMPLE_POINTER_RESET      Reset;\r
   EFI_SIMPLE_POINTER_GET_STATE  GetState;\r
index 5298b2314660b985e0305d76ae67f8df56ce9c0e..292339a651ff30a3da1fded85fc397c1c93ce4e7 100644 (file)
@@ -4,7 +4,7 @@
   Abstraction of a very simple input device like a keyboard or serial\r
   terminal.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -120,6 +120,22 @@ EFI_STATUS
   )\r
 ;\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_SIMPLE_TEXT_INPUT_PROTOCOL is used on the ConsoleIn device. \r
+  It is the minimum required protocol for ConsoleIn.\r
+\r
+  @param Reset\r
+  Reset the ConsoleIn device.\r
+\r
+  @param ReadKeyStroke\r
+  Returns the next input character.\r
+\r
+  @param WaitForKey\r
+  Event to use with WaitForEvent() to wait for a key to be available.\r
+\r
+**/\r
+\r
 struct _EFI_SIMPLE_TEXT_INPUT_PROTOCOL {\r
   EFI_INPUT_RESET     Reset;\r
   EFI_INPUT_READ_KEY  ReadKeyStroke;\r
index 88b73b3928cec932c46a18695a4b84e99a8a57b5..3092fcbdd0952e476a4c81c66cb09ef6d13554a5 100644 (file)
@@ -4,7 +4,7 @@
   EFI_SIMPLE_TEXT_INPUT_PROTOCOL supports the same languages as\r
   the corresponding\r
 \r
-  Copyright (c) 2006 - 2007, Intel Corporation\r
+  Copyright (c) 2006 - 2008, Intel Corporation \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -38,9 +38,7 @@ typedef struct _EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL EFI_SIMPLE_TEXT_INPUT_EX_PROTO
   this specification and is left up to the platform firmware or\r
   driver to implement.\r
 \r
-  @param This A pointer to the EFI_SIMPLE_TEXT_INPUT_PROTOCOL_EX\r
-              instance. Type EFI_SIMPLE_TEXT_INPUT_PROTOCOL_EX\r
-              is defined in this section.\r
+  @param This                 A pointer to the EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL instance.\r
 \r
   @param ExtendedVerification Indicates that the driver may\r
                               perform a more exhaustive\r
@@ -48,7 +46,7 @@ typedef struct _EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL EFI_SIMPLE_TEXT_INPUT_EX_PROTO
                               device during reset.\r
 \r
 \r
-  @retval EFI_SUCCESS The device was reset.\r
+  @retval EFI_SUCCESS       The device was reset.\r
   \r
   @retval EFI_DEVICE_ERROR  The device is not functioning\r
                             correctly and could not be reset.\r
@@ -89,8 +87,8 @@ typedef struct _EFI_KEY_STATE {
 /**\r
   Definition of EFI_KEY_DATA.\r
 \r
-  @param Key  The EFI scan code and Unicode value returned from\r
-              the input device.\r
+  @param Key      The EFI scan code and Unicode value returned from\r
+                  the input device.\r
 \r
   @param KeyState The current state of various toggled\r
                   attributes as well as input modifier values.\r
@@ -185,8 +183,7 @@ typedef struct {
   respective Toggle and Shift state fields should not be active.\r
 \r
   \r
-  @param This   A pointer to the\r
-                EFI_SIMPLE_TEXT_INPUT_PROTOCOL_EX instance.\r
+  @param This     A pointer to the EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL instance.\r
 \r
   @param KeyData  A pointer to a buffer that is filled in with\r
                   the keystroke state data for the key that was\r
@@ -214,15 +211,13 @@ EFI_STATUS
   The SetState() function allows the input device hardware to\r
   have state settings adjusted.\r
   \r
-  @param This A pointer to the EFI_SIMPLE_TEXT_INPUT_PROTOCOL_EX\r
-              instance. Type EFI_SIMPLE_TEXT_INPUT_PROTOCOL_EX\r
-              is defined in this section.\r
+  @param This           A pointer to the EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL instance.\r
   \r
   @param KeyToggleState Pointer to the EFI_KEY_TOGGLE_STATE to\r
                         set the state for the input device.\r
   \r
   \r
-  @retval EFI_SUCCESS The device state was set appropriately.\r
+  @retval EFI_SUCCESS       The device state was set appropriately.\r
 \r
   @retval EFI_DEVICE_ERROR  The device is not functioning\r
                             correctly and could not have the\r
@@ -252,21 +247,19 @@ EFI_STATUS
   The RegisterKeystrokeNotify() function registers a function\r
   which will be called when a specified keystroke will occur.\r
   \r
-  @param This A pointer to the EFI_SIMPLE_TEXT_INPUT_PROTOCOL_EX\r
-              instance. Type EFI_SIMPLE_TEXT_INPUT_PROTOCOL_EX\r
-              is defined in this section.\r
+  @param This                     A pointer to the EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL instance.\r
   \r
-  @param KeyData  A pointer to a buffer that is filled in with\r
-                  the keystroke information for the key that was\r
-                  pressed.\r
+  @param KeyData                  A pointer to a buffer that is filled in with\r
+                                  the keystroke information for the key that was\r
+                                  pressed.\r
   \r
   @param KeyNotificationFunction  Points to the function to be\r
                                   called when the key sequence\r
                                   is typed specified by KeyData.\r
   \r
   \r
-  @param NotifyHandle Points to the unique handle assigned to\r
-                      the registered notification.\r
+  @param NotifyHandle             Points to the unique handle assigned to\r
+                                  the registered notification.\r
   \r
   @retval EFI_SUCCESS           The device state was set\r
                                 appropriately.\r
@@ -288,8 +281,7 @@ EFI_STATUS
   The UnregisterKeystrokeNotify() function removes the\r
   notification which was previously registered.\r
   \r
-  @param This A pointer to the EFI_SIMPLE_TEXT_INPUT_PROTOCOL_EX\r
-              instance.\r
+  @param This               A pointer to the EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL instance.\r
   \r
   @param NotificationHandle The handle of the notification\r
                             function being unregistered.\r
@@ -314,23 +306,23 @@ EFI_STATUS
   which allows a variety of extended shift state information to be\r
   returned.\r
 \r
-  @param Reset  Reset the ConsoleIn device. See Reset().\r
+  @param Reset            \r
+  Reset the ConsoleIn device. See Reset().\r
 \r
-  @param ReadKeyStrokeEx  Returns the next input character. See\r
-                          ReadKeyStrokeEx().\r
+  @param ReadKeyStrokeEx  \r
+  Returns the next input character.\r
 \r
-  @param WaitForKeyEx   Event to use with WaitForEvent() to wait\r
-                        for a key to be available.\r
+  @param WaitForKeyEx   \r
+  Event to use with WaitForEvent() to wait for a key to be available.\r
 \r
-  @param SetState   Set the EFI_KEY_TOGGLE_STATE state settings\r
-                    for the input device.\r
+  @param SetState   \r
+  Set the EFI_KEY_TOGGLE_STATE state settings for the input device.\r
 \r
-  @param RegisterKeyNotify  Register a notification function to\r
-                            be called when a given key sequence\r
-                            is hit.\r
+  @param RegisterKeyNotify  \r
+  Register a notification function to be called when a given key sequence is hit.\r
 \r
-  @param UnregisterKeyNotifyRemoves   A specific notification\r
-                                      function.\r
+  @param UnregisterKeyNotifyRemoves   \r
+  A specific notification function.\r
 \r
 **/\r
 struct _EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL{\r
index 8ed4598dfce6ad2f45e50aa23b4c9744278a93b1..5361e5c03d648c35e56dd14587650c1c3a032b64 100644 (file)
@@ -6,7 +6,7 @@
   a single hardware device or a virtual device that is an agregation\r
   of multiple physical devices.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -162,7 +162,7 @@ typedef EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL   SIMPLE_TEXT_OUTPUT_INTERFACE;
 typedef\r
 EFI_STATUS\r
 (EFIAPI *EFI_TEXT_RESET)(\r
-  IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL           *This,\r
+  IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL        *This,\r
   IN BOOLEAN                                ExtendedVerification\r
   )\r
 ;\r
@@ -349,14 +349,26 @@ EFI_STATUS
 ;\r
 \r
 /**\r
+  @par Data Structure Description:\r
   Mode Structure pointed to by Simple Text Out protocol.\r
 \r
-  MaxMode   - The number of modes supported by QueryMode () and SetMode ().\r
-  Mode      - The text mode of the output device(s).\r
-  Attribute - The current character output attribute\r
-  CursorColumn  - The cursor's column.\r
-  CursorRow     - The cursor's row.\r
-  CursorVisible - The cursor is currently visbile or not.\r
+  @param MaxMode\r
+  The number of modes supported by QueryMode () and SetMode ().\r
+  \r
+  @param Mode\r
+  The text mode of the output device(s).\r
+  \r
+  @param Attribute\r
+  The current character output attribute\r
+  \r
+  @param CursorColumn\r
+  The cursor's column.\r
+  \r
+  @param CursorRow\r
+  The cursor's row.\r
+  \r
+  @param CursorVisible\r
+  The cursor is currently visbile or not.\r
 \r
 **/\r
 typedef struct {\r
@@ -372,6 +384,43 @@ typedef struct {
   BOOLEAN CursorVisible;\r
 } EFI_SIMPLE_TEXT_OUTPUT_MODE;\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The SIMPLE_TEXT_OUTPUT protocol is used to control text-based output devices. \r
+  It is the minimum required protocol for any handle supplied as the ConsoleOut \r
+  or StandardError device. In addition, the minimum supported text mode of such \r
+  devices is at least 80 x 25 characters.\r
+\r
+  @param Reset\r
+  Reset the ConsoleOut device. \r
+\r
+  @param OutputString\r
+  Displays the Unicode string on the device at the current cursor location. \r
+\r
+  @param TestString\r
+  Tests to see if the ConsoleOut device supports this Unicode string.\r
+\r
+  @param QueryMode\r
+  Queries information concerning the output device's supported text mode. \r
+\r
+  @param SetMode\r
+  Sets the current mode of the output device. \r
+\r
+  @param SetAttribute\r
+  Sets the foreground and background color of the text that is output. \r
+\r
+  @param ClearScreen\r
+  Clears the screen with the currently set background color. \r
+\r
+  @param SetCursorPosition\r
+  Sets the current cursor position. \r
+\r
+  @param EnableCursor\r
+  Turns the visibility of the cursor on/off. \r
+\r
+  @param Mode\r
+  Pointer to SIMPLE_TEXT_OUTPUT_MODE data. \r
+**/\r
 struct _EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL {\r
   EFI_TEXT_RESET                Reset;\r
 \r
index 019d226aea7f3cc34c914ed2c14024fd9a43aa73..59826b7e9bb81d0ad149ae3789ee14a92b65baac 100644 (file)
@@ -2,7 +2,7 @@
   The file provides basic SMBus host controller management \r
   and basic data transactions over the SMBus.\r
 \r
-  Copyright (c) 2006 - 2007, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                          \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -34,12 +34,12 @@ typedef struct _EFI_SMBUS_HC_PROTOCOL EFI_SMBUS_HC_PROTOCOL;
   the SMBus slave devices accept this transaction or that this\r
   function returns with error. Status Codes Returned\r
   \r
-  @param This A pointer to the EFI_SMBUS_HC_PROTOCOL instance.\r
-              SlaveAddress The SMBus slave address of the device\r
-              with which to communicate. Type\r
-              EFI_SMBUS_DEVICE_ADDRESS is defined in\r
-              EFI_PEI_SMBUS_PPI.Execute() in the Platform\r
-              Initialization SMBus PPI Specification.\r
+  @param This     A pointer to the EFI_SMBUS_HC_PROTOCOL instance.\r
+                  SlaveAddress The SMBus slave address of the device\r
+                  with which to communicate. Type\r
+                  EFI_SMBUS_DEVICE_ADDRESS is defined in\r
+                  EFI_PEI_SMBUS_PPI.Execute() in the Platform\r
+                  Initialization SMBus PPI Specification.\r
 \r
   @param Command  This command is transmitted by the SMBus host\r
                   controller to the SMBus slave device and the\r
@@ -61,16 +61,16 @@ typedef struct _EFI_SMBUS_HC_PROTOCOL EFI_SMBUS_HC_PROTOCOL;
                   Platform Initialization SMBus PPI\r
                   Specification.\r
 \r
-  @param PecCheck   Defines if Packet Error Code (PEC) checking\r
-                    is required for this operation. SMBus Host\r
-                    Controller Code Definitions Version 1.0\r
-                    August 21, 2006 13 Length Signifies the\r
-                    number of bytes that this operation will do.\r
-                    The maximum number of bytes can be revision\r
-                    specific and operation specific. This field\r
-                    will contain the actual number of bytes that\r
-                    are executed for this operation. Not all\r
-                    operations require this argument.\r
+  @param PecCheck Defines if Packet Error Code (PEC) checking\r
+                  is required for this operation. SMBus Host\r
+                  Controller Code Definitions Version 1.0\r
+                  August 21, 2006 13 Length Signifies the\r
+                  number of bytes that this operation will do.\r
+                  The maximum number of bytes can be revision\r
+                  specific and operation specific. This field\r
+                  will contain the actual number of bytes that\r
+                  are executed for this operation. Not all\r
+                  operations require this argument.\r
 \r
   @param Buffer   Contains the value of data to execute to the\r
                   SMBus slave device. Not all operations require\r
@@ -78,28 +78,27 @@ typedef struct _EFI_SMBUS_HC_PROTOCOL EFI_SMBUS_HC_PROTOCOL;
                   identified by Length.\r
   \r
   \r
-  @retval EFI_SUCCESS   The last data that was returned from the\r
-                        access matched the poll exit criteria.\r
+  @retval EFI_SUCCESS           The last data that was returned from the\r
+                                access matched the poll exit criteria.\r
 \r
-  @retval EFI_CRC_ERROR Checksum is not correct (PEC is\r
-                        incorrect).\r
+  @retval EFI_CRC_ERROR         Checksum is not correct (PEC is incorrect).\r
 \r
-  @retval EFI_TIMEOUT   Timeout expired before the operation was\r
-                        completed. Timeout is determined by the\r
-                        SMBus host controller device.\r
+  @retval EFI_TIMEOUT           Timeout expired before the operation was\r
+                                completed. Timeout is determined by the\r
+                                SMBus host controller device.\r
 \r
   @retval EFI_OUT_OF_RESOURCES  The request could not be\r
                                 completed due to a lack of\r
                                 resources.\r
 \r
-  @retval EFI_DEVICE_ERROR  The request was not completed\r
-                            because a failure that was reflected\r
-                            in the Host Status Register bit.\r
-                            Device errors are a result of a\r
-                            transaction collision, illegal\r
-                            command field, unclaimed cycle (host\r
-                            initiated), or bus errors\r
-                            (collisions).\r
+  @retval EFI_DEVICE_ERROR      The request was not completed\r
+                                because a failure that was reflected\r
+                                in the Host Status Register bit.\r
+                                Device errors are a result of a\r
+                                transaction collision, illegal\r
+                                command field, unclaimed cycle (host\r
+                                initiated), or bus errors\r
+                                (collisions).\r
 \r
   @retval EFI_INVALID_PARAMETER Operation is not defined in\r
                                 EFI_SMBUS_OPERATION.\r
@@ -111,8 +110,8 @@ typedef struct _EFI_SMBUS_HC_PROTOCOL EFI_SMBUS_HC_PROTOCOL;
                                 outside the range of valid\r
                                 values.\r
 \r
-  @retval EFI_UNSUPPORTED   The SMBus operation or PEC is not\r
-                            supported. \r
+  @retval EFI_UNSUPPORTED       The SMBus operation or PEC is not\r
+                                supported. \r
 \r
   @retval EFI_BUFFER_TOO_SMALL  Buffer is not sufficient for\r
                                 this operation.\r
@@ -134,57 +133,54 @@ EFI_STATUS
 \r
 /**\r
    \r
-  The ArpDevice() function provides a standard way for a device driver to enumerate the entire\r
-  SMBus or specific devices on the bus.\r
-  \r
+  The ArpDevice() function provides a standard way for a device driver to \r
+  enumerate the entire SMBus or specific devices on the bus.\r
   \r
-  @param This A pointer to the EFI_SMBUS_HC_PROTOCOL instance.\r
-\r
-  @param ArpAll   A Boolean expression that indicates if the\r
-                  host drivers need to enumerate all the devices\r
-                  or enumerate only the device that is\r
-                  identified by SmbusUdid. If ArpAll is TRUE,\r
-                  SmbusUdid and SlaveAddress are optional. If\r
-                  ArpAll is FALSE, ArpDevice will enumerate\r
-                  SmbusUdid and the address will be at\r
-                  SlaveAddress.\r
-\r
-  @param SmbusUdid  The Unique Device Identifier (UDID) that is\r
-                    associated with this device. Type\r
-                    EFI_SMBUS_UDID is defined in\r
-                    EFI_PEI_SMBUS_PPI.ArpDevice() in the\r
-                    Platform Initialization SMBus PPI\r
-                    Specification.\r
+  @param This           A pointer to the EFI_SMBUS_HC_PROTOCOL instance.\r
+\r
+  @param ArpAll         A Boolean expression that indicates if the\r
+                        host drivers need to enumerate all the devices\r
+                        or enumerate only the device that is\r
+                        identified by SmbusUdid. If ArpAll is TRUE,\r
+                        SmbusUdid and SlaveAddress are optional. If\r
+                        ArpAll is FALSE, ArpDevice will enumerate\r
+                        SmbusUdid and the address will be at\r
+                        SlaveAddress.\r
+\r
+  @param SmbusUdid      The Unique Device Identifier (UDID) that is\r
+                        associated with this device. Type\r
+                        EFI_SMBUS_UDID is defined in\r
+                        EFI_PEI_SMBUS_PPI.ArpDevice() in the\r
+                        Platform Initialization SMBus PPI\r
+                        Specification.\r
 \r
   @param SlaveAddress   The SMBus slave address that is\r
                         associated with an SMBus UDID.\r
 \r
+  @retval EFI_SUCCESS           The last data that was returned from the\r
+                                access matched the poll exit criteria.\r
 \r
+  @retval EFI_CRC_ERROR         Checksum is not correct (PEC is\r
+                                incorrect).\r
 \r
-  @retval EFI_SUCCESS   The last data that was returned from the\r
-                        access matched the poll exit criteria.\r
-\r
-  @retval EFI_CRC_ERROR Checksum is not correct (PEC is\r
-                        incorrect).\r
-\r
-  @retval EFI_TIMEOUT   Timeout expired before the operation was\r
-                        completed. Timeout is determined by the\r
-                        SMBus host controller device.\r
+  @retval EFI_TIMEOUT           Timeout expired before the operation was\r
+                                completed. Timeout is determined by the\r
+                                SMBus host controller device.\r
 \r
   @retval EFI_OUT_OF_RESOURCES  The request could not be\r
                                 completed due to a lack of\r
                                 resources.\r
 \r
-  @retval EFI_DEVICE_ERROR  The request was not completed\r
-                            because a failure was reflected in\r
-                            the Host Status Register bit. Device\r
-                            Errors are a result of a transaction\r
-                            collision, illegal command field,\r
-                            unclaimed cycle (host initiated), or\r
-                            bus errors (collisions).\r
+  @retval EFI_DEVICE_ERROR      The request was not completed\r
+                                because a failure was reflected in\r
+                                the Host Status Register bit. Device\r
+                                Errors are a result of a transaction\r
+                                collision, illegal command field,\r
+                                unclaimed cycle (host initiated), or\r
+                                bus errors (collisions).\r
 \r
-  @retval EFI_UNSUPPORTED   ArpDevice, GetArpMap, and Notify are\r
-                            not implemented by this driver.\r
+  @retval EFI_UNSUPPORTED       ArpDevice, GetArpMap, and Notify are\r
+                                not implemented by this driver.\r
    \r
 **/\r
 typedef\r
@@ -198,20 +194,19 @@ EFI_STATUS
 \r
 \r
 /**\r
-  The GetArpMap() function returns the mapping of all the SMBus devices that were enumerated\r
-  by the SMBus host driver.\r
+  The GetArpMap() function returns the mapping of all the SMBus devices \r
+  that were enumerated by the SMBus host driver.\r
   \r
-  @param This A pointer to the EFI_SMBUS_HC_PROTOCOL instance.\r
+  @param This           A pointer to the EFI_SMBUS_HC_PROTOCOL instance.\r
   \r
-  @param Length   Size of the buffer that contains the SMBus\r
-                  device map.\r
+  @param Length         Size of the buffer that contains the SMBus\r
+                        device map.\r
   \r
   @param SmbusDeviceMap The pointer to the device map as\r
                         enumerated by the SMBus controller\r
                         driver.\r
   \r
-  @retval EFI_SUCCESS   The SMBus returned the current device\r
-                        map.\r
+  @retval EFI_SUCCESS       The SMBus returned the current device map.\r
   \r
   @retval EFI_UNSUPPORTED   ArpDevice, GetArpMap, and Notify are\r
                             not implemented by this driver.\r
@@ -225,11 +220,17 @@ EFI_STATUS
   IN OUT    EFI_SMBUS_DEVICE_MAP    **SmbusDeviceMap\r
 );\r
 \r
+/**\r
+  The notify function does some actions.\r
+  \r
+  @param SlaveAddress\r
+  The SMBUS hardware address to which the SMBUS device is preassigned or allocated.\r
 \r
-\r
-//\r
-// EFI_SMBUS_NOTIFY_FUNCTION\r
-//\r
+  @param Data\r
+  Data of the SMBus host notify command that the caller wants to be called.\r
+  \r
+  @return EFI_STATUS\r
+**/\r
 typedef\r
 EFI_STATUS\r
 (EFIAPI *EFI_SMBUS_NOTIFY_FUNCTION)(\r
@@ -244,20 +245,20 @@ EFI_STATUS
   allow the bus driver to call these functions when the \r
   SlaveAddress/Data pair happens.\r
   \r
-  @param  This A pointer to the EFI_SMBUS_HC_PROTOCOL instance.\r
+  @param  This            A pointer to the EFI_SMBUS_HC_PROTOCOL instance.\r
   \r
-  @param  SlaveAddress  Address that the host controller detects\r
-                        as sending a message and calls all the registered function.\r
+  @param  SlaveAddress    Address that the host controller detects\r
+                          as sending a message and calls all the registered function.\r
 \r
-  @param  Data  Data that the host controller detects as sending\r
-                message and calls all the registered function.\r
+  @param  Data            Data that the host controller detects as sending\r
+                          message and calls all the registered function.\r
 \r
 \r
   @param  NotifyFunction  The function to call when the bus\r
                           driver detects the SlaveAddress and\r
                           Data pair.\r
 \r
-  @retval EFI_SUCCESS   NotifyFunction was registered.\r
+  @retval EFI_SUCCESS       NotifyFunction was registered.\r
   \r
   @retval EFI_UNSUPPORTED   ArpDevice, GetArpMap, and Notify are\r
                             not implemented by this driver.\r
@@ -274,12 +275,13 @@ EFI_STATUS
 \r
 \r
 /**\r
+  @par Protocol Description:\r
   The EFI_SMBUS_HC_PROTOCOL provides SMBus host controller management and basic data\r
   transactions over SMBus. There is one EFI_SMBUS_HC_PROTOCOL instance for each SMBus\r
   host controller.\r
 \r
-  @param Execute  Executes the SMBus operation to an SMBus slave\r
-                  device. See the Execute() function description.\r
+  @param Execute    Executes the SMBus operation to an SMBus slave\r
+                    device. See the Execute() function description.\r
   \r
   @param ArpDevice  Allows an SMBus 2.0 device(s) to be Address\r
                     Resolution Protocol (ARP).\r
index 9cc4ea5f45c44a3a88a4875f95036be1feff05c2..fbe68251663b26fca900faeee56aa773d2e2d0ce 100644 (file)
@@ -1,5 +1,5 @@
 /** @file\r
-  Status code Runtime Protocol as defined in the DXE CIS\r
+  Status code Runtime Protocol as defined in PI Specification VOLUME 2 DXE\r
 \r
   The StatusCode () Tiano service is added to the EFI system table and the \r
   EFI_STATUS_CODE_ARCH_PROTOCOL_GUID protocol is registered with a NULL \r
@@ -9,7 +9,7 @@
 \r
   This code abstracts Status Code reporting.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -18,9 +18,6 @@
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
 \r
-  @par Revision Reference:\r
-  Version 0.91B.\r
-\r
 **/\r
 \r
 #ifndef __STATUS_CODE_RUNTIME_PROTOCOL_H__\r
@@ -61,6 +58,7 @@ EFI_STATUS
   );\r
 \r
 /**\r
+  @par Protocol Description:\r
   Provides the service required to report a status code to the platform firmware.\r
   This protocol must be produced by a runtime DXE driver and may be consumed \r
   only by the DXE Foundation.\r
index 22f090b71eaad8ece3339bca68b6f6bd410245e7..a0d07661329bd29a6e2da7ec3138d50ee1de367b 100644 (file)
@@ -2,7 +2,7 @@
   EFI_TAPE_IO_PROTOCOL as defined in the UEFI 2.0.\r
   Provide services to control and access a tape device.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -220,6 +220,31 @@ EFI_STATUS
   )\r
 ;    \r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_TAPE_IO_PROTOCOL provides basic sequential operations for tape devices. \r
+  These include read, write, rewind, space, write filemarks and reset functions. \r
+  Per this specification, a boot application uses the services of this protocol \r
+  to load the bootloader image from tape.\r
+\r
+  @param TapeRead\r
+  Read a block of data from the tape. \r
+\r
+  @param TapeWrite\r
+  Write a block of data to the tape. \r
+\r
+  @param TapeRewind\r
+  Rewind the tape. \r
+\r
+  @param TapeSpace\r
+  Position the tape. \r
+\r
+  @param TapeWriteFM\r
+  Write filemarks to the tape. \r
+\r
+  @param TapeReset\r
+  Reset the tape device or its parent bus. \r
+**/\r
 struct _EFI_TAPE_IO_PROTOCOL {\r
   EFI_TAPE_READ           TapeRead;\r
   EFI_TAPE_WRITE          TapeWrite;\r
index 99df2ae8794f98fc32d441cb4bea7255b8e9217e..a7c6df9aa3e2c20d03e5bb42f724d8756393455e 100644 (file)
@@ -2,7 +2,7 @@
   TCG Service Protocol as defined in TCG_EFI_Protocol_1_20_Final\r
   See http://trustedcomputinggroup.org for the latest specification\r
 \r
-  Copyright (c) 2007, Intel Corporation\r
+  Copyright (c) 2007 - 2008, Intel Corporation \r
   All rights reserved. This program and the accompanying materials\r
   are licensed and made available under the terms and conditions of the BSD License\r
   which accompanies this distribution.  The full text of the license may be found at\r
@@ -205,6 +205,7 @@ EFI_STATUS
   );\r
 \r
 /**\r
+  @par Protocol Description:\r
   The EFI_TCG Protocol abstracts TCG activity.\r
 \r
   @param  StatusCheck        This service provides information on the TPM.\r
index 715c581e6d4bc4c269519dd2e5a7452775cf5e22..262c5be75f3b9632e015740a3b03f27ed89ece04 100644 (file)
@@ -485,6 +485,48 @@ EFI_STATUS
   )\r
 ;\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_TCP4_PROTOCOL defines the EFI TCPv4 Protocol child to be used by \r
+  any network drivers or applications to send or receive data stream. \r
+  It can either listen on a specified port as a service or actively connected \r
+  to remote peer as a client. Each instance has its own independent settings, \r
+  such as the routing table.\r
+\r
+  @param GetModeData\r
+  Get the current operational status. \r
+\r
+  @param Configure\r
+  Initialize, change, or brutally reset operational settings of the EFI TCPv4 Protocol. \r
+\r
+  @param Routes\r
+  Add or delete routing entries for this TCP4 instance. \r
+\r
+  @param Connect\r
+  Initiate the TCP three-way handshake to connect to the remote peer \r
+  configured in this TCP instance. The function is a nonblocking operation. \r
+\r
+  @param Accept\r
+  Listen for incoming TCP connection request. This function is a nonblocking operation. \r
+\r
+  @param Transmit\r
+  Queue outgoing data to the transmit queue. This function is a nonblocking operation. \r
+\r
+  @param Receive\r
+  Queue a receiving request token to the receive queue. This function is \r
+  a nonblocking operation. \r
+\r
+  @param Close\r
+  Gracefully disconnecting a TCP connection follow RFC 793 or reset a TCP \r
+  connection. This function is a nonblocking operation. \r
+\r
+  @param Cancel\r
+  Abort a pending connect, listen, transmit or receive request. \r
+\r
+  @param Poll\r
+  Poll to receive incoming data and transmit outgoing TCP segments. \r
+\r
+**/\r
 struct _EFI_TCP4_PROTOCOL {\r
   EFI_TCP4_GET_MODE_DATA                 GetModeData;\r
   EFI_TCP4_CONFIGURE                     Configure;\r
index 4cc1f134446283265459a2f00b3b445931ae60e6..12d053d4becf2293345a9ecdd6e91c1ef651e8ed 100644 (file)
@@ -1,9 +1,9 @@
 /** @file\r
-  Timer Architectural Protocol as defined in the DXE CIS\r
+  Timer Architectural Protocol as defined in PI Specification VOLUME 2 DXE\r
 \r
   This code is used to provide the timer tick for the DXE core.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -12,9 +12,6 @@
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
 \r
-  @par Revision Reference:\r
-  Version 0.91B.\r
-\r
 **/\r
 \r
 #ifndef __ARCH_PROTOCOL_TIMER_H__\r
@@ -37,10 +34,10 @@ typedef struct _EFI_TIMER_ARCH_PROTOCOL   EFI_TIMER_ARCH_PROTOCOL;
   of tyis type to be called for the timer interrupt, so it can know how much \r
   time has passed.  This information is used to signal timer based events.  \r
 \r
-  @param  Time             Time since the last timer interrupt in 100 ns units. This will\r
-                           typically be TimerPeriod, but if a timer interrupt is missed, and the\r
-                           EFI_TIMER_ARCH_PROTOCOL driver can detect missed interrupts, then Time\r
-                           will contain the actual amount of time since the last interrupt.\r
+  @param  Time   Time since the last timer interrupt in 100 ns units. This will\r
+                 typically be TimerPeriod, but if a timer interrupt is missed, and the\r
+                 EFI_TIMER_ARCH_PROTOCOL driver can detect missed interrupts, then Time\r
+                 will contain the actual amount of time since the last interrupt.\r
 \r
   None.\r
 \r
@@ -150,7 +147,7 @@ EFI_STATUS
   registered handler should not be able to distinguish a hardware-generated timer \r
   interrupt from a software-generated timer interrupt.\r
 \r
-  @param  This             The EFI_TIMER_ARCH_PROTOCOL instance.\r
+  @param  This                  The EFI_TIMER_ARCH_PROTOCOL instance.\r
 \r
   @retval EFI_SUCCESS           The soft timer interrupt was generated.\r
   @retval EFI_UNSUPPORTEDT      The platform does not support the generation of soft timer interrupts.\r
index 4e158a2ecaba5537c530a470194e32843338b343..bc95bc76b5af5225e8988711692ba95dcfab835c 100644 (file)
@@ -1,7 +1,10 @@
 /** @file\r
-  UDP4 Service Binding Protocol\r
+  UDP4 Service Binding Protocol as defined in UEFI specification.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  The EFI UDPv4 Protocol provides simple packet-oriented services \r
+  to transmit and receive UDP packets.  \r
+\r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -347,6 +350,38 @@ EFI_STATUS
   )\r
 ;       \r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_UDP4_PROTOCOL defines an EFI UDPv4 Protocol session that can be used \r
+  by any network drivers, applications, or daemons to transmit or receive UDP packets. \r
+  This protocol instance can either be bound to a specified port as a service or \r
+  connected to some remote peer as an active client. Each instance has its own settings, \r
+  such as the routing table and group table, which are independent from each other.\r
+\r
+  @param GetModeData\r
+  Reads the current operational settings. \r
+\r
+  @param Configure\r
+  Initializes, changes, or resets operational settings for the EFI UDPv4 Protocol. \r
+\r
+  @param Groups\r
+  Joins and leaves multicast groups. \r
+\r
+  @param Routes\r
+  Add and deletes routing table entries. \r
+\r
+  @param Transmit\r
+  Queues outgoing data packets into the transmit queue. This function is a nonblocked operation. \r
+\r
+  @param Receive\r
+  Places a receiving request token into the receiving queue. This function is a nonblocked operation. \r
+\r
+  @param Cancel\r
+  Aborts a pending transmit or receive request. \r
+\r
+  @param Poll\r
+  Polls for incoming data packets and processes outgoing data packets.   \r
+**/\r
 struct _EFI_UDP4_PROTOCOL {\r
   EFI_UDP4_GET_MODE_DATA        GetModeData;\r
   EFI_UDP4_CONFIGURE            Configure;\r
index 658de1e6da27f6f61eb38bb2e386864568e1dd4a..d84620ced01a7dfc876a85d0180ea71be4b61f45 100644 (file)
@@ -158,6 +158,25 @@ EFI_STATUS
   IN  UINTN                                   Delta         OPTIONAL\r
   );\r
 \r
+/** \r
+  This protocol provides a basic abstraction to set video modes and \r
+  copy pixels to and from the graphics controller's frame buffer. \r
+\r
+  @par Protocol Description:\r
+  The EFI_UGA_DRAW_PROTOCOL provides a software abstraction to allow pixels to be drawn\r
+  directly to the frame buffer. The EFI_UGA_DRAW_PROTOCOL is designed to be lightweight and\r
+  to support the basic needs of graphics output prior to Operating System boot.  \r
+\r
+  @param GetMode \r
+  Returns information about the geometry and configuration of the\r
+  graphics controller's current frame buffer configuration.\r
+\r
+  @param SetMode \r
+  Set the graphics device into a given mode and clears the frame buffer to black.\r
+\r
+  @param Blt \r
+  Software abstraction to draw on the video device's frame buffer.  \r
+**/\r
 struct _EFI_UGA_DRAW_PROTOCOL {\r
   EFI_UGA_DRAW_PROTOCOL_GET_MODE  GetMode;\r
   EFI_UGA_DRAW_PROTOCOL_SET_MODE  SetMode;\r
index 19dee485f6952b50a646061f19768a9142a81a95..ba097db86a80e5d33780bcff353532407acb2db0 100644 (file)
@@ -3,7 +3,7 @@
 \r
   Abstraction of a very simple graphics device.\r
   \r
-  Copyright (c) 2006 - 2007, Intel Corporation\r
+  Copyright (c) 2006 - 2008, Intel Corporation \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -163,7 +163,19 @@ typedef UGA_STATUS
   IN OUT PUGA_IO_REQUEST pIoRequest\r
   );\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  Provides a basic abstraction to send I/O requests to the graphics device and any of its children.\r
 \r
+  @param CreateDevice \r
+  Create a UGA_DEVICE object for a child device of a given parent UGA_DEVICE.\r
+\r
+  @param DeleteDevice \r
+  Delete the UGA_DEVICE returned from CreateDevice().\r
+\r
+  @param DispatchService \r
+  Dispatches I/O requests to the display device and its associate child devices.\r
+**/\r
 struct _EFI_UGA_IO_PROTOCOL {\r
   EFI_UGA_IO_PROTOCOL_CREATE_DEVICE CreateDevice;\r
   EFI_UGA_IO_PROTOCOL_DELETE_DEVICE DeleteDevice;\r
index f666d13185294c8459b3e7198552b183b4b220c4..0954f545bdab40f6b5ac3f73060c1f66f54bc87f 100644 (file)
@@ -1,7 +1,9 @@
 /** @file\r
   Unicode Collation protocol that follows the UEFI 2.0 specification.\r
+  This protocol is used to allow code running in the boot services environment \r
+  to perform lexical comparison functions on Unicode strings for given languages.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -96,8 +98,6 @@ BOOLEAN
   @param  This   Protocol instance pointer.\r
   @param  String A pointer to a Null-terminated Unicode string.\r
 \r
-  NONE\r
-\r
 **/\r
 typedef\r
 VOID\r
@@ -114,8 +114,6 @@ VOID
   @param  This   Protocol instance pointer.\r
   @param  String A pointer to a Null-terminated Unicode string.\r
 \r
-  NONE\r
-\r
 **/\r
 typedef\r
 VOID\r
@@ -136,8 +134,6 @@ VOID
   @param  String  A pointer to a Null-terminated Unicode string. The string must\r
                   be preallocated to hold FatSize Unicode characters.\r
 \r
-  NONE\r
-\r
 **/\r
 typedef\r
 VOID\r
@@ -174,6 +170,40 @@ BOOLEAN
   )\r
 ;\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_UNICODE_COLLATION_PROTOCOL is used to perform case-insensitive \r
+  comparisons of Unicode strings. \r
+\r
+  @param StriColl\r
+  Performs a case-insensitive comparison of two Null-terminated Unicode strings. \r
+\r
+  @param MetaiMatch\r
+  Performs a case-insensitive comparison between a Null-terminated Unicode \r
+  pattern string and a Null-terminated Unicode string. The pattern string \r
+  can use the '?' wildcard to match any character, and the '*' wildcard to \r
+  match any substring. \r
+\r
+  @param StrLwr\r
+  Converts all the Unicode characters in a Null-terminated Unicode string to \r
+  lowercase Unicode characters. \r
+\r
+  @param StrUpr\r
+  Converts all the Unicode characters in a Null-terminated Unicode string to \r
+  uppercase Unicode characters. \r
+\r
+  @param FatToStr\r
+  Converts an 8.3 FAT file name using an OEM character set to a Null-terminated \r
+  Unicode string. \r
+\r
+  @param StrToFat\r
+  Converts a Null-terminated Unicode string to legal characters in a FAT \r
+  filename using an OEM character set. \r
+\r
+  @param Supported\r
+  LanguagesA Null-terminated ASCII string array that contains one or more \r
+  language codes. This array is specified in RFC 4646 format.\r
+**/\r
 struct _EFI_UNICODE_COLLATION_PROTOCOL {\r
   //\r
   // general\r
index 933ec08f03328587e1ce68206896f1f65bdce5c5..5e56a24d2335a2dab3782371e3058441a80a440e 100644 (file)
@@ -1,5 +1,8 @@
 /** @file\r
   EFI_USB2_HC_PROTOCOL as defined in UEFI 2.0.\r
+  The USB Host Controller Protocol is used by code, typically USB bus drivers, \r
+  running in the EFI boot services environment, to perform data transactions over \r
+  a USB bus. In addition, it provides an abstraction for the root hub of the USB bus.\r
 \r
   Copyright (c) 2006, Intel Corporation\r
   All rights reserved. This program and the accompanying materials\r
@@ -141,15 +144,15 @@ EFI_STATUS
 \r
 /**\r
 \r
-  @param EfiUsbHcStateHalt  The host controller is in halt\r
-                            state. No USB transactions can occur\r
-                            while in this state. The host\r
-                            controller can enter this state for\r
-                            three reasons: 1) After host\r
-                            controller hardware reset. 2)\r
-                            Explicitly set by software. 3)\r
-                            Triggered by a fatal error such as\r
-                            consistency check failure.\r
+  @param EfiUsbHcStateHalt          The host controller is in halt\r
+                                    state. No USB transactions can occur\r
+                                    while in this state. The host\r
+                                    controller can enter this state for\r
+                                    three reasons: 1) After host\r
+                                    controller hardware reset. 2)\r
+                                    Explicitly set by software. 3)\r
+                                    Triggered by a fatal error such as\r
+                                    consistency check failure.\r
 \r
 \r
   @param EfiUsbHcStateOperational   The host controller is in an\r
@@ -161,15 +164,15 @@ EFI_STATUS
                                     USB bus traffic.\r
 \r
 \r
-  @param EfiUsbHcStateSuspend   The host controller is in the\r
-                                suspend state. No USB\r
-                                transactions can occur while in\r
-                                this state. The host controller\r
-                                enters this state for the\r
-                                following reasons: 1) Explicitly\r
-                                set by software. 2) Triggered\r
-                                when there is no bus traffic for\r
-                                3 microseconds.\r
+  @param EfiUsbHcStateSuspend       The host controller is in the\r
+                                    suspend state. No USB\r
+                                    transactions can occur while in\r
+                                    this state. The host controller\r
+                                    enters this state for the\r
+                                    following reasons: 1) Explicitly\r
+                                    set by software. 2) Triggered\r
+                                    when there is no bus traffic for\r
+                                    3 microseconds.\r
 \r
 **/\r
 typedef enum {\r
@@ -235,9 +238,9 @@ EFI_STATUS
                               received from USB device.\r
   @param  DataLength          On input, indicates the size, in bytes, of the data buffer specified by Data.\r
                               On output, indicates the amount of data actually transferred.\r
-  @param  Translator          A pointer to the transaction translator data.\r
   @param  TimeOut             Indicates the maximum time, in milliseconds, which the transfer is\r
                               allowed to complete.\r
+  @param  Translator          A pointer to the transaction translator data.\r
   @param  TransferResult      A pointer to the detailed result information generated by this control\r
                               transfer.\r
 \r
@@ -284,9 +287,9 @@ EFI_STATUS
   @param  DataLength          When input, indicates the size, in bytes, of the data buffers specified by\r
                               Data. When output, indicates the actually transferred data size.\r
   @param  DataToggle          A pointer to the data toggle value.\r
-  @param  Translator          A pointer to the transaction translator data.\r
   @param  TimeOut             Indicates the maximum time, in milliseconds, which the transfer is\r
                               allowed to complete.\r
+  @param  Translator          A pointer to the transaction translator data.\r
   @param  TransferResult      A pointer to the detailed result information of the bulk transfer.\r
 \r
   @retval EFI_SUCCESS           The bulk transfer was completed successfully.\r
@@ -568,6 +571,64 @@ EFI_STATUS
   )\r
 ;\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_USB2_HC_PROTOCOL provides USB host controller management, basic \r
+  data transactions over a USB bus, and USB root hub access. A device driver \r
+  that wishes to manage a USB bus in a system retrieves the EFI_USB2_HC_PROTOCOL \r
+  instance that is associated with the USB bus to be managed. A device handle \r
+  for a USB host controller will minimally contain an EFI_DEVICE_PATH_PROTOCOL \r
+  instance, and an EFI_USB2_HC_PROTOCOL instance.\r
+\r
+  @param GetCapability\r
+  Retrieves the capabilities of the USB host controller. \r
+\r
+  @param Reset\r
+  Software reset of USB. \r
+\r
+  @param GetState\r
+  Retrieves the current state of the USB host controller. \r
+\r
+  @param SetState\r
+  Sets the USB host controller to a specific state. \r
+\r
+  @param ControlTransfer\r
+  Submits a control transfer to a target USB device. \r
+\r
+  @param BulkTransfer\r
+  Submits a bulk transfer to a bulk endpoint of a USB device. \r
+\r
+  @param AsyncInterruptTransfer\r
+  Submits an asynchronous interrupt transfer to an interrupt endpoint of a USB device. \r
+\r
+  @param SyncInterruptTransfer\r
+  Submits a synchronous interrupt transfer to an interrupt endpoint of a USB device. \r
+\r
+  @param IsochronousTransfer\r
+  Submits isochronous transfer to an isochronous endpoint of a USB device. \r
+\r
+  @param AsyncIsochronousTransfer\r
+  Submits nonblocking USB isochronous transfer. \r
+\r
+  @param GetRootHubPortStatus\r
+  Retrieves the status of the specified root hub port. \r
+\r
+  @param SetRootHubPortFeature\r
+  Sets the feature for the specified root hub port. \r
+\r
+  @param ClearRootHubPortFeature\r
+  Clears the feature for the specified root hub port. \r
+\r
+  @param MajorRevision\r
+  The major revision number of the USB host controller. The revision information \r
+  indicates the release of the Universal Serial Bus Specification with which the \r
+  host controller is compliant.\r
+\r
+  @param MinorRevision\r
+  The minor revision number of the USB host controller. The revision information \r
+  indicates the release of the Universal Serial Bus Specification with which the \r
+  host controller is compliant.\r
+**/\r
 struct _EFI_USB2_HC_PROTOCOL {\r
   EFI_USB2_HC_PROTOCOL_GET_CAPABILITY              GetCapability;\r
   EFI_USB2_HC_PROTOCOL_RESET                       Reset;\r
index 1ddbf766b9fe2e3b161661b32903c83fd4f257b4..e42306a4ddccd88c02b771b4ac103623a8ab8c0c 100644 (file)
@@ -1,7 +1,11 @@
 /** @file\r
   EFI_USB_HC_PROTOCOL as defined in EFI 1.10.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  The USB Host Controller Protocol is used by code, typically USB bus drivers, \r
+  running in the EFI boot services environment, to perform data transactions \r
+  over a USB bus. In addition, it provides an abstraction for the root hub of the USB bus.\r
+\r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -422,6 +426,68 @@ EFI_STATUS
   IN EFI_USB_PORT_FEATURE    PortFeature\r
   );\r
 \r
+\r
+/**  \r
+  @par Protocol Description:\r
+  The EFI_USB_HC_PROTOCOL provides USB host controller management, basic data transactions\r
+  over a USB bus, and USB root hub access. A device driver that wishes to manage a USB bus in a\r
+  system retrieves the EFI_USB_HC_PROTOCOL instance that is associated with the USB bus to be\r
+  managed. A device handle for a USB host controller will minimally contain an\r
+  EFI_DEVICE_PATH_PROTOCOL instance, and an EFI_USB_HC_PROTOCOL instance. \r
+  \r
+  @param Reset \r
+  Software reset of USB. \r
+\r
+  @param GetState \r
+  Retrieves the current state of the USB host controller. \r
+\r
+  @param SetState \r
+  Sets the USB host controller to a specific state. \r
+\r
+  @param ControlTransfer \r
+  Submits a control transfer to a target USB device. \r
+\r
+  @param BulkTransfer \r
+  Submits a bulk transfer to a bulk endpoint of a USB device. \r
+\r
+  @param AsyncInterruptTransfer\r
+  Submits an asynchronous interrupt transfer to an interrupt endpoint\r
+  of a USB device. \r
+\r
+  @param SyncInterruptTransfer\r
+  Submits a synchronous interrupt transfer to an interrupt endpoint\r
+  of a USB device.\r
+\r
+  @param IsochronousTransfer \r
+  Submits isochronous transfer to an isochronous endpoint of a USB device.\r
+\r
+  @param AsyncIsochronousTransfer\r
+  Submits nonblocking USB isochronous transfer.\r
+\r
+  @param GetRootHubPortNumber \r
+  Retrieves the number of root hub ports that are produced by the\r
+  USB host controller. \r
+\r
+  @param GetRootHubPortStatus \r
+  Retrieves the status of the specified root hub port. \r
+\r
+  @param SetRootHubPortFeature\r
+  Sets the feature for the specified root hub port.\r
+\r
+  @param ClearRootHubPortFeature\r
+  Clears the feature for the specified root hub port. \r
+\r
+  @param MajorRevision \r
+  The major revision number of the USB host controller. The\r
+  revision information indicates the release of the Universal Serial\r
+  Bus Specification with which the host controller is compliant.\r
+\r
+  @param MinorRevision \r
+  The minor revision number of the USB host controller. The\r
+  revision information indicates the release of the Universal Serial\r
+  Bus Specification with which the host controller is compliant.\r
\r
+**/\r
 struct _EFI_USB_HC_PROTOCOL {\r
   EFI_USB_HC_PROTOCOL_RESET                       Reset;\r
   EFI_USB_HC_PROTOCOL_GET_STATE                   GetState;\r
index c6e90c8b0ba66909e3cd235de2b35c2bc2e2ef4e..12f3aa4b625aec80cfa18a35708e1afc0c65fc76 100644 (file)
@@ -9,7 +9,7 @@
 \r
   No CRC of the EFI system table is required, as it is done in the DXE core.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
index 7621549b4b1cb89e353a08916200fb8d08f50370..c9d1fa5b4a84f46fc3a59dfcce430d464aa0e262 100644 (file)
@@ -8,7 +8,7 @@
 \r
   No CRC of the EFI system table is required, as it is done in the DXE core.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
index cbd2f83713e51a74f614100c8952f6ddc382fde1..f13d1fd5e5f1a9439de95cc69f0d3308835e6b36 100644 (file)
@@ -3,7 +3,7 @@
 \r
   Used to provide system watchdog timer services\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r