1config DM_PMIC 2 bool "Enable Driver Model for PMIC drivers (UCLASS_PMIC)" 3 depends on DM 4 ---help--- 5 This config enables the driver-model PMIC support. 6 UCLASS_PMIC - designed to provide an I/O interface for PMIC devices. 7 For the multi-function PMIC devices, this can be used as parent I/O 8 device for each IC's interface. Then, each children uses its parent 9 for read/write. For detailed description, please refer to the files: 10 - 'drivers/power/pmic/pmic-uclass.c' 11 - 'include/power/pmic.h' 12 13if DM_PMIC 14 15config SPL_DM_PMIC 16 bool "Enable Driver Model for PMIC drivers (UCLASS_PMIC) in SPL" 17 depends on SPL_DM 18 default y 19 ---help--- 20 This config enables the driver-model PMIC support in SPL. 21 UCLASS_PMIC - designed to provide an I/O interface for PMIC devices. 22 For the multi-function PMIC devices, this can be used as parent I/O 23 device for each IC's interface. Then, each children uses its parent 24 for read/write. For detailed description, please refer to the files: 25 - 'drivers/power/pmic/pmic-uclass.c' 26 - 'include/power/pmic.h' 27 28config PMIC_CHILDREN 29 bool "Allow child devices for PMICs" 30 default y 31 ---help--- 32 This allows PMICs to support child devices (such as regulators) in 33 SPL. This adds quite a bit of code so if you are not using this 34 feature you can turn it off. Most likely you should turn it on for 35 U-Boot proper. 36 37config SPL_PMIC_CHILDREN 38 bool "Allow child devices for PMICs in SPL" 39 depends on SPL_DM_PMIC 40 default y 41 ---help--- 42 This allows PMICs to support child devices (such as regulators) in 43 SPL. This adds quite a bit of code so if you are not using this 44 feature you can turn it off. In this case you may need a 'back door' 45 to call your regulator code (e.g. see rk8xx.c for direct functions 46 for use in SPL). 47 48config PMIC_AB8500 49 bool "Enable driver for ST-Ericsson AB8500 PMIC via PRCMU" 50 select REGMAP 51 select SYSCON 52 help 53 Enable support for the ST-Ericsson AB8500 (Analog Baseband) PMIC. 54 It connects with the ST-Ericsson DB8500 SoC via an I2C bus managed by 55 the power/reset/clock management unit (PRCMU) firmware. 56 57config PMIC_ACT8846 58 bool "Enable support for the active-semi 8846 PMIC" 59 depends on DM_I2C 60 ---help--- 61 This PMIC includes 4 DC/DC step-down buck regulators and 8 low-dropout 62 regulators (LDOs). It also provides some GPIO, reset and battery 63 functions. It uses an I2C interface and is designed for use with 64 tablets and smartphones. 65 66config PMIC_AXP 67 bool "Enable Driver Model for X-Powers AXP PMICs" 68 depends on DM_I2C 69 select SYSRESET_CMD_POWEROFF if SYSRESET && CMD_POWEROFF 70 imply CMD_POWEROFF if SYSRESET 71 help 72 This config enables driver-model PMIC uclass features for 73 X-Powers AXP152, AXP2xx, and AXP8xx PMICs. 74 75config SPL_PMIC_AXP 76 bool "Enable Driver Model for X-Powers AXP PMICs in SPL" 77 depends on SPL_DM_I2C && SPL_DM_PMIC 78 help 79 This config enables driver-model PMIC uclass features in the SPL for 80 X-Powers AXP152, AXP2xx, and AXP8xx PMICs. 81 82config DM_PMIC_DA9063 83 bool "Enable Driver Model for the Dialog DA9063 PMIC" 84 help 85 This config enables implementation of driver-model pmic uclass features 86 for PMIC DA9063. The driver implements read/write operations. 87 88config SPL_DM_PMIC_DA9063 89 bool "Enable Driver Model for the Dialog DA9063 PMIC in SPL" 90 depends on SPL_DM_PMIC 91 help 92 This config enables implementation of driver-model pmic uclass features 93 for PMIC DA9063. The driver implements read/write operations. 94 95config PMIC_AS3722 96 bool "Enable support for the Austria Micro Systems (AMS) AS7322 PMIC" 97 help 98 The AS3722 includes 7 DC/DC buck convertors, 11 low-noise LDOs, a 99 real-time clock, GPIOs, ADC and a few other features. It uses an I2C 100 interface and is designs to cover most of the power managementment 101 required for a tablets or laptop. 102 103config DM_PMIC_BD71837 104 bool "Enable Driver Model for PMIC BD71837" 105 help 106 This config enables implementation of driver-model pmic uclass features 107 for PMIC BD71837. The driver implements read/write operations. 108 109config SPL_DM_PMIC_BD71837 110 bool "Enable Driver Model for PMIC BD71837 in SPL stage" 111 depends on SPL_DM_PMIC 112 help 113 This config enables implementation of driver-model pmic uclass 114 features for PMIC BD71837. The driver implements read/write 115 operations. 116 117config DM_PMIC_FAN53555 118 bool "Enable support for OnSemi FAN53555" 119 depends on DM_REGULATOR && DM_I2C 120 select DM_REGULATOR_FAN53555 121 help 122 This config enables implementation of driver-model PMIC 123 uclass features for the FAN53555 regulator. The FAN53555 is 124 a (family of) single-output regulators that supports 125 transitioning between two different output voltages based on 126 an voltage selection pin. 127 128 The driver implements read/write operations for use with the FAN53555 129 regulator driver and binds the regulator driver to its node. 130 131config SPL_DM_PMIC_FAN53555 132 bool "Enable support for OnSemi FAN53555 in SPL" 133 depends on SPL_DM_REGULATOR && SPL_DM_I2C 134 select SPL_DM_REGULATOR_FAN53555 135 help 136 This config enables implementation of driver-model PMIC 137 uclass features for the FAN53555 regulator. The FAN53555 is 138 a (family of) single-output regulators that supports 139 transitioning between two different output voltages based on 140 an voltage selection pin. 141 142 The driver implements read/write operations for use with the FAN53555 143 regulator driver and binds the regulator driver to its node. 144 145config DM_PMIC_MP5416 146 bool "Enable Driver Model for PMIC MP5416" 147 help 148 This config enables implementation of driver-model pmic uclass features 149 for PMIC MP5416. The driver implements read/write operations. 150 151config SPL_DM_PMIC_MP5416 152 bool "Enable Driver Model for PMIC MP5416 in SPL stage" 153 depends on SPL_DM_PMIC 154 help 155 This config enables implementation of driver-model pmic uclass 156 features for PMIC MP5416. The driver implements read/write 157 operations. 158 159config DM_PMIC_PCA9450 160 bool "Enable Driver Model for PMIC PCA9450" 161 depends on DM_I2C 162 help 163 This config enables implementation of driver-model pmic uclass features 164 for PMIC PCA9450. The driver implements read/write operations. 165 166config SPL_DM_PMIC_PCA9450 167 bool "Enable Driver Model for PMIC PCA9450 in SPL" 168 depends on SPL_DM_PMIC 169 depends on SPL_DM_I2C 170 help 171 This config enables implementation of driver-model pmic uclass features 172 for PMIC PCA9450 in SPL. The driver implements read/write operations. 173 174config DM_PMIC_PFUZE100 175 bool "Enable Driver Model for PMIC PFUZE100" 176 ---help--- 177 This config enables implementation of driver-model pmic uclass features 178 for PMIC PFUZE100. The driver implements read/write operations. 179 180config SPL_DM_PMIC_PFUZE100 181 bool "Enable Driver Model for PMIC PFUZE100 in SPL" 182 depends on SPL_DM_PMIC 183 ---help--- 184 This config enables implementation of driver-model pmic uclass features 185 for PMIC PFUZE100 in SPL. The driver implements read/write operations. 186 187config DM_PMIC_MAX77686 188 bool "Enable Driver Model for PMIC MAX77686" 189 ---help--- 190 This config enables implementation of driver-model pmic uclass features 191 for PMIC MAX77686. The driver implements read/write operations. 192 193config DM_PMIC_MAX8998 194 bool "Enable Driver Model for PMIC MAX8998" 195 ---help--- 196 This config enables implementation of driver-model pmic uclass features 197 for PMIC MAX8998. The driver implements read/write operations. 198 199config DM_PMIC_MC34708 200 bool "Enable Driver Model for PMIC MC34708" 201 help 202 This config enables implementation of driver-model pmic uclass features 203 for PMIC MC34708. The driver implements read/write operations. 204 205config PMIC_MAX8997 206 bool "Enable Driver Model for PMIC MAX8997" 207 ---help--- 208 This config enables implementation of driver-model pmic uclass features 209 for PMIC MAX8997. The driver implements read/write operations. 210 This is a Power Management IC with RTC, Fuel Gauge, MUIC control on Chip. 211 - 21x LDOs 212 - 12x GPIOs 213 - Haptic Motor driver 214 - RTC with two alarms 215 - Fueal Gauge and One backup battery charger 216 - MUIC 217 - Others 218 219config PMIC_QCOM 220 bool "Enable Driver Model for Qualcomm generic PMIC" 221 ---help--- 222 The Qcom PMIC is connected to one (or several) processors 223 with SPMI bus. It has 2 slaves with several peripherals: 224 - 18x LDO 225 - 4x GPIO 226 - Power and Reset buttons 227 - Watchdog 228 - RTC 229 - Vibrator drivers 230 - Others 231 232 Driver binding info: doc/device-tree-bindings/pmic/qcom,spmi-pmic.txt 233 234config PMIC_RK8XX 235 bool "Enable support for Rockchip PMIC RK8XX" 236 ---help--- 237 The Rockchip RK808 PMIC provides four buck DC-DC convertors, 8 LDOs, 238 an RTC and two low Rds (resistance (drain to source)) switches. It is 239 accessed via an I2C interface. The device is used with Rockchip SoCs. 240 This driver implements register read/write operations. 241 242config SPL_PMIC_RK8XX 243 bool "Enable support for Rockchip PMIC RK8XX" 244 depends on SPL_DM_PMIC 245 ---help--- 246 The Rockchip RK808 PMIC provides four buck DC-DC convertors, 8 LDOs, 247 an RTC and two low Rds (resistance (drain to source)) switches. It is 248 accessed via an I2C interface. The device is used with Rockchip SoCs. 249 This driver implements register read/write operations. 250 251config PMIC_S2MPS11 252 bool "Enable Driver Model for PMIC Samsung S2MPS11" 253 ---help--- 254 The Samsung S2MPS11 PMIC provides: 255 - 38 adjustable LDO regulators 256 - 9 High-Efficiency Buck Converters 257 - 1 BuckBoost Converter 258 - RTC with two alarms 259 - Backup battery charger 260 - I2C Configuration Interface 261 This driver provides access to I/O interface only. 262 Binding info: doc/device-tree-bindings/pmic/s2mps11.txt 263 264config DM_PMIC_SANDBOX 265 bool "Enable Driver Model for emulated Sandbox PMIC" 266 ---help--- 267 Enable the driver for Sandbox PMIC emulation. The emulated PMIC device 268 depends on two drivers: 269 - sandbox PMIC I/O driver - implements dm pmic operations 270 - sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission 271 272 A detailed information can be found in header: '<power/sandbox_pmic.h>' 273 274 The Sandbox PMIC info: 275 * I/O interface: 276 - I2C chip address: 0x40 277 - first register address: 0x0 278 - register count: 0x10 279 * Adjustable outputs: 280 - 2x LDO 281 - 2x BUCK 282 - Each, with a different operating conditions (header). 283 * Reset values: 284 - set by i2c emul driver's probe() (defaults in header) 285 286 Driver binding info: doc/device-tree-bindings/pmic/sandbox.txt 287 288config PMIC_S5M8767 289 bool "Enable Driver Model for the Samsung S5M8767 PMIC" 290 ---help--- 291 The S5M8767 PMIC provides a large array of LDOs and BUCKs for use 292 as a SoC power controller. It also provides 32KHz clock outputs. This 293 driver provides basic register access and sets up the attached 294 regulators if regulator support is enabled. 295 296config PMIC_RN5T567 297 bool "Enable driver for Ricoh RN5T567 PMIC" 298 ---help--- 299 The RN5T567 is a PMIC with 4 step-down DC/DC converters, 5 LDO 300 regulators Real-Time Clock and 4 GPIOs. This driver provides 301 register access only. 302 303config SPL_PMIC_RN5T567 304 bool "Enable driver for Ricoh RN5T567 PMIC in SPL" 305 depends on SPL_DM_PMIC 306 ---help--- 307 The RN5T567 is a PMIC with 4 step-down DC/DC converters, 5 LDO 308 regulators Real-Time Clock and 4 GPIOs. This driver provides 309 register access only. 310 311config PMIC_TPS65090 312 bool "Enable driver for Texas Instruments TPS65090 PMIC" 313 ---help--- 314 The TPS65090 is a PMIC containing several LDOs, DC to DC convertors, 315 FETs and a battery charger. This driver provides register access 316 only, and you can enable the regulator/charger drivers separately if 317 required. 318 319config PMIC_PALMAS 320 bool "Enable driver for Texas Instruments PALMAS PMIC" 321 ---help--- 322 The PALMAS is a PMIC containing several LDOs, SMPS. 323 This driver binds the pmic children. 324 325config PMIC_LP873X 326 bool "Enable driver for Texas Instruments LP873X PMIC" 327 ---help--- 328 The LP873X is a PMIC containing couple of LDOs and couple of SMPS. 329 This driver binds the pmic children. 330 331config PMIC_LP87565 332 bool "Enable driver for Texas Instruments LP87565 PMIC" 333 ---help--- 334 The LP87565 is a PMIC containing a bunch of SMPS. 335 This driver binds the pmic children. 336 337config DM_PMIC_TPS65910 338 bool "Enable driver for Texas Instruments TPS65910 PMIC" 339 ---help--- 340 The TPS65910 is a PMIC containing 3 buck DC-DC converters, one boost 341 DC-DC converter, 8 LDOs and a RTC. This driver binds the SMPS and LDO 342 pmic children. 343 344config PMIC_STPMIC1 345 bool "Enable support for STMicroelectronics STPMIC1 PMIC" 346 depends on DM_I2C 347 select SYSRESET_CMD_POWEROFF if CMD_POWEROFF && !ARM_PSCI_FW 348 ---help--- 349 The STPMIC1 PMIC provides 4 BUCKs, 6 LDOs, 1 VREF and 2 power switches. 350 It is accessed via an I2C interface. The device is used with STM32MP1 351 SoCs. This driver implements register read/write operations. 352 353config SPL_PMIC_PALMAS 354 bool "Enable driver for Texas Instruments PALMAS PMIC" 355 depends on SPL_DM_PMIC 356 help 357 The PALMAS is a PMIC containing several LDOs, SMPS. 358 This driver binds the pmic children in SPL. 359 360config SPL_PMIC_LP873X 361 bool "Enable driver for Texas Instruments LP873X PMIC" 362 depends on SPL_DM_PMIC 363 help 364 The LP873X is a PMIC containing couple of LDOs and couple of SMPS. 365 This driver binds the pmic children in SPL. 366 367config SPL_PMIC_LP87565 368 bool "Enable driver for Texas Instruments LP87565 PMIC" 369 depends on SPL_DM_PMIC 370 help 371 The LP87565 is a PMIC containing a bunch of SMPS. 372 This driver binds the pmic children in SPL. 373 374config PMIC_TPS65941 375 bool "Enable driver for Texas Instruments TPS65941 PMIC" 376 help 377 The TPS65941 is a PMIC containing a bunch of SMPS & LDOs. 378 This driver binds the pmic children. 379 380config PMIC_TPS65219 381 bool "Enable driver for Texas Instruments TPS65219 PMIC" 382 depends on DM_PMIC 383 help 384 The TPS65219 is a PMIC containing a bunch of SMPS & LDOs. 385 This driver binds the pmic children. 386endif 387 388config PMIC_TPS65217 389 bool "Enable driver for Texas Instruments TPS65217 PMIC" 390 ---help--- 391 The TPS65217 is a PMIC containing several LDOs, DC to DC convertors, 392 FETs and a battery charger. This driver provides register access 393 only, and you can enable the regulator/charger drivers separately if 394 required. 395 396config POWER_TPS65218 397 bool "Enable legacy driver for TPS65218 PMIC" 398 399config POWER_TPS62362 400 bool "Enable legacy driver for TPS62362 PMIC" 401 402config SPL_POWER_TPS62362 403 bool "Enable legacy driver for TPS62362 PMIC in SPL" 404 default y if POWER_TPS62362 405 depends on SPL 406 407config SPL_POWER_TPS65910 408 bool "Enable legacy driver for TPS65910 PMIC in SPL" 409 depends on SPL 410 411if POWER_LEGACY || SPL_POWER_LEGACY 412 413config POWER_HI6553 414 bool "Enable legacy driver for HI6553 PMIC" 415 416config POWER_LTC3676 417 bool "Enable legacy driver for LTC3676 PMIC" 418 419config POWER_PCA9450 420 bool "Enable legacy driver for PCA9450 PMIC" 421 422config POWER_PFUZE100 423 bool "Enable legacy driver for PFUZE100 PMIC" 424 425config POWER_PFUZE3000 426 bool "Enable legacy driver for PFUZE3000 PMIC" 427 428config POWER_MC34VR500 429 bool "Enable driver for Freescale MC34VR500 PMIC" 430 ---help--- 431 The MC34VR500 is used in conjunction with the FSL T1 and LS1 series 432 SoC. It provides 4 buck DC-DC convertors and 5 LDOs, and it is accessed 433 via an I2C interface. 434 435endif 436