[PATCH v1] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC

Mighty posted 1 patch 1 year, 8 months ago
There is a newer version of this series
arch/arm/boot/dts/ti/omap/twl6032.dtsi | 94 ++++++++++++++++++++++++++
1 file changed, 94 insertions(+)
create mode 100644 arch/arm/boot/dts/ti/omap/twl6032.dtsi
[PATCH v1] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC
Posted by Mighty 1 year, 8 months ago
From: Mithil Bavishi <bavishimithil@gmail.com>

Add a dedicated DTS file for the TWL6032 PMIC (Phoenix Lite). Already
has driver support with TWL6030 (Phoenix) since both of them are so
similar, some nodes can be reused from TWL6030 as well.

This can be included in the board files like twl6030.
Example:
...
&i2c1 {
    twl: twl@48 {
        reg = <0x48>;
        interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
        interrupt-controller;
        interrupt-parent = <&gic>;
    };
};

/include/ "twl6032.dtsi"
...

Used in devices like samsung-espresso, amazon-jem, epson-embt2ws etc.

Regulator values are found from downstream kernel for espresso.

Signed-off-by: Mithil Bavishi <bavishimithil@gmail.com>
---
 arch/arm/boot/dts/ti/omap/twl6032.dtsi | 94 ++++++++++++++++++++++++++
 1 file changed, 94 insertions(+)
 create mode 100644 arch/arm/boot/dts/ti/omap/twl6032.dtsi

diff --git a/arch/arm/boot/dts/ti/omap/twl6032.dtsi b/arch/arm/boot/dts/ti/omap/twl6032.dtsi
new file mode 100644
index 000000000..a48723a24
--- /dev/null
+++ b/arch/arm/boot/dts/ti/omap/twl6032.dtsi
@@ -0,0 +1,95 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/*
+ * Integrated Power Management Chip
+ * https://www.ti.com/lit/ds/symlink/twl6032.pdf
+ */
+
+&twl {
+	compatible = "ti,twl6032";
+	interrupt-controller;
+	#interrupt-cells = <1>;
+
+	rtc {
+		compatible = "ti,twl4030-rtc";
+		interrupts = <11>;
+	};
+
+	vana: regulator-vana {
+		compatible = "ti,twl6030-vana";
+		regulator-min-microvolt = <2100000>;
+		regulator-max-microvolt = <2100000>;
+		regulator-always-on;
+		regulator-state-mem {
+			regulator-off-in-suspend;
+		};
+	};
+
+	ldo1: regulator-ldo1 {
+		compatible = "ti,twl6032-ldo1";
+		regulator-min-microvolt = <2800000>;
+		regulator-max-microvolt = <2800000>;
+		regulator-always-on;
+		regulator-state-mem {
+			regulator-off-in-suspend;
+		};
+	};
+
+	ldo3: regulator-ldo3 {
+		compatible = "ti,twl6032-ldo3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		regulator-always-on;
+		regulator-state-mem {
+			regulator-off-in-suspend;
+		};
+	};
+
+	ldo4: regulator-ldo4 {
+		compatible = "ti,twl6032-ldo4";
+		regulator-min-microvolt = <2800000>;
+		regulator-max-microvolt = <2800000>;
+		regulator-always-on;
+	};
+
+	ldo5: regulator-ldo5 {
+		compatible = "ti,twl6032-ldo5";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+		regulator-always-on;
+	};
+
+	ldo6: regulator-ldo6 {
+		compatible = "ti,twl6032-ldo6";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+		regulator-always-on;
+		regulator-state-mem {
+			regulator-off-in-suspend;
+		};
+	};
+
+	smps4: regulator-smps4 {
+		compatible = "ti,twl6032-smps4";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+		regulator-always-on;
+	};
+
+	ldousb: regulator-ldousb {
+		compatible = "ti,twl6032-ldousb";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		regulator-always-on;
+	};
+
+	gpadc: gpadc {
+		compatible = "ti,twl6032-gpadc";
+		interrupts = <3>;
+		#io-channel-cells = <1>;
+	};
+
+	twl_usb_comparator: usb-comparator {
+		compatible = "ti,twl6030-usb";
+		interrupts = <4>, <10>;
+	};
+};
-- 
2.34.1
Re: [PATCH v1] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC
Posted by Andreas Kemnade 1 year, 8 months ago
Hi,

On Tue, 11 Jun 2024 18:51:34 +0530
Mighty <bavishimithil@gmail.com> wrote:

> From: Mithil Bavishi <bavishimithil@gmail.com>
> 
> Add a dedicated DTS file for the TWL6032 PMIC (Phoenix Lite). Already
> has driver support with TWL6030 (Phoenix) since both of them are so
> similar, some nodes can be reused from TWL6030 as well.
> 
> This can be included in the board files like twl6030.
> Example:
> ...
> &i2c1 {
>     twl: twl@48 {
>         reg = <0x48>;
>         interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
>         interrupt-controller;
>         interrupt-parent = <&gic>;
>     };
> };
> 
> /include/ "twl6032.dtsi"
> ...
> 
> Used in devices like samsung-espresso, amazon-jem, epson-embt2ws etc.
> 
> Regulator values are found from downstream kernel for espresso.
> 
hmm, that might be board specific stuff, maybe keep them as they are in the
twl6030.dtsi and override them in board specific dts files if needed.
And is there any reason why you left out the pwm stuff?
I think the twl6030.dtsi and twl6032.dtsi should be as similar as possible.

Regards,
Andreas
Re: [PATCH v1] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC
Posted by Mithil 1 year, 8 months ago
On Tue, Jun 11, 2024 at 8:19 PM Andreas Kemnade <andreas@kemnade.info> wrote:
> hmm, that might be board specific stuff, maybe keep them as they are in the
> twl6030.dtsi and override them in board specific dts files if needed.
We could do that, since we have no datasheet publicly available for
6032, I thought it would be better to stick to values which are known
to be working hence using downstream values. Anything mentioned in the
BT200 kernel, we could update it with those values.

> And is there any reason why you left out the pwm stuff?
Didn't need it for espresso, but will add in v2.

> I think the twl6030.dtsi and twl6032.dtsi should be as similar as possible.
Agreed. But same min/max values as well?

-- 
Best Regards,
Mithil
Re: [PATCH v1] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC
Posted by Mithil 1 year, 8 months ago
On Tue, Jun 11, 2024 at 8:19 PM Andreas Kemnade <andreas@kemnade.info> wrote:
> I think the twl6030.dtsi and twl6032.dtsi should be as similar as possible.

Hey the values seem to be different for twl6030.dtsi,
omap4-epson-embt2ws.dts, and omap4-samsung-espresso-common.dtsi.
Should we just define the nodes in twl6032.dtsi and let them put
min/max volts and other properties in the board files?

-- 
Best Regards,
Mithil
Re: [PATCH v1] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC
Posted by Andreas Kemnade 1 year, 7 months ago
Hi Mithil,

Am Thu, 13 Jun 2024 14:15:19 +0530
schrieb Mithil <bavishimithil@gmail.com>:

> On Tue, Jun 11, 2024 at 8:19 PM Andreas Kemnade
> <andreas@kemnade.info> wrote:
> > I think the twl6030.dtsi and twl6032.dtsi should be as similar as
> > possible.  
> 
> Hey the values seem to be different for twl6030.dtsi,
> omap4-epson-embt2ws.dts, and omap4-samsung-espresso-common.dtsi.
> Should we just define the nodes in twl6032.dtsi and let them put
> min/max volts and other properties in the board files?
> 
IMHO either the full range there and override board specific stuff in
the *.dts files or no voltages.

Regards,
Andreas
Re: [PATCH v1] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC
Posted by Mithil 1 year, 8 months ago
https://github.com/MightyM17/android_kernel_ti_omap4/blob/3.4/common/arch/arm/mach-omap2/board-espresso-pmic.c#L446-L455
Should we map it accordingly? Like vaux1: regulator-vaux1 and
compatible has ldo1, or should we call the node ldo1 as well?
-- 
Best Regards,
Mithil
Re: [PATCH v1] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC
Posted by Mithil 1 year, 7 months ago
Hello, how should we go ahead with this?
-- 
Best Regards,
Mithil
Re: [PATCH v1] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC
Posted by Krzysztof Kozlowski 1 year, 7 months ago
On 20/06/2024 15:05, Mithil wrote:
> Hello, how should we go ahead with this?

It's impossible to figure out what you refer to. Please fix your email
client so you preserve relevant context and readers can understand to
whom and about what you are replying.

Best regards,
Krzysztof