Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: dts: owl-s500-roseapplepi: Add ATC2603C PMIC

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@gmail.com>
Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Reviewed-by: Manivannan Sadhasivam <mani@kernel.org>
Link: https://lore.kernel.org/r/2e0a2931ae3757f016948e7c78e8e54afa325ae0.1615538629.git.cristian.ciocaltea@gmail.com
Link: https://lore.kernel.org/r/20210408062232.3575-1-mani@kernel.org'
Signed-off-by: Arnd Bergmann <arnd@arndb.de>

authored by

Cristian Ciocaltea and committed by
Arnd Bergmann
d8fcfbf3 e3e12762

+126 -6
+126 -6
arch/arm/boot/dts/owl-s500-roseapplepi.dts
··· 2 2 /* 3 3 * Roseapple Pi 4 4 * 5 - * Copyright (C) 2020 Cristian Ciocaltea <cristian.ciocaltea@gmail.com> 5 + * Copyright (C) 2020-2021 Cristian Ciocaltea <cristian.ciocaltea@gmail.com> 6 6 */ 7 7 8 8 /dts-v1/; ··· 27 27 reg = <0x0 0x80000000>; /* 2GB */ 28 28 }; 29 29 30 - /* Fixed regulator used in the absence of PMIC */ 31 - sd_vcc: sd-vcc { 30 + syspwr: regulator-5v0 { 32 31 compatible = "regulator-fixed"; 33 - regulator-name = "fixed-3.1V"; 34 - regulator-min-microvolt = <3100000>; 35 - regulator-max-microvolt = <3100000>; 32 + regulator-name = "SYSPWR"; 33 + regulator-min-microvolt = <5000000>; 34 + regulator-max-microvolt = <5000000>; 36 35 regulator-always-on; 37 36 }; 37 + }; 38 + 39 + &cpu0 { 40 + cpu0-supply = <&vdd_cpu>; 38 41 }; 39 42 40 43 &i2c0 { 41 44 status = "okay"; 42 45 pinctrl-names = "default"; 43 46 pinctrl-0 = <&i2c0_pins>; 47 + 48 + atc260x: pmic@65 { 49 + compatible = "actions,atc2603c"; 50 + reg = <0x65>; 51 + interrupt-parent = <&sirq>; 52 + interrupts = <2 IRQ_TYPE_LEVEL_HIGH>; 53 + 54 + reset-time-sec = <6>; 55 + 56 + regulators { 57 + compatible = "actions,atc2603c-regulator"; 58 + 59 + dcdc1-supply = <&syspwr>; 60 + dcdc2-supply = <&syspwr>; 61 + dcdc3-supply = <&syspwr>; 62 + ldo1-supply = <&syspwr>; 63 + ldo2-supply = <&syspwr>; 64 + ldo3-supply = <&syspwr>; 65 + ldo5-supply = <&syspwr>; 66 + ldo6-supply = <&syspwr>; 67 + ldo7-supply = <&syspwr>; 68 + ldo8-supply = <&syspwr>; 69 + ldo11-supply = <&syspwr>; 70 + ldo12-supply = <&syspwr>; 71 + switchldo1-supply = <&vcc>; 72 + 73 + vdd_cpu: dcdc1 { 74 + regulator-name = "VDD_CPU"; 75 + regulator-min-microvolt = <700000>; 76 + regulator-max-microvolt = <1400000>; 77 + regulator-always-on; 78 + }; 79 + 80 + vddq: dcdc2 { 81 + regulator-name = "VDDQ"; 82 + regulator-min-microvolt = <1300000>; 83 + regulator-max-microvolt = <2150000>; 84 + regulator-always-on; 85 + regulator-boot-on; 86 + }; 87 + 88 + vcc: dcdc3 { 89 + regulator-name = "VCC"; 90 + regulator-min-microvolt = <2600000>; 91 + regulator-max-microvolt = <3300000>; 92 + regulator-always-on; 93 + }; 94 + 95 + vcc_3v3: ldo1 { 96 + regulator-name = "VCC_3V3"; 97 + regulator-min-microvolt = <2600000>; 98 + regulator-max-microvolt = <3300000>; 99 + regulator-always-on; 100 + }; 101 + 102 + avcc: ldo2 { 103 + regulator-name = "AVCC"; 104 + regulator-min-microvolt = <2600000>; 105 + regulator-max-microvolt = <3300000>; 106 + regulator-always-on; 107 + }; 108 + 109 + vdd_1v8: ldo3 { 110 + regulator-name = "VDD_1V8"; 111 + regulator-min-microvolt = <1500000>; 112 + regulator-max-microvolt = <2000000>; 113 + regulator-always-on; 114 + }; 115 + 116 + vcc_3v1: ldo5 { 117 + regulator-name = "VCC_3V1"; 118 + regulator-min-microvolt = <2600000>; 119 + regulator-max-microvolt = <3300000>; 120 + }; 121 + 122 + avdd: ldo6 { 123 + regulator-name = "AVDD"; 124 + regulator-min-microvolt = <700000>; 125 + regulator-max-microvolt = <1400000>; 126 + regulator-always-on; 127 + }; 128 + 129 + sens_1v8: ldo7 { 130 + regulator-name = "SENS_1V8"; 131 + regulator-min-microvolt = <1800000>; 132 + regulator-max-microvolt = <1800000>; 133 + }; 134 + 135 + ldo8: ldo8 { 136 + regulator-name = "LDO8"; 137 + regulator-min-microvolt = <2300000>; 138 + regulator-max-microvolt = <3300000>; 139 + }; 140 + 141 + svcc: ldo11 { 142 + regulator-name = "SVCC"; 143 + regulator-min-microvolt = <2600000>; 144 + regulator-max-microvolt = <3300000>; 145 + regulator-always-on; 146 + }; 147 + 148 + rtc_vdd: ldo12 { 149 + regulator-name = "RTC_VDD"; 150 + regulator-min-microvolt = <1800000>; 151 + regulator-max-microvolt = <1800000>; 152 + regulator-always-on; 153 + }; 154 + 155 + sd_vcc: switchldo1 { 156 + regulator-name = "SD_VCC"; 157 + regulator-min-microvolt = <3000000>; 158 + regulator-max-microvolt = <3300000>; 159 + regulator-always-on; 160 + regulator-boot-on; 161 + }; 162 + }; 163 + }; 44 164 }; 45 165 46 166 &i2c1 {