[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2b2a1beb-d735-210c-847a-e3211f9efeca@roeck-us.net>
Date: Thu, 21 Nov 2019 21:38:47 -0800
From: Guenter Roeck <guenter@...ck-us.net>
To: "Wang, Peng 1. (NSB - CN/Hangzhou)" <peng.1.wang@...ia-sbell.com>,
Guenter Roeck <groeck7@...il.com>
Cc: "wim@...ux-watchdog.org" <wim@...ux-watchdog.org>,
"linux-watchdog@...r.kernel.org" <linux-watchdog@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2] watchdog: make DesignWare watchdog allow users to set
bigger timeout value
On 11/21/19 2:35 AM, Wang, Peng 1. (NSB - CN/Hangzhou) wrote:
> From aabaa4b709bd451e566c906e8d1dca48f92f9b12 Mon Sep 17 00:00:00 2001
> From: Peng Wang <peng.1.wang@...ia-sbell.com>
> Date: Wed, 20 Nov 2019 15:12:59 +0800
> Subject: [PATCH] watchdog: make DesignWare watchdog allow users to set bigger
> timeout value
>
> watchdog_dev.c provides means to allow users to set bigger timeout value
> than HW can support, make DesignWare watchdog align with this.
>
> ---
>
> v2 -> v1:
> - use top_s to compare with wdd->max_hw_heartbeat_ms
> - update wdd->timeout in case it's greater than HW supports
> - fix comments error
>
> v1: initial version
>
> Signed-off-by: Peng Wang <peng.1.wang@...ia-sbell.com>
Sigh. I should have paid closer attention. Signed-off-by: has to be ahead of ---,
and the change log after it. The above format messes up everything.
Also, please run checkpatch and fix the problems it reports.
Sorry for not noticing it earlier. Please fix the problems and resubmit.
Thanks,
Guenter
> ---
> drivers/watchdog/dw_wdt.c | 10 +++++++++-
> 1 file changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/watchdog/dw_wdt.c b/drivers/watchdog/dw_wdt.c
> index fef7c61..12c116e 100644
> --- a/drivers/watchdog/dw_wdt.c
> +++ b/drivers/watchdog/dw_wdt.c
> @@ -114,7 +114,15 @@ static int dw_wdt_set_timeout(struct watchdog_device *wdd, unsigned int top_s)
> writel(top_val | top_val << WDOG_TIMEOUT_RANGE_TOPINIT_SHIFT,
> dw_wdt->regs + WDOG_TIMEOUT_RANGE_REG_OFFSET);
>
> - wdd->timeout = dw_wdt_top_in_seconds(dw_wdt, top_val);
> + /*
> + * In case users set bigger timeout value than HW can support,
> + * kernel(watchdog_dev.c) helps to feed watchdog before
> + * wdd->max_hw_heartbeat_ms
> + */
> + if ( top_s * 1000 <= wdd->max_hw_heartbeat_ms )
> + wdd->timeout = dw_wdt_top_in_seconds(dw_wdt, top_val);
> + else
> + wdd->timeout = top_s;
>
> return 0;
> }
Powered by blists - more mailing lists