Merge tag 'x86_build_for_v5.17_rc1-p2' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-microblaze.git] / drivers / watchdog / bcm2835_wdt.c
index dec6ca0..9490717 100644 (file)
@@ -205,9 +205,13 @@ static int bcm2835_wdt_probe(struct platform_device *pdev)
        if (err)
                return err;
 
-       if (pm_power_off == NULL) {
-               pm_power_off = bcm2835_power_off;
-               bcm2835_power_off_wdt = wdt;
+       if (of_device_is_system_power_controller(pdev->dev.parent->of_node)) {
+               if (!pm_power_off) {
+                       pm_power_off = bcm2835_power_off;
+                       bcm2835_power_off_wdt = wdt;
+               } else {
+                       dev_info(dev, "Poweroff handler already present!\n");
+               }
        }
 
        dev_info(dev, "Broadcom BCM2835 watchdog timer");