Received: by 10.192.165.148 with SMTP id m20csp29255imm; Fri, 4 May 2018 06:14:17 -0700 (PDT) X-Google-Smtp-Source: AB8JxZr84CrdB+k3/M3ID0DOAgZY0rttW+A/LRuj3kCBKkTZzuLDt9MI9LZXVDWFkNPglKV98D9l X-Received: by 2002:a63:6196:: with SMTP id v144-v6mr22778340pgb.264.1525439657204; Fri, 04 May 2018 06:14:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525439657; cv=none; d=google.com; s=arc-20160816; b=BlbYQndXUYmGKOQ0P22Wzh6kUHK5re6kQsl7WljgMoArn0I4f7GnQ8WCPP6aTQsCIS +6KD/O6jN5tXw1sSlrj/xymSkkQ75zvaJFZfh19JRBivPhBy5qGHavSGVokF8fjY+YF2 Ax/c5gL37ndg8mcyeSmV0fzqYXoW2xP9ABFQTaQ156v0UKZ+HMIP5r5G6jt5bkUooGrM IQScErJpkKDcSAYHoza0lqDQGE4VFLRldfblFVVvPiIikUTI+qaKEmgwAD6bzKkWYOGo 7hV96Xc8Tp7QEapUS3BtZCFzjxGr189vKpUUIfL2eOe2ClID6HPs1NsQSki2xCCfI6gN p8zw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature :arc-authentication-results; bh=gcOjuofswt1Do5lm6dDgy7xZs5rDL5YCg80o5yWY75Y=; b=VnCNTkJrYGsaMo8xxjEaVlZ1Yb1esiUD5PZqZamTEm7kRRvZLQMbPbgCGm0l5XqiwN 5mv/ERnsy8jjTwz13tKAk1Uqy8JlLjy3LMBxNqSVWTijVaaT8o700WieNd436yZ5fudu HHQX8hERjJibC0eZeXQ2F0aFJSh/mBjIAxpTxVFPY1zYLuFhwWQpKQoHX8UxF5XK9Z51 Bq7LWOb1WcMKctZbBI+XkWeXyeHykmz/JgqM5wPpCfigtg33UomcEeJ7vsBJGshr36yO Sm11XGcUnrerPjb9eBUYIt8jXBHfWJraXJD2rHqUMIirW7qQ2FYKYJCaVYIKnhPsUXSt yTPw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=oESzJv6p; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k72si16569976pfa.53.2018.05.04.06.13.47; Fri, 04 May 2018 06:14:17 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=oESzJv6p; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751302AbeEDNLm (ORCPT + 99 others); Fri, 4 May 2018 09:11:42 -0400 Received: from mail-pf0-f194.google.com ([209.85.192.194]:43224 "EHLO mail-pf0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751107AbeEDNLk (ORCPT ); Fri, 4 May 2018 09:11:40 -0400 Received: by mail-pf0-f194.google.com with SMTP id j20so3100530pff.10; Fri, 04 May 2018 06:11:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=gcOjuofswt1Do5lm6dDgy7xZs5rDL5YCg80o5yWY75Y=; b=oESzJv6pMDPiry7kaR+FSFmpfpHeuYwdfg8XHuvIEkllT3VLlXonwUbPV4s6VtxHc1 gu6uXNdWSCyygjQOj+zag9tQdwmOI/PPihy4aiDhmWncoVAHVNlpI7ZBHQ0hhyq4c7LZ 7INzndI8vpqelfOV2oTA6sKMHd3jObFz8WdPdcmbYwGQrsfuotYymS9Vzo1sdVN4+NC3 5VQs8DIIowxryFwDLm1mUdupm8AvOrBSPoFq7DJEBQ9WOrS0iexSP34IaSZiTRfr+ESk AHRLoR8ontP3lAR2m7dyb7jbx1i3jL3tSS4hHxuxeOhUQ7YmzFOaBcwIUSN7GfslTpf0 n9IQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:subject:to:cc:references:from:message-id :date:user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=gcOjuofswt1Do5lm6dDgy7xZs5rDL5YCg80o5yWY75Y=; b=PnrGvaOWjnj14+P6CeJohRRpgmvgmZbSs32na1L3I3c50aO6hJA2OZbCEaznrNmlHI lrK4PtRxWrIvw6TXkMTGAVcYn80OhqkSZw5AQlMQSYD2313PnlCL9W8GEnXlmf2RgvBn atbtMgruGDjnlrDExMQ59B9fLlW9m0YR6dWeK1DydIu5I0/SQsMh1kL42uPy8L5cuylb OF1b08tsIZLwluS6JYUalkUvg+UNKDt6HuZk26royvaYZDw0zd2ixcMP+FOzSY6anVQp 3bfsVNlrXSjGJ0y2J+hfBP+RWs+kNsIaBbrnlS64nJZe0eb3tnoG8W4VVLewDOAD6OLe NejQ== X-Gm-Message-State: ALQs6tBd1f3JUd8puoRJDMIzFk7lSXNtIxpEYWxifyBsm0PonNS6UMbL 2NrrbBeqvxWDDXokezg7hDI02g== X-Received: by 2002:a17:902:8345:: with SMTP id z5-v6mr27216426pln.311.1525439500373; Fri, 04 May 2018 06:11:40 -0700 (PDT) Received: from server.roeck-us.net (108-223-40-66.lightspeed.sntcca.sbcglobal.net. [108.223.40.66]) by smtp.gmail.com with ESMTPSA id e87sm42846297pfl.65.2018.05.04.06.11.39 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 04 May 2018 06:11:39 -0700 (PDT) Subject: Re: [PATCH v3] watchdog: sp805: add restart handler To: Jongsung Kim , Wim Van Sebroeck , linux-watchdog@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Chanho Min References: <1525413903-7066-1-git-send-email-neidhard.kim@lge.com> From: Guenter Roeck Message-ID: <1b084bff-84fd-18fa-7bee-dd00e33405a2@roeck-us.net> Date: Fri, 4 May 2018 06:11:38 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <1525413903-7066-1-git-send-email-neidhard.kim@lge.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 05/03/2018 11:05 PM, Jongsung Kim wrote: > Add restart handler for SP805 watchdog so that the driver can be > used to reboot the system. > > Signed-off-by: Jongsung Kim > Cc: Guenter Roeck Reviewed-by: Guenter Roeck > --- For future patches: change log goes here, please. Thanks, Guenter > drivers/watchdog/sp805_wdt.c | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > > diff --git a/drivers/watchdog/sp805_wdt.c b/drivers/watchdog/sp805_wdt.c > index 03805bc..9849db0 100644 > --- a/drivers/watchdog/sp805_wdt.c > +++ b/drivers/watchdog/sp805_wdt.c > @@ -121,6 +121,18 @@ static unsigned int wdt_timeleft(struct watchdog_device *wdd) > return div_u64(load, rate); > } > > +static int > +wdt_restart(struct watchdog_device *wdd, unsigned long mode, void *cmd) > +{ > + struct sp805_wdt *wdt = watchdog_get_drvdata(wdd); > + > + writel_relaxed(0, wdt->base + WDTCONTROL); > + writel_relaxed(0, wdt->base + WDTLOAD); > + writel_relaxed(INT_ENABLE | RESET_ENABLE, wdt->base + WDTCONTROL); > + > + return 0; > +} > + > static int wdt_config(struct watchdog_device *wdd, bool ping) > { > struct sp805_wdt *wdt = watchdog_get_drvdata(wdd); > @@ -197,6 +209,7 @@ static const struct watchdog_ops wdt_ops = { > .ping = wdt_ping, > .set_timeout = wdt_setload, > .get_timeleft = wdt_timeleft, > + .restart = wdt_restart, > }; > > static int > @@ -230,6 +243,7 @@ sp805_wdt_probe(struct amba_device *adev, const struct amba_id *id) > spin_lock_init(&wdt->lock); > watchdog_set_nowayout(&wdt->wdd, nowayout); > watchdog_set_drvdata(&wdt->wdd, wdt); > + watchdog_set_restart_priority(&wdt->wdd, 128); > wdt_setload(&wdt->wdd, DEFAULT_TIMEOUT); > > ret = watchdog_register_device(&wdt->wdd); >