]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Function headers in .h and .c files synchronized with spec
authorjji4 <jji4@6f19259b-4bc3-4df7-8a09-765794883524>
Tue, 25 Nov 2008 07:38:54 +0000 (07:38 +0000)
committerjji4 <jji4@6f19259b-4bc3-4df7-8a09-765794883524>
Tue, 25 Nov 2008 07:38:54 +0000 (07:38 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6722 6f19259b-4bc3-4df7-8a09-765794883524

MdePkg/Include/Library/UefiLib.h
MdePkg/Include/Library/UefiRuntimeLib.h
MdePkg/Include/Library/UefiRuntimeServicesTableLib.h
MdePkg/Include/Library/UefiScsiLib.h
MdePkg/Library/UefiLib/Console.c
MdePkg/Library/UefiLib/UefiDriverModel.c
MdePkg/Library/UefiLib/UefiLib.c
MdePkg/Library/UefiLib/UefiLibPrint.c
MdePkg/Library/UefiLib/UefiNotTiano.c
MdePkg/Library/UefiRuntimeLib/RuntimeService.c

index 84c1375f63e693a7b115e873e1014fee5176f500..3fca8d1f682cb7d2fa1c16805671bc6ea17fbf9b 100644 (file)
@@ -8,7 +8,7 @@
   EFI Driver Model related protocols, manage Unicode string tables for UEFI Drivers, \r
   and print messages on the console output and standard error devices.\r
 \r
-Copyright (c) 2006 - 2008, Intel Corporation\r
+Copyright (c) 2006 - 2008, Intel Corporation<BR>\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
@@ -249,6 +249,8 @@ EfiInitializeLock (
   );\r
 \r
 /**\r
+  Initializes a basic mutual exclusion lock.\r
+\r
   This macro initializes the contents of a basic mutual exclusion lock to the \r
   released state.  Each lock provides mutual exclusion access at its task \r
   priority level.  Since there is no preemption or multiprocessor support in EFI,\r
@@ -264,7 +266,6 @@ EfiInitializeLock (
 \r
 \r
 /**\r
-  \r
   Macro that calls DebugAssert() if an EFI_LOCK structure is not in the locked state.\r
 \r
   If the DEBUG_PROPERTY_DEBUG_ASSERT_ENABLED bit of PcdDebugProperyMask is set, \r
@@ -307,11 +308,12 @@ EfiAcquireLock (
   );\r
 \r
 /**\r
-  Acquires ownership of a lock.  If the lock is already owned , then an error is returned.\r
+  Acquires ownership of a lock.\r
 \r
-  This function raises the system's current task priority level to the task \r
-  priority level of the mutual exclusion lock.  Then, it attempts to place the \r
-  lock in the acquired state.\r
+  This function raises the system's current task priority level to the task priority\r
+  level of the mutual exclusion lock.  Then, it attempts to place the lock in the acquired state.\r
+  If the lock is already in the acquired state, then EFI_ACCESS_DENIED is returned.\r
+  Otherwise, EFI_SUCCESS is returned.\r
   If Lock is NULL, then ASSERT().\r
   If Lock is not initialized, then ASSERT().\r
 \r
@@ -407,7 +409,7 @@ EfiTestChildHandle (
 /**\r
   This function looks up a Unicode string in UnicodeStringTable.\r
 \r
-  If Language is   a member of SupportedLanguages and a Unicode string is found in\r
+  If Language is a member of SupportedLanguages and a Unicode string is found in\r
   UnicodeStringTable that matches the language code specified by Language, then it\r
   is returned in UnicodeString.\r
 \r
@@ -445,48 +447,42 @@ LookupUnicodeString (
 \r
 /**\r
   This function looks up a Unicode string in UnicodeStringTable.\r
-  If Language is a member of SupportedLanguages and a Unicode\r
-  string is found in UnicodeStringTable that matches the\r
-  language code specified by Language, then it is returned in\r
-  UnicodeString.\r
-\r
-  @param  Language                A pointer to the ISO 639-2 or\r
-                                  RFC 3066 language code for the\r
-                                  Unicode string to look up and\r
-                                  return.  \r
-  @param  SupportedLanguages      A pointer to the set of ISO\r
-                                  639-2 or RFC 3066 language\r
-                                  codes that the Unicode string\r
-                                  table supports. Language must\r
-                                  be a member of this set.  \r
-  @param  UnicodeStringTable      A pointer to the table of\r
-                                  Unicode strings.  \r
-  @param  UnicodeString           A pointer to the Unicode\r
-                                  string from UnicodeStringTable\r
-                                  that matches the language\r
-                                  specified by Language.\r
-  @param  Iso639Language          Specify the language code\r
-                                  format supported. If true,\r
-                                  then the format follow ISO\r
-                                  639-2. If false, then it\r
-                                  follows RFC3066.\r
-  @retval  EFI_SUCCESS            The Unicode string that\r
-                                  matches the language specified\r
-                                  by Language was found in the\r
-                                  table of Unicoide strings\r
-                                  UnicodeStringTable, and it was\r
-                                  returned in UnicodeString. \r
 \r
+  If Language is a member of SupportedLanguages and a Unicode string is found in\r
+  UnicodeStringTable that matches the language code specified by Language, then\r
+  it is returned in UnicodeString.\r
+\r
+  @param  Language             A pointer to an ASCII string containing the ISO 639-2 or the\r
+                               RFC 4646 language code for the Unicode string to look up and\r
+                               return. If Iso639Language is TRUE, then this ASCII string is\r
+                               not assumed to be Null-terminated, and only the first three\r
+                               chacters are used. If Iso639Language is FALSE, then this ASCII\r
+                               string must be Null-terminated. \r
+  @param  SupportedLanguages   A pointer to a Null-terminated ASCII string that contains a\r
+                               set of ISO 639-2 or RFC 4646 language codes that the Unicode\r
+                               string table supports.  Language must be a member of this set.\r
+                               If Iso639Language is TRUE, then this string contains one or more\r
+                               ISO 639-2 language codes with no separator characters. If Iso639Language\r
+                               is FALSE, then is string contains one or more RFC 4646 language\r
+                               codes separated by ';'.\r
+  @param  UnicodeStringTable   A pointer to the table of Unicode strings. Type EFI_UNICODE_STRING_TABLE\r
+                               is defined in "Related Definitions".\r
+  @param  UnicodeString        A pointer to the Null-terminated Unicode string from UnicodeStringTable\r
+                               that matches the language specified by Language.\r
+  @param  Iso639Language       Specifies the supported language code format. If it is TRUE, then\r
+                               Language and SupportedLanguages follow ISO 639-2 language code format.\r
+                               Otherwise, they follow RFC 4646 language code format.\r
+\r
+\r
+  @retval  EFI_SUCCESS            The Unicode string that matches the language specified by Language\r
+                                  was found in the table of Unicode strings UnicodeStringTable, and\r
+                                  it was returned in UnicodeString.\r
   @retval  EFI_INVALID_PARAMETER  Language is NULL.  \r
   @retval  EFI_INVALID_PARAMETER  UnicodeString is NULL.  \r
   @retval  EFI_UNSUPPORTED        SupportedLanguages is NULL.  \r
   @retval  EFI_UNSUPPORTED        UnicodeStringTable is NULL.  \r
-  @retval  EFI_UNSUPPORTED        The language specified by\r
-                                  Language is not a member\r
-                                  ofSupportedLanguages.  \r
-  @retval  EFI_UNSUPPORTED        The language specified by\r
-                                  Language is not supported by\r
-                                  UnicodeStringTable.\r
+  @retval  EFI_UNSUPPORTED        The language specified by Language is not a member of SupportedLanguages.  \r
+  @retval  EFI_UNSUPPORTED        The language specified by Language is not supported by UnicodeStringTable.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -542,52 +538,45 @@ AddUnicodeString (
   );\r
 \r
 /**\r
-  This function adds a Unicode string to UnicodeStringTable.\r
-\r
-  If Language is a member of SupportedLanguages then\r
-  UnicodeString is added to UnicodeStringTable.  New buffers are\r
-  allocated for both Language and UnicodeString.  The contents\r
-  of Language and UnicodeString are copied into these new\r
-  buffers.  These buffers are automatically freed when\r
-  FreeUnicodeStringTable() is called.\r
-\r
-  @param  Language                A pointer to the ISO 639-2 or\r
-                                  RFC 3066 language code for the\r
-                                  Unicode string to add.  \r
-  @param  SupportedLanguages      A pointer to the set of ISO\r
-                                  639-2 or RFC 3066 language\r
-                                  codes that the Unicode string\r
-                                  table supports. Language must\r
-                                  be a member of this set.  \r
-  @param  UnicodeStringTable      A pointer to the table of\r
-                                  Unicode strings.  \r
-  @param  UnicodeString           A pointer to the Unicode\r
-                                  string to add.  \r
-  @param  Iso639Language          Specify the language code\r
-                                  format supported. If true,\r
-                                  then the format follow ISO\r
-                                  639-2. If false, then it\r
-                                  follows RFC3066.\r
-  @retval EFI_SUCCESS             The Unicode string that\r
-                                  matches the language specified\r
-                                  by Language was found in the\r
-                                  table of Unicode strings\r
-                                  UnicodeStringTable, and it was\r
-                                  returned in UnicodeString.\r
-  \r
-  @retval EFI_INVALID_PARAMETER   Language is NULL.  \r
-  @retval EFI_INVALID_PARAMETER   UnicodeString is NULL.  \r
-  @retval EFI_INVALID_PARAMETER   UnicodeString is an empty string.  \r
-  @retval EFI_UNSUPPORTED         SupportedLanguages is NULL.  \r
-  @retval EFI_ALREADY_STARTED     A Unicode string with language\r
-                                  Language is already present in\r
-                                  UnicodeStringTable.  \r
-  @retval EFI_OUT_OF_RESOURCES    There is not enough memory to\r
-                                  add another Unicode string to\r
-                                  UnicodeStringTable.  \r
-  @retval EFI_UNSUPPORTED         The language specified by\r
-                                  Language is not a member of\r
-                                  SupportedLanguages.\r
+  This function adds the Null-terminated Unicode string specified by UnicodeString\r
+  to UnicodeStringTable.\r
+\r
+  If Language is a member of SupportedLanguages then UnicodeString is added to\r
+  UnicodeStringTable.  New buffers are allocated for both Language and UnicodeString.\r
+  The contents of Language and UnicodeString are copied into these new buffers.\r
+  These buffers are automatically freed when EfiLibFreeUnicodeStringTable() is called.\r
+\r
+  @param  Language            A pointer to an ASCII string containing the ISO 639-2 or\r
+                              the RFC 4646 language code for the Unicode string to add.\r
+                              If Iso639Language is TRUE, then this ASCII string is not\r
+                              assumed to be Null-terminated, and only the first three\r
+                              chacters are used. If Iso639Language is FALSE, then this\r
+                              ASCII string must be Null-terminated.\r
+  @param  SupportedLanguages  A pointer to a Null-terminated ASCII string that contains\r
+                              a set of ISO 639-2 or RFC 4646 language codes that the Unicode\r
+                              string table supports.  Language must be a member of this set.\r
+                              If Iso639Language is TRUE, then this string contains one or more\r
+                              ISO 639-2 language codes with no separator characters.\r
+                              If Iso639Language is FALSE, then is string contains one or more\r
+                              RFC 4646 language codes separated by ';'.\r
+  @param  UnicodeStringTable  A pointer to the table of Unicode strings. Type EFI_UNICODE_STRING_TABLE\r
+                              is defined in "Related Definitions".\r
+  @param  UnicodeString       A pointer to the Unicode string to add.  \r
+  @param  Iso639Language      Specifies the supported language code format. If it is TRUE,\r
+                              then Language and SupportedLanguages follow ISO 639-2 language code format.\r
+                              Otherwise, they follow RFC 4646 language code format.\r
+\r
+  @retval EFI_SUCCESS            The Unicode string that matches the language specified by\r
+                                 Language was found in the table of Unicode strings UnicodeStringTable,\r
+                                 and it was returned in UnicodeString.  \r
+  @retval EFI_INVALID_PARAMETER  Language is NULL.  \r
+  @retval EFI_INVALID_PARAMETER  UnicodeString is NULL.  \r
+  @retval EFI_INVALID_PARAMETER  UnicodeString is an empty string.  \r
+  @retval EFI_UNSUPPORTED        SupportedLanguages is NULL.  \r
+  @retval EFI_ALREADY_STARTED    A Unicode string with language Language is already present in\r
+                                 UnicodeStringTable.  \r
+  @retval EFI_OUT_OF_RESOURCES   There is not enough memory to add another Unicode string UnicodeStringTable.  \r
+  @retval EFI_UNSUPPORTED        The language specified by Language is not a member of SupportedLanguages.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -619,8 +608,10 @@ FreeUnicodeStringTable (
   );\r
 \r
 /**\r
-  This function computes and returns the width of the Unicode character \r
-  specified by UnicodeChar.\r
+  Retrieves the width of a Unicode character.\r
+\r
+  This function computes and returns the width of the Unicode character specified\r
+  by UnicodeChar.\r
 \r
   @param  UnicodeChar   A Unicode character.\r
 \r
@@ -638,11 +629,13 @@ GetGlyphWidth (
 /**\r
   Computes the display length of a Null-terminated Unicode String.\r
 \r
-  This function computes and returns the display length of\r
-  the Null-terminated Unicode string specified by String.\r
-  If String is NULL, then 0 is returned.\r
-  If any of the widths of the Unicode characters in String\r
-  can not be determined, then 0 is returned.\r
+  This function computes and returns the display length of the Null-terminated Unicode\r
+  string specified by String.  If String is NULL then 0 is returned. If any of the widths\r
+  of the Unicode characters in String can not be determined, then 0 is returned. The display\r
+  width of String can be computed by summing the display widths of each Unicode character\r
+  in String.  Unicode characters that are narrow glyphs have a width of 1, and Unicode\r
+  characters that are width glyphs have a width of 2. \r
+  If String is not aligned on a 16-bit boundary, then ASSERT().\r
 \r
   @param  String      A pointer to a Null-terminated Unicode string.\r
 \r
@@ -662,9 +655,9 @@ UnicodeStringDisplayLength (
   Create, Signal, and Close the Ready to Boot event using EfiSignalEventReadyToBoot().\r
   \r
   This function abstracts the signaling of the Ready to Boot Event. The Framework moved\r
-  from a proprietary to UEFI 2.0 based mechanism.  This library abstracts the caller from\r
-  how this event is created to prevent to code form having to change with the version of\r
-  the specification supported.\r
+  from a proprietary to UEFI 2.0 based mechanism. This library abstracts the caller\r
+  from how this event is created to prevent to code form having to change with the\r
+  version of the specification supported.\r
 \r
 **/\r
 VOID\r
@@ -689,14 +682,14 @@ EfiSignalEventLegacyBoot (
   );\r
 \r
 /**\r
-  Creates an EFI event in the Legacy Boot Event Group.  Prior to UEFI 2.0 this \r
-  was done via a non blessed UEFI extensions and this library abstracts the \r
-  implementation mechanism of this event from the caller.\r
-  \r
-  This function abstracts the creation of the Legacy Boot Event.  The Framework \r
-  moved from a proprietary to UEFI 2.0 based mechanism.  This library abstracts \r
-  the caller from how this event is created to prevent to code form having to \r
-  change with the version of the specification supported.\r
+  Creates an EFI event in the Legacy Boot Event Group.\r
+\r
+  Prior to UEFI 2.0 this was done via a non blessed UEFI extensions and this library\r
+  abstracts the implementation mechanism of this event from the caller. This function\r
+  abstracts the creation of the Legacy Boot Event. The Framework moved from a proprietary\r
+  to UEFI 2.0 based mechanism.  This library abstracts the caller from how this event\r
+  is created to prevent to code form having to change with the version of the\r
+  specification supported.\r
   If LegacyBootEvent is NULL, then ASSERT().\r
 \r
   @param  LegacyBootEvent   Returns the EFI event returned from gBS->CreateEvent(Ex).\r
@@ -740,10 +733,10 @@ EfiCreateEventLegacyBootEx (
   );\r
 \r
 /**\r
-  Create an EFI event in the Ready To Boot Event Group.  Prior to UEFI 2.0 this \r
-  was done via a non-standard UEFI extension, and this library abstracts the \r
-  implementation mechanism of this event from the caller. \r
-  \r
+  Create an EFI event in the Ready To Boot Event Group.\r
+\r
+  Prior to UEFI 2.0 this was done via a non-standard UEFI extension, and this library\r
+  abstracts the implementation mechanism of this event from the caller.   \r
   This function abstracts the creation of the Ready to Boot Event.  The Framework \r
   moved from a proprietary to UEFI 2.0-based mechanism.  This library abstracts \r
   the caller from how this event is created to prevent the code form having to \r
@@ -899,7 +892,6 @@ ErrorPrint (
   string is greater than PcdUefiLibMaxPrintBufferSize, then only the first \r
   PcdUefiLibMaxPrintBufferSize characters are sent to ConOut.\r
   If Format is NULL, then ASSERT().\r
-  If Format is not aligned on a 16-bit boundary, then ASSERT().\r
 \r
   @param Format   Null-terminated ASCII format string.\r
   @param ...      Variable argument list whose contents are accessed based \r
@@ -925,7 +917,6 @@ AsciiPrint (
   string is greater than PcdUefiLibMaxPrintBufferSize, then only the first \r
   PcdUefiLibMaxPrintBufferSize characters are sent to StdErr.\r
   If Format is NULL, then ASSERT().\r
-  If Format is not aligned on a 16-bit boundary, then ASSERT().\r
 \r
   @param Format   Null-terminated ASCII format string.\r
   @param ...      Variable argument list whose contents are accessed based \r
@@ -1008,7 +999,6 @@ PrintXY (
   If the EFI_HII_FONT_PROTOCOL is not present in the handle database, then no \r
   string is printed, and 0 is returned.\r
   If Format is NULL, then ASSERT().\r
-  If Format is not aligned on a 16-bit boundary, then ASSERT().\r
 \r
   @param  X            X coordinate to print the string.\r
   @param  Y            Y coordinate to print the string.\r
@@ -1040,23 +1030,25 @@ AsciiPrintXY (
   );\r
 \r
 /**\r
-  Initializes a driver by installing the Driver Binding Protocol onto the driver's\r
-  DriverBindingHandle.\r
-\r
-  This is typically the same as the driver's ImageHandle, but\r
-  it can be different if the driver produces multiple DriverBinding Protocols. \r
-  If the Driver Binding Protocol interface is NULL, then ASSERT (). \r
-  If the installation fails, then ASSERT ().\r
-\r
-  @param  ImageHandle                 The image handle of the driver.\r
-  @param  SystemTable                 The EFI System Table that was passed to the driver's entry point.\r
-  @param  DriverBinding               A Driver Binding Protocol instance that this driver is producing.\r
-  @param  DriverBindingHandle         The handle that DriverBinding is to be installed onto.  If this\r
-                                      parameter is NULL, then a new handle is created.\r
-\r
-  @retval EFI_SUCCESS                 The protocol installation is completed successfully.\r
-  @retval EFI_OUT_OF_RESOURCES        There was not enough system resources to install the protocol.\r
-  @retval Others                      Status from gBS->InstallMultipleProtocolInterfaces().\r
+  Installs and completes the initialization of a Driver Binding Protocol instance.\r
+  \r
+  Installs the Driver Binding Protocol specified by DriverBinding onto the handle\r
+  specified by DriverBindingHandle. If DriverBindingHandle is NULL, then DriverBinding\r
+  is installed onto a newly created handle. DriverBindingHandle is typically the same\r
+  as the driver's ImageHandle, but it can be different if the driver produces multiple\r
+  Driver Binding Protocols. \r
+  If DriverBinding is NULL, then ASSERT(). \r
+  If DriverBinding can not be installed onto a handle, then ASSERT().\r
+\r
+  @param  ImageHandle          The image handle of the driver.\r
+  @param  SystemTable          The EFI System Table that was passed to the driver's entry point.\r
+  @param  DriverBinding        A Driver Binding Protocol instance that this driver is producing.\r
+  @param  DriverBindingHandle  The handle that DriverBinding is to be installed onto.  If this\r
+                               parameter is NULL, then a new handle is created.\r
+\r
+  @retval EFI_SUCCESS           The protocol installation is completed successfully.\r
+  @retval EFI_OUT_OF_RESOURCES  There was not enough system resources to install the protocol.\r
+  @retval Others                Status from gBS->InstallMultipleProtocolInterfaces().\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1070,25 +1062,29 @@ EfiLibInstallDriverBinding (
 \r
 \r
 /**\r
-  Initializes a driver by installing the Driver Binding Protocol together with the optional Component Name,\r
-  Driver Configure and Driver Diagnostic Protocols onto the driver's DriverBindingHandle.\r
-\r
-  This is  typically the same as the driver's ImageHandle, but it can be different if the driver produces multiple\r
-  DriverBinding Protocols. \r
-  If the Driver Binding Protocol interface is NULL, then ASSERT (). \r
-  If the installation fails, then ASSERT ().\r
-\r
-  @param  ImageHandle                 The image handle of the driver.\r
-  @param  SystemTable                 The EFI System Table that was passed to the driver's entry point.\r
-  @param  DriverBinding               A Driver Binding Protocol instance that this driver is producing.\r
-  @param  DriverBindingHandle         The handle that DriverBinding is to be installed onto.  If this\r
-                                      parameter is NULL, then a new handle is created.\r
-  @param  ComponentName               A Component Name Protocol instance that this driver is producing.\r
-  @param  DriverConfiguration         A Driver Configuration Protocol instance that this driver is producing.\r
-  @param  DriverDiagnostics           A Driver Diagnostics Protocol instance that this driver is producing.\r
-\r
-  @retval EFI_SUCCESS                 The protocol installation is completed successfully.\r
-  @retval Others                      Status from gBS->InstallMultipleProtocolInterfaces().\r
+  Installs and completes the initialization of a Driver Binding Protocol instance and\r
+  optionally installs the Component Name, Driver Configuration and Driver Diagnostics Protocols.\r
+\r
+  Initializes a driver by installing the Driver Binding Protocol together with the\r
+  optional Component Name, optional Driver Configure and optional Driver Diagnostic\r
+  Protocols onto the driver's DriverBindingHandle. If DriverBindingHandle is NULL,\r
+  then the protocols are  installed onto a newly created handle. DriverBindingHandle\r
+  is typically the same as the driver's ImageHandle, but it can be different if the\r
+  driver produces multiple Driver Binding Protocols. \r
+  If DriverBinding is NULL, then ASSERT(). \r
+  If the installation fails, then ASSERT().\r
+  \r
+  @param  ImageHandle          The image handle of the driver.\r
+  @param  SystemTable          The EFI System Table that was passed to the driver's entry point.\r
+  @param  DriverBinding        A Driver Binding Protocol instance that this driver is producing.\r
+  @param  DriverBindingHandle  The handle that DriverBinding is to be installed onto.  If this\r
+                               parameter is NULL, then a new handle is created.\r
+  @param  ComponentName        A Component Name Protocol instance that this driver is producing.\r
+  @param  DriverConfiguration  A Driver Configuration Protocol instance that this driver is producing.\r
+  @param  DriverDiagnostics    A Driver Diagnostics Protocol instance that this driver is producing.\r
+\r
+  @retval EFI_SUCCESS           The protocol installation is completed successfully.\r
+  @retval EFI_OUT_OF_RESOURCES  There was not enough memory in pool to install all the protocols.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1106,22 +1102,26 @@ EfiLibInstallAllDriverProtocols (
 \r
 \r
 /**\r
-  Initializes a driver by installing the Driver Binding Protocol together with the optional Component Name,\r
-  Component Name 2 onto the driver's DriverBindingHandle.  This is typically the same as the driver's\r
-  ImageHandle, but it can be different if the driver produces multiple DriverBinding Protocols. \r
-  If the Driver Binding Protocol interface is NULL, then ASSERT (). \r
-  If the installation fails, then ASSERT ().\r
-\r
-  @param  ImageHandle                 The image handle of the driver.\r
-  @param  SystemTable                 The EFI System Table that was passed to the driver's entry point.\r
-  @param  DriverBinding               A Driver Binding Protocol instance that this driver is producing.\r
-  @param  DriverBindingHandle         The handle that DriverBinding is to be installed onto.  If this\r
-                                      parameter is NULL, then a new handle is created.\r
-  @param  ComponentName               A Component Name Protocol instance that this driver is producing.\r
-  @param  ComponentName2              A Component Name 2 Protocol instance that this driver is producing.\r
-\r
-  @retval EFI_SUCCESS                 The protocol installation is completed successfully.\r
-  @retval Others                      Status from gBS->InstallMultipleProtocolInterfaces().\r
+  Installs Driver Binding Protocol with optional Component Name and Component Name 2 Protocols.\r
+\r
+  Initializes a driver by installing the Driver Binding Protocol together with the\r
+  optional Component Name and optional Component Name 2 protocols onto the driver's\r
+  DriverBindingHandle.  If DriverBindingHandle is NULL, then the protocols are installed\r
+  onto a newly created handle.  DriverBindingHandle is typically the same as the driver's\r
+  ImageHandle, but it can be different if the driver produces multiple Driver Binding Protocols. \r
+  If DriverBinding is NULL, then ASSERT(). \r
+  If the installation fails, then ASSERT().\r
+\r
+  @param  ImageHandle          The image handle of the driver.\r
+  @param  SystemTable          The EFI System Table that was passed to the driver's entry point.\r
+  @param  DriverBinding        A Driver Binding Protocol instance that this driver is producing.\r
+  @param  DriverBindingHandle  The handle that DriverBinding is to be installed onto.  If this\r
+                               parameter is NULL, then a new handle is created.\r
+  @param  ComponentName        A Component Name Protocol instance that this driver is producing.\r
+  @param  ComponentName2       A Component Name 2 Protocol instance that this driver is producing.\r
+\r
+  @retval EFI_SUCCESS           The protocol installation is completed successfully.\r
+  @retval EFI_OUT_OF_RESOURCES  There was not enough memory in pool to install all the protocols.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1137,29 +1137,31 @@ EfiLibInstallDriverBindingComponentName2 (
 \r
 \r
 /**\r
-  Intialize a driver by installing the Driver Binding Protocol together with the optional Component Name,\r
-  Component Name 2, Driver Configure, Driver Diagnostic and Driver Diagnostic 2 Protocols onto the driver's\r
-  DriverBindingHandle.\r
-\r
-  This is typically the same as the driver's ImageHandle, but it can be different if\r
-  the driver produces multiple DriverBinding Protocols. \r
-  If the Drvier Binding Protocol interface is NULL, then ASSERT (). \r
-  If the installation fails, then ASSERT ().\r
-\r
-  @param  ImageHandle                 The image handle of the driver.\r
-  @param  SystemTable                 The EFI System Table that was passed to the driver's entry point.\r
-  @param  DriverBinding               A Driver Binding Protocol instance that this driver is producing.\r
-  @param  DriverBindingHandle         The handle that DriverBinding is to be installe onto.  If this\r
-                                      parameter is NULL, then a new handle is created.\r
-  @param  ComponentName               A Component Name Protocol instance that this driver is producing.\r
-  @param  ComponentName2              A Component Name 2 Protocol instance that this driver is producing.\r
-  @param  DriverConfiguration         A Driver Configuration Protocol instance that this driver is producing.\r
-  @param  DriverConfiguration2        A Driver Configuration Protocol 2 instance that this driver is producing.\r
-  @param  DriverDiagnostics           A Driver Diagnostics Protocol instance that this driver is producing.\r
-  @param  DriverDiagnostics2          A Driver Diagnostics Protocol 2 instance that this driver is producing.\r
-\r
-  @retval EFI_SUCCESS                 The protocol installation is completed successfully.\r
-  @retval Others                      Status from gBS->InstallMultipleProtocolInterfaces().\r
+  Installs Driver Binding Protocol with optional Component Name, Component Name 2, Driver\r
+  Configuration, Driver Configuration 2, Driver Diagnostics, and Driver Diagnostics 2 Protocols.\r
+\r
+  Initializes a driver by installing the Driver Binding Protocol together with the optional\r
+  Component Name, optional Component Name 2, optional Driver Configuration, optional Driver\r
+  Configuration 2, optional Driver Diagnostic, and optional Driver Diagnostic 2 Protocols\r
+  onto the driver's DriverBindingHandle. DriverBindingHandle is typically the same as the\r
+  driver's ImageHandle, but it can be different if the driver produces multiple Driver Binding Protocols. \r
+  If DriverBinding is NULL, then ASSERT(). \r
+  If the installation fails, then ASSERT().  \r
+\r
+  @param  ImageHandle           The image handle of the driver.\r
+  @param  SystemTable           The EFI System Table that was passed to the driver's entry point.\r
+  @param  DriverBinding         A Driver Binding Protocol instance that this driver is producing.\r
+  @param  DriverBindingHandle   The handle that DriverBinding is to be installe onto.  If this\r
+                                parameter is NULL, then a new handle is created.\r
+  @param  ComponentName         A Component Name Protocol instance that this driver is producing.\r
+  @param  ComponentName2        A Component Name 2 Protocol instance that this driver is producing.\r
+  @param  DriverConfiguration   A Driver Configuration Protocol instance that this driver is producing.\r
+  @param  DriverConfiguration2  A Driver Configuration Protocol 2 instance that this driver is producing.\r
+  @param  DriverDiagnostics     A Driver Diagnostics Protocol instance that this driver is producing.\r
+  @param  DriverDiagnostics2    A Driver Diagnostics Protocol 2 instance that this driver is producing.\r
+\r
+  @retval EFI_SUCCESS           The protocol installation is completed successfully.\r
+  @retval EFI_OUT_OF_RESOURCES  There was not enough memory in pool to install all the protocols.\r
 \r
 **/\r
 EFI_STATUS\r
index d6a709f3532d42f388ce3e08568e5af383664bfa..54be1017df43bd9c201985f7da5195269a2f3573 100644 (file)
@@ -113,7 +113,7 @@ EfiSetTime (
   );\r
 \r
 /**\r
-  Returns the current wakeup alarm clock setting.\r
+  This service is a wrapper for the UEFI Runtime Service GetWakeupTime().\r
 \r
   The alarm clock time may be rounded from the set alarm clock time to be within the resolution\r
   of the alarm clock device. The resolution of the alarm clock device is defined to be one second.\r
@@ -142,7 +142,14 @@ EfiGetWakeupTime (
   );\r
 \r
 /**\r
-  Sets the system wakeup alarm clock time.\r
+  This service is a wrapper for the UEFI Runtime Service SetWakeupTime()\r
+\r
+  Setting a system wakeup alarm causes the system to wake up or power on at the set time.\r
+  When the alarm fires, the alarm signal is latched until it is acknowledged by calling SetWakeupTime()\r
+  to disable the alarm. If the alarm fires before the system is put into a sleeping or off state,\r
+  since the alarm signal is latched the system will immediately wake up. If the alarm fires while\r
+  the system is off and there is insufficient power to power on the system, the system is powered\r
+  on when power is restored.\r
 \r
   @param  Enable  Enable or disable the wakeup alarm.\r
   @param  Time    If Enable is TRUE, the time to set the wakeup alarm for. Type EFI_TIME\r
@@ -164,10 +171,17 @@ EfiSetWakeupTime (
   );\r
 \r
 /**\r
-  Return value of variable.\r
+  This service is a wrapper for the UEFI Runtime Service GetVariable().\r
 \r
-  @param  VariableName the name of the vendor's variable, it's a\r
-                       Null-Terminated Unicode String\r
+  Each vendor may create and manage its own variables without the risk of name conflicts by\r
+  using a unique VendorGuid. When a variable is set its Attributes are supplied to indicate\r
+  how the data variable should be stored and maintained by the system. The attributes affect\r
+  when the variable may be accessed and volatility of the data. Any attempts to access a variable\r
+  that does not have the attribute set for runtime access will yield the EFI_NOT_FOUND error.\r
+  If the Data buffer is too small to hold the contents of the variable, the error EFI_BUFFER_TOO_SMALL\r
+  is returned and DataSize is set to the required buffer size to obtain the data.\r
+\r
+  @param  VariableName the name of the vendor's variable, it's a Null-Terminated Unicode String\r
   @param  VendorGuid   Unify identifier for vendor.\r
   @param  Attributes   Point to memory location to return the attributes of variable. If the point\r
                        is NULL, the parameter would be ignored.\r
@@ -197,7 +211,13 @@ EfiGetVariable (
   );\r
 \r
 /**\r
-  Enumerates variable's name.\r
+  This service is a wrapper for the UEFI Runtime Service GetNextVariableName().\r
+\r
+  GetNextVariableName() is called multiple times to retrieve the VariableName and VendorGuid of\r
+  all variables currently available in the system. On each call to GetNextVariableName() the\r
+  previous results are passed into the interface, and on output the interface returns the next\r
+  variable name data. When the entire variable list has been returned, the error EFI_NOT_FOUND\r
+  is returned.\r
 \r
   @param  VariableNameSize As input, point to maxinum size of variable name.\r
                            As output, point to actual size of varaible name.\r
@@ -229,7 +249,10 @@ EfiGetNextVariableName (
   );\r
 \r
 /**\r
-  Sets value of variable.\r
+  This service is a wrapper for the UEFI Runtime Service GetNextVariableName()\r
+\r
+  Variables are stored by the firmware and may maintain their values across power cycles. Each vendor\r
+  may create and manage its own variables without the risk of name conflicts by using a unique VendorGuid.\r
 \r
   @param  VariableName the name of the vendor's variable, it's a\r
                        Null-Terminated Unicode String\r
@@ -265,7 +288,13 @@ EfiSetVariable (
   );\r
 \r
 /**\r
-  Returns the next high 32 bits of platform's monotonic counter.\r
+  This service is a wrapper for the UEFI Runtime Service GetNextHighMonotonicCount().\r
+\r
+  The platform¡¯s monotonic counter is comprised of two 32-bit quantities: the high 32 bits and\r
+  the low 32 bits. During boot service time the low 32-bit value is volatile: it is reset to zero\r
+  on every system reset and is increased by 1 on every call to GetNextMonotonicCount(). The high\r
+  32-bit value is nonvolatile and is increased by 1 whenever the system resets or whenever the low\r
+  32-bit count (returned by GetNextMonoticCount()) overflows.\r
 \r
   @param  HighCount Pointer to returned value.\r
 \r
@@ -281,22 +310,32 @@ EfiGetNextHighMonotonicCount (
   );\r
 \r
 /**\r
-  Resets the entire platform.\r
+  This service is a wrapper for the UEFI Runtime Service ResetSystem().\r
+\r
+  The ResetSystem()function resets the entire platform, including all processors and devices,and reboots the system.\r
+  Calling this interface with ResetType of EfiResetCold causes a system-wide reset. This sets all circuitry within\r
+  the system to its initial state. This type of reset is asynchronous to system operation and operates without regard\r
+  to cycle boundaries. EfiResetCold is tantamount to a system power cycle.\r
+  Calling this interface with ResetType of EfiResetWarm causes a system-wide initialization. The processors are set to\r
+  their initial state, and pending cycles are not corrupted. If the system does not support this reset type, then an\r
+  EfiResetCold must be performed.\r
+  Calling this interface with ResetType of EfiResetShutdown causes the system to enter a power state equivalent to the\r
+  ACPI G2/S5 or G3 states. If the system does not support this reset type, then when the system is rebooted, it should\r
+  exhibit the EfiResetCold attributes.\r
+  The platform may optionally log the parmeters from any non-normal reset that occurs.\r
+  The ResetSystem() function does not return.\r
 \r
   @param  ResetType   The type of reset to perform.\r
-  @param  ResetStatus The status code for the reset. If the system reset is part of a\r
-                      normal operation, the status code would be EFI_SUCCESS. If the system\r
-                      reset is due to some type of failure the most appropriate EFI Status\r
-                      code would be used.\r
+  @param  ResetStatus The status code for the reset. If the system reset is part of a normal operation, the status code\r
+                      would be EFI_SUCCESS. If the system reset is due to some type of failure the most appropriate EFI\r
+                      Status code would be used.\r
   @param  DataSizeThe size, in bytes, of ResetData.\r
-  @param  ResetData   For a ResetType of EfiResetCold, EfiResetWarm, or EfiResetShutdown\r
-                      the data buffer starts with a Null-terminated Unicode string, optionally\r
-                      followed by additional binary data. The string is a description that the\r
-                      caller may use to further indicate the reason for the system reset. ResetData\r
-                      is only valid if ResetStatus is something other then EFI_SUCCESS. This\r
-                      pointer must be a physical address. For a ResetType of EfiRestUpdate the\r
-                      data buffer also starts with a Null-terminated string that is followed by\r
-                      a physical VOID * to an EFI_CAPSULE_HEADER.\r
+  @param  ResetData   For a ResetType of EfiResetCold, EfiResetWarm, or EfiResetShutdown the data buffer starts with a\r
+                      Null-terminated Unicode string, optionally followed by additional binary data. The string is a\r
+                      description that the caller may use to further indicate the reason for the system reset. ResetData\r
+                      is only valid if ResetStatus is something other then EFI_SUCCESS. This pointer must be a physical\r
+                      address. For a ResetType of EfiRestUpdate the data buffer also starts with a Null-terminated string\r
+                      that is followed by a physical VOID * to an EFI_CAPSULE_HEADER.\r
 \r
 **/\r
 VOID\r
@@ -309,7 +348,10 @@ EfiResetSystem (
   );\r
 \r
 /**\r
-  This service converts a function pointer from physical to virtual addressing. \r
+  This service is a wrapper for the UEFI Runtime Service ConvertPointer().  \r
+\r
+  The ConvertPointer() function is used by an EFI component during the SetVirtualAddressMap() operation.\r
+  ConvertPointer()must be called using physical address pointers during the execution of SetVirtualAddressMap().\r
 \r
   @param  DebugDisposition   Supplies type information for the pointer being converted.\r
   @param  Address            The pointer to a pointer that is to be fixed to be the\r
@@ -360,7 +402,12 @@ EfiConvertFunctionPointer (
   );\r
 \r
 /**\r
-  Change the runtime addressing mode of EFI firmware from physical to virtual.\r
+  This service is a wrapper for the UEFI Runtime Service SetVirtualAddressMap().\r
+\r
+  The SetVirtualAddressMap() function is used by the OS loader. The function can only be called\r
+  at runtime, and is called by the owner of the system¡¯s memory map. I.e., the component which\r
+  called ExitBootServices(). All events of type EVT_SIGNAL_VIRTUAL_ADDRESS_CHANGE must be signaled\r
+  before SetVirtualAddressMap() returns.\r
 \r
   @param  MemoryMapSize         The size in bytes of VirtualMap.\r
   @param  DescriptorSize        The size in bytes of an entry in the VirtualMap.\r
@@ -412,12 +459,12 @@ EfiConvertList (
   );\r
 \r
 /**\r
-  Passes capsules to the firmware with both virtual and physical mapping.\r
-  Depending on the intended consumption, the firmware may\r
-  process the capsule immediately. If the payload should persist across a\r
-  system reset, the reset value returned from EFI_QueryCapsuleCapabilities must\r
-  be passed into ResetSystem() and will cause the capsule to be processed by\r
-  the firmware as part of the reset process.\r
+  This service is a wrapper for the UEFI Runtime Service UpdateCapsule().\r
+\r
+  Passes capsules to the firmware with both virtual and physical mapping. Depending on the intended\r
+  consumption, the firmware may process the capsule immediately. If the payload should persist across a\r
+  system reset, the reset value returned from EFI_QueryCapsuleCapabilities must be passed into ResetSystem()\r
+  and will cause the capsule to be processed by the firmware as part of the reset process.\r
 \r
   @param  CapsuleHeaderArray    Virtual pointer to an array of virtual pointers to the capsules\r
                                 being passed into update capsule. Each capsules is assumed to\r
@@ -455,6 +502,8 @@ EfiUpdateCapsule (
 \r
 \r
 /**\r
+  This service is a wrapper for the UEFI Runtime Service QueryCapsuleCapabilities().\r
+\r
   The QueryCapsuleCapabilities() function allows a caller to test to see if a capsule or\r
   capsules can be updated via UpdateCapsule(). The Flags values in the capsule header and\r
   size of the entire capsule is checked.\r
@@ -497,7 +546,7 @@ EfiQueryCapsuleCapabilities (
 \r
 \r
 /**\r
-  Returns information about the EFI variables.\r
+  This service is a wrapper for the UEFI Runtime Service QueryVariableInfo().\r
 \r
   The QueryVariableInfo() function allows a caller to obtain the information about the\r
   maximum size of the storage space available for the EFI variables, the remaining size of the storage\r
@@ -528,6 +577,7 @@ EfiQueryCapsuleCapabilities (
                                 MaximumVariableStorageSize,\r
                                 RemainingVariableStorageSize, MaximumVariableSize\r
                                 are undefined.\r
+\r
 **/\r
 EFI_STATUS\r
 EFIAPI\r
index f890cd82b281e869d2ee799caf8606f527fcf24b..04284c73305834a7cde45e9bb8112146befe7f4a 100644 (file)
@@ -1,8 +1,16 @@
 /** @file\r
   Provides a service to retrieve a pointer to the EFI Runtime Services Table.\r
+\r
+  This library does not contain any functions or macros.  It simply exports the\r
+  global variable gRT that is a pointer to the EFI Runtime Services Table as defined\r
+  in the UEFI Specification.  The global variable gRT must be preinitialized to NULL.\r
+  The library constructor must set gRT to point at the EFI Runtime Services Table so\r
+  it is available at the module's entry point. Since there is overhead in initializing\r
+  this global variable, only those modules that actually require access to the EFI\r
+  Runtime Services Table should use this library.\r
   Only available to DXE and UEFI module types.\r
 \r
-Copyright (c) 2006 - 2008, Intel Corporation\r
+Copyright (c) 2006 - 2008, Intel Corporation<BR>\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 b990cfded58f5e0356c45fcb180bb74405ba4fd2..97f97c793b4a2cbbcf101a7976b900a18f8a2a1d 100644 (file)
@@ -1,7 +1,10 @@
 /** @file\r
-\r
   Provides the functions to submit Scsi commands defined in SCSI-2 specification for scsi device.\r
 \r
+  This library class provides the functions to submit SCSI commands defined in SCSI-2 specification\r
+  for hard drive, CD and DVD devices that are the most common SCSI boot targets used by UEFI platforms.\r
+  This library class depends on SCSI I/O Protocol defined in UEFI Specification and SCSI-2 industry standard.\r
+\r
 Copyright (c) 2006 - 2008, Intel Corporation<BR>\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
index 110b19029f258cfc8a5e0cc76540c6350af9f630..fd223f42f33e2594c6c79b8bfef3c48714d8dcd0 100644 (file)
@@ -189,8 +189,10 @@ GLOBAL_REMOVE_IF_UNREFERENCED CONST UNICODE_WIDTH_ENTRY mUnicodeWidthTable[] = {
 };\r
 \r
 /**\r
-  This function computes and returns the width of the Unicode character \r
-  specified by UnicodeChar.\r
+  Retrieves the width of a Unicode character.\r
+\r
+  This function computes and returns the width of the Unicode character specified\r
+  by UnicodeChar.\r
 \r
   @param  UnicodeChar   A Unicode character.\r
 \r
@@ -246,11 +248,13 @@ GetGlyphWidth (
 /**\r
   Computes the display length of a Null-terminated Unicode String.\r
 \r
-  This function computes and returns the display length of\r
-  the Null-terminated Unicode string specified by String.\r
-  If String is NULL, then 0 is returned.\r
-  If any of the widths of the Unicode characters in String\r
-  can not be determined, then 0 is returned.\r
+  This function computes and returns the display length of the Null-terminated Unicode\r
+  string specified by String.  If String is NULL then 0 is returned. If any of the widths\r
+  of the Unicode characters in String can not be determined, then 0 is returned. The display\r
+  width of String can be computed by summing the display widths of each Unicode character\r
+  in String.  Unicode characters that are narrow glyphs have a width of 1, and Unicode\r
+  characters that are width glyphs have a width of 2. \r
+  If String is not aligned on a 16-bit boundary, then ASSERT().\r
 \r
   @param  String      A pointer to a Null-terminated Unicode string.\r
 \r
index 2fe7a107965aba2e08ccfd218ee11f550299a74d..28037b605873ed1251b01b4e41e2b2210a33732d 100644 (file)
 #include "UefiLibInternal.h"\r
 \r
 /**\r
-  Initializes a driver by installing the Driver Binding Protocol onto the driver's\r
-  DriverBindingHandle.\r
-\r
-  This is typically the same as the driver's ImageHandle, but\r
-  it can be different if the driver produces multiple DriverBinding Protocols. \r
-  If the Driver Binding Protocol interface is NULL, then ASSERT (). \r
-  If the installation fails, then ASSERT ().\r
+  Installs and completes the initialization of a Driver Binding Protocol instance.\r
+  \r
+  Installs the Driver Binding Protocol specified by DriverBinding onto the handle\r
+  specified by DriverBindingHandle. If DriverBindingHandle is NULL, then DriverBinding\r
+  is installed onto a newly created handle. DriverBindingHandle is typically the same\r
+  as the driver's ImageHandle, but it can be different if the driver produces multiple\r
+  Driver Binding Protocols. \r
+  If DriverBinding is NULL, then ASSERT(). \r
+  If DriverBinding can not be installed onto a handle, then ASSERT().\r
 \r
-  @param  ImageHandle                 The image handle of the driver.\r
-  @param  SystemTable                 The EFI System Table that was passed to the driver's entry point.\r
-  @param  DriverBinding               A Driver Binding Protocol instance that this driver is producing.\r
-  @param  DriverBindingHandle         The handle that DriverBinding is to be installed onto.  If this\r
-                                      parameter is NULL, then a new handle is created.\r
+  @param  ImageHandle          The image handle of the driver.\r
+  @param  SystemTable          The EFI System Table that was passed to the driver's entry point.\r
+  @param  DriverBinding        A Driver Binding Protocol instance that this driver is producing.\r
+  @param  DriverBindingHandle  The handle that DriverBinding is to be installed onto.  If this\r
+                               parameter is NULL, then a new handle is created.\r
 \r
-  @retval EFI_SUCCESS                 The protocol installation is completed successfully.\r
-  @retval EFI_OUT_OF_RESOURCES        There was not enough system resources to install the protocol.\r
-  @retval Others                      Status from gBS->InstallMultipleProtocolInterfaces().\r
+  @retval EFI_SUCCESS           The protocol installation is completed successfully.\r
+  @retval EFI_OUT_OF_RESOURCES  There was not enough system resources to install the protocol.\r
+  @retval Others                Status from gBS->InstallMultipleProtocolInterfaces().\r
 \r
 **/\r
 EFI_STATUS\r
@@ -70,25 +72,29 @@ EfiLibInstallDriverBinding (
 \r
 \r
 /**\r
-  Initializes a driver by installing the Driver Binding Protocol together with the optional Component Name,\r
-  Driver Configure and Driver Diagnostic Protocols onto the driver's DriverBindingHandle.\r
-\r
-  This is  typically the same as the driver's ImageHandle, but it can be different if the driver produces multiple\r
-  DriverBinding Protocols. \r
-  If the Driver Binding Protocol interface is NULL, then ASSERT (). \r
-  If the installation fails, then ASSERT ().\r
+  Installs and completes the initialization of a Driver Binding Protocol instance and\r
+  optionally installs the Component Name, Driver Configuration and Driver Diagnostics Protocols.\r
 \r
-  @param  ImageHandle                 The image handle of the driver.\r
-  @param  SystemTable                 The EFI System Table that was passed to the driver's entry point.\r
-  @param  DriverBinding               A Driver Binding Protocol instance that this driver is producing.\r
-  @param  DriverBindingHandle         The handle that DriverBinding is to be installed onto.  If this\r
-                                      parameter is NULL, then a new handle is created.\r
-  @param  ComponentName               A Component Name Protocol instance that this driver is producing.\r
-  @param  DriverConfiguration         A Driver Configuration Protocol instance that this driver is producing.\r
-  @param  DriverDiagnostics           A Driver Diagnostics Protocol instance that this driver is producing.\r
+  Initializes a driver by installing the Driver Binding Protocol together with the\r
+  optional Component Name, optional Driver Configure and optional Driver Diagnostic\r
+  Protocols onto the driver's DriverBindingHandle. If DriverBindingHandle is NULL,\r
+  then the protocols are  installed onto a newly created handle. DriverBindingHandle\r
+  is typically the same as the driver's ImageHandle, but it can be different if the\r
+  driver produces multiple Driver Binding Protocols. \r
+  If DriverBinding is NULL, then ASSERT(). \r
+  If the installation fails, then ASSERT().\r
+  \r
+  @param  ImageHandle          The image handle of the driver.\r
+  @param  SystemTable          The EFI System Table that was passed to the driver's entry point.\r
+  @param  DriverBinding        A Driver Binding Protocol instance that this driver is producing.\r
+  @param  DriverBindingHandle  The handle that DriverBinding is to be installed onto.  If this\r
+                               parameter is NULL, then a new handle is created.\r
+  @param  ComponentName        A Component Name Protocol instance that this driver is producing.\r
+  @param  DriverConfiguration  A Driver Configuration Protocol instance that this driver is producing.\r
+  @param  DriverDiagnostics    A Driver Diagnostics Protocol instance that this driver is producing.\r
 \r
-  @retval EFI_SUCCESS                 The protocol installation is completed successfully.\r
-  @retval Others                      Status from gBS->InstallMultipleProtocolInterfaces().\r
+  @retval EFI_SUCCESS           The protocol installation is completed successfully.\r
+  @retval EFI_OUT_OF_RESOURCES  There was not enough memory in pool to install all the protocols.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -198,22 +204,26 @@ EfiLibInstallAllDriverProtocols (
 \r
 \r
 /**\r
-  Intialize a driver by installing the Driver Binding Protocol together with the optional Component Name,\r
-  Component Name 2 onto the driver's DriverBindingHandle.  This is typically the same as the driver's\r
-  ImageHandle, but it can be different if the driver produces multiple DriverBinding Protocols. \r
-  If the Drvier Binding Protocol interface is NULL, then ASSERT (). \r
-  If the installation fails, then ASSERT ().\r
+  Installs Driver Binding Protocol with optional Component Name and Component Name 2 Protocols.\r
+\r
+  Initializes a driver by installing the Driver Binding Protocol together with the\r
+  optional Component Name and optional Component Name 2 protocols onto the driver's\r
+  DriverBindingHandle.  If DriverBindingHandle is NULL, then the protocols are installed\r
+  onto a newly created handle.  DriverBindingHandle is typically the same as the driver's\r
+  ImageHandle, but it can be different if the driver produces multiple Driver Binding Protocols. \r
+  If DriverBinding is NULL, then ASSERT(). \r
+  If the installation fails, then ASSERT().\r
 \r
-  @param  ImageHandle                 The image handle of the driver.\r
-  @param  SystemTable                 The EFI System Table that was passed to the driver's entry point.\r
-  @param  DriverBinding               A Driver Binding Protocol instance that this driver is producing.\r
-  @param  DriverBindingHandle         The handle that DriverBinding is to be installe onto.  If this\r
-                                      parameter is NULL, then a new handle is created.\r
-  @param  ComponentName               A Component Name Protocol instance that this driver is producing.\r
-  @param  ComponentName2              A Component Name 2 Protocol instance that this driver is producing.\r
+  @param  ImageHandle          The image handle of the driver.\r
+  @param  SystemTable          The EFI System Table that was passed to the driver's entry point.\r
+  @param  DriverBinding        A Driver Binding Protocol instance that this driver is producing.\r
+  @param  DriverBindingHandle  The handle that DriverBinding is to be installed onto.  If this\r
+                               parameter is NULL, then a new handle is created.\r
+  @param  ComponentName        A Component Name Protocol instance that this driver is producing.\r
+  @param  ComponentName2       A Component Name 2 Protocol instance that this driver is producing.\r
 \r
-  @retval EFI_SUCCESS                 The protocol installation is completed successfully.\r
-  @retval Others                      Status from gBS->InstallMultipleProtocolInterfaces().\r
+  @retval EFI_SUCCESS           The protocol installation is completed successfully.\r
+  @retval EFI_OUT_OF_RESOURCES  There was not enough memory in pool to install all the protocols.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -281,29 +291,31 @@ EfiLibInstallDriverBindingComponentName2 (
 \r
 \r
 /**\r
-  Intialize a driver by installing the Driver Binding Protocol together with the optional Component Name,\r
-  Component Name 2, Driver Configure, Driver Diagnostic and Driver Diagnostic 2 Protocols onto the driver's\r
-  DriverBindingHandle.\r
+  Installs Driver Binding Protocol with optional Component Name, Component Name 2, Driver\r
+  Configuration, Driver Configuration 2, Driver Diagnostics, and Driver Diagnostics 2 Protocols.\r
 \r
-  This is typically the same as the driver's ImageHandle, but it can be different if\r
-  the driver produces multiple DriverBinding Protocols. \r
-  If the Drvier Binding Protocol interface is NULL, then ASSERT (). \r
-  If the installation fails, then ASSERT ().\r
+  Initializes a driver by installing the Driver Binding Protocol together with the optional\r
+  Component Name, optional Component Name 2, optional Driver Configuration, optional Driver\r
+  Configuration 2, optional Driver Diagnostic, and optional Driver Diagnostic 2 Protocols\r
+  onto the driver's DriverBindingHandle. DriverBindingHandle is typically the same as the\r
+  driver's ImageHandle, but it can be different if the driver produces multiple Driver Binding Protocols. \r
+  If DriverBinding is NULL, then ASSERT(). \r
+  If the installation fails, then ASSERT().  \r
 \r
-  @param  ImageHandle                 The image handle of the driver.\r
-  @param  SystemTable                 The EFI System Table that was passed to the driver's entry point.\r
-  @param  DriverBinding               A Driver Binding Protocol instance that this driver is producing.\r
-  @param  DriverBindingHandle         The handle that DriverBinding is to be installe onto.  If this\r
-                                      parameter is NULL, then a new handle is created.\r
-  @param  ComponentName               A Component Name Protocol instance that this driver is producing.\r
-  @param  ComponentName2              A Component Name 2 Protocol instance that this driver is producing.\r
-  @param  DriverConfiguration         A Driver Configuration Protocol instance that this driver is producing.\r
-  @param  DriverConfiguration2        A Driver Configuration Protocol 2 instance that this driver is producing.\r
-  @param  DriverDiagnostics           A Driver Diagnostics Protocol instance that this driver is producing.\r
-  @param  DriverDiagnostics2          A Driver Diagnostics Protocol 2 instance that this driver is producing.\r
+  @param  ImageHandle           The image handle of the driver.\r
+  @param  SystemTable           The EFI System Table that was passed to the driver's entry point.\r
+  @param  DriverBinding         A Driver Binding Protocol instance that this driver is producing.\r
+  @param  DriverBindingHandle   The handle that DriverBinding is to be installe onto.  If this\r
+                                parameter is NULL, then a new handle is created.\r
+  @param  ComponentName         A Component Name Protocol instance that this driver is producing.\r
+  @param  ComponentName2        A Component Name 2 Protocol instance that this driver is producing.\r
+  @param  DriverConfiguration   A Driver Configuration Protocol instance that this driver is producing.\r
+  @param  DriverConfiguration2  A Driver Configuration Protocol 2 instance that this driver is producing.\r
+  @param  DriverDiagnostics     A Driver Diagnostics Protocol instance that this driver is producing.\r
+  @param  DriverDiagnostics2    A Driver Diagnostics Protocol 2 instance that this driver is producing.\r
 \r
-  @retval EFI_SUCCESS                 The protocol installation is completed successfully.\r
-  @retval Others                      Status from gBS->InstallMultipleProtocolInterfaces().\r
+  @retval EFI_SUCCESS           The protocol installation is completed successfully.\r
+  @retval EFI_OUT_OF_RESOURCES  There was not enough memory in pool to install all the protocols.\r
 \r
 **/\r
 EFI_STATUS\r
index 53a46106e158bd5d6364438e24433b1bfbb78706..c463295bd1b9841c8d67b0672e120a4c8cc43bec 100644 (file)
@@ -280,18 +280,16 @@ EfiNamedEventSignal (
   return Status;\r
 }\r
 \r
-/**\r
+/** \r
   Returns the current TPL.\r
 \r
-  This function returns the current TPL.  There is no EFI service to directly\r
-  retrieve the current TPL. Instead, the RaiseTPL() function is used to raise\r
-  the TPL to TPL_HIGH_LEVEL.  This will return the current TPL.  The TPL level\r
-  can then immediately be restored back to the current TPL level with a call\r
+  This function returns the current TPL.  There is no EFI service to directly \r
+  retrieve the current TPL. Instead, the RaiseTPL() function is used to raise \r
+  the TPL to TPL_HIGH_LEVEL.  This will return the current TPL.  The TPL level \r
+  can then immediately be restored back to the current TPL level with a call \r
   to RestoreTPL().\r
 \r
-  @param  VOID\r
-\r
-  @retval EFI_TPL              The current TPL.\r
+  @return The current TPL.\r
 \r
 **/\r
 EFI_TPL\r
@@ -368,11 +366,12 @@ EfiAcquireLock (
 }\r
 \r
 /**\r
-  Acquires ownership of a lock.  If the lock is already owned , then an error is returned.\r
+  Acquires ownership of a lock.\r
 \r
-  This function raises the system's current task priority level to the task \r
-  priority level of the mutual exclusion lock.  Then, it attempts to place the \r
-  lock in the acquired state.\r
+  This function raises the system's current task priority level to the task priority\r
+  level of the mutual exclusion lock.  Then, it attempts to place the lock in the acquired state.\r
+  If the lock is already in the acquired state, then EFI_ACCESS_DENIED is returned.\r
+  Otherwise, EFI_SUCCESS is returned.\r
   If Lock is NULL, then ASSERT().\r
   If Lock is not initialized, then ASSERT().\r
 \r
@@ -444,7 +443,7 @@ EfiReleaseLock (
   currently managing the controller specified by ControllerHandle.  This test\r
   is performed by evaluating if the the protocol specified by ProtocolGuid is\r
   present on ControllerHandle and is was opened by DriverBindingHandle with an\r
-  attribute of EFI_OPEN_PROTOCOL_BY_DRIVER.\r
+  attribute of EFI_OPEN_PROTOCOL_BY_DRIVER. \r
   If ProtocolGuid is NULL, then ASSERT().\r
 \r
   @param  ControllerHandle     A handle for a controller to test.\r
@@ -507,10 +506,10 @@ EfiTestManagedDevice (
   ChildHandle with an attribute of EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER.\r
   If ProtocolGuid is NULL, then ASSERT().\r
 \r
-  @param  ControllerHandle     A handle for a (parent) controller to test.\r
+  @param  ControllerHandle     A handle for a (parent) controller to test. \r
   @param  ChildHandle          A child handle to test.\r
   @param  ProtocolGuid         Supplies the protocol that the child controller\r
-                               opens on its parent controller.\r
+                               opens on its parent controller. \r
 \r
   @retval EFI_SUCCESS          ChildHandle is a child of the ControllerHandle.\r
   @retval EFI_UNSUPPORTED      ChildHandle is not a child of the\r
@@ -565,7 +564,7 @@ EfiTestChildHandle (
 /**\r
   This function looks up a Unicode string in UnicodeStringTable.\r
 \r
-  If Language is   a member of SupportedLanguages and a Unicode string is found in\r
+  If Language is a member of SupportedLanguages and a Unicode string is found in\r
   UnicodeStringTable that matches the language code specified by Language, then it\r
   is returned in UnicodeString.\r
 \r
@@ -651,48 +650,42 @@ LookupUnicodeString (
 \r
 /**\r
   This function looks up a Unicode string in UnicodeStringTable.\r
-  If Language is a member of SupportedLanguages and a Unicode\r
-  string is found in UnicodeStringTable that matches the\r
-  language code specified by Language, then it is returned in\r
-  UnicodeString.\r
-\r
-  @param  Language                A pointer to the ISO 639-2 or\r
-                                  RFC 3066 language code for the\r
-                                  Unicode string to look up and\r
-                                  return.  \r
-  @param  SupportedLanguages      A pointer to the set of ISO\r
-                                  639-2 or RFC 3066 language\r
-                                  codes that the Unicode string\r
-                                  table supports. Language must\r
-                                  be a member of this set.  \r
-  @param  UnicodeStringTable      A pointer to the table of\r
-                                  Unicode strings.  \r
-  @param  UnicodeString           A pointer to the Unicode\r
-                                  string from UnicodeStringTable\r
-                                  that matches the language\r
-                                  specified by Language.\r
-  @param  Iso639Language          Specify the language code\r
-                                  format supported. If true,\r
-                                  then the format follow ISO\r
-                                  639-2. If false, then it\r
-                                  follows RFC3066.\r
-  @retval  EFI_SUCCESS            The Unicode string that\r
-                                  matches the language specified\r
-                                  by Language was found in the\r
-                                  table of Unicoide strings\r
-                                  UnicodeStringTable, and it was\r
-                                  returned in UnicodeString.\r
-  \r
+\r
+  If Language is a member of SupportedLanguages and a Unicode string is found in\r
+  UnicodeStringTable that matches the language code specified by Language, then\r
+  it is returned in UnicodeString.\r
+\r
+  @param  Language             A pointer to an ASCII string containing the ISO 639-2 or the\r
+                               RFC 4646 language code for the Unicode string to look up and\r
+                               return. If Iso639Language is TRUE, then this ASCII string is\r
+                               not assumed to be Null-terminated, and only the first three\r
+                               chacters are used. If Iso639Language is FALSE, then this ASCII\r
+                               string must be Null-terminated. \r
+  @param  SupportedLanguages   A pointer to a Null-terminated ASCII string that contains a\r
+                               set of ISO 639-2 or RFC 4646 language codes that the Unicode\r
+                               string table supports.  Language must be a member of this set.\r
+                               If Iso639Language is TRUE, then this string contains one or more\r
+                               ISO 639-2 language codes with no separator characters. If Iso639Language\r
+                               is FALSE, then is string contains one or more RFC 4646 language\r
+                               codes separated by ';'.\r
+  @param  UnicodeStringTable   A pointer to the table of Unicode strings. Type EFI_UNICODE_STRING_TABLE\r
+                               is defined in "Related Definitions".\r
+  @param  UnicodeString        A pointer to the Null-terminated Unicode string from UnicodeStringTable\r
+                               that matches the language specified by Language.\r
+  @param  Iso639Language       Specifies the supported language code format. If it is TRUE, then\r
+                               Language and SupportedLanguages follow ISO 639-2 language code format.\r
+                               Otherwise, they follow RFC 4646 language code format.\r
+\r
+\r
+  @retval  EFI_SUCCESS            The Unicode string that matches the language specified by Language\r
+                                  was found in the table of Unicode strings UnicodeStringTable, and\r
+                                  it was returned in UnicodeString.\r
   @retval  EFI_INVALID_PARAMETER  Language is NULL.  \r
   @retval  EFI_INVALID_PARAMETER  UnicodeString is NULL.  \r
   @retval  EFI_UNSUPPORTED        SupportedLanguages is NULL.  \r
-  @retval  EFI_UNSUPPORTED        UnicodeStringTable is NULL.\r
-  @retval  EFI_UNSUPPORTED        The language specified by\r
-                                  Language is not a member\r
-                                  ofSupportedLanguages.  \r
-  @retval EFI_UNSUPPORTED         The language specified by\r
-                                  Language is not supported by\r
-                                  UnicodeStringTable.\r
+  @retval  EFI_UNSUPPORTED        UnicodeStringTable is NULL.  \r
+  @retval  EFI_UNSUPPORTED        The language specified by Language is not a member of SupportedLanguages.  \r
+  @retval  EFI_UNSUPPORTED        The language specified by Language is not supported by UnicodeStringTable.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -944,52 +937,45 @@ AddUnicodeString (
 \r
 \r
 /**\r
-  This function adds a Unicode string to UnicodeStringTable.\r
-\r
-  If Language is a member of SupportedLanguages then\r
-  UnicodeString is added to UnicodeStringTable.  New buffers are\r
-  allocated for both Language and UnicodeString.  The contents\r
-  of Language and UnicodeString are copied into these new\r
-  buffers.  These buffers are automatically freed when\r
-  FreeUnicodeStringTable() is called.\r
-\r
-  @param  Language                A pointer to the ISO 639-2 or\r
-                                  RFC 3066 language code for the\r
-                                  Unicode string to add.  \r
-  @param  SupportedLanguages      A pointer to the set of ISO\r
-                                  639-2 or RFC 3066 language\r
-                                  codes that the Unicode string\r
-                                  table supports. Language must\r
-                                  be a member of this set.  \r
-  @param  UnicodeStringTable      A pointer to the table of\r
-                                  Unicode strings.  \r
-  @param  UnicodeString           A pointer to the Unicode\r
-                                  string to add.  \r
-  @param  Iso639Language          Specify the language code\r
-                                  format supported. If true,\r
-                                  then the format follow ISO\r
-                                  639-2. If false, then it\r
-                                  follows RFC3066.\r
-  @retval EFI_SUCCESS             The Unicode string that\r
-                                  matches the language specified\r
-                                  by Language was found in the\r
-                                  table of Unicode strings\r
-                                  UnicodeStringTable, and it was\r
-                                  returned in UnicodeString.\r
-  \r
-  @retval EFI_INVALID_PARAMETER   Language is NULL.  \r
-  @retval EFI_INVALID_PARAMETER   UnicodeString is NULL.  \r
-  @retval EFI_INVALID_PARAMETER   UnicodeString is an empty string.  \r
-  @retval EFI_UNSUPPORTED         SupportedLanguages is NULL.  \r
-  @retval EFI_ALREADY_STARTED     A Unicode string with language\r
-                                  Language is already present in\r
-                                  UnicodeStringTable.  \r
-  @retval EFI_OUT_OF_RESOURCES    There is not enough memory to\r
-                                  add another Unicode string to\r
-                                  UnicodeStringTable.  \r
-  @retval EFI_UNSUPPORTED         The language specified by\r
-                                  Language is not a member of\r
-                                  SupportedLanguages.\r
+  This function adds the Null-terminated Unicode string specified by UnicodeString\r
+  to UnicodeStringTable.\r
+\r
+  If Language is a member of SupportedLanguages then UnicodeString is added to\r
+  UnicodeStringTable.  New buffers are allocated for both Language and UnicodeString.\r
+  The contents of Language and UnicodeString are copied into these new buffers.\r
+  These buffers are automatically freed when EfiLibFreeUnicodeStringTable() is called.\r
+\r
+  @param  Language            A pointer to an ASCII string containing the ISO 639-2 or\r
+                              the RFC 4646 language code for the Unicode string to add.\r
+                              If Iso639Language is TRUE, then this ASCII string is not\r
+                              assumed to be Null-terminated, and only the first three\r
+                              chacters are used. If Iso639Language is FALSE, then this\r
+                              ASCII string must be Null-terminated.\r
+  @param  SupportedLanguages  A pointer to a Null-terminated ASCII string that contains\r
+                              a set of ISO 639-2 or RFC 4646 language codes that the Unicode\r
+                              string table supports.  Language must be a member of this set.\r
+                              If Iso639Language is TRUE, then this string contains one or more\r
+                              ISO 639-2 language codes with no separator characters.\r
+                              If Iso639Language is FALSE, then is string contains one or more\r
+                              RFC 4646 language codes separated by ';'.\r
+  @param  UnicodeStringTable  A pointer to the table of Unicode strings. Type EFI_UNICODE_STRING_TABLE\r
+                              is defined in "Related Definitions".\r
+  @param  UnicodeString       A pointer to the Unicode string to add.  \r
+  @param  Iso639Language      Specifies the supported language code format. If it is TRUE,\r
+                              then Language and SupportedLanguages follow ISO 639-2 language code format.\r
+                              Otherwise, they follow RFC 4646 language code format.\r
+\r
+  @retval EFI_SUCCESS            The Unicode string that matches the language specified by\r
+                                 Language was found in the table of Unicode strings UnicodeStringTable,\r
+                                 and it was returned in UnicodeString.  \r
+  @retval EFI_INVALID_PARAMETER  Language is NULL.  \r
+  @retval EFI_INVALID_PARAMETER  UnicodeString is NULL.  \r
+  @retval EFI_INVALID_PARAMETER  UnicodeString is an empty string.  \r
+  @retval EFI_UNSUPPORTED        SupportedLanguages is NULL.  \r
+  @retval EFI_ALREADY_STARTED    A Unicode string with language Language is already present in\r
+                                 UnicodeStringTable.  \r
+  @retval EFI_OUT_OF_RESOURCES   There is not enough memory to add another Unicode string UnicodeStringTable.  \r
+  @retval EFI_UNSUPPORTED        The language specified by Language is not a member of SupportedLanguages.\r
 \r
 **/\r
 EFI_STATUS\r
index 4a21a6d9d8405f59f30a93be9b7202fae62531d1..923f6be7183b3fb8fafd836acaa22ab8213703e5 100644 (file)
@@ -85,14 +85,14 @@ InternalPrint (
   return Return;\r
 }\r
 \r
-/**\r
-  Prints a formatted Unicode string to the console output device specified by\r
+/** \r
+  Prints a formatted Unicode string to the console output device specified by \r
   ConOut defined in the EFI_SYSTEM_TABLE.\r
 \r
-  This function prints a formatted Unicode string to the console output device\r
-  specified by ConOut in EFI_SYSTEM_TABLE and returns the number of Unicode\r
-  characters that printed to ConOut.  If the length of the formatted Unicode\r
-  string is greater than PcdUefiLibMaxPrintBufferSize, then only the first\r
+  This function prints a formatted Unicode string to the console output device \r
+  specified by ConOut in EFI_SYSTEM_TABLE and returns the number of Unicode \r
+  characters that printed to ConOut.  If the length of the formatted Unicode \r
+  string is greater than PcdUefiLibMaxPrintBufferSize, then only the first \r
   PcdUefiLibMaxPrintBufferSize characters are sent to ConOut.\r
   If Format is NULL, then ASSERT().\r
   If Format is not aligned on a 16-bit boundary, then ASSERT().\r
@@ -101,8 +101,7 @@ InternalPrint (
   @param ...      Variable argument list whose contents are accessed based \r
                   on the format string specified by Format.\r
   \r
-  @return The number of Unicode characters in the produced\r
-          output buffer not including the Null-terminator.\r
+  @return Number of Unicode characters printed to ConOut.\r
 \r
 **/\r
 UINTN\r
@@ -124,14 +123,14 @@ Print (
   return Return;\r
 }\r
 \r
-/**\r
-  Prints a formatted Unicode string to the console output device specified by\r
+/** \r
+  Prints a formatted Unicode string to the console output device specified by \r
   StdErr defined in the EFI_SYSTEM_TABLE.\r
 \r
-  This function prints a formatted Unicode string to the console output device\r
-  specified by StdErr in EFI_SYSTEM_TABLE and returns the number of Unicode\r
-  characters that printed to StdErr.  If the length of the formatted Unicode\r
-  string is greater than PcdUefiLibMaxPrintBufferSize, then only the first\r
+  This function prints a formatted Unicode string to the console output device \r
+  specified by StdErr in EFI_SYSTEM_TABLE and returns the number of Unicode \r
+  characters that printed to StdErr.  If the length of the formatted Unicode \r
+  string is greater than PcdUefiLibMaxPrintBufferSize, then only the first \r
   PcdUefiLibMaxPrintBufferSize characters are sent to StdErr.\r
   If Format is NULL, then ASSERT().\r
   If Format is not aligned on a 16-bit boundary, then ASSERT().\r
@@ -139,9 +138,9 @@ Print (
   @param Format   Null-terminated Unicode format string.\r
   @param ...      Variable argument list whose contents are accessed based \r
                   on the format string specified by Format.\r
+  \r
+  @return Number of Unicode characters printed to StdErr.\r
 \r
-  @return The number of Unicode characters in the produced\r
-          output buffer not including the Null-terminator.\r
 **/\r
 UINTN\r
 EFIAPI\r
@@ -214,14 +213,14 @@ AsciiInternalPrint (
   return Return;\r
 }\r
 \r
-/**\r
-  Prints a formatted ASCII string to the console output device specified by\r
+/** \r
+  Prints a formatted ASCII string to the console output device specified by \r
   ConOut defined in the EFI_SYSTEM_TABLE.\r
 \r
-  This function prints a formatted ASCII string to the console output device\r
-  specified by ConOut in EFI_SYSTEM_TABLE and returns the number of ASCII\r
-  characters that printed to ConOut.  If the length of the formatted ASCII\r
-  string is greater than PcdUefiLibMaxPrintBufferSize, then only the first\r
+  This function prints a formatted ASCII string to the console output device \r
+  specified by ConOut in EFI_SYSTEM_TABLE and returns the number of ASCII \r
+  characters that printed to ConOut.  If the length of the formatted ASCII \r
+  string is greater than PcdUefiLibMaxPrintBufferSize, then only the first \r
   PcdUefiLibMaxPrintBufferSize characters are sent to ConOut.\r
   If Format is NULL, then ASSERT().\r
 \r
@@ -229,8 +228,7 @@ AsciiInternalPrint (
   @param ...      Variable argument list whose contents are accessed based \r
                   on the format string specified by Format.\r
   \r
-  @return The number of Ascii characters in the produced\r
-          output buffer not including the Null-terminator.\r
+  @return Number of ASCII characters printed to ConOut.\r
 \r
 **/\r
 UINTN\r
@@ -253,14 +251,14 @@ AsciiPrint (
   return Return;\r
 }\r
 \r
-/**\r
-  Prints a formatted ASCII string to the console output device specified by\r
+/** \r
+  Prints a formatted ASCII string to the console output device specified by \r
   StdErr defined in the EFI_SYSTEM_TABLE.\r
 \r
-  This function prints a formatted ASCII string to the console output device\r
-  specified by StdErr in EFI_SYSTEM_TABLE and returns the number of ASCII\r
-  characters that printed to StdErr.  If the length of the formatted ASCII\r
-  string is greater than PcdUefiLibMaxPrintBufferSize, then only the first\r
+  This function prints a formatted ASCII string to the console output device \r
+  specified by StdErr in EFI_SYSTEM_TABLE and returns the number of ASCII \r
+  characters that printed to StdErr.  If the length of the formatted ASCII \r
+  string is greater than PcdUefiLibMaxPrintBufferSize, then only the first \r
   PcdUefiLibMaxPrintBufferSize characters are sent to StdErr.\r
   If Format is NULL, then ASSERT().\r
 \r
@@ -268,8 +266,7 @@ AsciiPrint (
   @param ...      Variable argument list whose contents are accessed based \r
                   on the format string specified by Format.\r
   \r
-  @return The number of Ascii characters in the produced output\r
-          buffer not including the Null-terminator.\r
+  @return Number of ASCII characters printed to ConErr.\r
 \r
 **/\r
 UINTN\r
@@ -567,7 +564,7 @@ Error:
   @param  ...          Variable argument list whose contents are accessed based on \r
                        the format string specified by Format.         \r
 \r
-  @return  The number of characters printed.\r
+  @return  The number of Unicode characters printed.\r
 \r
 **/\r
 UINTN\r
@@ -612,7 +609,7 @@ PrintXY (
 \r
   This function prints a formatted ASCII string to the graphics console device \r
   specified by ConsoleOutputHandle in EFI_SYSTEM_TABLE and returns the number of \r
-  Unicode characters printed.  If the length of the formatted ASCII string is\r
+  ASCII characters printed.  If the length of the formatted ASCII string is\r
   greater than PcdUefiLibMaxPrintBufferSize, then only the first \r
   PcdUefiLibMaxPrintBufferSize characters are printed.  The EFI_HII_FONT_PROTOCOL\r
   is used to convert the string to a bitmap using the glyphs registered with the \r
@@ -640,7 +637,7 @@ PrintXY (
   @param  ...          Variable argument list whose contents are accessed based on \r
                        the format string specified by Format.         \r
 \r
-  @return  The number of characters printed.\r
+  @return  The number of ASCII characters printed.\r
 \r
 **/\r
 UINTN\r
index e40cd0dce4634bc14f5f524d83f54c329ace33f5..c40914ae5bac2a3ab0d661b0594107b84a0e0dcd 100644 (file)
@@ -43,16 +43,16 @@ InternalEmptyFuntion (
 }\r
 \r
 /**\r
-  Creates an EFI event in the Legacy Boot Event Group.  Prior to UEFI 2.0 this \r
-  was done via a non blessed UEFI extensions and this library abstracts the \r
-  implementation mechanism of this event from the caller.\r
-  \r
-  This function abstracts the creation of the Legacy Boot Event.  The Framework \r
-  moved from a proprietary to UEFI 2.0 based mechanism.  This library abstracts \r
-  the caller from how this event is created to prevent to code form having to \r
-  change with the version of the specification supported.\r
+  Creates an EFI event in the Legacy Boot Event Group.\r
+\r
+  Prior to UEFI 2.0 this was done via a non blessed UEFI extensions and this library\r
+  abstracts the implementation mechanism of this event from the caller. This function\r
+  abstracts the creation of the Legacy Boot Event. The Framework moved from a proprietary\r
+  to UEFI 2.0 based mechanism.  This library abstracts the caller from how this event\r
+  is created to prevent to code form having to change with the version of the\r
+  specification supported.\r
   If LegacyBootEvent is NULL, then ASSERT().\r
-  \r
+\r
   @param  LegacyBootEvent   Returns the EFI event returned from gBS->CreateEvent(Ex).\r
 \r
   @retval EFI_SUCCESS       Event was created.\r
@@ -75,8 +75,8 @@ EfiCreateEventLegacyBoot (
 \r
 /**\r
   Create an EFI event in the Legacy Boot Event Group and allows\r
-  the caller to specify a notification function.\r
-\r
+  the caller to specify a notification function.  \r
+  \r
   This function abstracts the creation of the Legacy Boot Event.\r
   The Framework moved from a proprietary to UEFI 2.0 based mechanism.\r
   This library abstracts the caller from how this event is created to prevent\r
@@ -128,17 +128,17 @@ EfiCreateEventLegacyBootEx (
 }\r
 \r
 /**\r
-  Create an EFI event in the Ready To Boot Event Group.  Prior to UEFI 2.0 this \r
-  was done via a non-standard UEFI extension, and this library abstracts the \r
-  implementation mechanism of this event from the caller.\r
-  \r
+  Create an EFI event in the Ready To Boot Event Group.\r
+\r
+  Prior to UEFI 2.0 this was done via a non-standard UEFI extension, and this library\r
+  abstracts the implementation mechanism of this event from the caller.   \r
   This function abstracts the creation of the Ready to Boot Event.  The Framework \r
   moved from a proprietary to UEFI 2.0-based mechanism.  This library abstracts \r
   the caller from how this event is created to prevent the code form having to \r
   change with the version of the specification supported.\r
   If ReadyToBootEvent is NULL, then ASSERT().\r
 \r
-  @param  ReadyToBootEvent  Returns the EFI event returned from gBS->CreateEvent(Ex).\r
+  @param  ReadyToBootEvent   Returns the EFI event returned from gBS->CreateEvent(Ex).\r
 \r
   @retval EFI_SUCCESS       Event was created.\r
   @retval Other             Event was not created.\r
@@ -160,8 +160,8 @@ EfiCreateEventReadyToBoot (
 \r
 /**\r
   Create an EFI event in the Ready To Boot Event Group and allows\r
-  the caller to specify a notification function.\r
-\r
+  the caller to specify a notification function.  \r
+  \r
   This function abstracts the creation of the Ready to Boot Event.\r
   The Framework moved from a proprietary to UEFI 2.0 based mechanism.\r
   This library abstracts the caller from how this event is created to prevent\r
@@ -217,9 +217,9 @@ EfiCreateEventReadyToBootEx (
   Create, Signal, and Close the Ready to Boot event using EfiSignalEventReadyToBoot().\r
   \r
   This function abstracts the signaling of the Ready to Boot Event. The Framework moved\r
-  from a proprietary to UEFI 2.0 based mechanism.  This library abstracts the caller from\r
-  how this event is created to prevent to code form having to change with the version of\r
-  the specification supported.\r
+  from a proprietary to UEFI 2.0 based mechanism. This library abstracts the caller\r
+  from how this event is created to prevent to code form having to change with the\r
+  version of the specification supported.\r
 \r
 **/\r
 VOID\r
index 9c7b3b80e5b56499ddfafdaf148d05d6ee12409e..1d2c5d413c4e033616688137b1dcaf2ab63e0c96 100644 (file)
 \r
 \r
 /**\r
-  Resets the entire platform.\r
+  This service is a wrapper for the UEFI Runtime Service ResetSystem().\r
+\r
+  The ResetSystem()function resets the entire platform, including all processors and devices,and reboots the system.\r
+  Calling this interface with ResetType of EfiResetCold causes a system-wide reset. This sets all circuitry within\r
+  the system to its initial state. This type of reset is asynchronous to system operation and operates without regard\r
+  to cycle boundaries. EfiResetCold is tantamount to a system power cycle.\r
+  Calling this interface with ResetType of EfiResetWarm causes a system-wide initialization. The processors are set to\r
+  their initial state, and pending cycles are not corrupted. If the system does not support this reset type, then an\r
+  EfiResetCold must be performed.\r
+  Calling this interface with ResetType of EfiResetShutdown causes the system to enter a power state equivalent to the\r
+  ACPI G2/S5 or G3 states. If the system does not support this reset type, then when the system is rebooted, it should\r
+  exhibit the EfiResetCold attributes.\r
+  The platform may optionally log the parmeters from any non-normal reset that occurs.\r
+  The ResetSystem() function does not return.\r
 \r
   @param  ResetType   The type of reset to perform.\r
-  @param  ResetStatus The status code for the reset. If the system reset is part of a\r
-                      normal operation, the status code would be EFI_SUCCESS. If the system\r
-                      reset is due to some type of failure the most appropriate EFI Status\r
-                      code would be used.\r
+  @param  ResetStatus The status code for the reset. If the system reset is part of a normal operation, the status code\r
+                      would be EFI_SUCCESS. If the system reset is due to some type of failure the most appropriate EFI\r
+                      Status code would be used.\r
   @param  DataSizeThe size, in bytes, of ResetData.\r
-  @param  ResetData   For a ResetType of EfiResetCold, EfiResetWarm, or EfiResetShutdown\r
-                      the data buffer starts with a Null-terminated Unicode string, optionally\r
-                      followed by additional binary data. The string is a description that the\r
-                      caller may use to further indicate the reason for the system reset. ResetData\r
-                      is only valid if ResetStatus is something other then EFI_SUCCESS. This\r
-                      pointer must be a physical address. For a ResetType of EfiRestUpdate the\r
-                      data buffer also starts with a Null-terminated string that is followed by\r
-                      a physical VOID * to an EFI_CAPSULE_HEADER.\r
+  @param  ResetData   For a ResetType of EfiResetCold, EfiResetWarm, or EfiResetShutdown the data buffer starts with a\r
+                      Null-terminated Unicode string, optionally followed by additional binary data. The string is a\r
+                      description that the caller may use to further indicate the reason for the system reset. ResetData\r
+                      is only valid if ResetStatus is something other then EFI_SUCCESS. This pointer must be a physical\r
+                      address. For a ResetType of EfiRestUpdate the data buffer also starts with a Null-terminated string\r
+                      that is followed by a physical VOID * to an EFI_CAPSULE_HEADER.\r
 \r
 **/\r
 VOID\r
@@ -117,7 +127,7 @@ EfiSetTime (
 \r
 \r
 /**\r
-  Returns the current wakeup alarm clock setting.\r
+  This service is a wrapper for the UEFI Runtime Service GetWakeupTime().\r
 \r
   The alarm clock time may be rounded from the set alarm clock time to be within the resolution\r
   of the alarm clock device. The resolution of the alarm clock device is defined to be one second.\r
@@ -151,7 +161,14 @@ EfiGetWakeupTime (
 \r
 \r
 /**\r
-  Sets the system wakeup alarm clock time.\r
+  This service is a wrapper for the UEFI Runtime Service SetWakeupTime()\r
+\r
+  Setting a system wakeup alarm causes the system to wake up or power on at the set time.\r
+  When the alarm fires, the alarm signal is latched until it is acknowledged by calling SetWakeupTime()\r
+  to disable the alarm. If the alarm fires before the system is put into a sleeping or off state,\r
+  since the alarm signal is latched the system will immediately wake up. If the alarm fires while\r
+  the system is off and there is insufficient power to power on the system, the system is powered\r
+  on when power is restored.\r
 \r
   @param  Enable  Enable or disable the wakeup alarm.\r
   @param  Time    If Enable is TRUE, the time to set the wakeup alarm for. Type EFI_TIME\r
@@ -177,10 +194,17 @@ EfiSetWakeupTime (
 \r
 \r
 /**\r
-  Return value of variable.\r
+  This service is a wrapper for the UEFI Runtime Service GetVariable().\r
 \r
-  @param  VariableName the name of the vendor's variable, it's a\r
-                       Null-Terminated Unicode String\r
+  Each vendor may create and manage its own variables without the risk of name conflicts by\r
+  using a unique VendorGuid. When a variable is set its Attributes are supplied to indicate\r
+  how the data variable should be stored and maintained by the system. The attributes affect\r
+  when the variable may be accessed and volatility of the data. Any attempts to access a variable\r
+  that does not have the attribute set for runtime access will yield the EFI_NOT_FOUND error.\r
+  If the Data buffer is too small to hold the contents of the variable, the error EFI_BUFFER_TOO_SMALL\r
+  is returned and DataSize is set to the required buffer size to obtain the data.\r
+\r
+  @param  VariableName the name of the vendor's variable, it's a Null-Terminated Unicode String\r
   @param  VendorGuid   Unify identifier for vendor.\r
   @param  Attributes   Point to memory location to return the attributes of variable. If the point\r
                        is NULL, the parameter would be ignored.\r
@@ -214,7 +238,13 @@ EfiGetVariable (
 \r
 \r
 /**\r
-  Enumerates variable's name.\r
+  This service is a wrapper for the UEFI Runtime Service GetNextVariableName().\r
+\r
+  GetNextVariableName() is called multiple times to retrieve the VariableName and VendorGuid of\r
+  all variables currently available in the system. On each call to GetNextVariableName() the\r
+  previous results are passed into the interface, and on output the interface returns the next\r
+  variable name data. When the entire variable list has been returned, the error EFI_NOT_FOUND\r
+  is returned.\r
 \r
   @param  VariableNameSize As input, point to maxinum size of variable name.\r
                            As output, point to actual size of varaible name.\r
@@ -250,7 +280,10 @@ EfiGetNextVariableName (
 \r
 \r
 /**\r
-  Sets value of variable.\r
+  This service is a wrapper for the UEFI Runtime Service GetNextVariableName()\r
+\r
+  Variables are stored by the firmware and may maintain their values across power cycles. Each vendor\r
+  may create and manage its own variables without the risk of name conflicts by using a unique VendorGuid.\r
 \r
   @param  VariableName the name of the vendor's variable, it's a\r
                        Null-Terminated Unicode String\r
@@ -290,7 +323,13 @@ EfiSetVariable (
 \r
 \r
 /**\r
-  Returns the next high 32 bits of platform's monotonic counter.\r
+  This service is a wrapper for the UEFI Runtime Service GetNextHighMonotonicCount().\r
+\r
+  The platform¡¯s monotonic counter is comprised of two 32-bit quantities: the high 32 bits and\r
+  the low 32 bits. During boot service time the low 32-bit value is volatile: it is reset to zero\r
+  on every system reset and is increased by 1 on every call to GetNextMonotonicCount(). The high\r
+  32-bit value is nonvolatile and is increased by 1 whenever the system resets or whenever the low\r
+  32-bit count (returned by GetNextMonoticCount()) overflows.\r
 \r
   @param  HighCount Pointer to returned value.\r
 \r
@@ -310,7 +349,10 @@ EfiGetNextHighMonotonicCount (
 \r
 \r
 /**\r
-  This service converts a function pointer from physical to virtual addressing. \r
+  This service is a wrapper for the UEFI Runtime Service ConvertPointer().  \r
+\r
+  The ConvertPointer() function is used by an EFI component during the SetVirtualAddressMap() operation.\r
+  ConvertPointer()must be called using physical address pointers during the execution of SetVirtualAddressMap().\r
 \r
   @param  DebugDisposition   Supplies type information for the pointer being converted.\r
   @param  Address            The pointer to a pointer that is to be fixed to be the\r
@@ -423,7 +465,12 @@ EfiConvertList (
 \r
 \r
 /**\r
-  Change the runtime addressing mode of EFI firmware from physical to virtual.\r
+  This service is a wrapper for the UEFI Runtime Service SetVirtualAddressMap().\r
+\r
+  The SetVirtualAddressMap() function is used by the OS loader. The function can only be called\r
+  at runtime, and is called by the owner of the system¡¯s memory map. I.e., the component which\r
+  called ExitBootServices(). All events of type EVT_SIGNAL_VIRTUAL_ADDRESS_CHANGE must be signaled\r
+  before SetVirtualAddressMap() returns.\r
 \r
   @param  MemoryMapSize         The size in bytes of VirtualMap.\r
   @param  DescriptorSize        The size in bytes of an entry in the VirtualMap.\r
@@ -462,12 +509,12 @@ EfiSetVirtualAddressMap (
 \r
 \r
 /**\r
-  Passes capsules to the firmware with both virtual and physical mapping.\r
-  Depending on the intended consumption, the firmware may\r
-  process the capsule immediately. If the payload should persist across a\r
-  system reset, the reset value returned from EFI_QueryCapsuleCapabilities must\r
-  be passed into ResetSystem() and will cause the capsule to be processed by\r
-  the firmware as part of the reset process.\r
+  This service is a wrapper for the UEFI Runtime Service UpdateCapsule().\r
+\r
+  Passes capsules to the firmware with both virtual and physical mapping. Depending on the intended\r
+  consumption, the firmware may process the capsule immediately. If the payload should persist across a\r
+  system reset, the reset value returned from EFI_QueryCapsuleCapabilities must be passed into ResetSystem()\r
+  and will cause the capsule to be processed by the firmware as part of the reset process.\r
 \r
   @param  CapsuleHeaderArray    Virtual pointer to an array of virtual pointers to the capsules\r
                                 being passed into update capsule. Each capsules is assumed to\r
@@ -512,6 +559,8 @@ EfiUpdateCapsule (
 \r
 \r
 /**\r
+  This service is a wrapper for the UEFI Runtime Service QueryCapsuleCapabilities().\r
+\r
   The QueryCapsuleCapabilities() function allows a caller to test to see if a capsule or\r
   capsules can be updated via UpdateCapsule(). The Flags values in the capsule header and\r
   size of the entire capsule is checked.\r
@@ -530,16 +579,17 @@ EfiUpdateCapsule (
                                 stored in contiguous virtual memory.\r
   @param  CapsuleCount          Number of pointers to EFI_CAPSULE_HEADER in\r
                                 CaspuleHeaderArray.\r
-  @param  MaximumCapsuleSize    On output the maximum size that UpdateCapsule() can\r
+  @param  MaximumCapsuleSize     On output the maximum size that UpdateCapsule() can\r
                                 support as an argument to UpdateCapsule() via\r
                                 CapsuleHeaderArray and ScatterGatherList.\r
                                 Undefined on input.\r
   @param  ResetType             Returns the type of reset required for the capsule update.\r
 \r
-  @retval EFI_SUCCESS           Valid answer returned..\r
+  @retval EFI_SUCCESS           Valid answer returned.\r
   @retval EFI_INVALID_PARAMETER MaximumCapsuleSize is NULL.\r
   @retval EFI_UNSUPPORTED       The capsule type is not supported on this platform, and\r
                                 MaximumCapsuleSize and ResetType are undefined.\r
+  @retval EFI_OUT_OF_RESOURCES  There were insufficient resources to process the query request.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -561,7 +611,7 @@ EfiQueryCapsuleCapabilities (
 \r
 \r
 /**\r
-  Returns information about the EFI variables.\r
+  This service is a wrapper for the UEFI Runtime Service QueryVariableInfo().\r
 \r
   The QueryVariableInfo() function allows a caller to obtain the information about the\r
   maximum size of the storage space available for the EFI variables, the remaining size of the storage\r
@@ -592,6 +642,7 @@ EfiQueryCapsuleCapabilities (
                                 MaximumVariableStorageSize,\r
                                 RemainingVariableStorageSize, MaximumVariableSize\r
                                 are undefined.\r
+\r
 **/\r
 EFI_STATUS\r
 EFIAPI\r