linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/8] MediaTek watchdog: Convert mtk-wdt.txt to dt-schema
@ 2022-10-07  9:34 Allen-KH Cheng
  2022-10-07  9:34 ` [PATCH v2 1/8] arm64: dts: mediatek: mt8186: Fix watchdog compatible Allen-KH Cheng
                   ` (7 more replies)
  0 siblings, 8 replies; 12+ messages in thread
From: Allen-KH Cheng @ 2022-10-07  9:34 UTC (permalink / raw)
  To: Wim Van Sebroeck, Guenter Roeck, Krzysztof Kozlowski,
	Matthias Brugger, Rob Herring, nfraprado
  Cc: angelogioacchino.delregno, Project_Global_Chrome_Upstream_Group,
	devicetree, linux-arm-kernel, linux-kernel, linux-mediatek,
	Allen-KH Cheng

Based on tag: next-20221007 linux-next/master, We use [1] and [2] as
references to send a new series.

This series converts mtk-wdt.txt to dt-schema and contains
 - Fix watchdog compatibles for MT8186, MT7986 and MT8195,
 - Fix the watchdog name of mt8516
 - Add mt6795 and MT8173 watchdog compatible
 - Add support for toprgu reset on the MediaTek Helio X10 MT6795 SoC.

Changes since v1:
 - Drop "items" for a single enum 

Changes since [1]:
 - Update the commit message with some details
 - Drop "timeout-sec: true" and use unevaluatedProperties
[1] https://lore.kernel.org/all/20221005113517.70628-1-angelogioacchino.delregno@collabora.com/
[2] https://lore.kernel.org/all/20220422121017.23920-3-allen-kh.cheng@mediatek.com/

Allen-KH Cheng (3):
  arm64: dts: mediatek: mt7986: Fix watchdog compatible
  arm64: dts: mediatek: mt8516: Fix the watchdog node name
  dt-bindings: watchdog: mediatek,mtk-wdt: Add compatible for MT8173

AngeloGioacchino Del Regno (5):
  arm64: dts: mediatek: mt8186: Fix watchdog compatible
  arm64: dts: mediatek: mt8195: Fix watchdog compatible
  dt-bindings: watchdog: mediatek: Convert mtk-wdt to json-schema
  dt-bindings: watchdog: mediatek,mtk-wdt: Add compatible for MT6795
  watchdog: mtk_wdt: Add support for MT6795 Helio X10 watchdog and
    toprgu

 .../bindings/watchdog/mediatek,mtk-wdt.yaml   | 79 +++++++++++++++++++
 .../devicetree/bindings/watchdog/mtk-wdt.txt  | 42 ----------
 arch/arm64/boot/dts/mediatek/mt7986a.dtsi     |  3 +-
 arch/arm64/boot/dts/mediatek/mt8186.dtsi      |  3 +-
 arch/arm64/boot/dts/mediatek/mt8195.dtsi      |  3 +-
 arch/arm64/boot/dts/mediatek/mt8516.dtsi      |  2 +-
 drivers/watchdog/mtk_wdt.c                    |  6 ++
 7 files changed, 89 insertions(+), 49 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
 delete mode 100644 Documentation/devicetree/bindings/watchdog/mtk-wdt.txt

-- 
2.18.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 1/8] arm64: dts: mediatek: mt8186: Fix watchdog compatible
  2022-10-07  9:34 [PATCH v2 0/8] MediaTek watchdog: Convert mtk-wdt.txt to dt-schema Allen-KH Cheng
@ 2022-10-07  9:34 ` Allen-KH Cheng
  2022-10-07  9:34 ` [PATCH v2 2/8] arm64: dts: mediatek: mt8195: " Allen-KH Cheng
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Allen-KH Cheng @ 2022-10-07  9:34 UTC (permalink / raw)
  To: Wim Van Sebroeck, Guenter Roeck, Krzysztof Kozlowski,
	Matthias Brugger, Rob Herring, nfraprado
  Cc: angelogioacchino.delregno, Project_Global_Chrome_Upstream_Group,
	devicetree, linux-arm-kernel, linux-kernel, linux-mediatek,
	Allen-KH Cheng

From: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>

MT8186's watchdog embeds a reset controller and needs only the
mediatek,mt8186-wdt compatible string as the MT6589 one is there
for watchdogs that don't have any reset controller capability.

Fixes: 2e78620b1350 ("arm64: dts: Add MediaTek MT8186 dts and evaluation board and Makefile")
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Co-developed-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
---
 arch/arm64/boot/dts/mediatek/mt8186.dtsi | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/mediatek/mt8186.dtsi b/arch/arm64/boot/dts/mediatek/mt8186.dtsi
index 64693c17af9e..e4366144cca5 100644
--- a/arch/arm64/boot/dts/mediatek/mt8186.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8186.dtsi
@@ -330,8 +330,7 @@
 		};
 
 		watchdog: watchdog@10007000 {
-			compatible = "mediatek,mt8186-wdt",
-				     "mediatek,mt6589-wdt";
+			compatible = "mediatek,mt8186-wdt";
 			mediatek,disable-extrst;
 			reg = <0 0x10007000 0 0x1000>;
 			#reset-cells = <1>;
-- 
2.18.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v2 2/8] arm64: dts: mediatek: mt8195: Fix watchdog compatible
  2022-10-07  9:34 [PATCH v2 0/8] MediaTek watchdog: Convert mtk-wdt.txt to dt-schema Allen-KH Cheng
  2022-10-07  9:34 ` [PATCH v2 1/8] arm64: dts: mediatek: mt8186: Fix watchdog compatible Allen-KH Cheng
@ 2022-10-07  9:34 ` Allen-KH Cheng
  2022-10-07  9:34 ` [PATCH v2 3/8] arm64: dts: mediatek: mt7986: " Allen-KH Cheng
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Allen-KH Cheng @ 2022-10-07  9:34 UTC (permalink / raw)
  To: Wim Van Sebroeck, Guenter Roeck, Krzysztof Kozlowski,
	Matthias Brugger, Rob Herring, nfraprado
  Cc: angelogioacchino.delregno, Project_Global_Chrome_Upstream_Group,
	devicetree, linux-arm-kernel, linux-kernel, linux-mediatek,
	Allen-KH Cheng

From: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>

MT8195's watchdog embeds a reset controller and needs only the
mediatek,mt8195-wdt compatible string as the MT6589 one is there
for watchdogs that don't have any reset controller capability.

Fixes: 37f2582883be ("arm64: dts: Add mediatek SoC mt8195 and evaluation board")
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Co-developed-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
---
 arch/arm64/boot/dts/mediatek/mt8195.dtsi | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/mediatek/mt8195.dtsi b/arch/arm64/boot/dts/mediatek/mt8195.dtsi
index 905d1a90b406..0b254d245b47 100644
--- a/arch/arm64/boot/dts/mediatek/mt8195.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8195.dtsi
@@ -683,8 +683,7 @@
 		};
 
 		watchdog: watchdog@10007000 {
-			compatible = "mediatek,mt8195-wdt",
-				     "mediatek,mt6589-wdt";
+			compatible = "mediatek,mt8195-wdt";
 			mediatek,disable-extrst;
 			reg = <0 0x10007000 0 0x100>;
 			#reset-cells = <1>;
-- 
2.18.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v2 3/8] arm64: dts: mediatek: mt7986: Fix watchdog compatible
  2022-10-07  9:34 [PATCH v2 0/8] MediaTek watchdog: Convert mtk-wdt.txt to dt-schema Allen-KH Cheng
  2022-10-07  9:34 ` [PATCH v2 1/8] arm64: dts: mediatek: mt8186: Fix watchdog compatible Allen-KH Cheng
  2022-10-07  9:34 ` [PATCH v2 2/8] arm64: dts: mediatek: mt8195: " Allen-KH Cheng
@ 2022-10-07  9:34 ` Allen-KH Cheng
  2022-10-07  9:34 ` [PATCH v2 4/8] arm64: dts: mediatek: mt8516: Fix the watchdog node name Allen-KH Cheng
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Allen-KH Cheng @ 2022-10-07  9:34 UTC (permalink / raw)
  To: Wim Van Sebroeck, Guenter Roeck, Krzysztof Kozlowski,
	Matthias Brugger, Rob Herring, nfraprado
  Cc: angelogioacchino.delregno, Project_Global_Chrome_Upstream_Group,
	devicetree, linux-arm-kernel, linux-kernel, linux-mediatek,
	Allen-KH Cheng

MT7986's watchdog embeds a reset controller and needs only the
mediatek,mt7986-wdt compatible string as the MT6589 one is there
for watchdogs that don't have any reset controller capability.

Fixes: 50137c150f5f ("arm64: dts: mediatek: add basic mt7986 support")
Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
---
 arch/arm64/boot/dts/mediatek/mt7986a.dtsi | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/mediatek/mt7986a.dtsi b/arch/arm64/boot/dts/mediatek/mt7986a.dtsi
index 72e0d9722e07..6a94cd618772 100644
--- a/arch/arm64/boot/dts/mediatek/mt7986a.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt7986a.dtsi
@@ -119,8 +119,7 @@
 		};
 
 		watchdog: watchdog@1001c000 {
-			compatible = "mediatek,mt7986-wdt",
-				     "mediatek,mt6589-wdt";
+			compatible = "mediatek,mt7986-wdt";
 			reg = <0 0x1001c000 0 0x1000>;
 			interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
 			#reset-cells = <1>;
-- 
2.18.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v2 4/8] arm64: dts: mediatek: mt8516: Fix the watchdog node name
  2022-10-07  9:34 [PATCH v2 0/8] MediaTek watchdog: Convert mtk-wdt.txt to dt-schema Allen-KH Cheng
                   ` (2 preceding siblings ...)
  2022-10-07  9:34 ` [PATCH v2 3/8] arm64: dts: mediatek: mt7986: " Allen-KH Cheng
@ 2022-10-07  9:34 ` Allen-KH Cheng
  2022-10-07  9:34 ` [PATCH v2 5/8] dt-bindings: watchdog: mediatek: Convert mtk-wdt to json-schema Allen-KH Cheng
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Allen-KH Cheng @ 2022-10-07  9:34 UTC (permalink / raw)
  To: Wim Van Sebroeck, Guenter Roeck, Krzysztof Kozlowski,
	Matthias Brugger, Rob Herring, nfraprado
  Cc: angelogioacchino.delregno, Project_Global_Chrome_Upstream_Group,
	devicetree, linux-arm-kernel, linux-kernel, linux-mediatek,
	Allen-KH Cheng

The proper name is 'watchdog', not 'toprgu'.

Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
---
 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


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v2 5/8] dt-bindings: watchdog: mediatek: Convert mtk-wdt to json-schema
  2022-10-07  9:34 [PATCH v2 0/8] MediaTek watchdog: Convert mtk-wdt.txt to dt-schema Allen-KH Cheng
                   ` (3 preceding siblings ...)
  2022-10-07  9:34 ` [PATCH v2 4/8] arm64: dts: mediatek: mt8516: Fix the watchdog node name Allen-KH Cheng
@ 2022-10-07  9:34 ` Allen-KH Cheng
  2022-10-07 12:39   ` Rob Herring
  2022-10-07 12:53   ` Guenter Roeck
  2022-10-07  9:34 ` [PATCH v2 6/8] dt-bindings: watchdog: mediatek,mtk-wdt: Add compatible for MT6795 Allen-KH Cheng
                   ` (2 subsequent siblings)
  7 siblings, 2 replies; 12+ messages in thread
From: Allen-KH Cheng @ 2022-10-07  9:34 UTC (permalink / raw)
  To: Wim Van Sebroeck, Guenter Roeck, Krzysztof Kozlowski,
	Matthias Brugger, Rob Herring, nfraprado
  Cc: angelogioacchino.delregno, Project_Global_Chrome_Upstream_Group,
	devicetree, linux-arm-kernel, linux-kernel, linux-mediatek,
	Allen-KH Cheng

From: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>

Convert the MediaTek watchdog bindings to schema.

The original binding only had 4 without a fallback but there is a reset
controller on the "mediatek,mt7986-wdt", "mediatek,mt8186-wdt" and
"mediatek,mt8195-wdt". Since there is no reset controller for the mt6589,
we remove "mediatek,mt6589-wdt" as a fallback.

Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Co-developed-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
---
 .../bindings/watchdog/mediatek,mtk-wdt.yaml   | 77 +++++++++++++++++++
 .../devicetree/bindings/watchdog/mtk-wdt.txt  | 42 ----------
 2 files changed, 77 insertions(+), 42 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
 delete mode 100644 Documentation/devicetree/bindings/watchdog/mtk-wdt.txt

diff --git a/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
new file mode 100644
index 000000000000..6805fbeace11
--- /dev/null
+++ b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
@@ -0,0 +1,77 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/watchdog/mediatek,mtk-wdt.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: MediaTek SoCs Watchdog timer
+
+maintainers:
+  - Matthias Brugger <matthias.bgg@gmail.com>
+
+description:
+  The watchdog supports a pre-timeout interrupt that fires
+  timeout-sec/2 before the expiry.
+
+allOf:
+  - $ref: watchdog.yaml#
+
+properties:
+  compatible:
+    oneOf:
+      - enum:
+          - mediatek,mt2712-wdt
+          - mediatek,mt6589-wdt
+          - mediatek,mt7986-wdt
+          - mediatek,mt8183-wdt
+          - mediatek,mt8186-wdt
+          - mediatek,mt8192-wdt
+          - mediatek,mt8195-wdt
+      - items:
+          - enum:
+              - mediatek,mt2701-wdt
+              - mediatek,mt6582-wdt
+              - mediatek,mt6797-wdt
+              - mediatek,mt7622-wdt
+              - mediatek,mt7623-wdt
+              - mediatek,mt7629-wdt
+              - mediatek,mt8516-wdt
+          - const: mediatek,mt6589-wdt
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    items:
+      - description: Watchdog pre-timeout (bark) interrupt
+
+  mediatek,disable-extrst:
+    description: Disable sending output reset signal
+    type: boolean
+
+  '#reset-cells':
+    const: 1
+
+required:
+  - compatible
+  - reg
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+
+    soc {
+        #address-cells = <2>;
+        #size-cells = <2>;
+
+        watchdog: watchdog@10007000 {
+            compatible = "mediatek,mt8183-wdt";
+            reg = <0 0x10007000 0 0x100>;
+            interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_LOW>;
+            mediatek,disable-extrst;
+            timeout-sec = <10>;
+            #reset-cells = <1>;
+        };
+    };
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>;
-};
-- 
2.18.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v2 6/8] dt-bindings: watchdog: mediatek,mtk-wdt: Add compatible for MT6795
  2022-10-07  9:34 [PATCH v2 0/8] MediaTek watchdog: Convert mtk-wdt.txt to dt-schema Allen-KH Cheng
                   ` (4 preceding siblings ...)
  2022-10-07  9:34 ` [PATCH v2 5/8] dt-bindings: watchdog: mediatek: Convert mtk-wdt to json-schema Allen-KH Cheng
@ 2022-10-07  9:34 ` Allen-KH Cheng
  2022-10-07  9:34 ` [PATCH v2 7/8] watchdog: mtk_wdt: Add support for MT6795 Helio X10 watchdog and toprgu Allen-KH Cheng
  2022-10-07  9:34 ` [PATCH v2 8/8] dt-bindings: watchdog: mediatek,mtk-wdt: Add compatible for MT8173 Allen-KH Cheng
  7 siblings, 0 replies; 12+ messages in thread
From: Allen-KH Cheng @ 2022-10-07  9:34 UTC (permalink / raw)
  To: Wim Van Sebroeck, Guenter Roeck, Krzysztof Kozlowski,
	Matthias Brugger, Rob Herring, nfraprado
  Cc: angelogioacchino.delregno, Project_Global_Chrome_Upstream_Group,
	devicetree, linux-arm-kernel, linux-kernel, linux-mediatek,
	Allen-KH Cheng

From: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>

Add the mediatek,mt6795-wdt compatible.

Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Co-developed-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Acked-by: Rob Herring <robh@kernel.org>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
---
 Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
index 6805fbeace11..855cebc87fb0 100644
--- a/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
+++ b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
@@ -22,6 +22,7 @@ properties:
       - enum:
           - mediatek,mt2712-wdt
           - mediatek,mt6589-wdt
+          - mediatek,mt6795-wdt
           - mediatek,mt7986-wdt
           - mediatek,mt8183-wdt
           - mediatek,mt8186-wdt
-- 
2.18.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v2 7/8] watchdog: mtk_wdt: Add support for MT6795 Helio X10 watchdog and toprgu
  2022-10-07  9:34 [PATCH v2 0/8] MediaTek watchdog: Convert mtk-wdt.txt to dt-schema Allen-KH Cheng
                   ` (5 preceding siblings ...)
  2022-10-07  9:34 ` [PATCH v2 6/8] dt-bindings: watchdog: mediatek,mtk-wdt: Add compatible for MT6795 Allen-KH Cheng
@ 2022-10-07  9:34 ` Allen-KH Cheng
  2022-10-07  9:34 ` [PATCH v2 8/8] dt-bindings: watchdog: mediatek,mtk-wdt: Add compatible for MT8173 Allen-KH Cheng
  7 siblings, 0 replies; 12+ messages in thread
From: Allen-KH Cheng @ 2022-10-07  9:34 UTC (permalink / raw)
  To: Wim Van Sebroeck, Guenter Roeck, Krzysztof Kozlowski,
	Matthias Brugger, Rob Herring, nfraprado
  Cc: angelogioacchino.delregno, Project_Global_Chrome_Upstream_Group,
	devicetree, linux-arm-kernel, linux-kernel, linux-mediatek,
	Allen-KH Cheng

From: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>

Add support for the toprgu reset controller and watchdog for the
MediaTek MT6795 SoC.

Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Co-developed-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
---
 drivers/watchdog/mtk_wdt.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/watchdog/mtk_wdt.c b/drivers/watchdog/mtk_wdt.c
index e97787536792..5fa42b7d4b4d 100644
--- a/drivers/watchdog/mtk_wdt.c
+++ b/drivers/watchdog/mtk_wdt.c
@@ -10,6 +10,7 @@
  */
 
 #include <dt-bindings/reset/mt2712-resets.h>
+#include <dt-bindings/reset/mediatek,mt6795-resets.h>
 #include <dt-bindings/reset/mt7986-resets.h>
 #include <dt-bindings/reset/mt8183-resets.h>
 #include <dt-bindings/reset/mt8186-resets.h>
@@ -78,6 +79,10 @@ static const struct mtk_wdt_data mt2712_data = {
 	.toprgu_sw_rst_num = MT2712_TOPRGU_SW_RST_NUM,
 };
 
+static const struct mtk_wdt_data mt6795_data = {
+	.toprgu_sw_rst_num = MT6795_TOPRGU_SW_RST_NUM,
+};
+
 static const struct mtk_wdt_data mt7986_data = {
 	.toprgu_sw_rst_num = MT7986_TOPRGU_SW_RST_NUM,
 };
@@ -426,6 +431,7 @@ static int mtk_wdt_resume(struct device *dev)
 static const struct of_device_id mtk_wdt_dt_ids[] = {
 	{ .compatible = "mediatek,mt2712-wdt", .data = &mt2712_data },
 	{ .compatible = "mediatek,mt6589-wdt" },
+	{ .compatible = "mediatek,mt6795-wdt", .data = &mt6795_data },
 	{ .compatible = "mediatek,mt7986-wdt", .data = &mt7986_data },
 	{ .compatible = "mediatek,mt8183-wdt", .data = &mt8183_data },
 	{ .compatible = "mediatek,mt8186-wdt", .data = &mt8186_data },
-- 
2.18.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v2 8/8] dt-bindings: watchdog: mediatek,mtk-wdt: Add compatible for MT8173
  2022-10-07  9:34 [PATCH v2 0/8] MediaTek watchdog: Convert mtk-wdt.txt to dt-schema Allen-KH Cheng
                   ` (6 preceding siblings ...)
  2022-10-07  9:34 ` [PATCH v2 7/8] watchdog: mtk_wdt: Add support for MT6795 Helio X10 watchdog and toprgu Allen-KH Cheng
@ 2022-10-07  9:34 ` Allen-KH Cheng
  2022-10-07 12:40   ` Guenter Roeck
  7 siblings, 1 reply; 12+ messages in thread
From: Allen-KH Cheng @ 2022-10-07  9:34 UTC (permalink / raw)
  To: Wim Van Sebroeck, Guenter Roeck, Krzysztof Kozlowski,
	Matthias Brugger, Rob Herring, nfraprado
  Cc: angelogioacchino.delregno, Project_Global_Chrome_Upstream_Group,
	devicetree, linux-arm-kernel, linux-kernel, linux-mediatek,
	Allen-KH Cheng

Add the mediatek,mt8173-wdt compatible using mediatek,mt6589-wdt as
fallback.

Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Acked-by: Rob Herring <robh@kernel.org>
---
 Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
index 855cebc87fb0..c1633878e869 100644
--- a/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
+++ b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
@@ -36,6 +36,7 @@ properties:
               - mediatek,mt7622-wdt
               - mediatek,mt7623-wdt
               - mediatek,mt7629-wdt
+              - mediatek,mt8173-wdt
               - mediatek,mt8516-wdt
           - const: mediatek,mt6589-wdt
 
-- 
2.18.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 5/8] dt-bindings: watchdog: mediatek: Convert mtk-wdt to json-schema
  2022-10-07  9:34 ` [PATCH v2 5/8] dt-bindings: watchdog: mediatek: Convert mtk-wdt to json-schema Allen-KH Cheng
@ 2022-10-07 12:39   ` Rob Herring
  2022-10-07 12:53   ` Guenter Roeck
  1 sibling, 0 replies; 12+ messages in thread
From: Rob Herring @ 2022-10-07 12:39 UTC (permalink / raw)
  To: Allen-KH Cheng
  Cc: Guenter Roeck, Matthias Brugger, Rob Herring, linux-mediatek,
	linux-kernel, Wim Van Sebroeck, nfraprado, linux-arm-kernel,
	devicetree, Project_Global_Chrome_Upstream_Group,
	angelogioacchino.delregno, Krzysztof Kozlowski

On Fri, 07 Oct 2022 17:34:34 +0800, Allen-KH Cheng wrote:
> From: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> 
> Convert the MediaTek watchdog bindings to schema.
> 
> The original binding only had 4 without a fallback but there is a reset
> controller on the "mediatek,mt7986-wdt", "mediatek,mt8186-wdt" and
> "mediatek,mt8195-wdt". Since there is no reset controller for the mt6589,
> we remove "mediatek,mt6589-wdt" as a fallback.
> 
> Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> Co-developed-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
> Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
> ---
>  .../bindings/watchdog/mediatek,mtk-wdt.yaml   | 77 +++++++++++++++++++
>  .../devicetree/bindings/watchdog/mtk-wdt.txt  | 42 ----------
>  2 files changed, 77 insertions(+), 42 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
>  delete mode 100644 Documentation/devicetree/bindings/watchdog/mtk-wdt.txt
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 8/8] dt-bindings: watchdog: mediatek,mtk-wdt: Add compatible for MT8173
  2022-10-07  9:34 ` [PATCH v2 8/8] dt-bindings: watchdog: mediatek,mtk-wdt: Add compatible for MT8173 Allen-KH Cheng
@ 2022-10-07 12:40   ` Guenter Roeck
  0 siblings, 0 replies; 12+ messages in thread
From: Guenter Roeck @ 2022-10-07 12:40 UTC (permalink / raw)
  To: Allen-KH Cheng, Wim Van Sebroeck, Krzysztof Kozlowski,
	Matthias Brugger, Rob Herring, nfraprado
  Cc: angelogioacchino.delregno, Project_Global_Chrome_Upstream_Group,
	devicetree, linux-arm-kernel, linux-kernel, linux-mediatek

On 10/7/22 02:34, Allen-KH Cheng wrote:
> Add the mediatek,mt8173-wdt compatible using mediatek,mt6589-wdt as
> fallback.
> 
> Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> Acked-by: Rob Herring <robh@kernel.org>

Reviewed-by: Guenter Roeck <linux@roeck-us.net>

> ---
>   Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
> index 855cebc87fb0..c1633878e869 100644
> --- a/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
> +++ b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
> @@ -36,6 +36,7 @@ properties:
>                 - mediatek,mt7622-wdt
>                 - mediatek,mt7623-wdt
>                 - mediatek,mt7629-wdt
> +              - mediatek,mt8173-wdt
>                 - mediatek,mt8516-wdt
>             - const: mediatek,mt6589-wdt
>   


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 5/8] dt-bindings: watchdog: mediatek: Convert mtk-wdt to json-schema
  2022-10-07  9:34 ` [PATCH v2 5/8] dt-bindings: watchdog: mediatek: Convert mtk-wdt to json-schema Allen-KH Cheng
  2022-10-07 12:39   ` Rob Herring
@ 2022-10-07 12:53   ` Guenter Roeck
  1 sibling, 0 replies; 12+ messages in thread
From: Guenter Roeck @ 2022-10-07 12:53 UTC (permalink / raw)
  To: Allen-KH Cheng, Wim Van Sebroeck, Krzysztof Kozlowski,
	Matthias Brugger, Rob Herring, nfraprado
  Cc: angelogioacchino.delregno, Project_Global_Chrome_Upstream_Group,
	devicetree, linux-arm-kernel, linux-kernel, linux-mediatek

On 10/7/22 02:34, Allen-KH Cheng wrote:
> From: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> 
> Convert the MediaTek watchdog bindings to schema.
> 
> The original binding only had 4 without a fallback but there is a reset
> controller on the "mediatek,mt7986-wdt", "mediatek,mt8186-wdt" and
> "mediatek,mt8195-wdt". Since there is no reset controller for the mt6589,
> we remove "mediatek,mt6589-wdt" as a fallback.
> 
> Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> Co-developed-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
> Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>

Reviewed-by: Guenter Roeck <linux@roeck-us.net>

> ---
>   .../bindings/watchdog/mediatek,mtk-wdt.yaml   | 77 +++++++++++++++++++
>   .../devicetree/bindings/watchdog/mtk-wdt.txt  | 42 ----------
>   2 files changed, 77 insertions(+), 42 deletions(-)
>   create mode 100644 Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
>   delete mode 100644 Documentation/devicetree/bindings/watchdog/mtk-wdt.txt
> 
> diff --git a/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
> new file mode 100644
> index 000000000000..6805fbeace11
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml
> @@ -0,0 +1,77 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/watchdog/mediatek,mtk-wdt.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: MediaTek SoCs Watchdog timer
> +
> +maintainers:
> +  - Matthias Brugger <matthias.bgg@gmail.com>
> +
> +description:
> +  The watchdog supports a pre-timeout interrupt that fires
> +  timeout-sec/2 before the expiry.
> +
> +allOf:
> +  - $ref: watchdog.yaml#
> +
> +properties:
> +  compatible:
> +    oneOf:
> +      - enum:
> +          - mediatek,mt2712-wdt
> +          - mediatek,mt6589-wdt
> +          - mediatek,mt7986-wdt
> +          - mediatek,mt8183-wdt
> +          - mediatek,mt8186-wdt
> +          - mediatek,mt8192-wdt
> +          - mediatek,mt8195-wdt
> +      - items:
> +          - enum:
> +              - mediatek,mt2701-wdt
> +              - mediatek,mt6582-wdt
> +              - mediatek,mt6797-wdt
> +              - mediatek,mt7622-wdt
> +              - mediatek,mt7623-wdt
> +              - mediatek,mt7629-wdt
> +              - mediatek,mt8516-wdt
> +          - const: mediatek,mt6589-wdt
> +
> +  reg:
> +    maxItems: 1
> +
> +  interrupts:
> +    items:
> +      - description: Watchdog pre-timeout (bark) interrupt
> +
> +  mediatek,disable-extrst:
> +    description: Disable sending output reset signal
> +    type: boolean
> +
> +  '#reset-cells':
> +    const: 1
> +
> +required:
> +  - compatible
> +  - reg
> +
> +unevaluatedProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/interrupt-controller/arm-gic.h>
> +
> +    soc {
> +        #address-cells = <2>;
> +        #size-cells = <2>;
> +
> +        watchdog: watchdog@10007000 {
> +            compatible = "mediatek,mt8183-wdt";
> +            reg = <0 0x10007000 0 0x100>;
> +            interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_LOW>;
> +            mediatek,disable-extrst;
> +            timeout-sec = <10>;
> +            #reset-cells = <1>;
> +        };
> +    };
> 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>;
> -};


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2022-10-07 12:53 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-07  9:34 [PATCH v2 0/8] MediaTek watchdog: Convert mtk-wdt.txt to dt-schema Allen-KH Cheng
2022-10-07  9:34 ` [PATCH v2 1/8] arm64: dts: mediatek: mt8186: Fix watchdog compatible Allen-KH Cheng
2022-10-07  9:34 ` [PATCH v2 2/8] arm64: dts: mediatek: mt8195: " Allen-KH Cheng
2022-10-07  9:34 ` [PATCH v2 3/8] arm64: dts: mediatek: mt7986: " Allen-KH Cheng
2022-10-07  9:34 ` [PATCH v2 4/8] arm64: dts: mediatek: mt8516: Fix the watchdog node name Allen-KH Cheng
2022-10-07  9:34 ` [PATCH v2 5/8] dt-bindings: watchdog: mediatek: Convert mtk-wdt to json-schema Allen-KH Cheng
2022-10-07 12:39   ` Rob Herring
2022-10-07 12:53   ` Guenter Roeck
2022-10-07  9:34 ` [PATCH v2 6/8] dt-bindings: watchdog: mediatek,mtk-wdt: Add compatible for MT6795 Allen-KH Cheng
2022-10-07  9:34 ` [PATCH v2 7/8] watchdog: mtk_wdt: Add support for MT6795 Helio X10 watchdog and toprgu Allen-KH Cheng
2022-10-07  9:34 ` [PATCH v2 8/8] dt-bindings: watchdog: mediatek,mtk-wdt: Add compatible for MT8173 Allen-KH Cheng
2022-10-07 12:40   ` Guenter Roeck

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).