Linux-MIPS Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH] MIPS: ingenic: DTS: Fix watchdog nodes
@ 2020-02-11 14:53 Paul Cercueil
  2020-02-15 22:09 ` Philippe Mathieu-Daudé
  2020-02-19 19:02 ` Paul Burton
  0 siblings, 2 replies; 3+ messages in thread
From: Paul Cercueil @ 2020-02-11 14:53 UTC (permalink / raw)
  To: Ralf Baechle, Paul Burton, Rob Herring, Mark Rutland
  Cc: Zhou Yanjie, od, linux-mips, devicetree, linux-kernel,
	Paul Cercueil, stable

The devicetree ABI was broken on purpose by commit 6d532143c915
("watchdog: jz4740: Use regmap provided by TCU driver"), and
commit 1d9c30745455 ("watchdog: jz4740: Use WDT clock provided
by TCU driver"). The commit message of the latter explains why the ABI
was broken.

However, the current devicetree files were not updated to the new ABI
described in Documentation/devicetree/bindings/timer/ingenic,tcu.txt,
so the watchdog driver would not probe.

Fix this problem by updating the watchdog nodes to comply with the new
ABI.

Fixes: 6d532143c915 ("watchdog: jz4740: Use regmap provided by TCU
driver")

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Cc: stable@vger.kernel.org
---
 arch/mips/boot/dts/ingenic/jz4740.dtsi | 17 +++++++++--------
 arch/mips/boot/dts/ingenic/jz4780.dtsi | 17 +++++++++--------
 2 files changed, 18 insertions(+), 16 deletions(-)

diff --git a/arch/mips/boot/dts/ingenic/jz4740.dtsi b/arch/mips/boot/dts/ingenic/jz4740.dtsi
index 5accda2767be..a3301bab9231 100644
--- a/arch/mips/boot/dts/ingenic/jz4740.dtsi
+++ b/arch/mips/boot/dts/ingenic/jz4740.dtsi
@@ -1,5 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0
 #include <dt-bindings/clock/jz4740-cgu.h>
+#include <dt-bindings/clock/ingenic,tcu.h>
 
 / {
 	#address-cells = <1>;
@@ -45,14 +46,6 @@ cgu: jz4740-cgu@10000000 {
 		#clock-cells = <1>;
 	};
 
-	watchdog: watchdog@10002000 {
-		compatible = "ingenic,jz4740-watchdog";
-		reg = <0x10002000 0x10>;
-
-		clocks = <&cgu JZ4740_CLK_RTC>;
-		clock-names = "rtc";
-	};
-
 	tcu: timer@10002000 {
 		compatible = "ingenic,jz4740-tcu", "simple-mfd";
 		reg = <0x10002000 0x1000>;
@@ -73,6 +66,14 @@ &cgu JZ4740_CLK_PCLK
 
 		interrupt-parent = <&intc>;
 		interrupts = <23 22 21>;
+
+		watchdog: watchdog@0 {
+			compatible = "ingenic,jz4740-watchdog";
+			reg = <0x0 0xc>;
+
+			clocks = <&tcu TCU_CLK_WDT>;
+			clock-names = "wdt";
+		};
 	};
 
 	rtc_dev: rtc@10003000 {
diff --git a/arch/mips/boot/dts/ingenic/jz4780.dtsi b/arch/mips/boot/dts/ingenic/jz4780.dtsi
index f928329b034b..bb89653d16a3 100644
--- a/arch/mips/boot/dts/ingenic/jz4780.dtsi
+++ b/arch/mips/boot/dts/ingenic/jz4780.dtsi
@@ -1,5 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0
 #include <dt-bindings/clock/jz4780-cgu.h>
+#include <dt-bindings/clock/ingenic,tcu.h>
 #include <dt-bindings/dma/jz4780-dma.h>
 
 / {
@@ -67,6 +68,14 @@ &cgu JZ4780_CLK_EXCLK
 
 		interrupt-parent = <&intc>;
 		interrupts = <27 26 25>;
+
+		watchdog: watchdog@0 {
+			compatible = "ingenic,jz4780-watchdog";
+			reg = <0x0 0xc>;
+
+			clocks = <&tcu TCU_CLK_WDT>;
+			clock-names = "wdt";
+		};
 	};
 
 	rtc_dev: rtc@10003000 {
@@ -348,14 +357,6 @@ i2c4: i2c@10054000 {
 		status = "disabled";
 	};
 
-	watchdog: watchdog@10002000 {
-		compatible = "ingenic,jz4780-watchdog";
-		reg = <0x10002000 0x10>;
-
-		clocks = <&cgu JZ4780_CLK_RTCLK>;
-		clock-names = "rtc";
-	};
-
 	nemc: nemc@13410000 {
 		compatible = "ingenic,jz4780-nemc";
 		reg = <0x13410000 0x10000>;
-- 
2.25.0


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

* Re: [PATCH] MIPS: ingenic: DTS: Fix watchdog nodes
  2020-02-11 14:53 [PATCH] MIPS: ingenic: DTS: Fix watchdog nodes Paul Cercueil
@ 2020-02-15 22:09 ` Philippe Mathieu-Daudé
  2020-02-19 19:02 ` Paul Burton
  1 sibling, 0 replies; 3+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-02-15 22:09 UTC (permalink / raw)
  To: Paul Cercueil, Ralf Baechle, Paul Burton, Rob Herring, Mark Rutland
  Cc: Zhou Yanjie, od, linux-mips, devicetree, linux-kernel, stable

On 2/11/20 3:53 PM, Paul Cercueil wrote:
> The devicetree ABI was broken on purpose by commit 6d532143c915
> ("watchdog: jz4740: Use regmap provided by TCU driver"), and
> commit 1d9c30745455 ("watchdog: jz4740: Use WDT clock provided
> by TCU driver"). The commit message of the latter explains why the ABI
> was broken.
> 
> However, the current devicetree files were not updated to the new ABI
> described in Documentation/devicetree/bindings/timer/ingenic,tcu.txt,
> so the watchdog driver would not probe.
> 
> Fix this problem by updating the watchdog nodes to comply with the new
> ABI.
> 
> Fixes: 6d532143c915 ("watchdog: jz4740: Use regmap provided by TCU
> driver")
> 
> Signed-off-by: Paul Cercueil <paul@crapouillou.net>
> Cc: stable@vger.kernel.org
> ---
>  arch/mips/boot/dts/ingenic/jz4740.dtsi | 17 +++++++++--------
>  arch/mips/boot/dts/ingenic/jz4780.dtsi | 17 +++++++++--------
>  2 files changed, 18 insertions(+), 16 deletions(-)
> 
> diff --git a/arch/mips/boot/dts/ingenic/jz4740.dtsi b/arch/mips/boot/dts/ingenic/jz4740.dtsi
> index 5accda2767be..a3301bab9231 100644
> --- a/arch/mips/boot/dts/ingenic/jz4740.dtsi
> +++ b/arch/mips/boot/dts/ingenic/jz4740.dtsi
> @@ -1,5 +1,6 @@
>  // SPDX-License-Identifier: GPL-2.0
>  #include <dt-bindings/clock/jz4740-cgu.h>
> +#include <dt-bindings/clock/ingenic,tcu.h>
>  
>  / {
>  	#address-cells = <1>;
> @@ -45,14 +46,6 @@ cgu: jz4740-cgu@10000000 {
>  		#clock-cells = <1>;
>  	};
>  
> -	watchdog: watchdog@10002000 {
> -		compatible = "ingenic,jz4740-watchdog";
> -		reg = <0x10002000 0x10>;
> -
> -		clocks = <&cgu JZ4740_CLK_RTC>;
> -		clock-names = "rtc";
> -	};
> -
>  	tcu: timer@10002000 {
>  		compatible = "ingenic,jz4740-tcu", "simple-mfd";
>  		reg = <0x10002000 0x1000>;
> @@ -73,6 +66,14 @@ &cgu JZ4740_CLK_PCLK
>  
>  		interrupt-parent = <&intc>;
>  		interrupts = <23 22 21>;
> +
> +		watchdog: watchdog@0 {
> +			compatible = "ingenic,jz4740-watchdog";
> +			reg = <0x0 0xc>;

Now the WDT_TCSR register is directly managed by the CPU, OK.

Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

> +
> +			clocks = <&tcu TCU_CLK_WDT>;
> +			clock-names = "wdt";
> +		};
>  	};
>  
>  	rtc_dev: rtc@10003000 {
> diff --git a/arch/mips/boot/dts/ingenic/jz4780.dtsi b/arch/mips/boot/dts/ingenic/jz4780.dtsi
> index f928329b034b..bb89653d16a3 100644
> --- a/arch/mips/boot/dts/ingenic/jz4780.dtsi
> +++ b/arch/mips/boot/dts/ingenic/jz4780.dtsi
> @@ -1,5 +1,6 @@
>  // SPDX-License-Identifier: GPL-2.0
>  #include <dt-bindings/clock/jz4780-cgu.h>
> +#include <dt-bindings/clock/ingenic,tcu.h>
>  #include <dt-bindings/dma/jz4780-dma.h>
>  
>  / {
> @@ -67,6 +68,14 @@ &cgu JZ4780_CLK_EXCLK
>  
>  		interrupt-parent = <&intc>;
>  		interrupts = <27 26 25>;
> +
> +		watchdog: watchdog@0 {
> +			compatible = "ingenic,jz4780-watchdog";
> +			reg = <0x0 0xc>;
> +
> +			clocks = <&tcu TCU_CLK_WDT>;
> +			clock-names = "wdt";
> +		};
>  	};
>  
>  	rtc_dev: rtc@10003000 {
> @@ -348,14 +357,6 @@ i2c4: i2c@10054000 {
>  		status = "disabled";
>  	};
>  
> -	watchdog: watchdog@10002000 {
> -		compatible = "ingenic,jz4780-watchdog";
> -		reg = <0x10002000 0x10>;
> -
> -		clocks = <&cgu JZ4780_CLK_RTCLK>;
> -		clock-names = "rtc";
> -	};
> -
>  	nemc: nemc@13410000 {
>  		compatible = "ingenic,jz4780-nemc";
>  		reg = <0x13410000 0x10000>;
> 

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

* Re: [PATCH] MIPS: ingenic: DTS: Fix watchdog nodes
  2020-02-11 14:53 [PATCH] MIPS: ingenic: DTS: Fix watchdog nodes Paul Cercueil
  2020-02-15 22:09 ` Philippe Mathieu-Daudé
@ 2020-02-19 19:02 ` Paul Burton
  1 sibling, 0 replies; 3+ messages in thread
From: Paul Burton @ 2020-02-19 19:02 UTC (permalink / raw)
  To: Paul Cercueil
  Cc: Ralf Baechle, Paul Burton, Rob Herring, Mark Rutland,
	Zhou Yanjie, od, linux-mips, devicetree, linux-kernel,
	Paul Cercueil, stable, linux-mips

[-- Warning: decoded text below may be mangled --]
[-- Attachment #0: Type: text/plain, Size: 1151 bytes --]

Hello,

Paul Cercueil wrote:
> The devicetree ABI was broken on purpose by commit 6d532143c915
> ("watchdog: jz4740: Use regmap provided by TCU driver"), and
> commit 1d9c30745455 ("watchdog: jz4740: Use WDT clock provided
> by TCU driver"). The commit message of the latter explains why the ABI
> was broken.
> 
> However, the current devicetree files were not updated to the new ABI
> described in Documentation/devicetree/bindings/timer/ingenic,tcu.txt,
> so the watchdog driver would not probe.
> 
> Fix this problem by updating the watchdog nodes to comply with the new
> ABI.
> 
> Fixes: 6d532143c915 ("watchdog: jz4740: Use regmap provided by TCU
> driver")

Applied to mips-fixes.

> commit 11479e8e3cd8
> https://git.kernel.org/mips/c/11479e8e3cd8
> 
> Fixes: 6d532143c915 ("watchdog: jz4740: Use regmap provided by TCU driver")
> Signed-off-by: Paul Cercueil <paul@crapouillou.net>
> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> Signed-off-by: Paul Burton <paulburton@kernel.org>

Thanks,
    Paul

[ This message was auto-generated; if you believe anything is incorrect
  then please email paulburton@kernel.org to report it. ]

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

end of thread, back to index

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-11 14:53 [PATCH] MIPS: ingenic: DTS: Fix watchdog nodes Paul Cercueil
2020-02-15 22:09 ` Philippe Mathieu-Daudé
2020-02-19 19:02 ` Paul Burton

Linux-MIPS Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-mips/0 linux-mips/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-mips linux-mips/ https://lore.kernel.org/linux-mips \
		linux-mips@vger.kernel.org
	public-inbox-index linux-mips

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-mips


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git