[PATCH v3] i3c: dw: reduce do_daa time if there's no client

Alexandre Belloni alexandre.belloni at bootlin.com
Wed Aug 19 04:52:03 PDT 2026


On Wed, 19 Aug 2026 12:48:33 +0800, Jisheng Zhang wrote:
> dw_i3c_master_daa() derives the number of newly assigned dynamic
> addresses from cmd->rx_len, the ISR sets it to the number of address
> slots ENTDAA left unassigned. It starts out as zero, which already
> means "every address was assigned", so a timed out transfer leaves
> that value in place and it gets used as a result.
> 
> If there's no client connected, the addr assign cmd times out, then
> the driver calls i3c_master_add_i3c_dev_locked() to add devices that
> are not there, each costing about 1s, thus adds non necessary boot
> time up to (maxdev * 1)s.
> 
> [...]

Applied, thanks!

[1/1] i3c: dw: reduce do_daa time if there's no client
      https://git.kernel.org/i3c/c/cab40cfc9e11

Best regards,

-- 
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com



More information about the linux-i3c mailing list