stable.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 3/6] MIPS: DTS: CI20: fix PMU definitions for ACT8600
       [not found] <cover.1581884459.git.hns@goldelico.com>
@ 2020-02-16 20:20 ` H. Nikolaus Schaller
  2020-02-28 14:34   ` Paul Cercueil
  2020-02-16 20:20 ` [PATCH v3 4/6] MIPS: DTS: CI20: fix interrupt for pcf8563 RTC H. Nikolaus Schaller
  1 sibling, 1 reply; 4+ messages in thread
From: H. Nikolaus Schaller @ 2020-02-16 20:20 UTC (permalink / raw)
  To: Paul Boddie, Paul Cercueil, Rob Herring, Mark Rutland,
	Ralf Baechle, Paul Burton, H. Nikolaus Schaller, Miquel Raynal,
	Andi Kleen, Kees Cook, Krzysztof Kozlowski
  Cc: devicetree, linux-mips, linux-kernel, letux-kernel, kernel, stable

There is a ACT8600 on the CI20 board and the bindings of the
ACT8865 driver have changed without updating the CI20 device
tree. Therefore the PMU can not be probed successfully and
is running in power-on reset state.

Fix DT to match the latest act8865-regulator bindings.

Fixes: 73f2b940474d ("MIPS: CI20: DTS: Add I2C nodes")
Cc: stable@vger.kernel.org
Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
---
 arch/mips/boot/dts/ingenic/ci20.dts | 48 ++++++++++++++++++++---------
 1 file changed, 33 insertions(+), 15 deletions(-)

diff --git a/arch/mips/boot/dts/ingenic/ci20.dts b/arch/mips/boot/dts/ingenic/ci20.dts
index 59c104289ece..4f48bc16fb52 100644
--- a/arch/mips/boot/dts/ingenic/ci20.dts
+++ b/arch/mips/boot/dts/ingenic/ci20.dts
@@ -153,6 +153,8 @@
 	pinctrl-0 = <&pins_uart4>;
 };
 
+#include <dt-bindings/regulator/active-semi,8865-regulator.h>
+
 &i2c0 {
 	status = "okay";
 
@@ -166,65 +168,81 @@
 		reg = <0x5a>;
 		status = "okay";
 
+/*
+Optional input supply properties:
+- for act8600:
+  - vp1-supply: The input supply for DCDC_REG1
+  - vp2-supply: The input supply for DCDC_REG2
+  - vp3-supply: The input supply for DCDC_REG3
+  - inl-supply: The input supply for LDO_REG5, LDO_REG6, LDO_REG7 and LDO_REG8
+  SUDCDC_REG4, LDO_REG9 and LDO_REG10 do not have separate supplies.
+*/
+
 		regulators {
 			vddcore: SUDCDC1 {
-				regulator-name = "VDDCORE";
+				regulator-name = "DCDC_REG1";
 				regulator-min-microvolt = <1100000>;
 				regulator-max-microvolt = <1100000>;
 				regulator-always-on;
 			};
 			vddmem: SUDCDC2 {
-				regulator-name = "VDDMEM";
+				regulator-name = "DCDC_REG2";
 				regulator-min-microvolt = <1500000>;
 				regulator-max-microvolt = <1500000>;
 				regulator-always-on;
 			};
 			vcc_33: SUDCDC3 {
-				regulator-name = "VCC33";
+				regulator-name = "DCDC_REG3";
 				regulator-min-microvolt = <3300000>;
 				regulator-max-microvolt = <3300000>;
 				regulator-always-on;
 			};
 			vcc_50: SUDCDC4 {
-				regulator-name = "VCC50";
+				regulator-name = "SUDCDC_REG4";
 				regulator-min-microvolt = <5000000>;
 				regulator-max-microvolt = <5000000>;
 				regulator-always-on;
 			};
 			vcc_25: LDO_REG5 {
-				regulator-name = "VCC25";
+				regulator-name = "LDO_REG5";
 				regulator-min-microvolt = <2500000>;
 				regulator-max-microvolt = <2500000>;
 				regulator-always-on;
 			};
 			wifi_io: LDO_REG6 {
-				regulator-name = "WIFIIO";
+				regulator-name = "LDO_REG6";
 				regulator-min-microvolt = <2500000>;
 				regulator-max-microvolt = <2500000>;
 				regulator-always-on;
 			};
 			vcc_28: LDO_REG7 {
-				regulator-name = "VCC28";
+				regulator-name = "LDO_REG7";
 				regulator-min-microvolt = <2800000>;
 				regulator-max-microvolt = <2800000>;
 				regulator-always-on;
 			};
 			vcc_15: LDO_REG8 {
-				regulator-name = "VCC15";
+				regulator-name = "LDO_REG8";
 				regulator-min-microvolt = <1500000>;
 				regulator-max-microvolt = <1500000>;
 				regulator-always-on;
 			};
-			vcc_18: LDO_REG9 {
-				regulator-name = "VCC18";
-				regulator-min-microvolt = <1800000>;
-				regulator-max-microvolt = <1800000>;
+			vrtc_18: LDO_REG9 {
+				regulator-name = "LDO_REG9";
+				/* Despite the datasheet stating 3.3V for REG9 and
+				   driver expecting that, REG9 outputs 1.8V.
+				   Likely the CI20 uses a chip variant.
+				   Since it is a simple on/off LDO the exact values
+				   do not matter.
+				*/
+				regulator-min-microvolt = <3300000>;
+				regulator-max-microvolt = <3300000>;
 				regulator-always-on;
 			};
 			vcc_11: LDO_REG10 {
-				regulator-name = "VCC11";
-				regulator-min-microvolt = <1100000>;
-				regulator-max-microvolt = <1100000>;
+				regulator-name = "LDO_REG10";
+				regulator-min-microvolt = <1200000>;
+				regulator-max-microvolt = <1200000>;
 				regulator-always-on;
 			};
 		};
-- 
2.23.0


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

* [PATCH v3 4/6] MIPS: DTS: CI20: fix interrupt for pcf8563 RTC
       [not found] <cover.1581884459.git.hns@goldelico.com>
  2020-02-16 20:20 ` [PATCH v3 3/6] MIPS: DTS: CI20: fix PMU definitions for ACT8600 H. Nikolaus Schaller
@ 2020-02-16 20:20 ` H. Nikolaus Schaller
  1 sibling, 0 replies; 4+ messages in thread
From: H. Nikolaus Schaller @ 2020-02-16 20:20 UTC (permalink / raw)
  To: Paul Boddie, Paul Cercueil, Rob Herring, Mark Rutland,
	Ralf Baechle, Paul Burton, H. Nikolaus Schaller, Miquel Raynal,
	Andi Kleen, Kees Cook, Krzysztof Kozlowski
  Cc: devicetree, linux-mips, linux-kernel, letux-kernel, kernel, stable

Interrupts should not be specified by interrupt line but by
gpio parent and reference.

Fixes: 73f2b940474d ("MIPS: CI20: DTS: Add I2C nodes")
Cc: stable@vger.kernel.org
Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
---
 arch/mips/boot/dts/ingenic/ci20.dts | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/mips/boot/dts/ingenic/ci20.dts b/arch/mips/boot/dts/ingenic/ci20.dts
index 4f48bc16fb52..1ab55be707af 100644
--- a/arch/mips/boot/dts/ingenic/ci20.dts
+++ b/arch/mips/boot/dts/ingenic/ci20.dts
@@ -284,7 +284,9 @@ Optional input supply properties:
 		rtc@51 {
 			compatible = "nxp,pcf8563";
 			reg = <0x51>;
-			interrupts = <110>;
+
+			interrupt-parent = <&gpf>;
+			interrupts = <30 IRQ_TYPE_LEVEL_LOW>;
 		};
 };
 
-- 
2.23.0


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

* Re: [PATCH v3 3/6] MIPS: DTS: CI20: fix PMU definitions for ACT8600
  2020-02-16 20:20 ` [PATCH v3 3/6] MIPS: DTS: CI20: fix PMU definitions for ACT8600 H. Nikolaus Schaller
@ 2020-02-28 14:34   ` Paul Cercueil
  2020-02-28 14:40     ` H. Nikolaus Schaller
  0 siblings, 1 reply; 4+ messages in thread
From: Paul Cercueil @ 2020-02-28 14:34 UTC (permalink / raw)
  To: H. Nikolaus Schaller
  Cc: Paul Boddie, Rob Herring, Mark Rutland, Ralf Baechle,
	Paul Burton, Miquel Raynal, Andi Kleen, Kees Cook,
	Krzysztof Kozlowski, devicetree, linux-mips, linux-kernel,
	letux-kernel, kernel, stable

Hi Nikolaus,


Le dim., févr. 16, 2020 at 21:20, H. Nikolaus Schaller 
<hns@goldelico.com> a écrit :
> There is a ACT8600 on the CI20 board and the bindings of the
> ACT8865 driver have changed without updating the CI20 device
> tree. Therefore the PMU can not be probed successfully and
> is running in power-on reset state.
> 
> Fix DT to match the latest act8865-regulator bindings.
> 
> Fixes: 73f2b940474d ("MIPS: CI20: DTS: Add I2C nodes")
> Cc: stable@vger.kernel.org
> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
> ---
>  arch/mips/boot/dts/ingenic/ci20.dts | 48 
> ++++++++++++++++++++---------
>  1 file changed, 33 insertions(+), 15 deletions(-)
> 
> diff --git a/arch/mips/boot/dts/ingenic/ci20.dts 
> b/arch/mips/boot/dts/ingenic/ci20.dts
> index 59c104289ece..4f48bc16fb52 100644
> --- a/arch/mips/boot/dts/ingenic/ci20.dts
> +++ b/arch/mips/boot/dts/ingenic/ci20.dts
> @@ -153,6 +153,8 @@
>  	pinctrl-0 = <&pins_uart4>;
>  };
> 
> +#include <dt-bindings/regulator/active-semi,8865-regulator.h>

Includes at the beginning of the file please. Keeps it tidy.

> +
>  &i2c0 {
>  	status = "okay";
> 
> @@ -166,65 +168,81 @@
>  		reg = <0x5a>;
>  		status = "okay";
> 
> +/*
> +Optional input supply properties:
> +- for act8600:
> +  - vp1-supply: The input supply for DCDC_REG1
> +  - vp2-supply: The input supply for DCDC_REG2
> +  - vp3-supply: The input supply for DCDC_REG3
> +  - inl-supply: The input supply for LDO_REG5, LDO_REG6, LDO_REG7 
> and LDO_REG8
> +  SUDCDC_REG4, LDO_REG9 and LDO_REG10 do not have separate supplies.
> +*/
> +
>  		regulators {
>  			vddcore: SUDCDC1 {
> -				regulator-name = "VDDCORE";
> +				regulator-name = "DCDC_REG1";
>  				regulator-min-microvolt = <1100000>;
>  				regulator-max-microvolt = <1100000>;
>  				regulator-always-on;
>  			};
>  			vddmem: SUDCDC2 {
> -				regulator-name = "VDDMEM";
> +				regulator-name = "DCDC_REG2";
>  				regulator-min-microvolt = <1500000>;
>  				regulator-max-microvolt = <1500000>;
>  				regulator-always-on;
>  			};
>  			vcc_33: SUDCDC3 {
> -				regulator-name = "VCC33";
> +				regulator-name = "DCDC_REG3";
>  				regulator-min-microvolt = <3300000>;
>  				regulator-max-microvolt = <3300000>;
>  				regulator-always-on;
>  			};
>  			vcc_50: SUDCDC4 {
> -				regulator-name = "VCC50";
> +				regulator-name = "SUDCDC_REG4";
>  				regulator-min-microvolt = <5000000>;
>  				regulator-max-microvolt = <5000000>;
>  				regulator-always-on;
>  			};
>  			vcc_25: LDO_REG5 {
> -				regulator-name = "VCC25";
> +				regulator-name = "LDO_REG5";
>  				regulator-min-microvolt = <2500000>;
>  				regulator-max-microvolt = <2500000>;
>  				regulator-always-on;
>  			};
>  			wifi_io: LDO_REG6 {
> -				regulator-name = "WIFIIO";
> +				regulator-name = "LDO_REG6";
>  				regulator-min-microvolt = <2500000>;
>  				regulator-max-microvolt = <2500000>;
>  				regulator-always-on;
>  			};
>  			vcc_28: LDO_REG7 {
> -				regulator-name = "VCC28";
> +				regulator-name = "LDO_REG7";
>  				regulator-min-microvolt = <2800000>;
>  				regulator-max-microvolt = <2800000>;
>  				regulator-always-on;
>  			};
>  			vcc_15: LDO_REG8 {
> -				regulator-name = "VCC15";
> +				regulator-name = "LDO_REG8";
>  				regulator-min-microvolt = <1500000>;
>  				regulator-max-microvolt = <1500000>;
>  				regulator-always-on;
>  			};
> -			vcc_18: LDO_REG9 {
> -				regulator-name = "VCC18";
> -				regulator-min-microvolt = <1800000>;
> -				regulator-max-microvolt = <1800000>;
> +			vrtc_18: LDO_REG9 {
> +				regulator-name = "LDO_REG9";
> +				/* Despite the datasheet stating 3.3V for REG9 and
> +				   driver expecting that, REG9 outputs 1.8V.
> +				   Likely the CI20 uses a chip variant.
> +				   Since it is a simple on/off LDO the exact values
> +				   do not matter.
> +				*/
> +				regulator-min-microvolt = <3300000>;
> +				regulator-max-microvolt = <3300000>;
>  				regulator-always-on;
>  			};
>  			vcc_11: LDO_REG10 {
> -				regulator-name = "VCC11";
> -				regulator-min-microvolt = <1100000>;
> -				regulator-max-microvolt = <1100000>;
> +				regulator-name = "LDO_REG10";
> +				regulator-min-microvolt = <1200000>;
> +				regulator-max-microvolt = <1200000>;
>  				regulator-always-on;
>  			};
>  		};
> --
> 2.23.0
> 



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

* Re: [PATCH v3 3/6] MIPS: DTS: CI20: fix PMU definitions for ACT8600
  2020-02-28 14:34   ` Paul Cercueil
@ 2020-02-28 14:40     ` H. Nikolaus Schaller
  0 siblings, 0 replies; 4+ messages in thread
From: H. Nikolaus Schaller @ 2020-02-28 14:40 UTC (permalink / raw)
  To: Paul Cercueil
  Cc: Paul Boddie, Rob Herring, Mark Rutland, Ralf Baechle,
	Paul Burton, Miquel Raynal, Andi Kleen, Kees Cook,
	Krzysztof Kozlowski, devicetree, linux-mips, linux-kernel,
	letux-kernel, kernel, stable


> Am 28.02.2020 um 15:34 schrieb Paul Cercueil <paul@crapouillou.net>:
> 
> Hi Nikolaus,
> 
> 
> Le dim., févr. 16, 2020 at 21:20, H. Nikolaus Schaller <hns@goldelico.com> a écrit :
>> There is a ACT8600 on the CI20 board and the bindings of the
>> ACT8865 driver have changed without updating the CI20 device
>> tree. Therefore the PMU can not be probed successfully and
>> is running in power-on reset state.
>> Fix DT to match the latest act8865-regulator bindings.
>> Fixes: 73f2b940474d ("MIPS: CI20: DTS: Add I2C nodes")
>> Cc: stable@vger.kernel.org
>> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
>> ---
>> arch/mips/boot/dts/ingenic/ci20.dts | 48 ++++++++++++++++++++---------
>> 1 file changed, 33 insertions(+), 15 deletions(-)
>> diff --git a/arch/mips/boot/dts/ingenic/ci20.dts b/arch/mips/boot/dts/ingenic/ci20.dts
>> index 59c104289ece..4f48bc16fb52 100644
>> --- a/arch/mips/boot/dts/ingenic/ci20.dts
>> +++ b/arch/mips/boot/dts/ingenic/ci20.dts
>> @@ -153,6 +153,8 @@
>> 	pinctrl-0 = <&pins_uart4>;
>> };
>> +#include <dt-bindings/regulator/active-semi,8865-regulator.h>
> 
> Includes at the beginning of the file please. Keeps it tidy.

Ok.

Well, I am infected by omap boards where this is not uncommon:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/omap3-beagle-xm.dts?h=v5.6-rc3#n294

But it may be historic and not a good style.

BR and thanks,
Nikolaus


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

end of thread, other threads:[~2020-02-28 14:40 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <cover.1581884459.git.hns@goldelico.com>
2020-02-16 20:20 ` [PATCH v3 3/6] MIPS: DTS: CI20: fix PMU definitions for ACT8600 H. Nikolaus Schaller
2020-02-28 14:34   ` Paul Cercueil
2020-02-28 14:40     ` H. Nikolaus Schaller
2020-02-16 20:20 ` [PATCH v3 4/6] MIPS: DTS: CI20: fix interrupt for pcf8563 RTC H. Nikolaus Schaller

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).