Przemyslaw Marczak | 9a8bc95 | 2015-04-20 20:07:41 +0200 | [diff] [blame] | 1 | config 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' |
Przemyslaw Marczak | 58ea76f | 2015-04-20 20:07:46 +0200 | [diff] [blame] | 12 | |
Simon Glass | c8db7b4 | 2016-01-21 19:43:55 -0700 | [diff] [blame] | 13 | config PMIC_CHILDREN |
| 14 | bool "Allow child devices for PMICs" |
| 15 | depends on DM_PMIC |
| 16 | default y |
| 17 | ---help--- |
| 18 | This allows PMICs to support child devices (such as regulators) in |
| 19 | SPL. This adds quite a bit of code so if you are not using this |
| 20 | feature you can turn it off. Most likely you should turn it on for |
| 21 | U-Boot proper. |
| 22 | |
| 23 | config SPL_PMIC_CHILDREN |
| 24 | bool "Allow child devices for PMICs in SPL" |
| 25 | depends on DM_PMIC |
| 26 | default y |
| 27 | ---help--- |
| 28 | This allows PMICs to support child devices (such as regulators) in |
| 29 | SPL. This adds quite a bit of code so if you are not using this |
| 30 | feature you can turn it off. In this case you may need a 'back door' |
Jacob Chen | 614704b | 2017-05-02 14:54:52 +0800 | [diff] [blame] | 31 | to call your regulator code (e.g. see rk8xx.c for direct functions |
Simon Glass | c8db7b4 | 2016-01-21 19:43:55 -0700 | [diff] [blame] | 32 | for use in SPL). |
| 33 | |
Stephan Gerhold | cb9589f | 2021-07-08 20:33:48 +0200 | [diff] [blame] | 34 | config PMIC_AB8500 |
| 35 | bool "Enable driver for ST-Ericsson AB8500 PMIC via PRCMU" |
| 36 | depends on DM_PMIC |
| 37 | select REGMAP |
| 38 | select SYSCON |
| 39 | help |
| 40 | Enable support for the ST-Ericsson AB8500 (Analog Baseband) PMIC. |
| 41 | It connects with the ST-Ericsson DB8500 SoC via an I2C bus managed by |
| 42 | the power/reset/clock management unit (PRCMU) firmware. |
| 43 | |
Simon Glass | b08ce89 | 2015-08-30 16:55:29 -0600 | [diff] [blame] | 44 | config PMIC_ACT8846 |
| 45 | bool "Enable support for the active-semi 8846 PMIC" |
| 46 | depends on DM_PMIC && DM_I2C |
| 47 | ---help--- |
| 48 | This PMIC includes 4 DC/DC step-down buck regulators and 8 low-dropout |
| 49 | regulators (LDOs). It also provides some GPIO, reset and battery |
| 50 | functions. It uses an I2C interface and is designed for use with |
| 51 | tablets and smartphones. |
| 52 | |
Martin Fuzzey | a99472e | 2020-01-14 15:56:16 +0000 | [diff] [blame] | 53 | config DM_PMIC_DA9063 |
| 54 | bool "Enable Driver Model for the Dialog DA9063 PMIC" |
| 55 | depends on DM_PMIC |
| 56 | help |
| 57 | This config enables implementation of driver-model pmic uclass features |
| 58 | for PMIC DA9063. The driver implements read/write operations. |
| 59 | |
| 60 | config SPL_DM_PMIC_DA9063 |
| 61 | bool "Enable Driver Model for the Dialog DA9063 PMIC in SPL" |
| 62 | depends on DM_PMIC && SPL |
| 63 | help |
| 64 | This config enables implementation of driver-model pmic uclass features |
| 65 | for PMIC DA9063. The driver implements read/write operations. |
| 66 | |
Simon Glass | 52222b1 | 2017-04-26 22:27:46 -0600 | [diff] [blame] | 67 | config PMIC_AS3722 |
| 68 | bool "Enable support for the Austria Micro Systems (AMS) AS7322 PMIC" |
| 69 | help |
| 70 | The AS3722 includes 7 DC/DC buck convertors, 11 low-noise LDOs, a |
| 71 | real-time clock, GPIOs, ADC and a few other features. It uses an I2C |
| 72 | interface and is designs to cover most of the power managementment |
| 73 | required for a tablets or laptop. |
| 74 | |
Matti Vaittinen | 1cf7f1d | 2019-05-07 10:43:39 +0300 | [diff] [blame] | 75 | config DM_PMIC_BD71837 |
| 76 | bool "Enable Driver Model for PMIC BD71837" |
| 77 | depends on DM_PMIC |
| 78 | help |
| 79 | This config enables implementation of driver-model pmic uclass features |
| 80 | for PMIC BD71837. The driver implements read/write operations. |
| 81 | |
Peng Fan | 9c3193b | 2019-10-16 10:24:36 +0000 | [diff] [blame] | 82 | config SPL_DM_PMIC_BD71837 |
| 83 | bool "Enable Driver Model for PMIC BD71837 in SPL stage" |
| 84 | depends on DM_PMIC |
| 85 | help |
| 86 | This config enables implementation of driver-model pmic uclass |
| 87 | features for PMIC BD71837. The driver implements read/write |
| 88 | operations. |
| 89 | |
Philipp Tomsich | b7f57e1 | 2018-11-30 20:00:08 +0100 | [diff] [blame] | 90 | config DM_PMIC_FAN53555 |
| 91 | bool "Enable support for OnSemi FAN53555" |
| 92 | depends on DM_PMIC && DM_REGULATOR && DM_I2C |
| 93 | select DM_REGULATOR_FAN53555 |
| 94 | help |
| 95 | This config enables implementation of driver-model PMIC |
| 96 | uclass features for the FAN53555 regulator. The FAN53555 is |
| 97 | a (family of) single-output regulators that supports |
| 98 | transitioning between two different output voltages based on |
| 99 | an voltage selection pin. |
| 100 | |
| 101 | The driver implements read/write operations for use with the FAN53555 |
| 102 | regulator driver and binds the regulator driver to its node. |
| 103 | |
Tim Harvey | 338588e | 2020-12-21 08:19:39 -0800 | [diff] [blame] | 104 | config DM_PMIC_MP5416 |
| 105 | bool "Enable Driver Model for PMIC MP5416" |
| 106 | depends on DM_PMIC |
| 107 | help |
| 108 | This config enables implementation of driver-model pmic uclass features |
| 109 | for PMIC MP5416. The driver implements read/write operations. |
| 110 | |
| 111 | config SPL_DM_PMIC_MP5416 |
| 112 | bool "Enable Driver Model for PMIC MP5416 in SPL stage" |
| 113 | depends on DM_PMIC |
| 114 | help |
| 115 | This config enables implementation of driver-model pmic uclass |
| 116 | features for PMIC MP5416. The driver implements read/write |
| 117 | operations. |
| 118 | |
Ye Li | c3ee909 | 2019-10-15 02:15:18 -0700 | [diff] [blame] | 119 | config DM_PMIC_PCA9450 |
| 120 | bool "Enable Driver Model for PMIC PCA9450" |
| 121 | depends on DM_PMIC |
| 122 | help |
| 123 | This config enables implementation of driver-model pmic uclass features |
| 124 | for PMIC PCA9450. The driver implements read/write operations. |
| 125 | |
Igor Opaniuk | db8fef2 | 2020-10-28 11:58:10 +0200 | [diff] [blame] | 126 | config SPL_DM_PMIC_PCA9450 |
| 127 | bool "Enable Driver Model for PMIC PCA9450" |
| 128 | depends on DM_PMIC |
| 129 | help |
| 130 | This config enables implementation of driver-model pmic uclass features |
| 131 | for PMIC PCA9450 in SPL. The driver implements read/write operations. |
| 132 | |
Peng Fan | 6f4f6d2 | 2015-08-14 11:36:16 +0200 | [diff] [blame] | 133 | config DM_PMIC_PFUZE100 |
| 134 | bool "Enable Driver Model for PMIC PFUZE100" |
| 135 | depends on DM_PMIC |
| 136 | ---help--- |
| 137 | This config enables implementation of driver-model pmic uclass features |
| 138 | for PMIC PFUZE100. The driver implements read/write operations. |
| 139 | |
Marek Vasut | 16189d6 | 2020-05-29 19:22:41 +0200 | [diff] [blame] | 140 | config SPL_DM_PMIC_PFUZE100 |
| 141 | bool "Enable Driver Model for PMIC PFUZE100 in SPL" |
| 142 | depends on DM_PMIC |
| 143 | ---help--- |
| 144 | This config enables implementation of driver-model pmic uclass features |
| 145 | for PMIC PFUZE100 in SPL. The driver implements read/write operations. |
| 146 | |
Przemyslaw Marczak | 58ea76f | 2015-04-20 20:07:46 +0200 | [diff] [blame] | 147 | config DM_PMIC_MAX77686 |
| 148 | bool "Enable Driver Model for PMIC MAX77686" |
| 149 | depends on DM_PMIC |
| 150 | ---help--- |
| 151 | This config enables implementation of driver-model pmic uclass features |
Przemyslaw Marczak | 1031498 | 2015-05-13 13:38:26 +0200 | [diff] [blame] | 152 | for PMIC MAX77686. The driver implements read/write operations. |
Przemyslaw Marczak | d5175dc | 2015-05-13 13:38:32 +0200 | [diff] [blame] | 153 | |
Jaehoon Chung | 42b5d88 | 2016-12-15 18:21:10 +0900 | [diff] [blame] | 154 | config DM_PMIC_MAX8998 |
| 155 | bool "Enable Driver Model for PMIC MAX8998" |
| 156 | depends on DM_PMIC |
| 157 | ---help--- |
| 158 | This config enables implementation of driver-model pmic uclass features |
| 159 | for PMIC MAX8998. The driver implements read/write operations. |
| 160 | |
Lukasz Majewski | 9c65b79 | 2018-05-15 16:26:37 +0200 | [diff] [blame] | 161 | config DM_PMIC_MC34708 |
| 162 | bool "Enable Driver Model for PMIC MC34708" |
| 163 | depends on DM_PMIC |
| 164 | help |
| 165 | This config enables implementation of driver-model pmic uclass features |
| 166 | for PMIC MC34708. The driver implements read/write operations. |
| 167 | |
Jaehoon Chung | 4997f6e | 2017-02-02 17:04:09 +0900 | [diff] [blame] | 168 | config PMIC_MAX8997 |
| 169 | bool "Enable Driver Model for PMIC MAX8997" |
| 170 | depends on DM_PMIC |
| 171 | ---help--- |
| 172 | This config enables implementation of driver-model pmic uclass features |
| 173 | for PMIC MAX8997. The driver implements read/write operations. |
| 174 | This is a Power Management IC with RTC, Fuel Gauge, MUIC control on Chip. |
| 175 | - 21x LDOs |
| 176 | - 12x GPIOs |
| 177 | - Haptic Motor driver |
| 178 | - RTC with two alarms |
| 179 | - Fueal Gauge and One backup battery charger |
| 180 | - MUIC |
| 181 | - Others |
| 182 | |
Mateusz Kulikowski | 0be548f | 2016-03-31 23:12:30 +0200 | [diff] [blame] | 183 | config PMIC_PM8916 |
| 184 | bool "Enable Driver Model for Qualcomm PM8916 PMIC" |
| 185 | depends on DM_PMIC |
| 186 | ---help--- |
| 187 | The PM8916 is a PMIC connected to one (or several) processors |
| 188 | with SPMI bus. It has 2 slaves with several peripherals: |
| 189 | - 18x LDO |
| 190 | - 4x GPIO |
| 191 | - Power and Reset buttons |
| 192 | - Watchdog |
| 193 | - RTC |
| 194 | - Vibrator drivers |
| 195 | - Others |
| 196 | |
| 197 | Driver binding info: doc/device-tree-bindings/pmic/pm8916.txt |
| 198 | |
Jacob Chen | 614704b | 2017-05-02 14:54:52 +0800 | [diff] [blame] | 199 | config PMIC_RK8XX |
| 200 | bool "Enable support for Rockchip PMIC RK8XX" |
Simon Glass | a8bd2ac | 2016-01-21 19:43:29 -0700 | [diff] [blame] | 201 | depends on DM_PMIC |
| 202 | ---help--- |
| 203 | The Rockchip RK808 PMIC provides four buck DC-DC convertors, 8 LDOs, |
| 204 | an RTC and two low Rds (resistance (drain to source)) switches. It is |
| 205 | accessed via an I2C interface. The device is used with Rockchip SoCs. |
| 206 | This driver implements register read/write operations. |
| 207 | |
Przemyslaw Marczak | 9181512 | 2015-10-27 13:07:58 +0100 | [diff] [blame] | 208 | config PMIC_S2MPS11 |
| 209 | bool "Enable Driver Model for PMIC Samsung S2MPS11" |
| 210 | depends on DM_PMIC |
| 211 | ---help--- |
| 212 | The Samsung S2MPS11 PMIC provides: |
| 213 | - 38 adjustable LDO regulators |
| 214 | - 9 High-Efficiency Buck Converters |
| 215 | - 1 BuckBoost Converter |
| 216 | - RTC with two alarms |
| 217 | - Backup battery charger |
| 218 | - I2C Configuration Interface |
| 219 | This driver provides access to I/O interface only. |
| 220 | Binding info: doc/device-tree-bindings/pmic/s2mps11.txt |
| 221 | |
Przemyslaw Marczak | d5175dc | 2015-05-13 13:38:32 +0200 | [diff] [blame] | 222 | config DM_PMIC_SANDBOX |
Michal Simek | c7df3a2 | 2018-07-23 08:38:56 +0200 | [diff] [blame] | 223 | bool "Enable Driver Model for emulated Sandbox PMIC" |
Przemyslaw Marczak | d5175dc | 2015-05-13 13:38:32 +0200 | [diff] [blame] | 224 | depends on DM_PMIC |
| 225 | ---help--- |
| 226 | Enable the driver for Sandbox PMIC emulation. The emulated PMIC device |
| 227 | depends on two drivers: |
| 228 | - sandbox PMIC I/O driver - implements dm pmic operations |
| 229 | - sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission |
| 230 | |
| 231 | A detailed information can be found in header: '<power/sandbox_pmic.h>' |
| 232 | |
| 233 | The Sandbox PMIC info: |
| 234 | * I/O interface: |
| 235 | - I2C chip address: 0x40 |
| 236 | - first register address: 0x0 |
| 237 | - register count: 0x10 |
| 238 | * Adjustable outputs: |
| 239 | - 2x LDO |
| 240 | - 2x BUCK |
| 241 | - Each, with a different operating conditions (header). |
| 242 | * Reset values: |
| 243 | - set by i2c emul driver's probe() (defaults in header) |
| 244 | |
| 245 | Driver binding info: doc/device-tree-bindings/pmic/sandbox.txt |
Simon Glass | c087111 | 2015-07-02 18:15:58 -0600 | [diff] [blame] | 246 | |
Simon Glass | 0165149 | 2015-07-02 18:16:00 -0600 | [diff] [blame] | 247 | config PMIC_S5M8767 |
| 248 | bool "Enable Driver Model for the Samsung S5M8767 PMIC" |
| 249 | depends on DM_PMIC |
| 250 | ---help--- |
| 251 | The S5M8767 PMIC provides a large array of LDOs and BUCKs for use |
| 252 | as a SoC power controller. It also provides 32KHz clock outputs. This |
| 253 | driver provides basic register access and sets up the attached |
| 254 | regulators if regulator support is enabled. |
| 255 | |
Stefan Agner | b084ddd | 2016-10-05 15:27:09 -0700 | [diff] [blame] | 256 | config PMIC_RN5T567 |
| 257 | bool "Enable driver for Ricoh RN5T567 PMIC" |
| 258 | depends on DM_PMIC |
| 259 | ---help--- |
| 260 | The RN5T567 is a PMIC with 4 step-down DC/DC converters, 5 LDO |
| 261 | regulators Real-Time Clock and 4 GPIOs. This driver provides |
| 262 | register access only. |
| 263 | |
Simon Glass | c087111 | 2015-07-02 18:15:58 -0600 | [diff] [blame] | 264 | config PMIC_TPS65090 |
| 265 | bool "Enable driver for Texas Instruments TPS65090 PMIC" |
| 266 | depends on DM_PMIC |
| 267 | ---help--- |
| 268 | The TPS65090 is a PMIC containing several LDOs, DC to DC convertors, |
| 269 | FETs and a battery charger. This driver provides register access |
| 270 | only, and you can enable the regulator/charger drivers separately if |
| 271 | required. |
Keerthy | f0df1b1 | 2016-09-30 09:20:43 +0530 | [diff] [blame] | 272 | |
| 273 | config PMIC_PALMAS |
| 274 | bool "Enable driver for Texas Instruments PALMAS PMIC" |
| 275 | depends on DM_PMIC |
| 276 | ---help--- |
| 277 | The PALMAS is a PMIC containing several LDOs, SMPS. |
| 278 | This driver binds the pmic children. |
Keerthy | 662797b | 2016-09-30 09:34:02 +0530 | [diff] [blame] | 279 | |
| 280 | config PMIC_LP873X |
| 281 | bool "Enable driver for Texas Instruments LP873X PMIC" |
| 282 | depends on DM_PMIC |
| 283 | ---help--- |
| 284 | The LP873X is a PMIC containing couple of LDOs and couple of SMPS. |
| 285 | This driver binds the pmic children. |
Hou Zhiqiang | 6d6e5ee | 2016-12-09 16:08:57 +0800 | [diff] [blame] | 286 | |
Keerthy | 3006c92 | 2017-06-07 19:08:28 +0530 | [diff] [blame] | 287 | config PMIC_LP87565 |
| 288 | bool "Enable driver for Texas Instruments LP87565 PMIC" |
| 289 | depends on DM_PMIC |
| 290 | ---help--- |
| 291 | The LP87565 is a PMIC containing a bunch of SMPS. |
| 292 | This driver binds the pmic children. |
| 293 | |
Hou Zhiqiang | 6d6e5ee | 2016-12-09 16:08:57 +0800 | [diff] [blame] | 294 | config POWER_MC34VR500 |
| 295 | bool "Enable driver for Freescale MC34VR500 PMIC" |
| 296 | ---help--- |
| 297 | The MC34VR500 is used in conjunction with the FSL T1 and LS1 series |
| 298 | SoC. It provides 4 buck DC-DC convertors and 5 LDOs, and it is accessed |
| 299 | via an I2C interface. |
Felix Brack | 9493f0e | 2017-11-30 13:52:37 +0100 | [diff] [blame] | 300 | |
| 301 | config DM_PMIC_TPS65910 |
| 302 | bool "Enable driver for Texas Instruments TPS65910 PMIC" |
| 303 | depends on DM_PMIC |
| 304 | ---help--- |
| 305 | The TPS65910 is a PMIC containing 3 buck DC-DC converters, one boost |
| 306 | DC-DC converter, 8 LDOs and a RTC. This driver binds the SMPS and LDO |
| 307 | pmic children. |
Patrick Delaunay | 3cba451 | 2018-03-12 10:46:12 +0100 | [diff] [blame] | 308 | |
Patrick Delaunay | d79218f | 2019-02-04 11:26:17 +0100 | [diff] [blame] | 309 | config PMIC_STPMIC1 |
| 310 | bool "Enable support for STMicroelectronics STPMIC1 PMIC" |
Patrick Delaunay | 3cba451 | 2018-03-12 10:46:12 +0100 | [diff] [blame] | 311 | depends on DM_PMIC && DM_I2C |
Urja Rannikko | e008ebf | 2019-05-16 21:48:42 +0000 | [diff] [blame] | 312 | select SYSRESET_CMD_POWEROFF if CMD_POWEROFF && !ARM_PSCI_FW |
Patrick Delaunay | 3cba451 | 2018-03-12 10:46:12 +0100 | [diff] [blame] | 313 | ---help--- |
Patrick Delaunay | d79218f | 2019-02-04 11:26:17 +0100 | [diff] [blame] | 314 | The STPMIC1 PMIC provides 4 BUCKs, 6 LDOs, 1 VREF and 2 power switches. |
Patrick Delaunay | 3cba451 | 2018-03-12 10:46:12 +0100 | [diff] [blame] | 315 | It is accessed via an I2C interface. The device is used with STM32MP1 |
| 316 | SoCs. This driver implements register read/write operations. |
Keerthy | a23e47e | 2019-06-06 16:06:55 +0530 | [diff] [blame] | 317 | |
| 318 | config SPL_PMIC_PALMAS |
| 319 | bool "Enable driver for Texas Instruments PALMAS PMIC" |
| 320 | depends on DM_PMIC |
| 321 | help |
| 322 | The PALMAS is a PMIC containing several LDOs, SMPS. |
| 323 | This driver binds the pmic children in SPL. |
| 324 | |
| 325 | config SPL_PMIC_LP873X |
| 326 | bool "Enable driver for Texas Instruments LP873X PMIC" |
| 327 | depends on DM_PMIC |
| 328 | help |
| 329 | The LP873X is a PMIC containing couple of LDOs and couple of SMPS. |
| 330 | This driver binds the pmic children in SPL. |
| 331 | |
| 332 | config SPL_PMIC_LP87565 |
| 333 | bool "Enable driver for Texas Instruments LP87565 PMIC" |
| 334 | depends on DM_PMIC |
| 335 | help |
| 336 | The LP87565 is a PMIC containing a bunch of SMPS. |
| 337 | This driver binds the pmic children in SPL. |
Keerthy | a36bb3c | 2019-10-24 15:00:50 +0530 | [diff] [blame] | 338 | |
| 339 | config PMIC_TPS65941 |
| 340 | bool "Enable driver for Texas Instruments TPS65941 PMIC" |
| 341 | depends on DM_PMIC |
| 342 | help |
| 343 | The TPS65941 is a PMIC containing a bunch of SMPS & LDOs. |
| 344 | This driver binds the pmic children. |