]> git.ipfire.org Git - thirdparty/linux.git/commit
i2c: designware: Optimize flag reading in i2c_dw_read()
authorBenoît Monin <benoit.monin@bootlin.com>
Wed, 26 Nov 2025 10:46:25 +0000 (11:46 +0100)
committerAndi Shyti <andi.shyti@kernel.org>
Tue, 16 Dec 2025 23:37:07 +0000 (00:37 +0100)
commit2b110445b1dfdef34ea7c42c27ddc2ba1bee5753
treebb4ece4ef42bd5ab1e07ff9a62c26872e4a61faa
parent8f0b4cce4481fb22653697cced8d0d04027cb1e8
i2c: designware: Optimize flag reading in i2c_dw_read()

Optimize the i2c_dw_read() function by reading the message flags only
once per message, rather than for every byte.

The message flags are accessed both in the outer loop and the inner loop,
so move the declaration of the local flags variable to the outer loop.

The message index is only modified by the outer loop, so reading the
flags in the inner loop was always getting the same value.

Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Benoît Monin <benoit.monin@bootlin.com>
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://lore.kernel.org/r/20251126-i2c-dw-v4-2-b0654598e7c5@bootlin.com
drivers/i2c/busses/i2c-designware-master.c