Re: [PATCH 07/22] watchdog: bcm_kona_wdt: Convert to use device managed functions and other improvements

From: Ray Jui
Date: Tue Apr 09 2019 - 12:36:18 EST




On 4/8/2019 12:38 PM, Guenter Roeck wrote:
> Use device managed functions to simplify error handling, reduce
> source code size, improve readability, and reduce the likelyhood of bugs.
> Other improvements as listed below.
>
> The conversion was done automatically with coccinelle using the
> following semantic patches. The semantic patches and the scripts
> used to generate this commit log are available at
> https://github.com/groeck/coccinelle-patches
>
> - Use local variable 'struct device *dev' consistently
> - Use devm_watchdog_register_driver() to register watchdog device
> - Replace shutdown function with call to watchdog_stop_on_reboot()
>
> Cc: Florian Fainelli <f.fainelli@xxxxxxxxx>
> Cc: Ray Jui <rjui@xxxxxxxxxxxx>
> Cc: Scott Branden <sbranden@xxxxxxxxxxxx>
> Cc: bcm-kernel-feedback-list@xxxxxxxxxxxx
> Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
> ---
> drivers/watchdog/bcm_kona_wdt.c | 14 ++++----------
> 1 file changed, 4 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/watchdog/bcm_kona_wdt.c b/drivers/watchdog/bcm_kona_wdt.c
> index d52334ab0805..e2ad44816359 100644
> --- a/drivers/watchdog/bcm_kona_wdt.c
> +++ b/drivers/watchdog/bcm_kona_wdt.c
> @@ -271,11 +271,6 @@ static struct watchdog_device bcm_kona_wdt_wdd = {
> .timeout = SECWDOG_MAX_COUNT >> SECWDOG_DEFAULT_RESOLUTION,
> };
>
> -static void bcm_kona_wdt_shutdown(struct platform_device *pdev)
> -{
> - bcm_kona_wdt_stop(&bcm_kona_wdt_wdd);
> -}
> -
> static int bcm_kona_wdt_probe(struct platform_device *pdev)
> {
> struct device *dev = &pdev->dev;
> @@ -301,7 +296,7 @@ static int bcm_kona_wdt_probe(struct platform_device *pdev)
>
> platform_set_drvdata(pdev, wdt);
> watchdog_set_drvdata(&bcm_kona_wdt_wdd, wdt);
> - bcm_kona_wdt_wdd.parent = &pdev->dev;
> + bcm_kona_wdt_wdd.parent = dev;
>
> ret = bcm_kona_wdt_set_timeout_reg(&bcm_kona_wdt_wdd, 0);
> if (ret) {
> @@ -309,7 +304,9 @@ static int bcm_kona_wdt_probe(struct platform_device *pdev)
> return ret;
> }
>
> - ret = watchdog_register_device(&bcm_kona_wdt_wdd);
> + watchdog_stop_on_reboot(&bcm_kona_wdt_wdd);
> + watchdog_stop_on_unregister(&bcm_kona_wdt_wdd);
> + ret = devm_watchdog_register_device(dev, &bcm_kona_wdt_wdd);
> if (ret) {
> dev_err(dev, "Failed to register watchdog device");
> return ret;
> @@ -324,8 +321,6 @@ static int bcm_kona_wdt_probe(struct platform_device *pdev)
> static int bcm_kona_wdt_remove(struct platform_device *pdev)
> {
> bcm_kona_wdt_debug_exit(pdev);
> - bcm_kona_wdt_shutdown(pdev);
> - watchdog_unregister_device(&bcm_kona_wdt_wdd);
> dev_dbg(&pdev->dev, "Watchdog driver disabled");
>
> return 0;
> @@ -344,7 +339,6 @@ static struct platform_driver bcm_kona_wdt_driver = {
> },
> .probe = bcm_kona_wdt_probe,
> .remove = bcm_kona_wdt_remove,
> - .shutdown = bcm_kona_wdt_shutdown,
> };
>
> module_platform_driver(bcm_kona_wdt_driver);
>

Change looks good to me. Thanks!

Reviewed-by: Ray Jui <ray.jui@xxxxxxxxxxxx>