diff options
| author | hathach <[email protected]> | 2013-12-18 14:57:34 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2013-12-18 14:57:34 +0700 |
| commit | eaacbd4a3618945929c6e1b9db1d5ac94ca3ba98 (patch) | |
| tree | a51bd79745c6f58b70346526b70730313bbb853e /tinyusb/class | |
| parent | 915296013e0c85a56e0be50bac4b125568437110 (diff) | |
able to run MSC host demo on lpc17xx
implement walk around for halted ED in OHCI
Diffstat (limited to 'tinyusb/class')
| -rw-r--r-- | tinyusb/class/msc_host.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/tinyusb/class/msc_host.c b/tinyusb/class/msc_host.c index bd8b449b7..009c998a0 100644 --- a/tinyusb/class/msc_host.c +++ b/tinyusb/class/msc_host.c @@ -368,16 +368,17 @@ tusb_error_t msch_open_subtask(uint8_t dev_addr, tusb_descriptor_interface_t con osal_semaphore_wait(msch_sem_hdl, SCSI_XFER_TIMEOUT, &error); SUBTASK_ASSERT_STATUS(error); - // NOTE: my toshiba thumbdrive stall the first Read Capacity and require the sequence + // NOTE: my toshiba thumb-drive stall the first Read Capacity and require the sequence // Read Capacity --> Stalled --> Clear Stall --> Request Sense --> Read Capacity (2) to work if ( hcd_pipe_is_stalled(msch_data[dev_addr-1].bulk_in) ) - { // clear stall TODO abtract clear stalll function + { // clear stall TODO abstract clear stall function OSAL_SUBTASK_INVOKED_AND_WAIT( usbh_control_xfer_subtask( dev_addr, bm_request_type(TUSB_DIR_HOST_TO_DEV, TUSB_REQUEST_TYPE_STANDARD, TUSB_REQUEST_RECIPIENT_ENDPOINT), TUSB_REQUEST_CLEAR_FEATURE, 0, hcd_pipe_get_endpoint_addr(msch_data[dev_addr-1].bulk_in), 0, NULL ), error ); + SUBTASK_ASSERT_STATUS(error); hcd_pipe_clear_stall(msch_data[dev_addr-1].bulk_in); osal_semaphore_wait(msch_sem_hdl, SCSI_XFER_TIMEOUT, &error); // wait for SCSI status |
