[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1bd8aa83-97bc-550b-3a2b-46ae857e21c1@roeck-us.net>
Date: Tue, 26 Sep 2017 00:06:45 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Oleksij Rempel <ore@...gutronix.de>,
Oleksij Rempel <o.rempel@...gutronix.de>
Cc: Wim Van Sebroeck <wim@...ana.be>,
Dinh Nguyen <dinguyen@...nel.org>,
Rob Herring <robh+dt@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Steffen Trumtrar <s.trumtrar@...gutronix.de>,
linux-watchdog@...r.kernel.org, kernel@...gutronix.de,
Russell King <linux@...linux.org.uk>,
devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3 1/2] watchdog: dw_wdt: add stop watchdog operation
On 09/25/2017 10:17 PM, Oleksij Rempel wrote:
> Hi,
>
> On 25.09.2017 18:16, Guenter Roeck wrote:
>> On Mon, Sep 25, 2017 at 07:25:30AM +0200, Oleksij Rempel wrote:
>>> From: Steffen Trumtrar <s.trumtrar@...gutronix.de>
>>>
>>> The only way of stopping the watchdog is by resetting it.
>>> Add the watchdog op for stopping the device and reset if
>>> a reset line is provided.
>>>
>>> Signed-off-by: Steffen Trumtrar <s.trumtrar@...gutronix.de>
>>> Signed-off-by: Oleksij Rempel <o.rempel@...gutronix.de>
>>> Cc: Wim Van Sebroeck <wim@...ana.be>
>>> Cc: Guenter Roeck <linux@...ck-us.net>
>>> Cc: linux-watchdog@...r.kernel.org
>>> ---
>>>
>>> changes v3:
>>> - don't return error if rst is not present and set WDOG_HW_RUNNING bit
>>> to notify watchdog core.
>>>
>>> changes v2:
>>> - test if dw_wdt->rst is NULL instead of IS_ERR
>>>
>>> drivers/watchdog/dw_wdt.c | 16 ++++++++++++++++
>>> 1 file changed, 16 insertions(+)
>>>
>>> diff --git a/drivers/watchdog/dw_wdt.c b/drivers/watchdog/dw_wdt.c
>>> index 36be987ff9ef..6cc56b18ee52 100644
>>> --- a/drivers/watchdog/dw_wdt.c
>>> +++ b/drivers/watchdog/dw_wdt.c
>>> @@ -135,6 +135,21 @@ static int dw_wdt_start(struct watchdog_device *wdd)
>>> return 0;
>>> }
>>> +static int dw_wdt_stop(struct watchdog_device *wdd)
>>> +{
>>> + struct dw_wdt *dw_wdt = to_dw_wdt(wdd);
>>> +
>>> + if (!dw_wdt->rst) {
>>> + set_bit(WDOG_HW_RUNNING, &wdd->status);
>>
>> Setting WDOG_HW_RUNNING should be dropped from dw_wdt_start().
>
> you mean, this patch is OK, and i need to provide one more which is removing WDOG_HW_RUNNING from dw_wdt_start(). Correct?
>
No. You are providing a stop function, thus the start function should not set the flag.
Guenter
Powered by blists - more mailing lists