]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFrameworkPkg/Library/FrameworkUefiLib/UefiDriverModel.c
IntelFrameworkPkg: Clean up source files
[mirror_edk2.git] / IntelFrameworkPkg / Library / FrameworkUefiLib / UefiDriverModel.c
index 6b36f3d78fd39e2d76bf03141c33a0617ea35a2e..83482dad1ca2b38d00678eb1b3629f0b8851130f 100644 (file)
@@ -2,28 +2,29 @@
   Library functions that abstract driver model protocols\r
   installation.\r
 \r
-  Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
   This program and the accompanying materials are\r
   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
+\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
+\r
 \r
 #include "UefiLibInternal.h"\r
 \r
 /**\r
   Installs and completes the initialization of a Driver Binding Protocol instance.\r
-  \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
+  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
@@ -35,6 +36,7 @@
   @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
 EFIAPI\r
@@ -49,22 +51,26 @@ EfiLibInstallDriverBinding (
 \r
   ASSERT (DriverBinding != NULL);\r
 \r
+  //\r
+  // Update the ImageHandle and DriverBindingHandle fields of the Driver Binding Protocol\r
+  //\r
+  DriverBinding->ImageHandle         = ImageHandle;\r
+  DriverBinding->DriverBindingHandle = DriverBindingHandle;\r
+\r
   Status = gBS->InstallMultipleProtocolInterfaces (\r
-                  &DriverBindingHandle,\r
+                  &DriverBinding->DriverBindingHandle,\r
                   &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                   NULL\r
                   );\r
-  ASSERT_EFI_ERROR (Status);\r
-\r
   //\r
-  // Update the ImageHandle and DriverBindingHandle fields of the Driver Binding Protocol\r
+  // ASSERT if the call to InstallMultipleProtocolInterfaces() failed\r
   //\r
-  DriverBinding->ImageHandle         = ImageHandle;\r
-  DriverBinding->DriverBindingHandle = DriverBindingHandle;\r
+  ASSERT_EFI_ERROR (Status);\r
 \r
   return Status;\r
 }\r
 \r
+\r
 /**\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
@@ -74,10 +80,10 @@ EfiLibInstallDriverBinding (
   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
+  driver produces multiple Driver Binding Protocols.\r
+  If DriverBinding is NULL, then ASSERT().\r
   If the installation fails, then ASSERT().\r
-  \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
@@ -105,21 +111,25 @@ EfiLibInstallAllDriverProtocols (
 {\r
   EFI_STATUS                                  Status;\r
 \r
-  if (DriverBinding == NULL) {\r
-    return EFI_INVALID_PARAMETER;\r
-  }\r
+  ASSERT (DriverBinding != NULL);\r
+\r
+  //\r
+  // Update the ImageHandle and DriverBindingHandle fields of the Driver Binding Protocol\r
+  //\r
+  DriverBinding->ImageHandle         = ImageHandle;\r
+  DriverBinding->DriverBindingHandle = DriverBindingHandle;\r
 \r
   if (DriverDiagnostics == NULL || FeaturePcdGet(PcdDriverDiagnosticsDisable)) {\r
     if (DriverConfiguration == NULL) {\r
       if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
         Status = gBS->InstallMultipleProtocolInterfaces (\r
-                        &DriverBindingHandle,\r
+                        &DriverBinding->DriverBindingHandle,\r
                         &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                         NULL\r
                         );\r
       } else {\r
         Status = gBS->InstallMultipleProtocolInterfaces (\r
-                        &DriverBindingHandle,\r
+                        &DriverBinding->DriverBindingHandle,\r
                         &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                         &gEfiComponentNameProtocolGuid, ComponentName,\r
                         NULL\r
@@ -128,14 +138,14 @@ EfiLibInstallAllDriverProtocols (
     } else {\r
       if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
         Status = gBS->InstallMultipleProtocolInterfaces (\r
-                        &DriverBindingHandle,\r
+                        &DriverBinding->DriverBindingHandle,\r
                         &gEfiDriverBindingProtocolGuid,       DriverBinding,\r
                         &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
                         NULL\r
                         );\r
       } else {\r
         Status = gBS->InstallMultipleProtocolInterfaces (\r
-                        &DriverBindingHandle,\r
+                        &DriverBinding->DriverBindingHandle,\r
                         &gEfiDriverBindingProtocolGuid,       DriverBinding,\r
                         &gEfiComponentNameProtocolGuid,       ComponentName,\r
                         &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -147,14 +157,14 @@ EfiLibInstallAllDriverProtocols (
     if (DriverConfiguration == NULL) {\r
       if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
         Status = gBS->InstallMultipleProtocolInterfaces (\r
-                        &DriverBindingHandle,\r
+                        &DriverBinding->DriverBindingHandle,\r
                         &gEfiDriverBindingProtocolGuid,     DriverBinding,\r
                         &gEfiDriverDiagnosticsProtocolGuid, DriverDiagnostics,\r
                         NULL\r
                         );\r
       } else {\r
         Status = gBS->InstallMultipleProtocolInterfaces (\r
-                        &DriverBindingHandle,\r
+                        &DriverBinding->DriverBindingHandle,\r
                         &gEfiDriverBindingProtocolGuid,     DriverBinding,\r
                         &gEfiComponentNameProtocolGuid,     ComponentName,\r
                         &gEfiDriverDiagnosticsProtocolGuid, DriverDiagnostics,\r
@@ -164,7 +174,7 @@ EfiLibInstallAllDriverProtocols (
     } else {\r
       if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
        Status = gBS->InstallMultipleProtocolInterfaces (\r
-                        &DriverBindingHandle,\r
+                        &DriverBinding->DriverBindingHandle,\r
                         &gEfiDriverBindingProtocolGuid,       DriverBinding,\r
                         &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
                         &gEfiDriverDiagnosticsProtocolGuid,   DriverDiagnostics,\r
@@ -172,7 +182,7 @@ EfiLibInstallAllDriverProtocols (
                         );\r
       } else {\r
         Status = gBS->InstallMultipleProtocolInterfaces (\r
-                        &DriverBindingHandle,\r
+                        &DriverBinding->DriverBindingHandle,\r
                         &gEfiDriverBindingProtocolGuid,       DriverBinding,\r
                         &gEfiComponentNameProtocolGuid,       ComponentName,\r
                         &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -188,12 +198,6 @@ EfiLibInstallAllDriverProtocols (
   //\r
   ASSERT_EFI_ERROR (Status);\r
 \r
-  //\r
-  // Update the ImageHandle and DriverBindingHandle fields of the Driver Binding Protocol\r
-  //\r
-  DriverBinding->ImageHandle         = ImageHandle;\r
-  DriverBinding->DriverBindingHandle = DriverBindingHandle;\r
-\r
   return Status;\r
 }\r
 \r
@@ -206,8 +210,8 @@ EfiLibInstallAllDriverProtocols (
   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
+  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
@@ -237,16 +241,22 @@ EfiLibInstallDriverBindingComponentName2 (
 \r
   ASSERT (DriverBinding != NULL);\r
 \r
+  //\r
+  // Update the ImageHandle and DriverBindingHandle fields of the Driver Binding Protocol\r
+  //\r
+  DriverBinding->ImageHandle         = ImageHandle;\r
+  DriverBinding->DriverBindingHandle = DriverBindingHandle;\r
+\r
   if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
     if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
       Status = gBS->InstallMultipleProtocolInterfaces (\r
-                      &DriverBindingHandle,\r
+                      &DriverBinding->DriverBindingHandle,\r
                       &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                       NULL\r
                       );\r
       } else {\r
       Status = gBS->InstallMultipleProtocolInterfaces (\r
-                      &DriverBindingHandle,\r
+                      &DriverBinding->DriverBindingHandle,\r
                       &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                       &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                       NULL\r
@@ -255,14 +265,14 @@ EfiLibInstallDriverBindingComponentName2 (
   } else {\r
      if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
        Status = gBS->InstallMultipleProtocolInterfaces (\r
-                       &DriverBindingHandle,\r
+                       &DriverBinding->DriverBindingHandle,\r
                        &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                        &gEfiComponentNameProtocolGuid, ComponentName,\r
                        NULL\r
                        );\r
      } else {\r
        Status = gBS->InstallMultipleProtocolInterfaces (\r
-                       &DriverBindingHandle,\r
+                       &DriverBinding->DriverBindingHandle,\r
                        &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                        &gEfiComponentNameProtocolGuid, ComponentName,\r
                        &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -270,17 +280,12 @@ EfiLibInstallDriverBindingComponentName2 (
                        );\r
     }\r
   }\r
+\r
   //\r
   // ASSERT if the call to InstallMultipleProtocolInterfaces() failed\r
   //\r
   ASSERT_EFI_ERROR (Status);\r
 \r
-  //\r
-  // Update the ImageHandle and DriverBindingHandle fields of the Driver Binding Protocol\r
-  //\r
-  DriverBinding->ImageHandle         = ImageHandle;\r
-  DriverBinding->DriverBindingHandle = DriverBindingHandle;\r
-\r
   return Status;\r
 }\r
 \r
@@ -291,17 +296,18 @@ EfiLibInstallDriverBindingComponentName2 (
   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
+  Component Name, optional Component Name 2, optional Driver Configuration, optional Driver Configuration 2,\r
+  optional Driver Diagnostic, and optional Driver Diagnostic 2 Protocols onto the driver's DriverBindingHandle.\r
+  DriverBindingHandle is typically the same as the driver's ImageHandle, but it can be different if the driver\r
+  produces multiple Driver Binding Protocols.\r
+  If DriverBinding is NULL, then ASSERT().\r
+  If the installation fails, then ASSERT().\r
+\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
+  @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
@@ -331,7 +337,13 @@ EfiLibInstallAllDriverProtocols2 (
 {\r
   EFI_STATUS  Status;\r
 \r
-  ASSERT (DriverBinding != NULL); \r
+  ASSERT (DriverBinding != NULL);\r
+\r
+  //\r
+  // Update the ImageHandle and DriverBindingHandle fields of the Driver Binding Protocol\r
+  //\r
+  DriverBinding->ImageHandle         = ImageHandle;\r
+  DriverBinding->DriverBindingHandle = DriverBindingHandle;\r
 \r
   if (DriverConfiguration2 == NULL) {\r
     if (DriverConfiguration == NULL) {\r
@@ -340,13 +352,13 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               NULL\r
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               NULL\r
@@ -355,14 +367,14 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               NULL\r
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -374,14 +386,14 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverDiagnostics2ProtocolGuid, DriverDiagnostics2,\r
                               NULL\r
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverDiagnostics2ProtocolGuid, DriverDiagnostics2,\r
@@ -391,7 +403,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverDiagnostics2ProtocolGuid, DriverDiagnostics2,\r
@@ -399,7 +411,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -414,14 +426,14 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverDiagnosticsProtocolGuid, DriverDiagnostics,\r
                               NULL\r
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverDiagnosticsProtocolGuid, DriverDiagnostics,\r
@@ -431,7 +443,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverDiagnosticsProtocolGuid, DriverDiagnostics,\r
@@ -439,7 +451,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -452,7 +464,7 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverDiagnosticsProtocolGuid, DriverDiagnostics,\r
                               &gEfiDriverDiagnostics2ProtocolGuid, DriverDiagnostics2,\r
@@ -460,7 +472,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverDiagnosticsProtocolGuid, DriverDiagnostics,\r
@@ -471,7 +483,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverDiagnosticsProtocolGuid, DriverDiagnostics,\r
@@ -480,7 +492,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -498,14 +510,14 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
                               NULL\r
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -515,7 +527,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -523,7 +535,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -536,7 +548,7 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
                               &gEfiDriverDiagnostics2ProtocolGuid, DriverDiagnostics2,\r
@@ -544,7 +556,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -555,7 +567,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -564,7 +576,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -580,7 +592,7 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
                               &gEfiDriverDiagnosticsProtocolGuid, DriverDiagnostics,\r
@@ -588,7 +600,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -599,7 +611,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -608,7 +620,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -622,7 +634,7 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
                               &gEfiDriverDiagnosticsProtocolGuid, DriverDiagnostics,\r
@@ -631,7 +643,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -643,7 +655,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -653,7 +665,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -674,14 +686,14 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
                               NULL\r
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
@@ -691,7 +703,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
@@ -699,7 +711,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -712,7 +724,7 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverDiagnostics2ProtocolGuid, DriverDiagnostics2,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
@@ -720,7 +732,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
@@ -731,7 +743,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
@@ -740,7 +752,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -756,7 +768,7 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverDiagnosticsProtocolGuid, DriverDiagnostics,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
@@ -764,7 +776,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
@@ -775,7 +787,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverDiagnosticsProtocolGuid, DriverDiagnostics,\r
@@ -784,7 +796,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -798,7 +810,7 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
                               &gEfiDriverDiagnosticsProtocolGuid, DriverDiagnostics,\r
@@ -807,7 +819,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
@@ -819,7 +831,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
@@ -829,7 +841,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -848,7 +860,7 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
@@ -856,7 +868,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -867,7 +879,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -876,7 +888,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -890,7 +902,7 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
@@ -899,7 +911,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -911,7 +923,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -921,7 +933,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -938,7 +950,7 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
@@ -947,7 +959,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -959,7 +971,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -969,7 +981,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -984,7 +996,7 @@ EfiLibInstallAllDriverProtocols2 (
           if (ComponentName == NULL || FeaturePcdGet(PcdComponentNameDisable)) {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
                               &gEfiDriverConfiguration2ProtocolGuid, DriverConfiguration2,\r
@@ -994,7 +1006,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -1007,7 +1019,7 @@ EfiLibInstallAllDriverProtocols2 (
           } else {\r
             if (ComponentName2 == NULL || FeaturePcdGet(PcdComponentName2Disable)) {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiDriverConfigurationProtocolGuid, DriverConfiguration,\r
@@ -1018,7 +1030,7 @@ EfiLibInstallAllDriverProtocols2 (
                               );\r
             } else {\r
               Status = gBS->InstallMultipleProtocolInterfaces (\r
-                              &DriverBindingHandle,\r
+                              &DriverBinding->DriverBindingHandle,\r
                               &gEfiDriverBindingProtocolGuid, DriverBinding,\r
                               &gEfiComponentNameProtocolGuid, ComponentName,\r
                               &gEfiComponentName2ProtocolGuid, ComponentName2,\r
@@ -1035,19 +1047,10 @@ EfiLibInstallAllDriverProtocols2 (
     }\r
   }\r
 \r
-\r
   //\r
   // ASSERT if the call to InstallMultipleProtocolInterfaces() failed\r
   //\r
   ASSERT_EFI_ERROR (Status);\r
 \r
-  //\r
-  // Update the ImageHandle and DriverBindingHandle fields of the Driver Binding Protocol\r
-  //\r
-  DriverBinding->ImageHandle         = ImageHandle;\r
-  DriverBinding->DriverBindingHandle = DriverBindingHandle;\r
-\r
   return Status;\r
 }\r
-\r
-\r