From: Lars Poeschel <[email protected]>
Add a early_enable module parameter to the omap_wdt that starts the
watchdog on module insertion. The default value is 0 which does not
start the watchdog - which also does not change the behavior if the
parameter is not given.
Signed-off-by: Lars Poeschel <[email protected]>
---
Documentation/watchdog/watchdog-parameters.txt | 1 +
drivers/watchdog/omap_wdt.c | 8 ++++++++
2 files changed, 9 insertions(+)
diff --git a/Documentation/watchdog/watchdog-parameters.txt b/Documentation/watchdog/watchdog-parameters.txt
index 692791c..837a4e2 100644
--- a/Documentation/watchdog/watchdog-parameters.txt
+++ b/Documentation/watchdog/watchdog-parameters.txt
@@ -208,6 +208,7 @@ nowayout: Watchdog cannot be stopped once started
-------------------------------------------------
omap_wdt:
timer_margin: initial watchdog timeout (in seconds)
+early_enable: Watchdog is started on module insertion (default=0)
-------------------------------------------------
orion_wdt:
heartbeat: Initial watchdog heartbeat in seconds
diff --git a/drivers/watchdog/omap_wdt.c b/drivers/watchdog/omap_wdt.c
index 1e6be9e..29c5f33 100644
--- a/drivers/watchdog/omap_wdt.c
+++ b/drivers/watchdog/omap_wdt.c
@@ -53,6 +53,11 @@ static unsigned timer_margin;
module_param(timer_margin, uint, 0);
MODULE_PARM_DESC(timer_margin, "initial watchdog timeout (in seconds)");
+static bool early_enable;
+module_param(early_enable, bool, 0);
+MODULE_PARM_DESC(early_enable,
+ "Watchdog is started on module insertion (default=0)");
+
struct omap_wdt_dev {
void __iomem *base; /* physical */
struct device *dev;
@@ -269,6 +274,9 @@ static int omap_wdt_probe(struct platform_device *pdev)
pm_runtime_put_sync(wdev->dev);
+ if (early_enable)
+ omap_wdt_start(omap_wdt);
+
return 0;
}
--
2.1.4
On 06/25/2015 03:21 AM, [email protected] wrote:
> From: Lars Poeschel <[email protected]>
>
> Add a early_enable module parameter to the omap_wdt that starts the
> watchdog on module insertion. The default value is 0 which does not
> start the watchdog - which also does not change the behavior if the
> parameter is not given.
>
> Signed-off-by: Lars Poeschel <[email protected]>
Reviewed-by: Guenter Roeck <[email protected]>
On Thu, Jun 25, 2015 at 9:46 AM, Guenter Roeck <[email protected]> wrote:
> On 06/25/2015 03:21 AM, [email protected] wrote:
>>
>> From: Lars Poeschel <[email protected]>
>>
>> Add a early_enable module parameter to the omap_wdt that starts the
>> watchdog on module insertion. The default value is 0 which does not
>> start the watchdog - which also does not change the behavior if the
>> parameter is not given.
>>
>> Signed-off-by: Lars Poeschel <[email protected]>
>
>
> Reviewed-by: Guenter Roeck <[email protected]>
In case the info hasn't looped back around yet, this breaks the
omap builds in linux-next:
drivers/watchdog/omap_wdt.c:288:18: error: 'omap_wdt' undeclared
(first use in this function)
(Not sure how this could have ever worked as-is.)
http://kisskb.ellerman.id.au/kisskb/buildresult/12452335/
I see a patch has already been posted to arm-kernel but not
Cc'd to all originally involved so figured I'd mention it.
Paul.
--
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
Hi Paul,
> On Thu, Jun 25, 2015 at 9:46 AM, Guenter Roeck <[email protected]> wrote:
> > On 06/25/2015 03:21 AM, [email protected] wrote:
> >>
> >> From: Lars Poeschel <[email protected]>
> >>
> >> Add a early_enable module parameter to the omap_wdt that starts the
> >> watchdog on module insertion. The default value is 0 which does not
> >> start the watchdog - which also does not change the behavior if the
> >> parameter is not given.
> >>
> >> Signed-off-by: Lars Poeschel <[email protected]>
> >
> >
> > Reviewed-by: Guenter Roeck <[email protected]>
>
> In case the info hasn't looped back around yet, this breaks the
> omap builds in linux-next:
>
> drivers/watchdog/omap_wdt.c:288:18: error: 'omap_wdt' undeclared
> (first use in this function)
>
> (Not sure how this could have ever worked as-is.)
>
> http://kisskb.ellerman.id.au/kisskb/buildresult/12452335/
>
> I see a patch has already been posted to arm-kernel but not
> Cc'd to all originally involved so figured I'd mention it.
It's fixed. The reason why we din't catch it was because of interference
with 'watchdog: omap: put struct watchdog_device into driver data'.
Kind regards,
Wim.