Message ID | 20220621034224.38995-5-samuel@sholland.org |
---|---|
State | New |
Headers | show |
Series | AXP221/AXP223/AXP809 GPIO support | expand |
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 --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"; + }; + }; };
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(+)