]> git.proxmox.com Git - mirror_edk2.git/blobdiff - OldMdePkg/Include/Library/UefiLib.h
Retiring the ANT/JAVA build and removing the older EDK II packages that required...
[mirror_edk2.git] / OldMdePkg / Include / Library / UefiLib.h
diff --git a/OldMdePkg/Include/Library/UefiLib.h b/OldMdePkg/Include/Library/UefiLib.h
deleted file mode 100644 (file)
index 03dc5dc..0000000
+++ /dev/null
@@ -1,711 +0,0 @@
-/** @file\r
-  MDE UEFI library functions and macros\r
-\r
-  Copyright (c) 2006 - 2007, Intel Corporation                                                         \r
-  All rights reserved. This program and the accompanying materials                          \r
-  are licensed and made available under the terms and conditions of the BSD License         \r
-  which accompanies this distribution.  The full text of the license may be found at        \r
-  http://opensource.org/licenses/bsd-license.php                                            \r
-\r
-  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
-  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
-\r
-**/\r
-\r
-#ifndef __UEFI_LIB_H__\r
-#define __UEFI_LIB_H__\r
-\r
-//\r
-// Unicode String Table\r
-//\r
-typedef struct {\r
-  CHAR8   *Language;\r
-  CHAR16  *UnicodeString;\r
-} EFI_UNICODE_STRING_TABLE;\r
-\r
-//\r
-// EFI Lock Status\r
-//\r
-typedef enum {\r
-  EfiLockUninitialized = 0,\r
-  EfiLockReleased      = 1,\r
-  EfiLockAcquired      = 2\r
-} EFI_LOCK_STATE;\r
-\r
-//\r
-// EFI Lock \r
-//\r
-typedef struct {\r
-  EFI_TPL         Tpl;\r
-  EFI_TPL         OwnerTpl;\r
-  EFI_LOCK_STATE  Lock;\r
-} EFI_LOCK;\r
-\r
-\r
-/**\r
-  This function searches the list of configuration tables stored in the EFI System \r
-  Table for a table with a GUID that matches TableGuid.  If a match is found, \r
-  then a pointer to the configuration table is returned in Table, and EFI_SUCCESS \r
-  is returned.  If a matching GUID is not found, then EFI_NOT_FOUND is returned.\r
-\r
-  @param  TableGuid       Pointer to table's GUID type..\r
-  @param  Table           Pointer to the table associated with TableGuid in the EFI System Table.\r
-\r
-  @retval EFI_SUCCESS     A configuration table matching TableGuid was found.\r
-  @retval EFI_NOT_FOUND   A configuration table matching TableGuid could not be found.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-EfiGetSystemConfigurationTable (  \r
-  IN  EFI_GUID  *TableGuid,\r
-  OUT VOID      **Table\r
-  );\r
-\r
-/**\r
-  This function causes the notification function to be executed for every protocol \r
-  of type ProtocolGuid instance that exists in the system when this function is \r
-  invoked.  In addition, every time a protocol of type ProtocolGuid instance is \r
-  installed or reinstalled, the notification function is also executed.\r
-\r
-  @param  ProtocolGuid    Supplies GUID of the protocol upon whose installation the event is fired.\r
-  @param  NotifyTpl       Supplies the task priority level of the event notifications.\r
-  @param  NotifyFunction  Supplies the function to notify when the event is signaled.\r
-  @param  NotifyContext   The context parameter to pass to NotifyFunction.\r
-  @param  Registration    A pointer to a memory location to receive the registration value.\r
-\r
-  @return The notification event that was created. \r
-\r
-**/\r
-EFI_EVENT\r
-EFIAPI\r
-EfiCreateProtocolNotifyEvent(\r
-  IN  EFI_GUID          *ProtocolGuid,\r
-  IN  EFI_TPL           NotifyTpl,\r
-  IN  EFI_EVENT_NOTIFY  NotifyFunction,\r
-  IN  VOID              *NotifyContext,  OPTIONAL\r
-  OUT VOID              **Registration\r
-  );\r
-\r
-/**\r
-  This function creates an event using NotifyTpl, NoifyFunction, and NotifyContext.\r
-  This event is signaled with EfiNamedEventSignal().  This provide the ability for \r
-  one or more listeners on the same event named by the GUID specified by Name.\r
-\r
-  @param  Name                  Supplies GUID name of the event.\r
-  @param  NotifyTpl             Supplies the task priority level of the event notifications.\r
-  @param  NotifyFunction        Supplies the function to notify when the event is signaled.\r
-  @param  NotifyContext         The context parameter to pass to NotifyFunction. \r
-  @param  Registration          A pointer to a memory location to receive the registration value.\r
-\r
-  @retval EFI_SUCCESS           A named event was created.\r
-  @retval EFI_OUT_OF_RESOURCES  There are not enough resource to create the named event.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-EfiNamedEventListen (\r
-  IN CONST EFI_GUID    *Name,\r
-  IN EFI_TPL           NotifyTpl,\r
-  IN EFI_EVENT_NOTIFY  NotifyFunction,\r
-  IN CONST VOID        *NotifyContext,  OPTIONAL\r
-  OUT VOID             *Registration OPTIONAL\r
-  );\r
-\r
-/**\r
-  This function signals the named event specified by Name.  The named event must \r
-  have been created with EfiNamedEventListen().\r
-\r
-  @param  Name                  Supplies GUID name of the event.\r
-\r
-  @retval EFI_SUCCESS           A named event was signaled.\r
-  @retval EFI_OUT_OF_RESOURCES  There are not enough resource to signal the named event.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-EfiNamedEventSignal (\r
-  IN CONST EFI_GUID  *Name\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
-  to RestoreTPL().\r
-\r
-  @param  VOID\r
-\r
-  @retvale EFI_TPL              The current TPL.\r
-\r
-**/\r
-EFI_TPL\r
-EFIAPI\r
-EfiGetCurrentTpl (\r
-  VOID\r
-  );\r
-\r
-/**\r
-  This function initializes a basic mutual exclusion lock to the released state \r
-  and returns the lock.  Each lock provides mutual exclusion access at its task \r
-  priority level.  Since there is no preemption or multiprocessor support in EFI,\r
-  acquiring the lock only consists of raising to the locks TPL.\r
-\r
-  @param  Lock       A pointer to the lock data structure to initialize.\r
-  @param  Priority   EFI TPL associated with the lock.\r
-\r
-  @return The lock.\r
-\r
-**/\r
-EFI_LOCK *\r
-EFIAPI\r
-EfiInitializeLock (\r
-  IN OUT EFI_LOCK  *Lock,\r
-  IN EFI_TPL        Priority\r
-  );\r
-\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
-  acquiring the lock only consists of raising to the locks TPL.\r
-\r
-  @param  Lock      A pointer to the lock data structure to initialize.\r
-  @param  Priority  The task priority level of the lock.\r
-\r
-  @return The lock.\r
-\r
-**/\r
-#define EFI_INITIALIZE_LOCK_VARIABLE(Priority) \\r
-  {Priority, TPL_APPLICATION, EfiLockReleased }\r
-\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
-  then this macro evaluates the EFI_LOCK structure specified by Lock.  If Lock \r
-  is not in the locked state, then DebugAssert() is called passing in the source \r
-  filename, source line number, and Lock.\r
-\r
-  If Lock is NULL, then ASSERT().\r
-\r
-  @param  LockParameter  A pointer to the lock to acquire.\r
-\r
-**/\r
-#define ASSERT_LOCKED(LockParameter)                  \\r
-  do {                                                \\r
-    if (DebugAssertEnabled ()) {                      \\r
-      ASSERT (LockParameter != NULL);                 \\r
-      if ((LockParameter)->Lock != EfiLockAcquired) { \\r
-        _ASSERT (LockParameter not locked);           \\r
-      }                                               \\r
-    }                                                 \\r
-  } while (FALSE)\r
-\r
-\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 places the lock in the \r
-  acquired state.\r
-\r
-  @param  Priority  The task priority level of the lock.\r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-EfiAcquireLock (\r
-  IN EFI_LOCK  *Lock\r
-  );\r
-\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
-\r
-  @param  Lock              A pointer to the lock to acquire.\r
-\r
-  @retval EFI_SUCCESS       The lock was acquired.\r
-  @retval EFI_ACCESS_DENIED The lock could not be acquired because it is already owned.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-EfiAcquireLockOrFail (\r
-  IN EFI_LOCK  *Lock\r
-  );\r
-\r
-/**\r
-  This function transitions a mutual exclusion lock from the acquired state to \r
-  the released state, and restores the system's task priority level to its \r
-  previous level.\r
-\r
-  @param  Lock  A pointer to the lock to release.\r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-EfiReleaseLock (\r
-  IN EFI_LOCK  *Lock\r
-  );\r
-\r
-/**
-  Tests whether a controller handle is being managed by a specific driver.
-
-  This function tests whether the driver specified by DriverBindingHandle is\r
-  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
-  If ProtocolGuid is NULL, then ASSERT().\r
-
-  @param  ControllerHandle     A handle for a controller to test.
-  @param  DriverBindingHandle  Specifies the driver binding handle for the
-                               driver.
-  @param  ProtocolGuid         Specifies the protocol that the driver specified
-                               by DriverBindingHandle opens in its Start()
-                               function.
-
-  @retval EFI_SUCCESS          ControllerHandle is managed by the driver
-                               specifed by DriverBindingHandle.
-  @retval EFI_UNSUPPORTED      ControllerHandle is not managed by the driver
-                               specifed by DriverBindingHandle.
-
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-EfiTestManagedDevice (\r
-  IN CONST EFI_HANDLE       ControllerHandle,\r
-  IN CONST EFI_HANDLE       DriverBindingHandle,\r
-  IN CONST EFI_GUID         *ProtocolGuid\r
-  );\r
-\r
-/**
-  Tests whether a child handle is a child device of the controller.
-
-  This function tests whether ChildHandle is one of the children of\r
-  ControllerHandle.  This test is performed by checking to see if the protocol\r
-  specified by ProtocolGuid is present on ControllerHandle and opened by\r
-  ChildHandle with an attribute of EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER.\r
-  If ProtocolGuid is NULL, then ASSERT().\r
-
-  @param  ControllerHandle     A handle for a (parent) controller to test. 
-  @param  ChildHandle          A child handle to test.
-  @param  ConsumsedGuid        Supplies the protocol that the child controller
-                               opens on its parent controller. 
-
-  @retval EFI_SUCCESS          ChildHandle is a child of the ControllerHandle.
-  @retval EFI_UNSUPPORTED      ChildHandle is not a child of the
-                               ControllerHandle.
-
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-EfiTestChildHandle (\r
-  IN CONST EFI_HANDLE       ControllerHandle,\r
-  IN CONST EFI_HANDLE       ChildHandle,\r
-  IN CONST EFI_GUID         *ProtocolGuid\r
-  );\r
-\r
-/**\r
-  This function looks up a Unicode string in UnicodeStringTable.  If Language is \r
-  a member of SupportedLanguages and a Unicode string is found in UnicodeStringTable\r
-  that matches the language code specified by Language, then it is returned in \r
-  UnicodeString.\r
-\r
-  @param  Language                A pointer to the ISO 639-2 language code for the \r
-                                  Unicode string to look up and return.\r
-  @param  SupportedLanguages      A pointer to the set of ISO 639-2 language codes \r
-                                  that the Unicode string table supports.  Language \r
-                                  must be a member of this set.\r
-  @param  UnicodeStringTable      A pointer to the table of Unicode strings.\r
-  @param  UnicodeString           A pointer to the Unicode string from UnicodeStringTable\r
-                                  that matches the language specified by Language.\r
-\r
-  @retval EFI_SUCCESS             The Unicode string that matches the language \r
-                                  specified by Language was found\r
-                                  in the table of Unicoide 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_UNSUPPORTED         SupportedLanguages is NULL.\r
-  @retval EFI_UNSUPPORTED         UnicodeStringTable is NULL.\r
-  @retval EFI_UNSUPPORTED         The language specified by Language is not a \r
-                                  member of SupportedLanguages.\r
-  @retval EFI_UNSUPPORTED         The language specified by Language is not \r
-                                  supported by UnicodeStringTable.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-LookupUnicodeString (\r
-  IN CONST CHAR8                     *Language,\r
-  IN CONST CHAR8                     *SupportedLanguages,\r
-  IN CONST EFI_UNICODE_STRING_TABLE  *UnicodeStringTable,\r
-  OUT CHAR16                         **UnicodeString\r
-  );\r
-\r
-/**\r
-  This function adds a Unicode string to UnicodeStringTable.\r
-  If Language is a member of SupportedLanguages then UnicodeString is added to \r
-  UnicodeStringTable.  New buffers are allocated for both Language and \r
-  UnicodeString.  The contents of Language and UnicodeString are copied into \r
-  these new buffers.  These buffers are automatically freed when \r
-  FreeUnicodeStringTable() is called.\r
-\r
-  @param  Language                A pointer to the ISO 639-2 language code for the Unicode \r
-                                  string to add.\r
-  @param  SupportedLanguages      A pointer to the set of ISO 639-2 language codes\r
-                                  that the Unicode string table supports.\r
-                                  Language must be a member of this set.\r
-  @param  UnicodeStringTable      A pointer to the table of Unicode strings.\r
-  @param  UnicodeString           A pointer to the Unicode string to add.\r
-\r
-  @retval EFI_SUCCESS             The Unicode string that matches the language \r
-                                  specified by Language was found in the table of \r
-                                  Unicode strings UnicodeStringTable, and it was \r
-                                  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 \r
-                                  already present in UnicodeStringTable.\r
-  @retval EFI_OUT_OF_RESOURCES    There is not enough memory to add another \r
-                                  Unicode string to UnicodeStringTable.\r
-  @retval EFI_UNSUPPORTED         The language specified by Language is not a \r
-                                  member of SupportedLanguages.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-AddUnicodeString (\r
-  IN CONST CHAR8               *Language,\r
-  IN CONST CHAR8               *SupportedLanguages,\r
-  IN EFI_UNICODE_STRING_TABLE  **UnicodeStringTable,\r
-  IN CONST CHAR16              *UnicodeString\r
-  );\r
-\r
-/**\r
-  This function frees the table of Unicode strings in UnicodeStringTable.\r
-  If UnicodeStringTable is NULL, then EFI_SUCCESS is returned.\r
-  Otherwise, each language code, and each Unicode string in the Unicode string \r
-  table are freed, and EFI_SUCCESS is returned.\r
-\r
-  @param  UnicodeStringTable  A pointer to the table of Unicode strings.\r
-\r
-  @retval EFI_SUCCESS         The Unicode string table was freed.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-FreeUnicodeStringTable (\r
-  IN EFI_UNICODE_STRING_TABLE  *UnicodeStringTable\r
-  );\r
-\r
-/**\r
-  This function computes and returns the width of the Unicode character \r
-  specified by UnicodeChar.\r
-\r
-  @param  UnicodeChar   A Unicode character.\r
-\r
-  @retval 0             The width if UnicodeChar could not be determined.\r
-  @retval 1             UnicodeChar is a narrow glyph.\r
-  @retval 2             UnicodeChar is a wide glyph.\r
-\r
-**/\r
-UINTN\r
-EFIAPI\r
-GetGlyphWidth (\r
-  IN CHAR16  UnicodeChar\r
-  );\r
-\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
-\r
-  @param  String      A pointer to a Null-terminated Unicode string.\r
-\r
-  @return The display length of the Null-terminated Unicode string specified by String.\r
-  \r
-**/\r
-UINTN\r
-EFIAPI\r
-UnicodeStringDisplayLength (\r
-  IN CONST CHAR16  *String\r
-  );\r
-\r
-//\r
-// Functions that abstract early Framework contamination of UEFI.\r
-//\r
-/**\r
-  Signal a Ready to Boot Event.  \r
-  \r
-  Create a Ready to Boot Event. Signal it and close it. This causes other \r
-  events of the same event group to be signaled in other modules. \r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-EfiSignalEventReadyToBoot (\r
-  VOID\r
-  );\r
-\r
-/**\r
-  Signal a Legacy Boot Event.  \r
-  \r
-  Create a legacy Boot Event. Signal it and close it. This causes other \r
-  events of the same event group to be signaled in other modules. \r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-EfiSignalEventLegacyBoot (\r
-  VOID\r
-  );\r
-\r
-/**\r
-  Create a Legacy Boot Event.  \r
-  \r
-  Tiano extended the CreateEvent Type enum to add a legacy boot event type. \r
-  This was bad as Tiano did not own the enum. In UEFI 2.0 CreateEventEx was\r
-  added and now it's possible to not voilate the UEFI specification by \r
-  declaring a GUID for the legacy boot event class. This library supports\r
-  the EDK/EFI 1.10 form and EDK II/UEFI 2.0 form and allows common code to \r
-  work both ways.\r
-\r
-  @param  LegacyBootEvent   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
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-EfiCreateEventLegacyBoot (\r
-  OUT EFI_EVENT  *LegacyBootEvent\r
-  );\r
-\r
-/**\r
-  Create an EFI event in the Legacy Boot Event Group and allows\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
-  to code form having to change with the version of the specification supported.\r
-  If LegacyBootEvent is NULL, then ASSERT().\r
-\r
-  @param  NotifyTpl         The task priority level of the event.\r
-  @param  NotifyFunction    The notification function to call when the event is signaled.\r
-  @param  NotifyContext     The content to pass to NotifyFunction when the event is signaled.\r
-  @param  LegacyBootEvent   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
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-EfiCreateEventLegacyBootEx (\r
-  IN  EFI_TPL           NotifyTpl,\r
-  IN  EFI_EVENT_NOTIFY  NotifyFunction,  OPTIONAL\r
-  IN  VOID              *NotifyContext,  OPTIONAL\r
-  OUT EFI_EVENT         *LegacyBootEvent\r
-  );\r
-\r
-/**\r
-  Create a Read to Boot Event.  \r
-  \r
-  Tiano extended the CreateEvent Type enum to add a ready to boot event type. \r
-  This was bad as Tiano did not own the enum. In UEFI 2.0 CreateEventEx was\r
-  added and now it's possible to not voilate the UEFI specification and use \r
-  the ready to boot event class defined in UEFI 2.0. This library supports\r
-  the EDK/EFI 1.10 form and EDKII/UEFI 2.0 form and allows common code to \r
-  work both ways.\r
-\r
-  @param  LegacyBootEvent   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
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-EfiCreateEventReadyToBoot (\r
-  OUT EFI_EVENT  *ReadyToBootEvent\r
-  );\r
-\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
-  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
-  to code form having to change with the version of the specification supported.\r
-  If ReadyToBootEvent is NULL, then ASSERT().\r
-\r
-  @param  NotifyTpl         The task priority level of the event.\r
-  @param  NotifyFunction    The notification function to call when the event is signaled.\r
-  @param  NotifyContext     The content to pass to NotifyFunction when the event is signaled.\r
-  @param  LegacyBootEvent   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
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-EfiCreateEventReadyToBootEx (\r
-  IN  EFI_TPL           NotifyTpl,\r
-  IN  EFI_EVENT_NOTIFY  NotifyFunction,  OPTIONAL\r
-  IN  VOID              *NotifyContext,  OPTIONAL\r
-  OUT EFI_EVENT         *ReadyToBootEvent\r
-  );\r
-\r
-/**\r
-  Initialize a Firmware Volume (FV) Media Device Path node.\r
-  \r
-  Tiano extended the EFI 1.10 device path nodes. Tiano does not own this enum\r
-  so as we move to UEFI 2.0 support we must use a mechanism that conforms with\r
-  the UEFI 2.0 specification to define the FV device path. An UEFI GUIDed \r
-  device path is defined for Tiano extensions of device path. If the code \r
-  is compiled to conform with the UEFI 2.0 specification use the new device path\r
-  else use the old form for backwards compatability.\r
-\r
-  @param  FvDevicePathNode  Pointer to a FV device path node to initialize\r
-  @param  NameGuid          FV file name to use in FvDevicePathNode\r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-EfiInitializeFwVolDevicepathNode (\r
-  IN OUT MEDIA_FW_VOL_FILEPATH_DEVICE_PATH  *FvDevicePathNode,\r
-  IN CONST EFI_GUID                         *NameGuid\r
-  );\r
-\r
-/**\r
-  Check to see if the Firmware Volume (FV) Media Device Path is valid \r
-  \r
-  Tiano extended the EFI 1.10 device path nodes. Tiano does not own this enum\r
-  so as we move to UEFI 2.0 support we must use a mechanism that conforms with\r
-  the UEFI 2.0 specification to define the FV device path. An UEFI GUIDed \r
-  device path is defined for Tiano extensions of device path. If the code \r
-  is compiled to conform with the UEFI 2.0 specification use the new device path\r
-  else use the old form for backwards compatability. The return value to this\r
-  function points to a location in FvDevicePathNode and it does not allocate\r
-  new memory for the GUID pointer that is returned.\r
-\r
-  @param  FvDevicePathNode  Pointer to FV device path to check.\r
-\r
-  @retval NULL              FvDevicePathNode is not valid.\r
-  @retval Other             FvDevicePathNode is valid and pointer to NameGuid was returned.\r
-\r
-**/\r
-EFI_GUID *\r
-EFIAPI\r
-EfiGetNameGuidFromFwVolDevicePathNode (\r
-  IN CONST MEDIA_FW_VOL_FILEPATH_DEVICE_PATH  *FvDevicePathNode\r
-  );\r
-\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
-  PcdUefiLibMaxPrintBufferSize characters are sent to ConOut.\r
-\r
-  @param Format   Null-terminated Unicode format string.\r
-  @param ...      VARARG list consumed to process Format.\r
-  If Format is NULL, then ASSERT().\r
-  If Format is not aligned on a 16-bit boundary, then ASSERT().\r
-\r
-**/\r
-UINTN\r
-EFIAPI\r
-Print (\r
-  IN CONST CHAR16  *Format,\r
-  ...\r
-  );\r
-\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
-  PcdUefiLibMaxPrintBufferSize characters are sent to StdErr.\r
-\r
-  @param Format   Null-terminated Unicode format string.\r
-  @param ...      VARARG list consumed to process Format.\r
-  If Format is NULL, then ASSERT().\r
-  If Format is not aligned on a 16-bit boundary, then ASSERT().\r
-\r
-**/\r
-UINTN\r
-EFIAPI\r
-ErrorPrint (\r
-  IN CONST CHAR16  *Format,\r
-  ...\r
-  );\r
-\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
-  PcdUefiLibMaxPrintBufferSize characters are sent to ConOut.\r
-\r
-  @param Format   Null-terminated ASCII format string.\r
-  @param ...      VARARG list consumed to process Format.\r
-  If Format is NULL, then ASSERT().\r
-  If Format is not aligned on a 16-bit boundary, then ASSERT().\r
-\r
-**/\r
-UINTN\r
-EFIAPI\r
-AsciiPrint (\r
-  IN CONST CHAR8  *Format,\r
-  ...\r
-  );\r
-\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
-  PcdUefiLibMaxPrintBufferSize characters are sent to StdErr.\r
-\r
-  @param Format   Null-terminated ASCII format string.\r
-  @param ...      VARARG list consumed to process Format.\r
-  If Format is NULL, then ASSERT().\r
-  If Format is not aligned on a 16-bit boundary, then ASSERT().\r
-\r
-**/\r
-UINTN\r
-EFIAPI\r
-AsciiErrorPrint (\r
-  IN CONST CHAR8  *Format,\r
-  ...\r
-  );\r
-\r
-#endif\r