]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFrameworkModulePkg/Include/Library/GenericBdsLib.h
Remove BdsLibConnectConsoleVariableWithoutDispatch() and enhance BdsLibConnectDeviceP...
[mirror_edk2.git] / IntelFrameworkModulePkg / Include / Library / GenericBdsLib.h
index 5b2045d693c6ddd276cdbff65959f1b5ad32bcfb..ecd68a003bbb60c0a316ff8b2c161a8581276c93 100644 (file)
@@ -4,7 +4,7 @@
     2) BDS boot device connect interface.\r
     3) BDS Misc interfaces for mainting boot variable, ouput string.\r
 \r
-Copyright (c) 2004 - 2010, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2004 - 2013, Intel Corporation. All rights reserved.<BR>\r
 This program and the accompanying materials are licensed and made available under \r
 the terms and conditions of the BSD License that accompanies this distribution.  \r
 The full text of the license may be found at\r
@@ -19,7 +19,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define _GENERIC_BDS_LIB_H_\r
 \r
 #include <Protocol/UserManager.h>\r
-extern EFI_HANDLE mBdsImageHandle;\r
 \r
 ///\r
 /// Constants which are variable names used to access variables.\r
@@ -387,9 +386,10 @@ BdsLibConnectAll (
   );\r
 \r
 /**\r
-  This function creates all handles associated with the given device\r
-  path node. If the handle associated with one device path node cannot\r
-  be created, then it tries to execute the dispatch to load the missing drivers.  \r
+  This function will create all handles associate with every device\r
+  path node. If the handle associate with one device path node can not\r
+  be created successfully, then still give chance to do the dispatch,\r
+  which load the missing drivers if possible.\r
 \r
   @param  DevicePathToConnect   The device path to be connected. Can be\r
                                 a multi-instance device path.\r
@@ -466,6 +466,23 @@ BdsLibConnectAllDefaultConsoles (
   VOID\r
   );\r
 \r
+\r
+/**\r
+  This function will connect console device except ConIn base on the console\r
+  device variable ConOut and ErrOut.\r
+\r
+  @retval EFI_SUCCESS              At least one of the ConOut device have\r
+                                   been connected success.\r
+  @retval EFI_STATUS               Return the status of BdsLibConnectConsoleVariable ().\r
+\r
+**/\r
+EFI_STATUS\r
+EFIAPI\r
+BdsLibConnectAllDefaultConsolesWithOutConIn (\r
+  VOID\r
+  );\r
+\r
+\r
 /**\r
   This function updates the console variable based on ConVarName. It can\r
   add or remove one specific console device path from the variable\r
@@ -491,17 +508,21 @@ BdsLibUpdateConsoleVariable (
   );\r
 \r
 /**\r
-  Connect the console device base on the variable ConVarName. If\r
-  ConVarName is a multi-instance device path, and at least one\r
-  instance connects successfully, then this function\r
+  Connect the console device base on the variable ConVarName, if\r
+  device path of the ConVarName is multi-instance device path and\r
+  anyone of the instances is connected success, then this function\r
   will return success.\r
+  If the handle associate with one device path node can not\r
+  be created successfully, then still give chance to do the dispatch,\r
+  which load the missing drivers if possible.\r
 \r
-  @param  ConVarName               The console related variable name: ConIn, ConOut,\r
+  @param  ConVarName               Console related variable name, ConIn, ConOut,\r
                                    ErrOut.\r
 \r
-  @retval EFI_NOT_FOUND            No console devices were connected successfully\r
-  @retval EFI_SUCCESS              Connected at least one instance of the console\r
-                                   device path based on the variable ConVarName.\r
+  @retval EFI_NOT_FOUND            There is not any console devices connected\r
+                                   success\r
+  @retval EFI_SUCCESS              Success connect any one instance of the console\r
+                                   device path base on the variable ConVarName.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -569,7 +590,6 @@ DevicePathToStr (
   IN EFI_DEVICE_PATH_PROTOCOL     *DevPath\r
   );\r
 \r
-\r
 //\r
 // Internal definitions\r
 //\r
@@ -592,17 +612,12 @@ typedef struct {
   DEV_PATH_FUNCTION Function;\r
 } DEVICE_PATH_STRING_TABLE;\r
 \r
-extern EFI_GUID mEfiDevicePathMessagingUartFlowControlGuid;\r
-\r
 typedef struct {\r
   EFI_DEVICE_PATH_PROTOCOL  Header;\r
   EFI_GUID                  Guid;\r
   UINT8                     VendorDefinedData[1];\r
 } VENDOR_DEVICE_PATH_WITH_DATA;\r
 \r
-\r
-extern EFI_GUID mEfiDevicePathMessagingSASGuid;\r
-\r
 typedef struct {\r
   EFI_DEVICE_PATH_PROTOCOL  Header;\r
   UINT16                    NetworkProtocol;\r