+192
−15
Loading
Rework the read and write code paths in the driver to support operation in atomic contexts in master mode. This change does not apply to slave mode because there is no way to handle interruptions in that context. Adjust the message timeout to include some extra time. For non-atomic contexts, 500 ms is added to the timeout. For atomic contexts, 2000 ms is added because transfers happen in polled mode, requiring more time to account for the polling overhead. Similar changes have been implemented in other drivers, including: commit 3a5ee18d ("i2c: imx: implement master_xfer_atomic callback") commit 445094c8 ("i2c: exynos5: add support for atomic transfers") commit ede2299f ("i2c: tegra: Support atomic transfers") commit fe402bd0 ("i2c: meson: implement the master_xfer_atomic callback") Signed-off-by:Manikanta Guntupalli <manikanta.guntupalli@amd.com> Reviewed-by:
Andi Shyti <andi.shyti@kernel.org> Signed-off-by:
Andi Shyti <andi.shyti@kernel.org>