[GIT PULL] i2c-host for v7.1, part 1
From: Andi Shyti
Date: Sat Apr 11 2026 - 21:44:01 EST
Hi Wolfram,
here's the first part of the merge window pull request.
It has the usual refactoring, cleanups and updates, with no big
surprises. There is also some new hardware support. The main
chunks this time are the xiic and rtl9300 work.
One patch is already queued for part 2, as it needed some
dependencies first and I will keep collecting patches with no
major impact.
Thanks and enjoy the rest of the weekend,
Andi
The following changes since commit 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f:
Linux 7.0-rc1 (2026-02-22 13:18:59 -0800)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/andi.shyti/linux.git tags/i2c-host-7.1-part1
for you to fetch changes up to e43f2df330a1b87c97235e4faade860d15787735:
i2c: usbio: Add ACPI device-id for NVL platforms (2026-04-10 23:08:42 +0200)
----------------------------------------------------------------
i2c-host for v7.1, part 1
- generic cleanups in npcm7xx, qcom-cci, xiic and designware DT
bindings
- atr: use kzalloc_flex for alias pool allocation
- ixp4xx: convert bindings to DT schema
- ocores: use read_poll_timeout_atomic() for polling waits
- qcom-geni: skip extra TX DMA TRE for single read messages
- s3c24xx: validate SMBus block length before using it
- spacemit: refactor xfer path and add K1 PIO support
- tegra: identify DVC and VI with SoC data variants
- tegra: support SoC-specific register offsets
- xiic: switch to devres and generic fw properties
- xiic: skip input clock setup on non-OF systems
rtl9300:
- add per-SoC callbacks and clock support for RTL9607C
- add support for new 50 kHz and 2.5 MHz bus speeds
- general refactoring in preparation for RTL9607C support
New support:
- DesignWare GOOG5000 (ACPI HID)
- Intel Nova Lake (ACPI ID)
- Realtek RTL9607C
- SpacemiT K3 binding
- Tegra410 register layout support
----------------------------------------------------------------
Abdurrahman Hussain (7):
i2c: xiic: switch to devres managed APIs
i2c: xiic: remove duplicate error message
i2c: xiic: switch to generic device property accessors
i2c: xiic: cosmetic cleanup
i2c: xiic: cosmetic: use resource format specifier in debug log
i2c: xiic: use numbered adapter registration
i2c: xiic: skip input clock setup on non-OF systems
Andy Shevchenko (1):
dt-bindings: i2c: dw: Remove unused bindings
Aniket Randive (1):
i2c: qcom-geni: Avoid extra TX DMA TRE for single read message in GPI mode
Arun T (1):
i2c: usbio: Add ACPI device-id for NVL platforms
Greg Kroah-Hartman (1):
i2c: s3c24xx: check the size of the SMBUS message before using it
Jan Kantert (1):
i2c: rtl9300: add support for 50 kHz and 2.5 MHz bus speeds
Kartik Rajput (3):
i2c: tegra: Introduce tegra_i2c_variant to identify DVC and VI
i2c: tegra: Add logic to support different register offsets
i2c: tegra: Add support for Tegra410
Krzysztof Kozlowski (1):
i2c: npcm7xx: Use NULL instead of 0 for pointer
Martin Aberer (1):
i2c: ocores: Use read_poll_timeout_atomic to avoid false poll timeouts
Moritz Fischer (1):
i2c: designware: Add a new ACPI HID for GOOG5000 I2C controller
Rosen Penev (1):
i2c: atr: use kzalloc_flex
Rustam Adilov (8):
i2c: rtl9300: split data_reg into read and write reg
i2c: rtl9300: introduce max length property to driver data
i2c: rtl9300: introduce F_BUSY to the reg_fields struct
i2c: rtl9300: introduce a property for 8 bit width reg address
dt-bindings: i2c: realtek,rtl9301-i2c: extend for clocks and RTL9607C support
i2c: rtl9300: introduce clk struct for upcoming rtl9607 support
i2c: rtl9300: introduce new function properties to driver data
i2c: rtl9300: add RTL9607C i2c controller support
Shi Hao (1):
dt-bindings: i2c: intel,ixp4xx-i2c: Convert to DT schema
Troy Mitchell (2):
i2c: spacemit: move i2c_xfer_msg()
i2c: spacemit: introduce pio for k1
Vladimir Zapolskiy (1):
i2c: qcom-cci: Remove unused CCI_RES_MAX macro definition
Yixun Lan (1):
dt-bindings: i2c: spacemit: k3: Add compatible
.../devicetree/bindings/i2c/i2c-iop3xx.txt | 20 -
.../devicetree/bindings/i2c/intel,ixp4xx-i2c.yaml | 41 ++
.../bindings/i2c/realtek,rtl9301-i2c.yaml | 15 +
.../bindings/i2c/snps,designware-i2c.yaml | 2 -
.../devicetree/bindings/i2c/spacemit,k1-i2c.yaml | 6 +-
drivers/i2c/busses/i2c-designware-platdrv.c | 1 +
drivers/i2c/busses/i2c-k1.c | 316 +++++++++---
drivers/i2c/busses/i2c-npcm7xx.c | 2 +-
drivers/i2c/busses/i2c-ocores.c | 24 +-
drivers/i2c/busses/i2c-qcom-cci.c | 3 -
drivers/i2c/busses/i2c-qcom-geni.c | 24 +-
drivers/i2c/busses/i2c-rtl9300.c | 195 ++++++--
drivers/i2c/busses/i2c-s3c2410.c | 7 +-
drivers/i2c/busses/i2c-tegra.c | 534 +++++++++++++++------
drivers/i2c/busses/i2c-usbio.c | 1 +
drivers/i2c/busses/i2c-xiic.c | 97 ++--
drivers/i2c/i2c-atr.c | 17 +-
17 files changed, 939 insertions(+), 366 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-iop3xx.txt
create mode 100644 Documentation/devicetree/bindings/i2c/intel,ixp4xx-i2c.yaml