1menu "Power" 2 3source "drivers/power/domain/Kconfig" 4 5source "drivers/power/fuel_gauge/Kconfig" 6 7source "drivers/power/pmic/Kconfig" 8 9source "drivers/power/regulator/Kconfig" 10 11source "drivers/power/dvfs/Kconfig" 12 13config DM_CHARGE_DISPLAY 14 bool "Enable driver model for charge display support" 15 depends on DM 16 help 17 This adds a simple uclass for charge display. 18 19choice 20 prompt "Select Sunxi PMIC Variant" 21 depends on ARCH_SUNXI 22 default AXP209_POWER if MACH_SUN4I || MACH_SUN5I || MACH_SUN7I 23 default AXP221_POWER if MACH_SUN6I || MACH_SUN8I_A23 || MACH_SUN8I_A33 || MACH_SUN8I_R40 24 default AXP818_POWER if MACH_SUN8I_A83T 25 default SUNXI_NO_PMIC if MACH_SUNXI_H3_H5 || MACH_SUN50I 26 27config SUNXI_NO_PMIC 28 bool "board without a pmic" 29 ---help--- 30 Select this for boards which do not use a PMIC. 31 32config AXP152_POWER 33 bool "axp152 pmic support" 34 depends on MACH_SUN5I 35 select CMD_POWEROFF 36 ---help--- 37 Select this to enable support for the axp152 pmic found on most 38 A10s boards. 39 40config AXP209_POWER 41 bool "axp209 pmic support" 42 depends on MACH_SUN4I || MACH_SUN5I || MACH_SUN7I 43 select CMD_POWEROFF 44 ---help--- 45 Select this to enable support for the axp209 pmic found on most 46 A10, A13 and A20 boards. 47 48config AXP221_POWER 49 bool "axp221 / axp223 pmic support" 50 depends on MACH_SUN6I || MACH_SUN8I_A23 || MACH_SUN8I_A33 || MACH_SUN8I_R40 51 select CMD_POWEROFF 52 ---help--- 53 Select this to enable support for the axp221/axp223 pmic found on most 54 A23 and A31 boards. 55 56config AXP809_POWER 57 bool "axp809 pmic support" 58 depends on MACH_SUN9I 59 select CMD_POWEROFF 60 ---help--- 61 Say y here to enable support for the axp809 pmic found on A80 boards. 62 63config AXP818_POWER 64 bool "axp818 pmic support" 65 depends on MACH_SUN8I_A83T 66 select CMD_POWEROFF 67 ---help--- 68 Say y here to enable support for the axp818 pmic found on 69 A83T dev board. 70 71config SY8106A_POWER 72 bool "SY8106A pmic support" 73 depends on MACH_SUNXI_H3_H5 74 ---help--- 75 Select this to enable support for the SY8106A pmic found on some 76 H3 boards. 77 78endchoice 79 80config CHARGE_ANIMATION 81 bool "Enable charge animation" 82 depends on DM_CHARGE_DISPLAY && DM_FUEL_GAUGE 83 help 84 This adds a simple function for charge animation display. 85 86config ROCKCHIP_PM 87 bool "Enable Rockchip power manager for charge animation" 88 depends on CHARGE_ANIMATION 89 default y 90 help 91 This adds power manage control of devices for low power 92 during system suspend in charge animation. 93 94config AXP_DCDC1_VOLT 95 int "axp pmic dcdc1 voltage" 96 depends on AXP221_POWER || AXP809_POWER || AXP818_POWER 97 default 3300 if AXP818_POWER || MACH_SUN8I_R40 98 default 3000 if MACH_SUN6I || MACH_SUN8I || MACH_SUN9I 99 ---help--- 100 Set the voltage (mV) to program the axp pmic dcdc1 at, set to 0 to 101 disable dcdc1. On A23 / A31 / A33 (axp221) boards dcdc1 is used for 102 generic 3.3V IO voltage for external devices like the lcd-panal and 103 sdcard interfaces, etc. On most boards dcdc1 is undervolted to 3.0V to 104 save battery. On A31 devices dcdc1 is also used for VCC-IO. On A83T 105 dcdc1 is used for VCC-IO, nand, usb0, sd , etc. On A80 dcdc1 normally 106 powers some of the pingroups, NAND/eMMC, SD/MMC, and USB OTG. 107 108config AXP_DCDC2_VOLT 109 int "axp pmic dcdc2 voltage" 110 depends on AXP152_POWER || AXP209_POWER || AXP221_POWER || AXP809_POWER || AXP818_POWER 111 default 900 if AXP818_POWER 112 default 1400 if AXP152_POWER || AXP209_POWER 113 default 1200 if MACH_SUN6I 114 default 1100 if MACH_SUN8I 115 default 0 if MACH_SUN9I 116 ---help--- 117 Set the voltage (mV) to program the axp pmic dcdc2 at, set to 0 to 118 disable dcdc2. 119 On A10(s) / A13 / A20 boards dcdc2 is VDD-CPU and should be 1.4V. 120 On A31 boards dcdc2 is used for VDD-GPU and should be 1.2V. 121 On A23/A33 boards dcdc2 is used for VDD-SYS and should be 1.1V. 122 On A80 boards dcdc2 powers the GPU and can be left off. 123 On A83T boards dcdc2 is used for VDD-CPUA(cluster 0) and should be 0.9V. 124 On R40 boards dcdc2 is VDD-CPU and should be 1.1V 125 126config AXP_DCDC3_VOLT 127 int "axp pmic dcdc3 voltage" 128 depends on AXP152_POWER || AXP209_POWER || AXP221_POWER || AXP809_POWER || AXP818_POWER 129 default 900 if AXP809_POWER || AXP818_POWER 130 default 1500 if AXP152_POWER 131 default 1250 if AXP209_POWER 132 default 1100 if MACH_SUN8I_R40 133 default 1200 if MACH_SUN6I || MACH_SUN8I 134 ---help--- 135 Set the voltage (mV) to program the axp pmic dcdc3 at, set to 0 to 136 disable dcdc3. 137 On A10(s) / A13 / A20 boards with an axp209 dcdc3 is VDD-INT-DLL and 138 should be 1.25V. 139 On A10s boards with an axp152 dcdc3 is VCC-DRAM and should be 1.5V. 140 On A23 / A31 / A33 boards dcdc3 is VDD-CPU and should be 1.2V. 141 On A80 boards dcdc3 is used for VDD-CPUA(cluster 0) and should be 0.9V. 142 On A83T boards dcdc3 is used for VDD-CPUB(cluster 1) and should be 0.9V. 143 On R40 boards dcdc3 is VDD-SYS and VDD-GPU and should be 1.1V. 144 145config AXP_DCDC4_VOLT 146 int "axp pmic dcdc4 voltage" 147 depends on AXP152_POWER || AXP221_POWER || AXP809_POWER || AXP818_POWER 148 default 1250 if AXP152_POWER 149 default 1200 if MACH_SUN6I 150 default 0 if MACH_SUN8I 151 default 900 if MACH_SUN9I 152 ---help--- 153 Set the voltage (mV) to program the axp pmic dcdc4 at, set to 0 to 154 disable dcdc4. 155 On A10s boards with an axp152 dcdc4 is VDD-INT-DLL and should be 1.25V. 156 On A31 boards dcdc4 is used for VDD-SYS and should be 1.2V. 157 On A23 / A33 boards dcdc4 is unused and should be disabled. 158 On A80 boards dcdc4 powers VDD-SYS, HDMI, USB OTG and should be 0.9V. 159 On A83T boards dcdc4 is used for VDD-GPU. 160 161config AXP_DCDC5_VOLT 162 int "axp pmic dcdc5 voltage" 163 depends on AXP221_POWER || AXP809_POWER || AXP818_POWER 164 default 1500 if MACH_SUN6I || MACH_SUN8I || MACH_SUN9I 165 ---help--- 166 Set the voltage (mV) to program the axp pmic dcdc5 at, set to 0 to 167 disable dcdc5. 168 On A23 / A31 / A33 / A80 / A83T / R40 boards dcdc5 is VCC-DRAM and 169 should be 1.5V, 1.35V if DDR3L is used. 170 171config AXP_ALDO1_VOLT 172 int "axp pmic (a)ldo1 voltage" 173 depends on AXP221_POWER || AXP809_POWER || AXP818_POWER 174 default 0 if MACH_SUN6I || MACH_SUN8I_R40 175 default 1800 if MACH_SUN8I_A83T 176 default 3000 if MACH_SUN8I || MACH_SUN9I 177 ---help--- 178 Set the voltage (mV) to program the axp pmic aldo1 at, set to 0 to 179 disable aldo1. 180 On A31 boards aldo1 is often used to power the wifi module. 181 On A23 / A33 boards aldo1 is used for VCC-IO and should be 3.0V. 182 On A80 boards aldo1 powers the USB hosts and should be 3.0V. 183 On A83T / H8 boards aldo1 is used for MIPI CSI, DSI, HDMI, EFUSE, and 184 should be 1.8V. 185 186config AXP_ALDO2_VOLT 187 int "axp pmic (a)ldo2 voltage" 188 depends on AXP152_POWER || AXP209_POWER || AXP221_POWER || AXP809_POWER || AXP818_POWER 189 default 3000 if AXP152_POWER || AXP209_POWER 190 default 0 if MACH_SUN6I || MACH_SUN9I 191 default 1800 if MACH_SUN8I_A83T 192 default 2500 if MACH_SUN8I 193 ---help--- 194 Set the voltage (mV) to program the axp pmic aldo2 at, set to 0 to 195 disable aldo2. 196 On A10(s) / A13 / A20 boards aldo2 is AVCC and should be 3.0V. 197 On A31 boards aldo2 is typically unused and should be disabled. 198 On A31 boards aldo2 may be used for LPDDR2 then it should be 1.8V. 199 On A23 / A33 boards aldo2 is used for VDD-DLL and should be 2.5V. 200 On A80 boards aldo2 powers PB pingroup and camera IO and can be left off. 201 On A83T / H8 boards aldo2 powers VDD-DLL, VCC18-PLL, CPVDD, VDD18-ADC, 202 LPDDR2, and the codec. It should be 1.8V. 203 204config AXP_ALDO3_VOLT 205 int "axp pmic (a)ldo3 voltage" 206 depends on AXP209_POWER || AXP221_POWER || AXP809_POWER || AXP818_POWER 207 default 0 if AXP209_POWER || MACH_SUN9I 208 default 3000 if MACH_SUN6I || MACH_SUN8I 209 ---help--- 210 Set the voltage (mV) to program the axp pmic aldo3 at, set to 0 to 211 disable aldo3. 212 On A10(s) / A13 / A20 boards aldo3 should be 2.8V. 213 On A23 / A31 / A33 / R40 boards aldo3 is VCC-PLL and AVCC and should 214 be 3.0V. 215 On A80 boards aldo3 is normally not used. 216 On A83T / H8 boards aldo3 is AVCC, VCC-PL, and VCC-LED, and should be 217 3.0V. 218 219config AXP_ALDO4_VOLT 220 int "axp pmic (a)ldo4 voltage" 221 depends on AXP209_POWER 222 default 0 if AXP209_POWER 223 ---help--- 224 Set the voltage (mV) to program the axp pmic aldo4 at, set to 0 to 225 disable aldo4. 226 On A10(s) / A13 / A20 boards aldo4 should be 2.8V. 227 228config AXP_DLDO1_VOLT 229 int "axp pmic dldo1 voltage" 230 depends on AXP221_POWER || AXP809_POWER || AXP818_POWER 231 default 0 232 ---help--- 233 Set the voltage (mV) to program the axp pmic dldo1 at, set to 0 to 234 disable dldo1. On sun6i (A31) boards with ethernet dldo1 is often used 235 to power the ethernet phy. On A23, A33 and A80 boards this is often 236 used to power the wifi. 237 238config AXP_DLDO2_VOLT 239 int "axp pmic dldo2 voltage" 240 depends on AXP221_POWER || AXP809_POWER || AXP818_POWER 241 default 3000 if MACH_SUN9I 242 default 0 243 ---help--- 244 Set the voltage (mV) to program the axp pmic dldo2 at, set to 0 to 245 disable dldo2. 246 On A80 boards dldo2 normally powers the PL pins and should be 3.0V. 247 248config AXP_DLDO3_VOLT 249 int "axp pmic dldo3 voltage" 250 depends on AXP221_POWER || AXP818_POWER 251 default 0 252 ---help--- 253 Set the voltage (mV) to program the axp pmic dldo3 at, set to 0 to 254 disable dldo3. 255 256config AXP_DLDO4_VOLT 257 int "axp pmic dldo4 voltage" 258 depends on AXP221_POWER || AXP818_POWER 259 default 0 260 ---help--- 261 Set the voltage (mV) to program the axp pmic dldo4 at, set to 0 to 262 disable dldo4. 263 264config AXP_ELDO1_VOLT 265 int "axp pmic eldo1 voltage" 266 depends on AXP221_POWER || AXP809_POWER || AXP818_POWER 267 default 0 268 ---help--- 269 Set the voltage (mV) to program the axp pmic eldo1 at, set to 0 to 270 disable eldo1. 271 272config AXP_ELDO2_VOLT 273 int "axp pmic eldo2 voltage" 274 depends on AXP221_POWER || AXP809_POWER || AXP818_POWER 275 default 0 276 ---help--- 277 Set the voltage (mV) to program the axp pmic eldo2 at, set to 0 to 278 disable eldo2. 279 280config AXP_ELDO3_VOLT 281 int "axp pmic eldo3 voltage" 282 depends on AXP221_POWER || AXP809_POWER || AXP818_POWER 283 default 3000 if MACH_SUN9I 284 default 0 285 ---help--- 286 Set the voltage (mV) to program the axp pmic eldo3 at, set to 0 to 287 disable eldo3. On some A31(s) tablets it might be used to supply 288 1.2V for the SSD2828 chip (converter of parallel LCD interface 289 into MIPI DSI). 290 On A80 boards it powers the PM pingroup and should be 3.0V. 291 292config AXP_FLDO1_VOLT 293 int "axp pmic fldo1 voltage" 294 depends on AXP818_POWER 295 default 0 if MACH_SUN8I_A83T 296 ---help--- 297 Set the voltage (mV) to program the axp pmic fldo1 at, set to 0 to 298 disable fldo1. 299 On A83T / H8 boards fldo1 is VCC-HSIC and should be 1.2V if HSIC is 300 used. 301 302config AXP_FLDO2_VOLT 303 int "axp pmic fldo2 voltage" 304 depends on AXP818_POWER 305 default 900 if MACH_SUN8I_A83T 306 ---help--- 307 Set the voltage (mV) to program the axp pmic fldo2 at, set to 0 to 308 disable fldo2. 309 On A83T / H8 boards fldo2 is VCC-CPUS and should be 0.9V. 310 311config AXP_FLDO3_VOLT 312 int "axp pmic fldo3 voltage" 313 depends on AXP818_POWER 314 default 0 315 ---help--- 316 Set the voltage (mV) to program the axp pmic fldo3 at, set to 0 to 317 disable fldo3. 318 319config AXP_SW_ON 320 bool "axp pmic sw on" 321 depends on AXP809_POWER || AXP818_POWER 322 default n 323 ---help--- 324 Enable to turn on axp pmic sw. 325 326config SY8106A_VOUT1_VOLT 327 int "SY8106A pmic VOUT1 voltage" 328 depends on SY8106A_POWER 329 default 1200 330 ---help--- 331 Set the voltage (mV) to program the SY8106A pmic VOUT1. This 332 is typically used to power the VDD-CPU and should be 1200mV. 333 Values can range from 680mV till 1950mV. 334 335config TWL4030_POWER 336 depends on OMAP34XX 337 bool "Enable driver for TI TWL4030 power management chip" 338 imply CMD_POWEROFF 339 ---help--- 340 The TWL4030 in a combination audio CODEC/power management with 341 GPIO and it is commonly used with the OMAP3 family of processors 342 343endmenu 344