Changeset feabe163 in mainline for uspace/drv/bus/usb/xhci/transfers.c


Ignore:
Timestamp:
2018-01-17T17:05:04Z (7 years ago)
Author:
Salmelu <salmelu@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
ed8575f
Parents:
4cc0c2e0
Message:

xhci: common transfer errors detected and logged

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/bus/usb/xhci/transfers.c

    r4cc0c2e0 rfeabe163  
    351351                        break;
    352352
     353                case XHCI_TRBC_DATA_BUFFER_ERROR:
     354                        usb_log_warning("Transfer ended with data buffer error.");
     355                        batch->error = EAGAIN;
     356                        batch->transfered_size = 0;
     357                        break;
     358
     359                case XHCI_TRBC_BABBLE_DETECTED_ERROR:
     360                        usb_log_warning("Babble detected during the transfer. Resetting endpoint.");
     361                        batch->error = EAGAIN;
     362                        batch->transfered_size = 0;
     363                        hc_reset_endpoint(hc, slot_id, ep_dci);
     364                        break;
     365
     366                case XHCI_TRBC_USB_TRANSACTION_ERROR:
     367                        usb_log_warning("USB Transaction error. Resetting endpoint.");
     368                        batch->error = ESTALL;
     369                        batch->transfered_size = 0;
     370                        hc_reset_endpoint(hc, slot_id, ep_dci);
     371                        break;
     372
     373                case XHCI_TRBC_TRB_ERROR:
     374                        usb_log_error("Invalid transfer parameters.");
     375                        batch->error = EINVAL;
     376                        batch->transfered_size = 0;
     377                        break;
     378
     379                case XHCI_TRBC_STALL_ERROR:
     380                        usb_log_warning("Stall condition detected.");
     381                        batch->error = ESTALL;
     382                        batch->transfered_size = 0;
     383                        break;
     384
     385                case XHCI_TRBC_SPLIT_TRANSACTION_ERROR:
     386                        usb_log_error("Split transcation error detected.");
     387                        batch->error = EAGAIN;
     388                        batch->transfered_size = 0;
     389                        break;
     390
    353391                default:
    354392                        usb_log_warning("Transfer not successfull: %u", completion_code);
Note: See TracChangeset for help on using the changeset viewer.