i2c: sh_mobile: fix timeout error handling
In a timeout case return an error immediately from the driver's .master_xfer() method, instead of continuing and letting higher layers fail. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Wolfram Sang <wolfram@the-dreams.de>
This commit is contained in:
Родитель
05cf936846
Коммит
5687265b31
|
@ -521,8 +521,11 @@ static int sh_mobile_i2c_xfer(struct i2c_adapter *adapter,
|
|||
k = wait_event_timeout(pd->wait,
|
||||
pd->sr & (ICSR_TACK | SW_DONE),
|
||||
5 * HZ);
|
||||
if (!k)
|
||||
if (!k) {
|
||||
dev_err(pd->dev, "Transfer request timed out\n");
|
||||
err = -ETIMEDOUT;
|
||||
break;
|
||||
}
|
||||
|
||||
retry_count = 1000;
|
||||
again:
|
||||
|
|
Загрузка…
Ссылка в новой задаче