Re: Watchdog start during boot
From: Markus Pargmann
Date: Tue Sep 09 2014 - 07:00:51 EST
Hi,
On Tue, Sep 09, 2014 at 12:29:29PM +0200, Lisovy Rostislav wrote:
> Hello;
> If my understanding is correct, the purpose of the "watchdog subsystem"
> is to provide an unified interface from user-space to watchdog devices
> (via /dev). The issue I am trying to solve is how to start the watchdog
> during boot (it would be sufficient just not to disable it since the
> bootloader enables it) to be controlled later on with the user-space
> tool -- i.e. when the user-space will not boot properly, I would like
> the device to be rebooted.
>
> My "quick and dirty" device-specific solution is:
>
> diff --git a/drivers/watchdog/omap_wdt.c b/drivers/watchdog/omap_wdt.c
> index 3691b15..1e44b03f 100644
> --- a/drivers/watchdog/omap_wdt.c
> +++ b/drivers/watchdog/omap_wdt.c
> @@ -53,6 +53,10 @@ static unsigned timer_margin;
> module_param(timer_margin, uint, 0);
> MODULE_PARM_DESC(timer_margin, "initial watchdog timeout (in seconds)");
>
> +static bool start_on_boot = false;
> +module_param(start_on_boot, bool, 0);
> +MODULE_PARM_DESC(start_on_boot, "Start the watchdog during boot");
> +
> struct omap_wdt_dev {
> void __iomem *base; /* physical */
> struct device *dev;
> @@ -269,6 +273,9 @@ static int omap_wdt_probe(struct platform_device *pdev)
>
> pm_runtime_put_sync(wdev->dev);
>
> + if (start_on_boot)
> + omap_wdt_start(omap_wdt);
> +
> return 0;
> }
>
> however I think it would be much beneficial to do this in a generic way.
> Maybe to create a device tree property, that would store some flag to
> start the watchdog during boot?
The devicetree should be a hardware description, so it may not be the
right way to pass such information.
Some time ago I proposed something similar where the first watchdog
driver that is registered can be activated by a kernel commandline
parameter. Here is some discussion about the topic:
Mail-id 1393604183-8755-1-git-send-email-mpa@xxxxxxxxxxxxxx
http://www.spinics.net/lists/linux-watchdog/msg04055.html
Best regards,
Markus
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
Attachment:
signature.asc
Description: Digital signature