rtc: pcf2127: only use watchdog when explicitly available
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Fri, 18 Dec 2020 10:10:54 +0000 (11:10 +0100)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Sat, 19 Dec 2020 00:57:44 +0000 (01:57 +0100)
Most boards using the pcf2127 chip (in my bubble) don't make use of the
watchdog functionality and the respective output is not connected. The
effect on such a board is that there is a watchdog device provided that
doesn't work.

So only register the watchdog if the device tree has a "reset-source"
property.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
[RV: s/has-watchdog/reset-source/]
Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Link: https://lore.kernel.org/r/20201218101054.25416-3-rasmus.villemoes@prevas.dk
drivers/rtc/rtc-pcf2127.c

index 33fa8b1..39a7b51 100644 (file)
@@ -336,7 +336,8 @@ static int pcf2127_watchdog_init(struct device *dev, struct pcf2127 *pcf2127)
        u32 wdd_timeout;
        int ret;
 
-       if (!IS_ENABLED(CONFIG_WATCHDOG))
+       if (!IS_ENABLED(CONFIG_WATCHDOG) ||
+           !device_property_read_bool(dev, "reset-source"))
                return 0;
 
        pcf2127->wdd.parent = dev;