lkml.org 
[lkml]   [2017]   [Sep]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v3 1/2] watchdog: dw_wdt: add stop watchdog operation
From
Date
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@pengutronix.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@pengutronix.de>
>>> Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
>>> Cc: Wim Van Sebroeck <wim@iguana.be>
>>> Cc: Guenter Roeck <linux@roeck-us.net>
>>> Cc: linux-watchdog@vger.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

\
 
 \ /
  Last update: 2017-09-26 09:08    [W:0.052 / U:0.264 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site