]> www.infradead.org Git - users/jedix/linux-maple.git/commit
gpio: mxc: configure dynamic GPIO base for CONFIG_GPIO_SYSFS=n
authorAhmad Fatoum <a.fatoum@pengutronix.de>
Wed, 7 May 2025 13:07:25 +0000 (15:07 +0200)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Thu, 15 May 2025 14:57:25 +0000 (16:57 +0200)
commit0a45c1a002705c8622738fbd2a2913acf886ea27
tree4410d2d38660fd4a33c67012493428b577b587bf
parent1275c70c4c1ca764cbf9ced01fb4286e4f49747e
gpio: mxc: configure dynamic GPIO base for CONFIG_GPIO_SYSFS=n

i.MX GPIO numbering has been deterministic since commit 7e6086d9e54a
("gpio/mxc: specify gpio base for device tree probe"), a year after
device tree support was first added back in 2011.

Reverting to dynamically allocated GPIO base now would break most
systems making use of the sysfs API. These systems will be eventually
broken by the removal of the sysfs API, but that would result in GPIO
scripts not working instead of essentially toggling at random according
to probe order, which would happen if we unconditionally set base to -1.

Yet, the warning is annoying and has resulted in many rejected attempts
to remove it over the years[1][2][3].

As the i.MX GPIO driver is device tree only, GPIO_SYSFS is the only
consumer of the deterministic GPIO numbering. Let's therefore restrict the
static base and the warning that comes with it to configurations
with CONFIG_GPIO_SYSFS enabled.

[1]: https://lore.kernel.org/all/20230226205319.1013332-1-dario.binacchi@amarulasolutions.com/
[2]: https://lore.kernel.org/all/20230506085928.933737-2-haibo.chen@nxp.com/
[3]: https://lore.kernel.org/all/20241121145515.3087855-1-catalin.popescu@leica-geosystems.com/

Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20250507-b4-imx-gpio-base-warning-v2-1-d43d09e2c6bf@pengutronix.de
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
drivers/gpio/gpio-mxc.c