On Fri, Mar 12, 2021 at 11:49:27AM +0200, Cristian Ciocaltea wrote: > Add device tree node for ATC2603C PMIC and remove the 'fixed-3.1V' > dummy regulator used for the uSD supply. > > Additionally, add 'SYSPWR' fixed regulator and provide cpu0 supply. > > Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@xxxxxxxxx> Reviewed-by: Manivannan Sadhasivam <mani@xxxxxxxxxx> Thanks, Mani > --- > Please note the patch depends on the ATC260x PMIC support which is queued > for merging in v5.13: > > https://lore.kernel.org/lkml/cover.1611653995.git.cristian.ciocaltea@xxxxxxxxx/ > https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git/log/?h=for-mfd-next&qt=range&q=a38fd8748464831584a19438cbb3082b5a2dab15..eac013a0b7041f5cfc8feedf429a767675350102 > > arch/arm/boot/dts/owl-s500-roseapplepi.dts | 132 ++++++++++++++++++++- > 1 file changed, 126 insertions(+), 6 deletions(-) > > diff --git a/arch/arm/boot/dts/owl-s500-roseapplepi.dts b/arch/arm/boot/dts/owl-s500-roseapplepi.dts > index ff91561ca99c..b8c5db2344aa 100644 > --- a/arch/arm/boot/dts/owl-s500-roseapplepi.dts > +++ b/arch/arm/boot/dts/owl-s500-roseapplepi.dts > @@ -2,7 +2,7 @@ > /* > * Roseapple Pi > * > - * Copyright (C) 2020 Cristian Ciocaltea <cristian.ciocaltea@xxxxxxxxx> > + * Copyright (C) 2020-2021 Cristian Ciocaltea <cristian.ciocaltea@xxxxxxxxx> > */ > > /dts-v1/; > @@ -27,20 +27,140 @@ memory@0 { > reg = <0x0 0x80000000>; /* 2GB */ > }; > > - /* Fixed regulator used in the absence of PMIC */ > - sd_vcc: sd-vcc { > + syspwr: regulator-5v0 { > compatible = "regulator-fixed"; > - regulator-name = "fixed-3.1V"; > - regulator-min-microvolt = <3100000>; > - regulator-max-microvolt = <3100000>; > + regulator-name = "SYSPWR"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > regulator-always-on; > }; > }; > > +&cpu0 { > + cpu0-supply = <&vdd_cpu>; > +}; > + > &i2c0 { > status = "okay"; > pinctrl-names = "default"; > pinctrl-0 = <&i2c0_pins>; > + > + atc260x: pmic@65 { > + compatible = "actions,atc2603c"; > + reg = <0x65>; > + interrupt-parent = <&sirq>; > + interrupts = <2 IRQ_TYPE_LEVEL_HIGH>; > + > + reset-time-sec = <6>; > + > + regulators { > + compatible = "actions,atc2603c-regulator"; > + > + dcdc1-supply = <&syspwr>; > + dcdc2-supply = <&syspwr>; > + dcdc3-supply = <&syspwr>; > + ldo1-supply = <&syspwr>; > + ldo2-supply = <&syspwr>; > + ldo3-supply = <&syspwr>; > + ldo5-supply = <&syspwr>; > + ldo6-supply = <&syspwr>; > + ldo7-supply = <&syspwr>; > + ldo8-supply = <&syspwr>; > + ldo11-supply = <&syspwr>; > + ldo12-supply = <&syspwr>; > + switchldo1-supply = <&vcc>; > + > + vdd_cpu: dcdc1 { > + regulator-name = "VDD_CPU"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1400000>; > + regulator-always-on; > + }; > + > + vddq: dcdc2 { > + regulator-name = "VDDQ"; > + regulator-min-microvolt = <1300000>; > + regulator-max-microvolt = <2150000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + vcc: dcdc3 { > + regulator-name = "VCC"; > + regulator-min-microvolt = <2600000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + }; > + > + vcc_3v3: ldo1 { > + regulator-name = "VCC_3V3"; > + regulator-min-microvolt = <2600000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + }; > + > + avcc: ldo2 { > + regulator-name = "AVCC"; > + regulator-min-microvolt = <2600000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + }; > + > + vdd_1v8: ldo3 { > + regulator-name = "VDD_1V8"; > + regulator-min-microvolt = <1500000>; > + regulator-max-microvolt = <2000000>; > + regulator-always-on; > + }; > + > + vcc_3v1: ldo5 { > + regulator-name = "VCC_3V1"; > + regulator-min-microvolt = <2600000>; > + regulator-max-microvolt = <3300000>; > + }; > + > + avdd: ldo6 { > + regulator-name = "AVDD"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1400000>; > + regulator-always-on; > + }; > + > + sens_1v8: ldo7 { > + regulator-name = "SENS_1V8"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + }; > + > + ldo8: ldo8 { > + regulator-name = "LDO8"; > + regulator-min-microvolt = <2300000>; > + regulator-max-microvolt = <3300000>; > + }; > + > + svcc: ldo11 { > + regulator-name = "SVCC"; > + regulator-min-microvolt = <2600000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + }; > + > + rtc_vdd: ldo12 { > + regulator-name = "RTC_VDD"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + regulator-always-on; > + }; > + > + sd_vcc: switchldo1 { > + regulator-name = "SD_VCC"; > + regulator-min-microvolt = <3000000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + }; > + }; > }; > > &i2c1 { > -- > 2.30.2 >