]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Bus/Pci/XhciPei/XhcPeim.c
MdeModulePkg Xhci: Also RecoverHaltedEndpoint for BABBLE_ERROR
[mirror_edk2.git] / MdeModulePkg / Bus / Pci / XhciPei / XhcPeim.c
index 57e70701e826dbea37357c41f62aeeb86bfe1241..38f0d2184cff71e3ec7739c9e8e7d7ed910c5c07 100644 (file)
@@ -2,7 +2,7 @@
 PEIM to produce gPeiUsb2HostControllerPpiGuid based on gPeiUsbControllerPpiGuid\r
 which is used to enable recovery function from USB Drivers.\r
 \r
-Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2014 - 2017, Intel Corporation. All rights reserved.<BR>\r
 \r
 This program and the accompanying materials\r
 are licensed and made available under the terms and conditions\r
@@ -666,7 +666,7 @@ XhcPeiControlTransfer (
   } else {\r
     if (*TransferResult == EFI_USB_NOERROR) {\r
       Status = EFI_SUCCESS;\r
-    } else if (*TransferResult == EFI_USB_ERR_STALL) {\r
+    } else if ((*TransferResult == EFI_USB_ERR_STALL) || (*TransferResult == EFI_USB_ERR_BABBLE)) {\r
       RecoveryStatus = XhcPeiRecoverHaltedEndpoint(Xhc, Urb);\r
       if (EFI_ERROR (RecoveryStatus)) {\r
         DEBUG ((EFI_D_ERROR, "XhcPeiControlTransfer: XhcPeiRecoverHaltedEndpoint failed\n"));\r
@@ -988,7 +988,7 @@ XhcPeiBulkTransfer (
   } else {\r
     if (*TransferResult == EFI_USB_NOERROR) {\r
       Status = EFI_SUCCESS;\r
-    } else if (*TransferResult == EFI_USB_ERR_STALL) {\r
+    } else if ((*TransferResult == EFI_USB_ERR_STALL) || (*TransferResult == EFI_USB_ERR_BABBLE)) {\r
       RecoveryStatus = XhcPeiRecoverHaltedEndpoint(Xhc, Urb);\r
       if (EFI_ERROR (RecoveryStatus)) {\r
         DEBUG ((EFI_D_ERROR, "XhcPeiBulkTransfer: XhcPeiRecoverHaltedEndpoint failed\n"));\r