Summary
Tree wide, there is a rather large number of driver relying on the GPIO (for example have xx-gpios device-tree properties), yet do not ensure to select GPIO in their Kconfig.
On lot of platform, the CONFIG_GPIO=y is set at platform level, so problem is not always visible, however each drivers should properly ensure to enable GPIOs if they really need it.
I've started to add those at video level, cf PR #113106 but that should be done more widely within the Zephyr tree.
Describe the solution you'd like
Similarly to what is done in PR #113106, each driver should ensure to select GPIO when needed.
Alternatively, we might think of a Zephyr wide dt_any_node_has_gpio_prop or so, allowing to enable the GPIO if any GPIO property is found within the device-tree. However we might wonder why such thing for GPIO specifically would have to be done so 1st approach about having each driver properly select might sound better (even if quite a large amount of work).
Alternatives
No response
Additional Context
No response
Summary
Tree wide, there is a rather large number of driver relying on the GPIO (for example have xx-gpios device-tree properties), yet do not ensure to select GPIO in their Kconfig.
On lot of platform, the CONFIG_GPIO=y is set at platform level, so problem is not always visible, however each drivers should properly ensure to enable GPIOs if they really need it.
I've started to add those at video level, cf PR #113106 but that should be done more widely within the Zephyr tree.
Describe the solution you'd like
Similarly to what is done in PR #113106, each driver should ensure to select GPIO when needed.
Alternatively, we might think of a Zephyr wide
dt_any_node_has_gpio_propor so, allowing to enable the GPIO if any GPIO property is found within the device-tree. However we might wonder why such thing for GPIO specifically would have to be done so 1st approach about having each driver properly select might sound better (even if quite a large amount of work).Alternatives
No response
Additional Context
No response