diff mbox series

[v2,4/4] ARM: dts: axp22x/axp809: Add GPIO controller nodes

Message ID 20220621034224.38995-5-samuel@sholland.org
State New
Headers show
Series AXP221/AXP223/AXP809 GPIO support | expand

Commit Message

Samuel Holland June 21, 2022, 3:42 a.m. UTC
These PMICs all contain a GPIO controller. Now that the binding is
documented, wire up the controller in the device tree.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

(no changes since v1)

 arch/arm/boot/dts/axp22x.dtsi | 18 ++++++++++++++++++
 arch/arm/boot/dts/axp809.dtsi | 19 +++++++++++++++++++
 2 files changed, 37 insertions(+)

Comments

Samuel Holland Sept. 16, 2022, 4:16 a.m. UTC | #1
On 6/26/22 08:03, Chen-Yu Tsai wrote:
> On Tue, Jun 21, 2022 at 11:42 AM Samuel Holland <samuel@sholland.org> wrote:
>>
>> These PMICs all contain a GPIO controller. Now that the binding is
>> documented, wire up the controller in the device tree.
>>
>> Signed-off-by: Samuel Holland <samuel@sholland.org>
>> ---
>>
>> (no changes since v1)
>>
>>  arch/arm/boot/dts/axp22x.dtsi | 18 ++++++++++++++++++
>>  arch/arm/boot/dts/axp809.dtsi | 19 +++++++++++++++++++
>>  2 files changed, 37 insertions(+)
>>
>> diff --git a/arch/arm/boot/dts/axp22x.dtsi b/arch/arm/boot/dts/axp22x.dtsi
>> index a020c12b2884..5c233c84be92 100644
>> --- a/arch/arm/boot/dts/axp22x.dtsi
>> +++ b/arch/arm/boot/dts/axp22x.dtsi
>> @@ -67,6 +67,24 @@ battery_power_supply: battery-power {
>>                 status = "disabled";
>>         };
>>
>> +       axp_gpio: gpio {
>> +               compatible = "x-powers,axp221-gpio";
>> +               gpio-controller;
>> +               #gpio-cells = <2>;
>> +
>> +               /omit-if-no-ref/
>> +               gpio0_ldo: gpio0-ldo-pin {
>> +                       pins = "GPIO0";
>> +                       function = "ldo";
>> +               };
>> +
>> +               /omit-if-no-ref/
>> +               gpio1_ldo: gpio1-ldo-pin {
>> +                       pins = "GPIO1";
>> +                       function = "ldo";
>> +               };
>> +       };
>> +
> 
> We have
> 
>     reg_ldo_io0: ldo-io0 {
>             pinctrl-names = "default";
>             pinctrl-0 = <&gpio0_ldo>;
>             /* Disable by default to avoid conflicts with GPIO */
>             ...
>     }
> 
> in axp81x.dtsi . Should we add it here and for axp803.dtsi as well?

Actually, I don't think these pinctrl nodes should exist at all. The
regulator already sets the pinmux, because that is the only way to turn
the regulator on/off. So I think we should leave it alone here.

Regards,
Samuel

> Otherwise,
> 
> Reviewed-by: Chen-Yu Tsai <wens@csie.org>
diff mbox series

Patch

diff --git a/arch/arm/boot/dts/axp22x.dtsi b/arch/arm/boot/dts/axp22x.dtsi
index a020c12b2884..5c233c84be92 100644
--- a/arch/arm/boot/dts/axp22x.dtsi
+++ b/arch/arm/boot/dts/axp22x.dtsi
@@ -67,6 +67,24 @@  battery_power_supply: battery-power {
 		status = "disabled";
 	};
 
+	axp_gpio: gpio {
+		compatible = "x-powers,axp221-gpio";
+		gpio-controller;
+		#gpio-cells = <2>;
+
+		/omit-if-no-ref/
+		gpio0_ldo: gpio0-ldo-pin {
+			pins = "GPIO0";
+			function = "ldo";
+		};
+
+		/omit-if-no-ref/
+		gpio1_ldo: gpio1-ldo-pin {
+			pins = "GPIO1";
+			function = "ldo";
+		};
+	};
+
 	regulators {
 		/* Default work frequency for buck regulators */
 		x-powers,dcdc-freq = <3000>;
diff --git a/arch/arm/boot/dts/axp809.dtsi b/arch/arm/boot/dts/axp809.dtsi
index ab8e5f2d9246..da92b105f3b0 100644
--- a/arch/arm/boot/dts/axp809.dtsi
+++ b/arch/arm/boot/dts/axp809.dtsi
@@ -50,4 +50,23 @@  &axp809 {
 	compatible = "x-powers,axp809";
 	interrupt-controller;
 	#interrupt-cells = <1>;
+
+	axp_gpio: gpio {
+		compatible = "x-powers,axp809-gpio",
+			     "x-powers,axp221-gpio";
+		gpio-controller;
+		#gpio-cells = <2>;
+
+		/omit-if-no-ref/
+		gpio0_ldo: gpio0-ldo-pin {
+			pins = "GPIO0";
+			function = "ldo";
+		};
+
+		/omit-if-no-ref/
+		gpio1_ldo: gpio1-ldo-pin {
+			pins = "GPIO1";
+			function = "ldo";
+		};
+	};
 };