[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200529225418.GA194211@roeck-us.net>
Date: Fri, 29 May 2020 15:54:18 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Serge Semin <Sergey.Semin@...kalelectronics.ru>
Cc: Wim Van Sebroeck <wim@...ux-watchdog.org>,
Rob Herring <robh+dt@...nel.org>,
Serge Semin <fancer.lancer@...il.com>,
Rob Herring <robh@...nel.org>,
Alexey Malahov <Alexey.Malahov@...kalelectronics.ru>,
Thomas Bogendoerfer <tsbogend@...ha.franken.de>,
Arnd Bergmann <arnd@...db.de>, linux-mips@...r.kernel.org,
linux-watchdog@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3 3/7] dt-bindings: watchdog: dw-wdt: Add watchdog TOPs
array property
On Tue, May 26, 2020 at 06:41:19PM +0300, Serge Semin wrote:
> In case if DW Watchdog IP core is built with WDT_USE_FIX_TOP == false,
> a custom timeout periods are used to preset the timer counter. In
> this case that periods should be specified in a new "snps,watchdog-tops"
> property of the DW watchdog dts node.
>
> Signed-off-by: Serge Semin <Sergey.Semin@...kalelectronics.ru>
> Reviewed-by: Rob Herring <robh@...nel.org>
> Cc: Alexey Malahov <Alexey.Malahov@...kalelectronics.ru>
> Cc: Thomas Bogendoerfer <tsbogend@...ha.franken.de>
> Cc: Arnd Bergmann <arnd@...db.de>
> Cc: linux-mips@...r.kernel.org
Reviewed-by: Guenter Roeck <linux@...ck-us.net>
> ---
>
> Changelog v2:
> - Rearrange SoBs.
> - Move $ref to the root level of the "snps,watchdog-tops" property
> so does the constraints.
> - Add default TOP values array.
> - Discard the label definition from the new bindings example.
>
> Changelog v3:
> - Remove items property and move the minItems and maxItems constraints to
> the root level of the snps,watchdog-tops property.
> ---
> .../bindings/watchdog/snps,dw-wdt.yaml | 32 +++++++++++++++++++
> 1 file changed, 32 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/watchdog/snps,dw-wdt.yaml b/Documentation/devicetree/bindings/watchdog/snps,dw-wdt.yaml
> index 5bf6dc6377f3..d9fc7bb851b1 100644
> --- a/Documentation/devicetree/bindings/watchdog/snps,dw-wdt.yaml
> +++ b/Documentation/devicetree/bindings/watchdog/snps,dw-wdt.yaml
> @@ -39,6 +39,23 @@ properties:
> description: Phandle to the DW Watchdog reset lane
> maxItems: 1
>
> + snps,watchdog-tops:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + description: |
> + DW APB Watchdog custom timer intervals - Timeout Period ranges (TOPs).
> + Each TOP is a number loaded into the watchdog counter at the moment of
> + the timer restart. The counter decrementing happens each tick of the
> + reference clock. Therefore the TOPs array is equivalent to an array of
> + the timer expiration intervals supported by the DW APB Watchdog. Note
> + DW APB Watchdog IP-core might be synthesized with fixed TOP values,
> + in which case this property is unnecessary with default TOPs utilized.
> + default: [0x0001000 0x0002000 0x0004000 0x0008000
> + 0x0010000 0x0020000 0x0040000 0x0080000
> + 0x0100000 0x0200000 0x0400000 0x0800000
> + 0x1000000 0x2000000 0x4000000 0x8000000]
> + minItems: 16
> + maxItems: 16
> +
> unevaluatedProperties: false
>
> required:
> @@ -55,4 +72,19 @@ examples:
> clocks = <&per_base_clk>;
> resets = <&wdt_rst>;
> };
> +
> + - |
> + watchdog@...02000 {
> + compatible = "snps,dw-wdt";
> + reg = <0xffd02000 0x1000>;
> + interrupts = <0 171 4>;
> + clocks = <&per_base_clk>;
> + clock-names = "tclk";
> + snps,watchdog-tops = <0x000000FF 0x000001FF 0x000003FF
> + 0x000007FF 0x0000FFFF 0x0001FFFF
> + 0x0003FFFF 0x0007FFFF 0x000FFFFF
> + 0x001FFFFF 0x003FFFFF 0x007FFFFF
> + 0x00FFFFFF 0x01FFFFFF 0x03FFFFFF
> + 0x07FFFFFF>;
> + };
> ...
Powered by blists - more mailing lists