OSDN Git Service

watchdog: bcm47xx: Simplify using devm_watchdog_register_device()
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Tue, 7 Mar 2023 07:04:02 +0000 (08:04 +0100)
committerWim Van Sebroeck <wim@linux-watchdog.org>
Sat, 22 Apr 2023 10:53:54 +0000 (12:53 +0200)
This allows to drop the .remove() function as it only exists to
unregister the watchdog device which is now done in a callback
registered by devm_watchdog_register_device().

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20230307070404.2256308-2-u.kleine-koenig@pengutronix.de
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>
drivers/watchdog/bcm47xx_wdt.c

index 05425c1..06a54c7 100644 (file)
@@ -202,7 +202,7 @@ static int bcm47xx_wdt_probe(struct platform_device *pdev)
        watchdog_set_restart_priority(&wdt->wdd, 64);
        watchdog_stop_on_reboot(&wdt->wdd);
 
-       ret = watchdog_register_device(&wdt->wdd);
+       ret = devm_watchdog_register_device(&pdev->dev, &wdt->wdd);
        if (ret)
                goto err_timer;
 
@@ -218,21 +218,11 @@ err_timer:
        return ret;
 }
 
-static int bcm47xx_wdt_remove(struct platform_device *pdev)
-{
-       struct bcm47xx_wdt *wdt = dev_get_platdata(&pdev->dev);
-
-       watchdog_unregister_device(&wdt->wdd);
-
-       return 0;
-}
-
 static struct platform_driver bcm47xx_wdt_driver = {
        .driver         = {
                .name   = "bcm47xx-wdt",
        },
        .probe          = bcm47xx_wdt_probe,
-       .remove         = bcm47xx_wdt_remove,
 };
 
 module_platform_driver(bcm47xx_wdt_driver);