Re: [PATCH 2/2] watchdog: gpio: add configurable minimum interval

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 1 Jul 2022 at 19:48, Guenter Roeck <linux@xxxxxxxxxxxx> wrote:
>
> On 7/1/22 10:18, Rob Herring wrote:
> > On Wed, Jun 29, 2022 at 01:06:26PM +0200, Isaac True wrote:
> >> Add the "min_hw_margin_ms" parameter to gpio_wdt devices, allowing a
> >> minimum interval to be specified, stopping watchdog devices from being
> >> fed too quickly if they require a certain interval between feeds.
> >
> > I assume there is some real platform with a real problem you are trying
> > to solve? Details please.
> >
>
> Agreed, this should be explained in more detail.

Yes this is a real platform using a TI TPS3850 watchdog chip. With
this chip you can configure a "window" which can detect early faults
(i.e. too frequent) in addition to the standard watchdog features. I
needed to add this minimum timeout to avoid watchdog resets in
situations such as where first U-Boot and then the Linux kernel feed
the watchdog with too short of an interval between them, or when
systemd was configured to use the watchdog device and was feeding it
too soon after taking over from the kernel.

> > Can you just hardcode some min? Maybe 10% of the max or something. Is
> > there a downside to a larger than necessary min?
> >
>
> That would result in extra overhead in the watchdog core which would not
> be required for all other hardware using this driver. I'd rather avoid that.
>

In the case of the TI TPS3850, the minimum timeout is configurable, so
I didn't want to add a hard-coded value to the driver.

> > Wouldn't be better to fix this without requiring a DT change and that
> > could work on stable kernels if needed.
> >
>
> Presumably that is some new hardware. Most of the watchdog drivers
> needing this value can derive it from the compatible property. The
> gpio watchdog driver is a bit different since it is supposed to work
> on a variety of hardware using gpio pins for watchdog control.
>

Yes this is new hardware. This use case is also not very common as
most watchdog chips don't have this window function or a minimum
interval, at least in my experience, so I did not want to make it the
default for everything.



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux