On Tuesday 09 March 2021 17:12:40 Stefan Roese wrote:
> On 09.03.21 14:27, Pali Rohár wrote:
> > On Tuesday 09 March 2021 12:33:24 Stefan Roese wrote:
> > > On 05.03.21 22:36, Pali Rohár wrote:
> > > > In some cases it is useful to compile support for U-Boot command 'wdt'
> > > > without starting HW watchdog in early U-Boot phase. For example when 
> > > > user
> > > 
> > > Nitpicking:
> > >    when "the" user
> > > 
> > > > want to start watchdog only on demand by some boot script.
> > > > 
> > > > This change adds a new compile option WATCHDOG_AUTOSTART to control 
> > > > whether
> > > > U-Boot should automatically start watchdog during init phase or not.
> > > 
> > >    start "the" watchdog
> > > 
> > > > 
> > > > This option is enabled by default as it was was default behavior prior
> > > 
> > >    as it was the default
> > > 
> > > > introducing this new change. When compiling U-Boot users can decide to 
> > > > turn
> > > > this option off.
> > > > 
> > > > Signed-off-by: Pali Rohár <p...@kernel.org>
> > > > ---
> > > >    drivers/watchdog/Kconfig      | 13 +++++++++++++
> > > >    drivers/watchdog/wdt-uclass.c |  7 +++++++
> > > >    2 files changed, 20 insertions(+)
> > > > 
> > > > diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
> > > > index 602ccbe41c00..aa76a8f2d239 100644
> > > > --- a/drivers/watchdog/Kconfig
> > > > +++ b/drivers/watchdog/Kconfig
> > > > @@ -9,6 +9,19 @@ config WATCHDOG
> > > >           this option if you want to service enabled watchdog by 
> > > > U-Boot. Disable
> > > >           this option if you want U-Boot to start watchdog but never 
> > > > service it.
> > > > +config WATCHDOG_AUTOSTART
> > > > +       bool "Automatically start watchdog timer"
> > > > +       depends on WDT
> > > > +       default y
> > > > +       help
> > > > +         Automatically start watchdog timer and start servicing it 
> > > > during
> > > > +         init phase. Enabled by default. Disable this option if you 
> > > > want
> > > > +         to compile U-Boot with CONFIG_WDT support but do not want to
> > > > +         activate watchdog, like when CONFIG_WDT option is disabled. 
> > > > You
> > > > +         would be able to start watchdog manually by 'wdt' command. 
> > > > Useful
> > > > +         when you want to have support for 'wdt' command but do not 
> > > > want
> > > > +         to have watchdog enabled by default.
> > > > +
> > > >    config WATCHDOG_TIMEOUT_MSECS
> > > >         int "Watchdog timeout in msec"
> > > >         default 128000 if ARCH_MX25 || ARCH_MX31 || ARCH_MX5 || ARCH_MX6
> > > > diff --git a/drivers/watchdog/wdt-uclass.c 
> > > > b/drivers/watchdog/wdt-uclass.c
> > > > index 7500b3ed90e3..00a408bf5cc5 100644
> > > > --- a/drivers/watchdog/wdt-uclass.c
> > > > +++ b/drivers/watchdog/wdt-uclass.c
> > > > @@ -27,7 +27,9 @@ static ulong reset_period = 1000;
> > > >    int initr_watchdog(void)
> > > >    {
> > > >         u32 timeout = WATCHDOG_TIMEOUT_SECS;
> > > > +#ifdef CONFIG_WATCHDOG_AUTOSTART
> > > >         int ret;
> > > > +#endif
> > > 
> > > Please don't add more #ifdef's if possible, see below...
> > > 
> > > >         /*
> > > >          * Init watchdog: This will call the probe function of the
> > > > @@ -51,6 +53,10 @@ int initr_watchdog(void)
> > > >                                                     4 * reset_period) / 
> > > > 4;
> > > >         }
> > > > +#ifndef CONFIG_WATCHDOG_AUTOSTART
> > > > +       printf("WDT:   Not starting\n");
> > > > +       return 0;
> > > > +#else
> > > >         ret = wdt_start(gd->watchdog_dev, timeout * 1000, 0);
> > > >         if (ret != 0) {
> > > >                 printf("WDT:   Failed to start\n");
> > > > @@ -61,6 +67,7 @@ int initr_watchdog(void)
> > > >                IS_ENABLED(CONFIG_WATCHDOG) ? "" : "out", timeout);
> > > >         return 0;
> > > > +#endif
> > > 
> > > Please use this instead here:
> > > 
> > >   if (CONFIG_IS_ENABLED(WATCHDOG_AUTOSTART)) {
> > >   ...
> > > 
> > > Thanks,
> > > Stefan
> > > 
> > > >    }
> > > >    int wdt_start(struct udevice *dev, u64 timeout_ms, ulong flags)
> > > > 
> > > 
> > > 
> > > Viele Grüße,
> > > Stefan
> > 
> > I have fixed these issues in V2.
> 
> Thanks.
> 
> Could you please next time when sending an updated patch series /
> version include the tags, like my RB tag? As patchwork collects
> these automatically and now I need to re-send them again - which I
> will do this time. ;)
> 
> Thanks,
> Stefan

Ok, no problem!

Reply via email to