[PATCH] pinctrl: mediatek: mt8189: restore previous register base name array order

Linus Walleij linusw at kernel.org
Fri Dec 26 09:45:59 PST 2025


On Wed, Dec 3, 2025 at 12:33 PM Louis-Alexis Eyraud
<louisalexis.eyraud at collabora.com> wrote:

> In mt8189-pinctrl driver, a previous commit changed the register base
> name array (mt8189_pinctrl_register_base_names) entry name and order to
> align it with the same name and order as the "mediatek,mt8189-pinctrl"
> devicetree bindings. The new order (by ascending register address) now
> causes an issue with MT8189 pinctrl configuration.
>
> MT8189 SoC has multiple base addresses for the pin configuration
> registers. Several constant data structures, declaring each pin
> configuration, are using PIN_FIELD_BASE() macro which i_base parameter
> indicates for a given pin the lookup index in the base register address
> array of the driver internal data for the configuration register
> read/write accesses. But in practice, this parameter is given a
> hardcoded numerical value that corresponds to the expected base
> register entry index in mt8189_pinctrl_register_base_names array.
> Since this array reordering, the i_base index matching is no more
> correct.
>
> So, in order to avoid modifying over a thousand of PIN_FIELD_BASE()
> calls, restore previous mt8189_pinctrl_register_base_names entry order.
>
> Fixes: 518919276c41 ("pinctrl: mediatek: mt8189: align register base names to dt-bindings ones")
> Signed-off-by: Louis-Alexis Eyraud <louisalexis.eyraud at collabora.com>

There have not been any comments on this so patch applied for
fixes.

Yours,
Linus Walleij



More information about the Linux-mediatek mailing list