diff options
author | Changqi Hu <changqi.hu@mediatek.com> | 2019-11-08 18:24:17 +0800 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2019-11-11 10:25:24 +0000 |
commit | bc2f9a30f3a61e3d02baf7abcc5440407035f354 (patch) | |
tree | b559a6b3354160edffa11487849e22ed0fac891a /payloads/libpayload/drivers | |
parent | 1b95501fad0b94098a1e6c5be637efaf113dcb88 (diff) |
libpayload: usbmsc: update return value of CSW transfer
When the first CSW transfer failed, get_csw function will retry
CSW transfer again, but the return value is not updated.
Change-Id: I289916baa08d0a189d659164a0002347f6f435db
Signed-off-by: Changqi Hu <changqi.hu@mediatek.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/36678
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
Diffstat (limited to 'payloads/libpayload/drivers')
-rwxr-xr-x[-rw-r--r--] | payloads/libpayload/drivers/usb/usbmsc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/payloads/libpayload/drivers/usb/usbmsc.c b/payloads/libpayload/drivers/usb/usbmsc.c index 2412e99af3..d8b7bcea6e 100644..100755 --- a/payloads/libpayload/drivers/usb/usbmsc.c +++ b/payloads/libpayload/drivers/usb/usbmsc.c @@ -232,9 +232,9 @@ get_csw (endpoint_t *ep, csw_t *csw) if (ret < 0) { clear_stall (ep); - if (ctrlr->bulk (ep, sizeof (csw_t), (u8 *) csw, 1) < 0) { + ret = ctrlr->bulk (ep, sizeof (csw_t), (u8 *) csw, 1); + if (ret < 0) return reset_transport (ep->dev); - } } if (ret != sizeof(csw_t) || csw->dCSWTag != tag || csw->dCSWSignature != csw_signature) { |