diff mbox series

[5/5] arm64: dts: imx93: add pca9452 support

Message ID 20241205-pca9450-v1-5-aab448b74e78@nxp.com (mailing list archive)
State New
Headers show
Series regulator: pca9450: collect some improvement patches | expand

Commit Message

Frank Li Dec. 5, 2024, 4:51 p.m. UTC
From: Joy Zou <joy.zou@nxp.com>

Support pca9452 on imx93-14x14-evk.

Signed-off-by: Joy Zou <joy.zou@nxp.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
 arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts | 83 +++++++++++++++++++++++
 1 file changed, 83 insertions(+)

Comments

Mark Brown Dec. 5, 2024, 4:58 p.m. UTC | #1
On Thu, Dec 05, 2024 at 11:51:13AM -0500, Frank Li wrote:

> +				regulator-name = "BUCK1";
> +				regulator-min-microvolt = <610000>;
> +				regulator-max-microvolt = <950000>;

> +				regulator-name = "BUCK4";
> +				regulator-min-microvolt = <1620000>;
> +				regulator-max-microvolt = <3400000>;

The regulators all have really wide ranges, especially with no obvious
consumers specified.  Are these actually valid for the board?
Joy Zou Dec. 6, 2024, 7:32 a.m. UTC | #2
> -----Original Message-----
> From: Mark Brown <broonie@kernel.org>
> Sent: 2024年12月6日 0:59
> To: Frank Li <frank.li@nxp.com>
> Cc: Liam Girdwood <lgirdwood@gmail.com>; Rob Herring <robh@kernel.org>;
> Krzysztof Kozlowski <krzk+dt@kernel.org>; Conor Dooley
> <conor+dt@kernel.org>; Robin Gong <yibin.gong@nxp.com>; Shawn Guo
> <shawnguo@kernel.org>; Sascha Hauer <s.hauer@pengutronix.de>;
> Pengutronix Kernel Team <kernel@pengutronix.de>; Fabio Estevam
> <festevam@gmail.com>; linux-kernel@vger.kernel.org;
> devicetree@vger.kernel.org; imx@lists.linux.dev; Joy Zou <joy.zou@nxp.com>;
> linux-arm-kernel@lists.infradead.org
> Subject: [EXT] Re: [PATCH 5/5] arm64: dts: imx93: add pca9452 support
> 
> On Thu, Dec 05, 2024 at 11:51:13AM -0500, Frank Li wrote:
> 
> > +				regulator-name = "BUCK1";
> > +				regulator-min-microvolt = <610000>;
> > +				regulator-max-microvolt = <950000>;
> 
> > +				regulator-name = "BUCK4";
> > +				regulator-min-microvolt = <1620000>;
> > +				regulator-max-microvolt = <3400000>;
> 
> The regulators all have really wide ranges, especially with no obvious
> consumers specified.  Are these actually valid for the board?
Please ignore the last mail because of including html.
Thanks for your comments!
Yes, the regulators all have really wide ranges from the pca9452 datasheet as follow:
BUCK1, BUCK2, BUCK3 : 0.6V to 2.1875V, 12.5mV step, 3000mA
BUCK4 : 0.6V to 3.4V, 25mV step, 3000mA
Refer to PMIC pca9452 datasheet 7.1 Features:
https://www.mouser.com/catalog/specsheets/Nxp_03-02-2024_PCA9452.pdf?srsltid=AfmBOooTrgZ1FrPfHYfztxGm5r7YYsBEFRLkx59dIZKMRlk2rsR6nBV6
The BUCK1 is used for VDD_SOC and the BUCK4 is used for NVCC_GPIO/VDD_USB_3P3 on imx93 14x14 board.
Refer to IMX93AEC datasheet 4.1.4 Operating ranges:
https://www.nxp.com/docs/en/data-sheet/IMX93AEC.pdf
BR
Joy Zou
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts b/arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts
index 236a44c1782ae..348abb9ceae19 100644
--- a/arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts
@@ -219,6 +219,89 @@  pcal6524: gpio@22 {
 		interrupt-parent = <&gpio3>;
 		interrupts = <27 IRQ_TYPE_LEVEL_LOW>;
 	};
+
+	pmic@25 {
+		compatible = "nxp,pca9452";
+		reg = <0x25>;
+		interrupt-parent = <&pcal6524>;
+		interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
+
+		regulators {
+			buck1: BUCK1 {
+				regulator-name = "BUCK1";
+				regulator-min-microvolt = <610000>;
+				regulator-max-microvolt = <950000>;
+				regulator-boot-on;
+				regulator-always-on;
+				regulator-ramp-delay = <3125>;
+			};
+
+			buck2: BUCK2 {
+				regulator-name = "BUCK2";
+				regulator-min-microvolt = <600000>;
+				regulator-max-microvolt = <670000>;
+				regulator-boot-on;
+				regulator-always-on;
+				regulator-ramp-delay = <3125>;
+			};
+
+			buck4: BUCK4{
+				regulator-name = "BUCK4";
+				regulator-min-microvolt = <1620000>;
+				regulator-max-microvolt = <3400000>;
+				regulator-boot-on;
+				regulator-always-on;
+			};
+
+			buck5: BUCK5{
+				regulator-name = "BUCK5";
+				regulator-min-microvolt = <1620000>;
+				regulator-max-microvolt = <3400000>;
+				regulator-boot-on;
+				regulator-always-on;
+			};
+
+			buck6: BUCK6 {
+				regulator-name = "BUCK6";
+				regulator-min-microvolt = <1060000>;
+				regulator-max-microvolt = <1140000>;
+				regulator-boot-on;
+				regulator-always-on;
+			};
+
+			ldo1: LDO1 {
+				regulator-name = "LDO1";
+				regulator-min-microvolt = <1620000>;
+				regulator-max-microvolt = <1980000>;
+				regulator-boot-on;
+				regulator-always-on;
+			};
+
+			ldo3: LDO3 {
+				regulator-name = "LDO3";
+				regulator-min-microvolt = <1710000>;
+				regulator-max-microvolt = <1890000>;
+				regulator-boot-on;
+				regulator-always-on;
+			};
+
+			ldo4: LDO4 {
+				regulator-name = "LDO4";
+				regulator-min-microvolt = <800000>;
+				regulator-max-microvolt = <840000>;
+				regulator-boot-on;
+				regulator-always-on;
+			};
+
+			ldo5: LDO5 {
+				regulator-name = "LDO5";
+				regulator-min-microvolt = <1800000>;
+				regulator-max-microvolt = <3300000>;
+				regulator-boot-on;
+				regulator-always-on;
+			};
+		};
+	};
 };
 
 &lpi2c3 {