Re: [PATCH] i3c: Fix default I2C adapter timeout value

Frank Li
2025-09-04T20:00:22Z

On Thu, Sep 04, 2025 at 03:42:26PM +0300, Jarkko Nikula wrote:
> Commit 3a379bbcea0a ("i3c: Add core I3C infrastructure") set the default
> adapter timeout for I2C transfers as 1000 (ms). However that parameter
> is defined in jiffies not in milliseconds.
>
> With mipi-i3c-hci driver this wasn't visible until commit c0a90eb55a69
> ("i3c: mipi-i3c-hci: use adapter timeout value for I2C transfers").
>
> Fix this by setting the default timeout as HZ (CONFIG_HZ) not 1000.
>
> Fixes: 1b84691e7870 ("i3c: dw: use adapter timeout value for I2C transfers")
> Fixes: be27ed672878 ("i3c: master: cdns: use adapter timeout value for I2C transfers")
> Fixes: c0a90eb55a69 ("i3c: mipi-i3c-hci: use adapter timeout value for I2C transfers")
> Fixes: a747e01adad2 ("i3c: master: svc: use adapter timeout value for I2C transfers")
> Fixes: 3a379bbcea0a ("i3c: Add core I3C infrastructure")
> Signed-off-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>

Reviewed-by: Frank Li <Frank.Li@nxp.com>

> ---
> drivers/i3c/master.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/i3c/master.c b/drivers/i3c/master.c
> index 2ef898a8fd80..67a18e437f83 100644
> --- a/drivers/i3c/master.c
> +++ b/drivers/i3c/master.c
> @@ -2492,7 +2492,7 @@ static int i3c_master_i2c_adapter_init(struct i3c_master_controller *master)
> strscpy(adap->name, dev_name(master->dev.parent), sizeof(adap->name));
>
> /* FIXME: Should we allow i3c masters to override these values? */
> - adap->timeout = 1000;
> + adap->timeout = HZ;
> adap->retries = 3;
>
> id = of_alias_get_id(master->dev.of_node, "i2c");
> --
> 2.47.2
>
>
> --
> linux-i3c mailing list
> linux-i3c@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-i3c