mirror of
https://github.com/torvalds/linux.git
synced 2024-11-17 09:31:50 +00:00
thunderbolt: Retry USB4 block read operation
Especially when accessing retimers over USB4 sideband operations the possibility to get read errors seems to be higher so make the usb4_do_read_data() retry a couple of times if it sees any other error than -ENODEV (device is gone). We can only do this for read side because it carries the offset as part of metadata (as opposed to writes). Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
This commit is contained in:
parent
7e72846bb9
commit
6bfe33473e
@ -115,11 +115,8 @@ static int usb4_do_read_data(u16 address, void *buf, size_t size,
|
||||
|
||||
ret = read_block(read_block_data, dwaddress, data, dwords);
|
||||
if (ret) {
|
||||
if (ret == -ETIMEDOUT) {
|
||||
if (retries--)
|
||||
if (ret != -ENODEV && retries--)
|
||||
continue;
|
||||
ret = -EIO;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user