Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4635992pxj; Tue, 22 Jun 2021 04:54:13 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzM1x3+K657tKJtILm8PJoyxLdvXWfoJN8qCDi7RjdC8CJk8bKScDCAdsyBWCrdMg+ZFhwe X-Received: by 2002:a05:6638:3048:: with SMTP id u8mr3535204jak.91.1624362853298; Tue, 22 Jun 2021 04:54:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1624362853; cv=none; d=google.com; s=arc-20160816; b=EvofM1V+M9zQzrBcHWn6+WMBQMtDl7e71x/YkWjfd9uy2TEPaTcL59LrwKpUo+6ALk a9RoXZkvAvgzrFDA76aerAO+5L/ZkmN9GxIHGZOQaVBg2mwlrzgtQKj0mPPj8QV37vio BwA3g69lMmfe2sW/fY3v+iyOmJyGBGaVlQarL8HO1pYMf2ZTJL7l4IhC/XduH3lbAWqj oqoc1ihXHb3Q4mAA/wpwRAiEVh77bprN9U+nvwJ64pQiZniWfLtNIZX/iOGQxIwN9Ut9 Yi1U39mQ7W28mzCZ5rwkrfi2Ko/2dGOaGAWpciRkdSc4cWYTOBjTOToMTut69KICEfXh bhsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=aEO6IsSb/vSQr97ckfCz5XZnU7Vfp5IGu1nUSLuT5l4=; b=O0RpOimBtFEUvAhheeZTCvnFJ6EiUYvEw4zFP9wIehFq72MKOCPi54e7r+9KMpG5fg JefebBtUy0h85/pioOT1jrth/9EZtNLN1kp8GcAF4QHpua17mgUTEZcqIZDIrGCl3hKB Yl4NmAeE34uK2xh7Np9gzHtbGJ85SLFSUB88ABtDjgMt+U3Q3DjW5d2xo9MRJCKx86dT wCRDbHHPEi4L0AvEP1zPYy57QMiaowUw6NE+gCA+AUrOMEVLS2qIVS7EIQyFIyJFEdMt +GBD9q8JBcVWCVjEsqVkVBCfxAGiVntOkYa1pMuOTpDh5ZmnBInUC+MUtIV1J7ZWNU3X bd2A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=RvthV7Xk; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g2si13542411ila.16.2021.06.22.04.54.01; Tue, 22 Jun 2021 04:54:13 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=RvthV7Xk; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230225AbhFVLzt (ORCPT + 99 others); Tue, 22 Jun 2021 07:55:49 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37298 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229831AbhFVLzs (ORCPT ); Tue, 22 Jun 2021 07:55:48 -0400 Received: from mail-il1-x132.google.com (mail-il1-x132.google.com [IPv6:2607:f8b0:4864:20::132]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 00927C061574; Tue, 22 Jun 2021 04:53:32 -0700 (PDT) Received: by mail-il1-x132.google.com with SMTP id k5so4551221ilv.8; Tue, 22 Jun 2021 04:53:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=aEO6IsSb/vSQr97ckfCz5XZnU7Vfp5IGu1nUSLuT5l4=; b=RvthV7XkZyLt3MdCSxQARYM/1IxDbMDd52DXZoNCb8myUKUX2HdJDMmj8ajmImESE+ 1YhiPL7AkmUy9+cBVfun0eIl1owNe2aPEEEMINQAkV/wn2VNgqp/sK86ySxe3xwpHREk yXwonpUnHvIGiVOijHM/Ns8B1Tpq7AbuS/ZAvy+QyxD97NPr2DBZZamMBTTFvhLyehfw PnmgP0tLyMQ3YO67sn8pxq4f3nvYw/+OhecRAOZdDVmERQZkPBuYFjosGBsK0/8eVIpL a2TIDp6j8FX6XAf7BpLZ+bUJup8HX7d6/ysP7xhCu/oCENW4U/Vpr9UgIdyHMVpiZESP rE4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=aEO6IsSb/vSQr97ckfCz5XZnU7Vfp5IGu1nUSLuT5l4=; b=iGQFirNFSAYkt+4rZZ+2sAlr85eM+uBO4HUPAbMW50Sxxi9hqhLrUqlk3pQNnsnKBM xT81rODcxHnKW1oM7Fj3JnlcJDccwyWvucF/5jt57ILVPKXjk0yRZGwYfNMBmpmtkKua /+sN7Yl6NlWVaeFyhIBNELVeEY+OVIgj1H2YawUEJFVf2NiucHD6+3VMrMk58UD9Jd2+ Y7P6UxTm98CyQ0BvxESwfQH484BVR+sJwTRyDa4c7f4+u4lTTUK7dfRw1dzBDCpMN3NF /B0XzXSL96kmNtHaA9bg0qAFBYI8k5li6THc1Ez2odrCqppTGSh0FoMQeTsX34ApRVnf hhcA== X-Gm-Message-State: AOAM530Whe3SjUptdc7CoFXy4JKuz7I3LPxphaWfE1ScJcJdQl5NOOtd S3jiEljbvvx1ALCAm6FMGokTvoPICf3mp5G3ifQ= X-Received: by 2002:a92:7b0f:: with SMTP id w15mr2458228ilc.150.1624362812494; Tue, 22 Jun 2021 04:53:32 -0700 (PDT) MIME-Version: 1.0 References: <20210622095639.1280774-1-art@khadas.com> In-Reply-To: From: Art Nikpal Date: Tue, 22 Jun 2021 19:53:21 +0800 Message-ID: Subject: Re: [PATCH] watchdog: meson_gxbb_wdt: improve To: Neil Armstrong Cc: wim@linux-watchdog.org, linux@roeck-us.net, Kevin Hilman , Jerome Brunet , Christian Hewitt , Martin Blumenstingl , linux-watchdog@vger.kernel.org, linux-arm-kernel , "open list:ARM/Amlogic Meson..." , linux-kernel@vger.kernel.org, Artem Lapkin , Nick Xie , Gouwa Wang Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > Neil > Can you split the patch in 4 distinct changes ? yes no problem i can try to do it tomorrow ! maybe somebody have other ideas, suggestion, comments ... On Tue, Jun 22, 2021 at 7:08 PM Neil Armstrong wrote: > > Hi Art, > > On 22/06/2021 11:56, Artem Lapkin wrote: > > Improve meson_gxbb_wdt watchdog driver > > 1) added module param timeout and nowayout same as other modules > > 2) print watchdog driver start status > > 3) add watchdog_stop_on_unregister > > 4) remove watchdog_stop_on_reboot ( still can be activated by > > watchdog.stop_on_reboot=1 ) i think this driver configuration more useful > > becouse we can get reboot waranty for abnormal situations on shutdown stage > > Can you split the patch in 4 distinct changes ? > > Neil > > > > > Signed-off-by: Artem Lapkin > > --- > > drivers/watchdog/meson_gxbb_wdt.c | 20 ++++++++++++++++++-- > > 1 file changed, 18 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/watchdog/meson_gxbb_wdt.c b/drivers/watchdog/meson_gxbb_wdt.c > > index 5a9ca10fbcfa..15c889932c13 100644 > > --- a/drivers/watchdog/meson_gxbb_wdt.c > > +++ b/drivers/watchdog/meson_gxbb_wdt.c > > @@ -35,6 +35,17 @@ struct meson_gxbb_wdt { > > struct clk *clk; > > }; > > > > +static bool nowayout = WATCHDOG_NOWAYOUT; > > +static unsigned int timeout = DEFAULT_TIMEOUT; > > + > > +module_param(nowayout, bool, 0); > > +MODULE_PARM_DESC(nowayout, "Watchdog cannot be stopped once started default=" > > + __MODULE_STRING(WATCHDOG_NOWAYOUT) ")"); > > + > > +module_param(timeout, uint, 0); > > +MODULE_PARM_DESC(timeout, "Watchdog heartbeat in seconds=" > > + __MODULE_STRING(DEFAULT_TIMEOUT) ")"); > > + > > static int meson_gxbb_wdt_start(struct watchdog_device *wdt_dev) > > { > > struct meson_gxbb_wdt *data = watchdog_get_drvdata(wdt_dev); > > @@ -174,7 +185,7 @@ static int meson_gxbb_wdt_probe(struct platform_device *pdev) > > data->wdt_dev.ops = &meson_gxbb_wdt_ops; > > data->wdt_dev.max_hw_heartbeat_ms = GXBB_WDT_TCNT_SETUP_MASK; > > data->wdt_dev.min_timeout = 1; > > - data->wdt_dev.timeout = DEFAULT_TIMEOUT; > > + data->wdt_dev.timeout = timeout; > > watchdog_set_drvdata(&data->wdt_dev, data); > > > > /* Setup with 1ms timebase */ > > @@ -186,7 +197,12 @@ static int meson_gxbb_wdt_probe(struct platform_device *pdev) > > > > meson_gxbb_wdt_set_timeout(&data->wdt_dev, data->wdt_dev.timeout); > > > > - watchdog_stop_on_reboot(&data->wdt_dev); > > + watchdog_set_nowayout(&data->wdt_dev, nowayout); > > + watchdog_stop_on_unregister(&data->wdt_dev); > > + > > + dev_info(dev, "Watchdog enabled (timeout=%d sec, nowayout=%d)", > > + data->wdt_dev.timeout, nowayout); > > + > > return devm_watchdog_register_device(dev, &data->wdt_dev); > > } > > > > >