Re: [PATCH] i2c: rtl9300: remove IO_MODE configuration

Michael Zavertkin <[email protected]> Fri, 31 Jul 2026 14:08:27 +0700
Newsgroups org.kernel.vger.linux-i2c,org.kernel.vger.linux-kernel
Message-ID <amxJ6wVF4CQGCm15@gen-job>
On Wed, Jul 29, 2026 at 11:28:15PM +0200, Andi Shyti wrote:
> Hi Michael,
> 
> On Sat, Jul 25, 2026 at 03:21:25PM +0700, Michael Zavertkin wrote:
> > IO_MODE is used to route peripheral controller to SoC pins. This is a
> > job for pinctrl driver.
> 
> where exactly is the pinctrl driver doing it?
Not sure what you meant, but I'll try to give as full answer as possible

pinctrl driver should does it in set_mux() callback, while i2c DT node
initialization (correct group with correct function must be
specified in pinctrl-0 property)

The driver itself now going through code review in OpenWRT (I've been said
that the patches should go upstream, and I agree)
https://github.com/openwrt/openwrt/pull/23961

Since i2c driver for RTL9607C now requires proper connection with
pinctrl, should it be reflected in driver documentation (realtek,rtl9301-i2c.yaml)?
I.e. should pinctrl-0 be required? Or should it be pinctrl-names with
minItems: 1 like in some qcom i2c drivers (qcom,i2c-geni-qcom, qcom,i2c-qup)?