[PATCH 0/2] dt-bindings: watchdog: mediatek: Convert binding to YAML

STALE1629d

Revision v1 of 2 in this series.

6 messages, 3 authors, 2022-04-25 · open the first message on its own page

[PATCH 0/2] dt-bindings: watchdog: mediatek: Convert binding to YAML

From: Allen-KH Cheng <hidden>
Date: 2022-04-22 12:10:44

Based on kernel/git/groeck/linux-staging.git, watchdog-next

Add align watchdog node name with dtschema PATCH to fix dtbs_check warnings.

Allen-KH Cheng (2):
  arm64: dts: mt8516: align watchdog node name with dtschema
  dt-bindings: watchdog: mediatek: Convert binding to YAML

 .../devicetree/bindings/watchdog/mtk-wdt.txt  | 42 ----------
 .../devicetree/bindings/watchdog/mtk-wdt.yaml | 76 +++++++++++++++++++
 arch/arm64/boot/dts/mediatek/mt8516.dtsi      |  2 +-
 3 files changed, 77 insertions(+), 43 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/watchdog/mtk-wdt.txt
 create mode 100644 Documentation/devicetree/bindings/watchdog/mtk-wdt.yaml

-- 
2.18.0

[PATCH 1/2] arm64: dts: mt8516: align watchdog node name with dtschema

From: Allen-KH Cheng <hidden>
Date: 2022-04-22 12:10:52

Based on watchdog.yaml, the node names should be "watchdog".

Signed-off-by: Allen-KH Cheng <redacted>
---
 arch/arm64/boot/dts/mediatek/mt8516.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/mediatek/mt8516.dtsi b/arch/arm64/boot/dts/mediatek/mt8516.dtsi
index d1b67c82d761..fff59dc1b4d7 100644
--- a/arch/arm64/boot/dts/mediatek/mt8516.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8516.dtsi
@@ -202,7 +202,7 @@
 			#clock-cells = <1>;
 		};
 
-		toprgu: toprgu@10007000 {
+		toprgu: watchdog@10007000 {
 			compatible = "mediatek,mt8516-wdt",
 				     "mediatek,mt6589-wdt";
 			reg = <0 0x10007000 0 0x1000>;
-- 
2.18.0

[PATCH 2/2] dt-bindings: watchdog: mediatek: Convert binding to YAML

From: Allen-KH Cheng <hidden>
Date: 2022-04-22 12:10:56

Convert Mediatek watchdog devicetree binding to YAML.

Signed-off-by: Allen-KH Cheng <redacted>
---
 .../devicetree/bindings/watchdog/mtk-wdt.txt  | 42 ----------
 .../devicetree/bindings/watchdog/mtk-wdt.yaml | 76 +++++++++++++++++++
 2 files changed, 76 insertions(+), 42 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/watchdog/mtk-wdt.txt
 create mode 100644 Documentation/devicetree/bindings/watchdog/mtk-wdt.yaml
diff --git a/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt b/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt
deleted file mode 100644
index 762c62e428ef..000000000000
--- a/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt
+++ /dev/null
@@ -1,42 +0,0 @@
-Mediatek SoCs Watchdog timer
-
-The watchdog supports a pre-timeout interrupt that fires timeout-sec/2
-before the expiry.
-
-Required properties:
-
-- compatible should contain:
-	"mediatek,mt2701-wdt", "mediatek,mt6589-wdt": for MT2701
-	"mediatek,mt2712-wdt": for MT2712
-	"mediatek,mt6582-wdt", "mediatek,mt6589-wdt": for MT6582
-	"mediatek,mt6589-wdt": for MT6589
-	"mediatek,mt6797-wdt", "mediatek,mt6589-wdt": for MT6797
-	"mediatek,mt7622-wdt", "mediatek,mt6589-wdt": for MT7622
-	"mediatek,mt7623-wdt", "mediatek,mt6589-wdt": for MT7623
-	"mediatek,mt7629-wdt", "mediatek,mt6589-wdt": for MT7629
-	"mediatek,mt7986-wdt", "mediatek,mt6589-wdt": for MT7986
-	"mediatek,mt8183-wdt": for MT8183
-	"mediatek,mt8186-wdt", "mediatek,mt6589-wdt": for MT8186
-	"mediatek,mt8516-wdt", "mediatek,mt6589-wdt": for MT8516
-	"mediatek,mt8192-wdt": for MT8192
-	"mediatek,mt8195-wdt", "mediatek,mt6589-wdt": for MT8195
-
-- reg : Specifies base physical address and size of the registers.
-
-Optional properties:
-- mediatek,disable-extrst: disable send output reset signal
-- interrupts: Watchdog pre-timeout (bark) interrupt.
-- timeout-sec: contains the watchdog timeout in seconds.
-- #reset-cells: Should be 1.
-
-Example:
-
-watchdog: watchdog@10007000 {
-	compatible = "mediatek,mt8183-wdt",
-		     "mediatek,mt6589-wdt";
-	mediatek,disable-extrst;
-	reg = <0 0x10007000 0 0x100>;
-	interrupts = <GIC_SPI 139 IRQ_TYPE_NONE>;
-	timeout-sec = <10>;
-	#reset-cells = <1>;
-};
diff --git a/Documentation/devicetree/bindings/watchdog/mtk-wdt.yaml b/Documentation/devicetree/bindings/watchdog/mtk-wdt.yaml
new file mode 100644
index 000000000000..5788617027c8
--- /dev/null
+++ b/Documentation/devicetree/bindings/watchdog/mtk-wdt.yaml
@@ -0,0 +1,76 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/watchdog/mtk-wdt.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Mediatek SoCs Watchdog timer
+
+maintainers:
+  - Runyang Chen <runyang.chen@mediatek.com>
+  - Allen-KH Cheng <allen-kh.cheng@mediatek.com>
+
+description: |+
+  The watchdog supports a pre-timeout interrupt that fires timeout-sec/2
+  before the expiry.
+
+allOf:
+  - $ref: "watchdog.yaml#"
+
+properties:
+  compatible:
+    oneOf:
+      - const: mediatek,mt2712-wdt
+      - const: mediatek,mt6589-wdt
+      - const: mediatek,mt8183-wdt
+      - const: mediatek,mt8192-wdt
+
+      - items:
+          - enum:
+              - mediatek,mt2701-wdt
+              - mediatek,mt6582-wdt
+              - mediatek,mt6797-wdt
+              - mediatek,mt7622-wdt
+              - mediatek,mt7623-wdt
+              - mediatek,mt7629-wdt
+              - mediatek,mt7986-wdt
+              - mediatek,mt8173-wdt
+              - mediatek,mt8183-wdt
+              - mediatek,mt8186-wdt
+              - mediatek,mt8192-wdt
+              - mediatek,mt8195-wdt
+              - mediatek,mt8516-wdt
+          - const: mediatek,mt6589-wdt
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  '#reset-cells':
+    const: 1
+
+  timeout-sec: true
+
+required:
+  - compatible
+  - reg
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+
+    watchdog@10007000 {
+        compatible = "mediatek,mt8183-wdt",
+                     "mediatek,mt6589-wdt";
+        mediatek,disable-extrst;
+        reg = <0x10007000 0x100>;
+        interrupts = <GIC_SPI 139 IRQ_TYPE_NONE>;
+        timeout-sec = <10>;
+        #reset-cells = <1>;
+    };
+
+...
-- 
2.18.0

Re: [PATCH 2/2] dt-bindings: watchdog: mediatek: Convert binding to YAML

From: Krzysztof Kozlowski <hidden>
Date: 2022-04-22 15:45:12

On 22/04/2022 14:10, Allen-KH Cheng wrote:
quoted hunk
Convert Mediatek watchdog devicetree binding to YAML.

Signed-off-by: Allen-KH Cheng <redacted>
---
 .../devicetree/bindings/watchdog/mtk-wdt.txt  | 42 ----------
 .../devicetree/bindings/watchdog/mtk-wdt.yaml | 76 +++++++++++++++++++
 2 files changed, 76 insertions(+), 42 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/watchdog/mtk-wdt.txt
 create mode 100644 Documentation/devicetree/bindings/watchdog/mtk-wdt.yaml
diff --git a/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt b/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt
deleted file mode 100644
index 762c62e428ef..000000000000
--- a/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt
+++ /dev/null
@@ -1,42 +0,0 @@
-Mediatek SoCs Watchdog timer
-
-The watchdog supports a pre-timeout interrupt that fires timeout-sec/2
-before the expiry.
-
-Required properties:
-
-- compatible should contain:
-	"mediatek,mt2701-wdt", "mediatek,mt6589-wdt": for MT2701
-	"mediatek,mt2712-wdt": for MT2712
-	"mediatek,mt6582-wdt", "mediatek,mt6589-wdt": for MT6582
-	"mediatek,mt6589-wdt": for MT6589
-	"mediatek,mt6797-wdt", "mediatek,mt6589-wdt": for MT6797
-	"mediatek,mt7622-wdt", "mediatek,mt6589-wdt": for MT7622
-	"mediatek,mt7623-wdt", "mediatek,mt6589-wdt": for MT7623
-	"mediatek,mt7629-wdt", "mediatek,mt6589-wdt": for MT7629
-	"mediatek,mt7986-wdt", "mediatek,mt6589-wdt": for MT7986
-	"mediatek,mt8183-wdt": for MT8183
-	"mediatek,mt8186-wdt", "mediatek,mt6589-wdt": for MT8186
-	"mediatek,mt8516-wdt", "mediatek,mt6589-wdt": for MT8516
-	"mediatek,mt8192-wdt": for MT8192
-	"mediatek,mt8195-wdt", "mediatek,mt6589-wdt": for MT8195
-
-- reg : Specifies base physical address and size of the registers.
-
-Optional properties:
-- mediatek,disable-extrst: disable send output reset signal
-- interrupts: Watchdog pre-timeout (bark) interrupt.
-- timeout-sec: contains the watchdog timeout in seconds.
-- #reset-cells: Should be 1.
-
-Example:
-
-watchdog: watchdog@10007000 {
-	compatible = "mediatek,mt8183-wdt",
-		     "mediatek,mt6589-wdt";
-	mediatek,disable-extrst;
-	reg = <0 0x10007000 0 0x100>;
-	interrupts = <GIC_SPI 139 IRQ_TYPE_NONE>;
-	timeout-sec = <10>;
-	#reset-cells = <1>;
-};
diff --git a/Documentation/devicetree/bindings/watchdog/mtk-wdt.yaml b/Documentation/devicetree/bindings/watchdog/mtk-wdt.yaml
new file mode 100644
index 000000000000..5788617027c8
--- /dev/null
+++ b/Documentation/devicetree/bindings/watchdog/mtk-wdt.yaml
@@ -0,0 +1,76 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/watchdog/mtk-wdt.yaml#
File name: mtk,wdt.yaml

I assume all future MediaTek watchdogs (even these unpublished and
developed in some years) will fit into this schema. :) If not, then
maybe better to name the file by the compatible... but it's not a must.
quoted hunk
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Mediatek SoCs Watchdog timer
+
+maintainers:
+  - Runyang Chen <runyang.chen@mediatek.com>
+  - Allen-KH Cheng <allen-kh.cheng@mediatek.com>
+
+description: |+
+  The watchdog supports a pre-timeout interrupt that fires timeout-sec/2
+  before the expiry.
+
+allOf:
+  - $ref: "watchdog.yaml#"
+
+properties:
+  compatible:
+    oneOf:
+      - const: mediatek,mt2712-wdt
+      - const: mediatek,mt6589-wdt
+      - const: mediatek,mt8183-wdt
+      - const: mediatek,mt8192-wdt
All these four entries should be an enum.
quoted hunk
+
+      - items:
+          - enum:
+              - mediatek,mt2701-wdt
+              - mediatek,mt6582-wdt
+              - mediatek,mt6797-wdt
+              - mediatek,mt7622-wdt
+              - mediatek,mt7623-wdt
+              - mediatek,mt7629-wdt
+              - mediatek,mt7986-wdt
+              - mediatek,mt8173-wdt
+              - mediatek,mt8183-wdt
+              - mediatek,mt8186-wdt
+              - mediatek,mt8192-wdt
+              - mediatek,mt8195-wdt
+              - mediatek,mt8516-wdt
+          - const: mediatek,mt6589-wdt
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  '#reset-cells':
+    const: 1
+
+  timeout-sec: true
You do not need this, it's coming from watchdog schema.
quoted hunk
+
+required:
+  - compatible
+  - reg
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+
+    watchdog@10007000 {
+        compatible = "mediatek,mt8183-wdt",
+                     "mediatek,mt6589-wdt";
+        mediatek,disable-extrst;
Did you test your bindings? Does not look like. Please run
dt_binding_check (see writing-schema for instructions).
+        reg = <0x10007000 0x100>;
+        interrupts = <GIC_SPI 139 IRQ_TYPE_NONE>;
Wrong interrupt flag.
quoted hunk
+        timeout-sec = <10>;
+        #reset-cells = <1>;
+    };
+
+...

Best regards,
Krzysztof

Re: [PATCH 1/2] arm64: dts: mt8516: align watchdog node name with dtschema

From: Krzysztof Kozlowski <hidden>
Date: 2022-04-22 15:45:45

On 22/04/2022 14:10, Allen-KH Cheng wrote:
Based on watchdog.yaml, the node names should be "watchdog".

Signed-off-by: Allen-KH Cheng <redacted>
---

Acked-by: Krzysztof Kozlowski <redacted>


Best regards,
Krzysztof

Re: [PATCH 2/2] dt-bindings: watchdog: mediatek: Convert binding to YAML

From: Rob Herring <robh+dt@kernel.org>
Date: 2022-04-25 16:02:42

On Fri, Apr 22, 2022 at 10:44 AM Krzysztof Kozlowski
[off-list ref] wrote:
On 22/04/2022 14:10, Allen-KH Cheng wrote:
quoted
Convert Mediatek watchdog devicetree binding to YAML.

Signed-off-by: Allen-KH Cheng <redacted>
---
 .../devicetree/bindings/watchdog/mtk-wdt.txt  | 42 ----------
 .../devicetree/bindings/watchdog/mtk-wdt.yaml | 76 +++++++++++++++++++
 2 files changed, 76 insertions(+), 42 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/watchdog/mtk-wdt.txt
 create mode 100644 Documentation/devicetree/bindings/watchdog/mtk-wdt.yaml
diff --git a/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt b/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt
deleted file mode 100644
index 762c62e428ef..000000000000
--- a/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt
+++ /dev/null
@@ -1,42 +0,0 @@
-Mediatek SoCs Watchdog timer
-
-The watchdog supports a pre-timeout interrupt that fires timeout-sec/2
-before the expiry.
-
-Required properties:
-
-- compatible should contain:
-     "mediatek,mt2701-wdt", "mediatek,mt6589-wdt": for MT2701
-     "mediatek,mt2712-wdt": for MT2712
-     "mediatek,mt6582-wdt", "mediatek,mt6589-wdt": for MT6582
-     "mediatek,mt6589-wdt": for MT6589
-     "mediatek,mt6797-wdt", "mediatek,mt6589-wdt": for MT6797
-     "mediatek,mt7622-wdt", "mediatek,mt6589-wdt": for MT7622
-     "mediatek,mt7623-wdt", "mediatek,mt6589-wdt": for MT7623
-     "mediatek,mt7629-wdt", "mediatek,mt6589-wdt": for MT7629
-     "mediatek,mt7986-wdt", "mediatek,mt6589-wdt": for MT7986
-     "mediatek,mt8183-wdt": for MT8183
-     "mediatek,mt8186-wdt", "mediatek,mt6589-wdt": for MT8186
-     "mediatek,mt8516-wdt", "mediatek,mt6589-wdt": for MT8516
-     "mediatek,mt8192-wdt": for MT8192
-     "mediatek,mt8195-wdt", "mediatek,mt6589-wdt": for MT8195
-
-- reg : Specifies base physical address and size of the registers.
-
-Optional properties:
-- mediatek,disable-extrst: disable send output reset signal
-- interrupts: Watchdog pre-timeout (bark) interrupt.
-- timeout-sec: contains the watchdog timeout in seconds.
-- #reset-cells: Should be 1.
-
-Example:
-
-watchdog: watchdog@10007000 {
-     compatible = "mediatek,mt8183-wdt",
-                  "mediatek,mt6589-wdt";
-     mediatek,disable-extrst;
-     reg = <0 0x10007000 0 0x100>;
-     interrupts = <GIC_SPI 139 IRQ_TYPE_NONE>;
-     timeout-sec = <10>;
-     #reset-cells = <1>;
-};
diff --git a/Documentation/devicetree/bindings/watchdog/mtk-wdt.yaml b/Documentation/devicetree/bindings/watchdog/mtk-wdt.yaml
new file mode 100644
index 000000000000..5788617027c8
--- /dev/null
+++ b/Documentation/devicetree/bindings/watchdog/mtk-wdt.yaml
@@ -0,0 +1,76 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/watchdog/mtk-wdt.yaml#
File name: mtk,wdt.yaml
mediatek,wdt.yaml
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help