Message ID | 20180211200847.25000-3-marcus.folkesson@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sun, Feb 11, 2018 at 09:08:43PM +0100, Marcus Folkesson wrote: > watchdog_init_timeout() will allways pick timeout_param since it > defaults to a valid timeout. > > By following best practice described in > Documentation/watchdog/watchdog-kernel-api.txt, it also > let us to set timout-sec property in devicetree. typo > > Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com> > Reviewed-by: Guenter Roeck <linux@roeck-us.net> > --- > Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt | 4 ++++ > drivers/watchdog/sirfsoc_wdt.c | 2 +- > 2 files changed, 5 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt b/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt > index 9cbc76c89b2b..0dce5e3100b4 100644 > --- a/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt > +++ b/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt > @@ -5,10 +5,14 @@ Required properties: > - reg: Address range of tick timer/WDT register set > - interrupts: interrupt number to the cpu > > +Optional properties: > +- timeout-sec : Contains the watchdog timeout in seconds > + > Example: > > timer@b0020000 { > compatible = "sirf,prima2-tick"; > reg = <0xb0020000 0x1000>; > interrupts = <0>; > + timeout-sec = <30>; > }; > diff --git a/drivers/watchdog/sirfsoc_wdt.c b/drivers/watchdog/sirfsoc_wdt.c > index 4eea351e09b0..ac0c9d2c4aee 100644 > --- a/drivers/watchdog/sirfsoc_wdt.c > +++ b/drivers/watchdog/sirfsoc_wdt.c > @@ -29,7 +29,7 @@ > #define SIRFSOC_WDT_MAX_TIMEOUT (10 * 60) /* 10 mins */ > #define SIRFSOC_WDT_DEFAULT_TIMEOUT 30 /* 30 secs */ > > -static unsigned int timeout = SIRFSOC_WDT_DEFAULT_TIMEOUT; > +static unsigned int timeout; If you have an old dtb, then you still need the default. > static bool nowayout = WATCHDOG_NOWAYOUT; > > module_param(timeout, uint, 0); > -- > 2.15.1 >
On 02/18/2018 04:07 PM, Rob Herring wrote: > On Sun, Feb 11, 2018 at 09:08:43PM +0100, Marcus Folkesson wrote: >> watchdog_init_timeout() will allways pick timeout_param since it >> defaults to a valid timeout. >> >> By following best practice described in >> Documentation/watchdog/watchdog-kernel-api.txt, it also >> let us to set timout-sec property in devicetree. > > typo > >> >> Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com> >> Reviewed-by: Guenter Roeck <linux@roeck-us.net> >> --- >> Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt | 4 ++++ >> drivers/watchdog/sirfsoc_wdt.c | 2 +- >> 2 files changed, 5 insertions(+), 1 deletion(-) >> >> diff --git a/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt b/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt >> index 9cbc76c89b2b..0dce5e3100b4 100644 >> --- a/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt >> +++ b/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt >> @@ -5,10 +5,14 @@ Required properties: >> - reg: Address range of tick timer/WDT register set >> - interrupts: interrupt number to the cpu >> >> +Optional properties: >> +- timeout-sec : Contains the watchdog timeout in seconds >> + >> Example: >> >> timer@b0020000 { >> compatible = "sirf,prima2-tick"; >> reg = <0xb0020000 0x1000>; >> interrupts = <0>; >> + timeout-sec = <30>; >> }; >> diff --git a/drivers/watchdog/sirfsoc_wdt.c b/drivers/watchdog/sirfsoc_wdt.c >> index 4eea351e09b0..ac0c9d2c4aee 100644 >> --- a/drivers/watchdog/sirfsoc_wdt.c >> +++ b/drivers/watchdog/sirfsoc_wdt.c >> @@ -29,7 +29,7 @@ >> #define SIRFSOC_WDT_MAX_TIMEOUT (10 * 60) /* 10 mins */ >> #define SIRFSOC_WDT_DEFAULT_TIMEOUT 30 /* 30 secs */ >> >> -static unsigned int timeout = SIRFSOC_WDT_DEFAULT_TIMEOUT; >> +static unsigned int timeout; > > If you have an old dtb, then you still need the default. > No. It is optional to start with, and the driver already has static struct watchdog_device sirfsoc_wdd = { .info = &sirfsoc_wdt_ident, .ops = &sirfsoc_wdt_ops, .timeout = SIRFSOC_WDT_DEFAULT_TIMEOUT, <------ .min_timeout = SIRFSOC_WDT_MIN_TIMEOUT, .max_timeout = SIRFSOC_WDT_MAX_TIMEOUT, }; Guenter >> static bool nowayout = WATCHDOG_NOWAYOUT; >> >> module_param(timeout, uint, 0); >> -- >> 2.15.1 >> >
On Sun, Feb 18, 2018 at 7:07 PM, Guenter Roeck <linux@roeck-us.net> wrote: > On 02/18/2018 04:07 PM, Rob Herring wrote: >> >> On Sun, Feb 11, 2018 at 09:08:43PM +0100, Marcus Folkesson wrote: >>> >>> watchdog_init_timeout() will allways pick timeout_param since it >>> defaults to a valid timeout. >>> >>> By following best practice described in >>> Documentation/watchdog/watchdog-kernel-api.txt, it also >>> let us to set timout-sec property in devicetree. >> >> >> typo >> >>> >>> Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com> >>> Reviewed-by: Guenter Roeck <linux@roeck-us.net> >>> --- >>> Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt | 4 ++++ >>> drivers/watchdog/sirfsoc_wdt.c | 2 +- >>> 2 files changed, 5 insertions(+), 1 deletion(-) >>> >>> diff --git a/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt >>> b/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt >>> index 9cbc76c89b2b..0dce5e3100b4 100644 >>> --- a/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt >>> +++ b/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt >>> @@ -5,10 +5,14 @@ Required properties: >>> - reg: Address range of tick timer/WDT register set >>> - interrupts: interrupt number to the cpu >>> +Optional properties: >>> +- timeout-sec : Contains the watchdog timeout in seconds >>> + >>> Example: >>> timer@b0020000 { >>> compatible = "sirf,prima2-tick"; >>> reg = <0xb0020000 0x1000>; >>> interrupts = <0>; >>> + timeout-sec = <30>; >>> }; >>> diff --git a/drivers/watchdog/sirfsoc_wdt.c >>> b/drivers/watchdog/sirfsoc_wdt.c >>> index 4eea351e09b0..ac0c9d2c4aee 100644 >>> --- a/drivers/watchdog/sirfsoc_wdt.c >>> +++ b/drivers/watchdog/sirfsoc_wdt.c >>> @@ -29,7 +29,7 @@ >>> #define SIRFSOC_WDT_MAX_TIMEOUT (10 * 60) /* 10 >>> mins */ >>> #define SIRFSOC_WDT_DEFAULT_TIMEOUT 30 /* 30 secs */ >>> -static unsigned int timeout = SIRFSOC_WDT_DEFAULT_TIMEOUT; >>> +static unsigned int timeout; >> >> >> If you have an old dtb, then you still need the default. >> > > No. It is optional to start with, and the driver already has > > static struct watchdog_device sirfsoc_wdd = { > .info = &sirfsoc_wdt_ident, > .ops = &sirfsoc_wdt_ops, > .timeout = SIRFSOC_WDT_DEFAULT_TIMEOUT, <------ > .min_timeout = SIRFSOC_WDT_MIN_TIMEOUT, > .max_timeout = SIRFSOC_WDT_MAX_TIMEOUT, > }; Okay, then: Reviewed-by: Rob Herring <robh@kernel.org> for the lot. Rob
diff --git a/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt b/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt index 9cbc76c89b2b..0dce5e3100b4 100644 --- a/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt +++ b/Documentation/devicetree/bindings/watchdog/sirfsoc_wdt.txt @@ -5,10 +5,14 @@ Required properties: - reg: Address range of tick timer/WDT register set - interrupts: interrupt number to the cpu +Optional properties: +- timeout-sec : Contains the watchdog timeout in seconds + Example: timer@b0020000 { compatible = "sirf,prima2-tick"; reg = <0xb0020000 0x1000>; interrupts = <0>; + timeout-sec = <30>; }; diff --git a/drivers/watchdog/sirfsoc_wdt.c b/drivers/watchdog/sirfsoc_wdt.c index 4eea351e09b0..ac0c9d2c4aee 100644 --- a/drivers/watchdog/sirfsoc_wdt.c +++ b/drivers/watchdog/sirfsoc_wdt.c @@ -29,7 +29,7 @@ #define SIRFSOC_WDT_MAX_TIMEOUT (10 * 60) /* 10 mins */ #define SIRFSOC_WDT_DEFAULT_TIMEOUT 30 /* 30 secs */ -static unsigned int timeout = SIRFSOC_WDT_DEFAULT_TIMEOUT; +static unsigned int timeout; static bool nowayout = WATCHDOG_NOWAYOUT; module_param(timeout, uint, 0);