i3c: master: cdns: use adapter timeout value for I2C transfers
authorWolfram Sang <wsa+renesas@sang-engineering.com>
Wed, 4 Jun 2025 10:18:28 +0000 (12:18 +0200)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Thu, 3 Jul 2025 23:10:07 +0000 (01:10 +0200)
I2C adapters have their own timeout value which can be changed by
userspace if desired. Use it for I2C transfers. The default is 1Hz, so
the default behaviour is unchanged.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Link: https://lore.kernel.org/r/20250604101831.56585-3-wsa+renesas@sang-engineering.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/i3c/master/i3c-master-cdns.c

index fd3752c..562e49e 100644 (file)
@@ -863,7 +863,7 @@ static int cdns_i3c_master_i2c_xfers(struct i2c_dev_desc *dev,
        }
 
        cdns_i3c_master_queue_xfer(master, xfer);
-       if (!wait_for_completion_timeout(&xfer->comp, msecs_to_jiffies(1000)))
+       if (!wait_for_completion_timeout(&xfer->comp, m->i2c.timeout))
                cdns_i3c_master_unqueue_xfer(master, xfer);
 
        ret = xfer->ret;