From: Wolfram Sang <[email protected]>

5 seconds is a very large timeout, and it is hardcoded. Use the default
timeout from 'struct adapter' which is 1 second. It can also be modified
from userspace for specific workloads.

Signed-off-by: Wolfram Sang <[email protected]>
---
 drivers/i2c/busses/i2c-sh_mobile.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/i2c/busses/i2c-sh_mobile.c 
b/drivers/i2c/busses/i2c-sh_mobile.c
index 7193bcfdd94013..67eb8d8256ca5d 100644
--- a/drivers/i2c/busses/i2c-sh_mobile.c
+++ b/drivers/i2c/busses/i2c-sh_mobile.c
@@ -751,7 +751,7 @@ static int sh_mobile_i2c_xfer(struct i2c_adapter *adapter,
                /* The interrupt handler takes care of the rest... */
                k = wait_event_timeout(pd->wait,
                                       pd->sr & (ICSR_TACK | SW_DONE),
-                                      5 * HZ);
+                                      adap->timeout);
                if (!k) {
                        dev_err(pd->dev, "Transfer request timed out\n");
                        if (pd->dma_direction != DMA_NONE)
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in

Reply via email to