Re: [PATCH 10/14] watchdog: convert the Kconfig dependency on OF_GPIO to OF

From: Guenter Roeck

Date: Fri Mar 06 2026 - 18:29:11 EST


On Wed, Mar 04, 2026 at 10:02:31AM +0100, Bartosz Golaszewski wrote:
> OF_GPIO is selected automatically on all OF systems. Any symbols it
> controls also provide stubs so there's really no reason to select it
> explicitly. We could simply remove the dependency but in order to avoid
> a new symbol popping up for everyone in make config - just convert it to
> requiring CONFIG_OF.
>
> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxxxxxxxx>
> Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
> ---
> drivers/watchdog/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
> index dc78729ba2a5d6e035ed3cbe5c2b631d11b76b20..ef200339a22a6f9c51a46c9c0b8466add74313e2 100644
> --- a/drivers/watchdog/Kconfig
> +++ b/drivers/watchdog/Kconfig
> @@ -250,7 +250,7 @@ config DA9062_WATCHDOG
>
> config GPIO_WATCHDOG
> tristate "Watchdog device controlled through GPIO-line"
> - depends on OF_GPIO
> + depends on OF

AI feedback:

Could this change inadvertently allow the driver to be selected when GPIOLIB
is disabled?

In drivers/gpio/Kconfig, OF_GPIO is defined inside the "if GPIOLIB" block,
so it implicitly depends on GPIOLIB. By changing the dependency directly to
OF, the GPIOLIB dependency is lost.

If GPIOLIB is disabled, the driver will still compile because of the stubs
in include/linux/gpio/consumer.h, but devm_gpiod_get() will unconditionally
return -ENOSYS, causing the probe to fail. Since the driver's sole purpose
is to control a watchdog via a GPIO line, should it be prevented from being
configured without GPIOLIB by using something like:

depends on OF && GPIOLIB

It has a point. Please update.

Thanks,
Guenter

> select WATCHDOG_CORE
> help
> If you say yes here you get support for watchdog device