On Thu, May 02, 2019 at 04:08:44PM +0200, Ludovic Barre wrote: > From: Ludovic Barre <ludovic.barre@xxxxxx> > > This patch updates to devm_watchdog_register_device interface > Not that easy. See below. A more complete solution is at https://patchwork.kernel.org/patch/10894355 I have a total of three patches for this driver pending for the next kernel release. Maybe it would make sense to (re-) start this series from there after the next commit window closes. Guenter > Signed-off-by: Ludovic Barre <ludovic.barre@xxxxxx> > --- > drivers/watchdog/stm32_iwdg.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/watchdog/stm32_iwdg.c b/drivers/watchdog/stm32_iwdg.c > index e00e3b3..e191bd8 100644 > --- a/drivers/watchdog/stm32_iwdg.c > +++ b/drivers/watchdog/stm32_iwdg.c > @@ -243,7 +243,7 @@ static int stm32_iwdg_probe(struct platform_device *pdev) > dev_warn(&pdev->dev, > "unable to set timeout value, using default\n"); > > - ret = watchdog_register_device(wdd); > + ret = devm_watchdog_register_device(&pdev->dev, wdd); > if (ret) { > dev_err(&pdev->dev, "failed to register watchdog device\n"); > goto err; > @@ -263,7 +263,6 @@ static int stm32_iwdg_remove(struct platform_device *pdev) > { > struct stm32_iwdg *wdt = platform_get_drvdata(pdev); > > - watchdog_unregister_device(&wdt->wdd); > clk_disable_unprepare(wdt->clk_lsi); > clk_disable_unprepare(wdt->clk_pclk); This disables the clock while the watchdog is still registered and running. That is not a good idea. > > -- > 2.7.4 >