DM USB: add code for error processing
add error processing logic for error code from libusb. Change-Id: I39883ddcb0ad80bcd8304b887cd4d2f32da3fa22 Tracked-On: Signed-off-by: Xiaoguang Wu <xiaoguang.wu@intel.com> Reviewed-by: Liang Yang <liang3.yang@intel.com> Acked-by: Yu Wang <yu1.wang@intel.com>
This commit is contained in:
parent
00fbfd6da3
commit
7431a9021c
|
@ -2173,10 +2173,19 @@ pci_xhci_xfer_complete(struct pci_xhci_vdev *xdev,
|
|||
XHCI_ST_EPCTX_HALTED;
|
||||
err = XHCI_TRB_ERROR_STALL;
|
||||
break;
|
||||
case USB_ERR_SHORT_XFER:
|
||||
err = XHCI_TRB_ERROR_SHORT_PKT;
|
||||
break;
|
||||
case USB_ERR_TIMEOUT:
|
||||
case USB_ERR_IOERROR:
|
||||
err = XHCI_TRB_ERROR_XACT;
|
||||
break;
|
||||
case USB_ERR_BAD_BUFSIZE:
|
||||
err = XHCI_TRB_ERROR_BABBLE;
|
||||
break;
|
||||
case USB_ERR_NORMAL_COMPLETION:
|
||||
break;
|
||||
default:
|
||||
/* FIXME: should process other failures */
|
||||
UPRINTF(LFTL, "unknown error %d\r\n", xfer->status);
|
||||
}
|
||||
|
||||
|
|
|
@ -62,13 +62,21 @@ usb_dev_comp_req(struct libusb_transfer *libusb_xfer)
|
|||
xfer->status = USB_ERR_STALLED;
|
||||
goto out;
|
||||
case LIBUSB_TRANSFER_NO_DEVICE:
|
||||
/* avoid short packet warnings when devices are plugged out. */
|
||||
xfer->status = USB_ERR_SHORT_XFER;
|
||||
goto out;
|
||||
case LIBUSB_TRANSFER_ERROR:
|
||||
case LIBUSB_TRANSFER_TIMED_OUT:
|
||||
xfer->status = USB_ERR_STALLED;
|
||||
goto out;
|
||||
case LIBUSB_TRANSFER_CANCELLED:
|
||||
xfer->status = USB_ERR_IOERROR;
|
||||
goto out;
|
||||
case LIBUSB_TRANSFER_TIMED_OUT:
|
||||
xfer->status = USB_ERR_TIMEOUT;
|
||||
goto out;
|
||||
case LIBUSB_TRANSFER_OVERFLOW:
|
||||
/* FIXME: should treat every failure properly */
|
||||
UPRINTF(LWRN, "failure: %x\r\n", libusb_xfer->status);
|
||||
break;
|
||||
xfer->status = USB_ERR_BAD_BUFSIZE;
|
||||
goto out;
|
||||
case LIBUSB_TRANSFER_COMPLETED:
|
||||
break;
|
||||
default:
|
||||
|
|
Loading…
Reference in New Issue