The following changes since commit 89be9a83ccf1f88522317ce02f854f30d6115c41: Linux 6.16-rc7 (2025-07-20 15:18:33 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git tags/i2c-for-6.17-rc1 for you to fetch changes up to 1c24e5fc0c7096e00c202a6a3e0c342c1afb47c2: i2c: core: Fix double-free of fwnode in i2c_unregister_device() (2025-07-28 10:41:36 +0200) ---------------------------------------------------------------- i2c-for-6.17-rc1 I2C Core: - prevent double-free of an fwnode if it is a software node - use recent helpers instead of custom ACPI or outdated OF ones - add a more elaborate description of a message flag I2C Host drivers, part 1: Cleanups and refactorings: - lpi2c, riic, st, stm32f7: general improvements - riic: support more flexible IRQ configurations - tegra: fix documentation Improvements: - lpi2c: improve register polling and add atomic transfer - imx: use guarded spinlocks New hardware support: - Samsung Exynos 2200 - Renesas RZ/T2H (R9A09G077), RZ/N2H (R9A09G087) DT binding: - rk3x: enable power domains - nxp: support clock property ---------------------------------------------------------------- Andy Shevchenko (1): i2c: acpi: Replace custom code with device_match_acpi_handle() Emanuele Ghidoli (2): i2c: lpi2c: use readl_poll_timeout() for register polling i2c: lpi2c: implement xfer_atomic callback Frank Li (1): dt-bindings: i2c: nxp,pnx-i2c: allow clocks property Hans Zhang (1): i2c: tegra: Add missing kernel-doc for dma_dev member Hans de Goede (1): i2c: core: Fix double-free of fwnode in i2c_unregister_device() I Viswanath (1): i2c: Clarify behavior of I2C_M_RD flag Ivaylo Ivanov (1): dt-bindings: i2c: exynos5: add samsung,exynos2200-hsi2c compatible Jiri Slaby (SUSE) (1): i2c: mux: pca954x: Use dev_fwnode() Jonas Karlman (1): dt-bindings: i2c: i2c-rk3x: Allow use of a power-domain Lad Prabhakar (5): dt-bindings: i2c: renesas,riic: Move ref for i2c-controller.yaml to the end dt-bindings: i2c: renesas,riic: Document RZ/T2H and RZ/N2H support i2c: riic: Pass IRQ desc array as part of OF data i2c: riic: Move generic compatible string to end of array i2c: riic: Add support for RZ/T2H SoC Qianfeng Rong (1): i2c: st: Use min() to improve code Troy Mitchell (1): i2c: imx: use guard to take spinlock Wolfram Sang (1): Merge tag 'i2c-host-6.17-pt1' of git://git.kernel.org/pub/scm/linux/kernel/git/andi.shyti/linux into i2c/for-mergewindow Yuesong Li (1): i2c: lpi2c: convert to use secs_to_jiffies() Yumeng Fang (1): i2c: stm32f7: Use str_on_off() helper with much appreciated quality assurance from ---------------------------------------------------------------- Andy Shevchenko (4): (Rev.) i2c: core: Fix double-free of fwnode in i2c_unregister_device() (Rev.) i2c: riic: Add support for RZ/T2H SoC (Rev.) i2c: riic: Move generic compatible string to end of array (Rev.) i2c: riic: Pass IRQ desc array as part of OF data Carlos Song (2): (Rev.) i2c: lpi2c: implement xfer_atomic callback (Rev.) i2c: lpi2c: use readl_poll_timeout() for register polling Frank Li (1): (Rev.) i2c: imx: use guard to take spinlock Geert Uytterhoeven (6): (Rev.) i2c: riic: Add support for RZ/T2H SoC (Rev.) i2c: riic: Move generic compatible string to end of array (Rev.) i2c: riic: Pass IRQ desc array as part of OF data (Test) i2c: riic: Pass IRQ desc array as part of OF data (Rev.) dt-bindings: i2c: renesas,riic: Document RZ/T2H and RZ/N2H support (Rev.) dt-bindings: i2c: renesas,riic: Move ref for i2c-controller.yaml to the end Krzysztof Kozlowski (1): (Rev.) dt-bindings: i2c: exynos5: add samsung,exynos2200-hsi2c compatible Patrice Chotard (1): (Rev.) i2c: st: Use min() to improve code Primoz Fiser (2): (Test) i2c: lpi2c: implement xfer_atomic callback (Test) i2c: lpi2c: use readl_poll_timeout() for register polling Rob Herring (Arm) (1): (Rev.) dt-bindings: i2c: i2c-rk3x: Allow use of a power-domain Vladimir Zapolskiy (1): (Rev.) dt-bindings: i2c: nxp,pnx-i2c: allow clocks property Wolfram Sang (7): (Rev.) i2c: riic: Add support for RZ/T2H SoC (Test) i2c: riic: Add support for RZ/T2H SoC (Rev.) i2c: riic: Move generic compatible string to end of array (Test) i2c: riic: Move generic compatible string to end of array (Rev.) i2c: riic: Pass IRQ desc array as part of OF data (Test) i2c: riic: Pass IRQ desc array as part of OF data (Rev.) dt-bindings: i2c: renesas,riic: Document RZ/T2H and RZ/N2H support .../devicetree/bindings/i2c/i2c-exynos5.yaml | 1 + .../devicetree/bindings/i2c/i2c-rk3x.yaml | 3 + .../devicetree/bindings/i2c/nxp,pnx-i2c.yaml | 3 + .../devicetree/bindings/i2c/renesas,riic.yaml | 105 ++++++--- drivers/i2c/busses/i2c-imx-lpi2c.c | 256 ++++++++++++++------- drivers/i2c/busses/i2c-imx.c | 37 ++- drivers/i2c/busses/i2c-riic.c | 54 ++++- drivers/i2c/busses/i2c-st.c | 19 +- drivers/i2c/busses/i2c-stm32f7.c | 3 +- drivers/i2c/busses/i2c-tegra.c | 1 + drivers/i2c/i2c-core-acpi.c | 2 +- drivers/i2c/i2c-core-base.c | 8 +- drivers/i2c/muxes/i2c-mux-pca954x.c | 3 +- include/uapi/linux/i2c.h | 3 +- 14 files changed, 333 insertions(+), 165 deletions(-)