[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231214150414.1849058-2-enachman@marvell.com>
Date: Thu, 14 Dec 2023 17:04:12 +0200
From: Elad Nachman <enachman@...vell.com>
To: <wim@...ux-watchdog.org>, <linux@...ck-us.net>,
<robh+dt@...nel.org>, <krzysztof.kozlowski+dt@...aro.org>,
<conor+dt@...nel.org>, <gregory.clement@...tlin.com>,
<chris.packham@...iedtelesis.co.nz>, <andrew@...n.ch>,
<fu.wei@...aro.org>, <Suravee.Suthikulpanit@....com>,
<al.stone@...aro.org>, <timur@...eaurora.org>,
<linux-watchdog@...r.kernel.org>, <devicetree@...r.kernel.org>,
<linux-kernel@...r.kernel.org>
CC: <enachman@...vell.com>, <cyuval@...vell.com>
Subject: [PATCH 1/3] dt-bindings: watchdog: add Marvell AC5 watchdog
From: Elad Nachman <enachman@...vell.com>
Add definitions and examples for Marvell AC5 variant
of the sbsa watchdog.
Marvell variant requires more memory definitions,
since the initialization is more complex, and involves
several register sets.
Signed-off-by: Elad Nachman <enachman@...vell.com>
---
.../bindings/watchdog/arm,sbsa-gwdt.yaml | 52 ++++++++++++++++++-
1 file changed, 50 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/bindings/watchdog/arm,sbsa-gwdt.yaml b/Documentation/devicetree/bindings/watchdog/arm,sbsa-gwdt.yaml
index aa804f96acba..331e9aa7c2f7 100644
--- a/Documentation/devicetree/bindings/watchdog/arm,sbsa-gwdt.yaml
+++ b/Documentation/devicetree/bindings/watchdog/arm,sbsa-gwdt.yaml
@@ -20,12 +20,17 @@ allOf:
properties:
compatible:
- const: arm,sbsa-gwdt
+ enum:
+ - arm,sbsa-gwdt
+ - marvell,ac5-wd
reg:
items:
- description: Watchdog control frame
- description: Refresh frame
+ - description: Marvell CPU control frame
+ - description: Marvell Management frame
+ - description: Marvell reset control unit frame
interrupts:
description: The Watchdog Signal 0 (WS0) SPI (Shared Peripheral Interrupt)
@@ -39,12 +44,55 @@ required:
unevaluatedProperties: false
examples:
+ # First example is for generic ARM one
+ # Next examples are for Marvell.
+ # They are organized as three sets:
+ # first set is for global watchdog, then CPU core #0 private watchdog,
+ # and finally CPU core #1 private watchdog
+ # Examples are given for AC5 or Ironman. For AC5X SOC, the last
+ # reg item's low address (0x840F8000) should be replaced with 0x944F8000
- |
watchdog@...40000 {
compatible = "arm,sbsa-gwdt";
reg = <0x2a440000 0x1000>,
- <0x2a450000 0x1000>;
+ <0x2a450000 0x1000>,
+ <0x0 0x0>,
+ <0x0 0x0>,
+ <0x0 0x0>;
interrupts = <0 27 4>;
timeout-sec = <30>;
};
+ - |
+ watchdog@...16000 {
+ compatible = "marvell,ac5-wd";
+ reg = <0x80216000 0x1000>,
+ <0x80215000 0x1000>,
+ <0x80210000 0x1000>,
+ <0x7f900000 0x1000>,
+ <0x840F8000 0x1000>;
+ interrupts = <0 124 4>;
+ timeout-sec = <30>;
+ };
+ - |
+ watchdog@...12000 {
+ compatible = "marvell,ac5-wd";
+ reg = <0x80212000 0x1000>,
+ <0x80211000 0x1000>,
+ <0x80210000 0x1000>,
+ <0x7f900000 0x1000>,
+ <0x840F8000 0x1000>;
+ interrupts = <0 122 4>;
+ timeout-sec = <30>;
+ };
+ - |
+ watchdog@...14000 {
+ compatible = "marvell,ac5-wd";
+ reg = <0x80214000 0x1000>,
+ <0x80213000 0x1000>,
+ <0x80210000 0x1000>,
+ <0x7f900000 0x1000>,
+ <0x840F8000 0x1000>;
+ interrupts = <0 122 4>;
+ timeout-sec = <30>;
+ };
...
--
2.25.1
Powered by blists - more mailing lists