dt-bindings: watchdog: dw-wdt: Add watchdog TOPs array property
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@baikalelectronics.ru> Reviewed-by: Rob Herring <robh@kernel.org> Reviewed-by: Guenter Roeck <linux@roeck-us.net> Cc: Alexey Malahov <Alexey.Malahov@baikalelectronics.ru> Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de> Cc: Arnd Bergmann <arnd@arndb.de> Cc: linux-mips@vger.kernel.org Link: https://lore.kernel.org/r/20200530073557.22661-4-Sergey.Semin@baikalelectronics.ru Signed-off-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>
This commit is contained in:
parent
5b4f68f808
commit
4ce4e7fdc3
|
@ -39,6 +39,23 @@ properties:
|
||||||
description: Phandle to the DW Watchdog reset lane
|
description: Phandle to the DW Watchdog reset lane
|
||||||
maxItems: 1
|
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
|
unevaluatedProperties: false
|
||||||
|
|
||||||
required:
|
required:
|
||||||
|
@ -55,4 +72,19 @@ examples:
|
||||||
clocks = <&per_base_clk>;
|
clocks = <&per_base_clk>;
|
||||||
resets = <&wdt_rst>;
|
resets = <&wdt_rst>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
- |
|
||||||
|
watchdog@ffd02000 {
|
||||||
|
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>;
|
||||||
|
};
|
||||||
...
|
...
|
||||||
|
|
Loading…
Reference in New Issue