mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/
synced 2026-11-10 20:48:12 +00:00
i2c: cadence: Add atomic transfer support for controller version 1.4
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: commit3a5ee18d2a("i2c: imx: implement master_xfer_atomic callback") commit445094c8a9("i2c: exynos5: add support for atomic transfers") commitede2299f71("i2c: tegra: Support atomic transfers") commitfe402bd090("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>
This commit is contained in:
parent
ed866f4161
commit
7cfe1a45de
1 changed files with 192 additions and 15 deletions
Loading…
Add table
Add a link
Reference in a new issue