From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B0711C10F29 for ; Tue, 10 Mar 2020 00:33:39 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 8E1C324654 for ; Tue, 10 Mar 2020 00:33:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727543AbgCJAdi (ORCPT ); Mon, 9 Mar 2020 20:33:38 -0400 Received: from mail.baikalelectronics.com ([87.245.175.226]:44470 "EHLO mail.baikalelectronics.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727287AbgCJAdi (ORCPT ); Mon, 9 Mar 2020 20:33:38 -0400 Received: from localhost (unknown [127.0.0.1]) by mail.baikalelectronics.ru (Postfix) with ESMTP id 9DDE880307C8; Tue, 10 Mar 2020 00:33:35 +0000 (UTC) X-Virus-Scanned: amavisd-new at baikalelectronics.ru Received: from mail.baikalelectronics.ru ([127.0.0.1]) by localhost (mail.baikalelectronics.ru [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1ZkS3tMholhH; Tue, 10 Mar 2020 03:33:34 +0300 (MSK) Date: Tue, 10 Mar 2020 03:32:44 +0300 From: Sergey Semin To: Alexey Malahov , Maxim Kaurkin , Pavel Parkhomenko , Ramil Zaripov , Ekaterina Skachko , Vadim Vlasov , Thomas Bogendoerfer , Paul Burton , Ralf Baechle , Wim Van Sebroeck , Guenter Roeck , Philipp Zabel , Rob Herring , Mark Rutland , , , Subject: Re: [PATCH 0/7] watchdog: dw_wdt: Take Baikal-T1 DW WDT peculiarities into account References: <20200306132747.14701-1-Sergey.Semin@baikalelectronics.ru> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20200306132747.14701-1-Sergey.Semin@baikalelectronics.ru> X-ClientProxiedBy: MAIL.baikal.int (192.168.51.25) To mail (192.168.51.25) Message-Id: <20200310003335.9DDE880307C8@mail.baikalelectronics.ru> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Mar 06, 2020 at 04:27:40PM +0300, Sergey.Semin@baikalelectronics.ru wrote: > From: Serge Semin > > There were a few features enabled at the time of the Baikal-T1 SoC DW WDT > IP synthesis, which weren't taken into account in the DW WDT driver available > in the kernel. First of all the SoC engineers synthesized the watchdog core > with WDT_USE_FIX_TOP set to false (don't really know why, but they did). > Due to this the timer reset values weren't fixed as the driver expected > but were initialized with a pre-defined values selected by the engineers. > Secondly the driver expected that the watchdog APB bus and the timer had > synchronous reference clocks, while Baikal-T1 SoC DW WDT was created with > asynchronous ones. So the driver should enable two clock devices: APB bus > clocks and a separate timer reference clock. Finally DW Watchdog Timer is > capable of generating a pre-timeout interrupt if corresponding config is > enabled. The problem was that the pre-timeout IRQ happens when the set > timeout elapses, while the actual WDT expiration and subsequent reboot take > place in the next timeout. This makes the pre-timeout functionality > implementation a bit tricky, since in this case we would have to find a > WDT timeout twice smaller the requested timeout. All of the changes described > above are provided by the patches in this patchset. > > In addition traditionally we replaced the legacy plain text-based dt-binding > file with yaml-based one, made some cleanups in the watchdog core code (just > replaced time-unit numerical literals with corresponding macro) and added > DebugFS nodes to ease the driver debug procedure. > > This patchset is rebased and tested on the mainline Linux kernel 5.6-rc4: > commit 98d54f81e36b ("Linux 5.6-rc4"). > > Signed-off-by: Serge Semin > Signed-off-by: Alexey Malahov > Cc: Maxim Kaurkin > Cc: Pavel Parkhomenko > Cc: Ramil Zaripov > Cc: Ekaterina Skachko > Cc: Vadim Vlasov > Cc: Thomas Bogendoerfer > Cc: Paul Burton > Cc: Ralf Baechle > Cc: Wim Van Sebroeck > Cc: Guenter Roeck > Cc: Philipp Zabel > Cc: Rob Herring > Cc: Mark Rutland > Cc: linux-watchdog@vger.kernel.org > Cc: devicetree@vger.kernel.org > Cc: linux-kernel@vger.kernel.org > > Serge Semin (7): > dt-bindings: watchdog: dw-wdt: Replace legacy bindings file with > YAML-based one > dt-bindings: watchdog: dw-wdt: Add watchdog TOPs array property > watchdog: watchdog_dev: Use generic msec-per-sec macro > watchdog: dw_wdt: Support devices with non-fixed TOP values > watchdog: dw_wdt: Support devices with asynch clocks > watchdog: dw_wdt: Add pre-timeouts support > watchdog: dw_wdt: Add DebugFS files > > .../devicetree/bindings/watchdog/dw_wdt.txt | 24 - > .../bindings/watchdog/snps,dw-wdt.yaml | 96 ++++ > drivers/watchdog/dw_wdt.c | 460 ++++++++++++++++-- > drivers/watchdog/watchdog_dev.c | 4 +- > 4 files changed, 523 insertions(+), 61 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/watchdog/dw_wdt.txt > create mode 100644 Documentation/devicetree/bindings/watchdog/snps,dw-wdt.yaml > > -- > 2.25.1 > Folks, It appears our corporate email server changes the Message-Id field of messages passing through it. Due to that the emails threading gets to be broken. I'll resubmit the properly structured v2 patchset as soon as our system administrator fixes the problem and all the questions, already raised by the maintainers/reviewer, are settled. Sorry for the inconvenience caused me. Regards, -Sergey