On Mon, Nov 04, 2019 at 11:28:06AM +0100, Marco Felsch wrote: > The watchdog resets the system if the watchdog gets pinged to fast. > Between each watchdog ping must be a pause of at least 200ms. This > commit fixes that by rejecting two fast requests. > > Signed-off-by: Marco Felsch <m.felsch@xxxxxxxxxxxxxx> > --- > @@ -237,6 +239,14 @@ static int da9063_watchdog_ping(struct da9063 *priv) > int ret; > u8 val; > > + /* > + * The watchdog has a cool down phase of 200ms and if we ping to fast > + * the da9062/3 resets the system. Reject those requests has a maximum > + * failure of 10% if the watchdog timeout is set to 2.048s. > + */ > + if ((int64_t)(priv->last_ping + 200 * MSECOND - get_time_ns()) > 0) > + return 0; Changed this to: if (!is_timeout(priv->last_ping, 200 * MSECOND)) return 0; And applied, thanks Sascha -- 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 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox