Re: [PATCH v5 4/5] pinctrl: freescale: add the LX2160A RCW pad-mux driver
From: Vladimir Oltean
Date: Sun Nov 15 2026 - 06:32:01 EST
Hi Vincent,
On Sun, Nov 15, 2026 at 12:05:40PM +0100, Vincent Jardin via B4 Relay wrote:
> From: Vincent Jardin <vjardin@xxxxxxx>
>
> The LX2160A muxes its IIC, XSPI, SDHC, UART, IRQ and EVT pads from
> fields of the RCW, read-only in RCWSR12..14 of DCFG and changed at
> runtime through the same fields of the override registers in its DCSR
> view, which read 0 until written.
>
> Since commit 8a1365c7bbc1 ("arm64: dts: lx2160a: add pinmux and i2c
> gpio to support bus recovery") Linux drives them with pinctrl-single on
> the override registers, so its first pin state clears every other field
> of the word: a board whose RCW programs a non-zero pad mux loses those
> pads at the first I2C probe.
>
> Add a driver for the pad mux as a child of the DCFG node: the fields
> of RCWSR12..14, the EC1, EC2, USB_EXT, GTX_CLK and SDHC1_DS ones of
> RCWSR27, and their encoding.
> Then pin states select them with the generic function and groups
> properties, and every change goes through the RCW override
> of fsl-guts, which reads the status register, writes the override and
> waits for the status register to follow.
>
> Signed-off-by: Vincent Jardin <vjardin@xxxxxxx>
> ---
Did you see my feedback on this patch for v4? Comments?
https://lore.kernel.org/lkml/avjaK3cOj3iQ6G6w@skbuf/