firehose: treat -ENODEV on commit=1 as success after UFS provisioning - #322
Conversation
9fcb525 to
5a27153
Compare
|
@JohnSagaQuic Thanks for the fix. The code LGTM; I only have comments on the commit message, please make it more concise, as it currently walks through the implementation step by step, a few lines on the problem and the key decision would be enough, for example: Please also use full first and last name rather than the username (The DCO sign-off needs to identify the author by real name): Thanks! |
5a27153 to
8552a75
Compare
@igoropaniuk , updated as suggested. Thanks |
Some UFS programmers reset the device right after committing the configuration descriptor, dropping the USB link before sending the ACK, so qdl reports a failure although provisioning succeeded. Map LIBUSB_ERROR_NO_DEVICE to -ENODEV in usb_read() and, when the device disappears after commit=1, treat it as success and skip the final reset. Any real descriptor error would already have been NAKed during the earlier exchange. A disconnect during the commit=0 dry run remains a hard error. Signed-off-by: Zhirong Chen <zhirongc@qti.qualcomm.com>
8552a75 to
3797094
Compare
firehose: treat -ENODEV on commit=1 as success after UFS provisioning
Some UFS programmers reset the device right after committing the
configuration descriptor, dropping the USB link before sending the
ACK, so qdl reports a failure although provisioning succeeded.
Map LIBUSB_ERROR_NO_DEVICE to -ENODEV in usb_read() and, when the
device disappears after commit=1, treat it as success and skip the
final reset. Any real descriptor error would already have been
NAKed during the earlier exchange. A disconnect during the commit=0
dry run remains a hard error.
Signed-off-by: Zhirong Chen zhirongc@qti.qualcomm.com