1config DM_REGULATOR 2 bool "Enable Driver Model for REGULATOR drivers (UCLASS_REGULATOR)" 3 depends on DM 4 ---help--- 5 This config enables the driver model regulator support. 6 UCLASS_REGULATOR - designed to provide a common API for basic regulator's 7 functions, like get/set Voltage or Current value, enable state, etc... 8 Note: 9 When enabling this, please read the description, found in the files: 10 - 'include/power/pmic.h' 11 - 'include/power/regulator.h' 12 - 'drivers/power/pmic/pmic-uclass.c' 13 - 'drivers/power/pmic/regulator-uclass.c' 14 It's important to call the device_bind() with the proper node offset, 15 when binding the regulator devices. The pmic_bind_childs() can be used 16 for this purpose if PMIC I/O driver is implemented or dm_scan_fdt_dev() 17 otherwise. Detailed information can be found in the header file. 18 19config SPL_DM_REGULATOR 20 bool "Enable regulators for SPL" 21 depends on DM_REGULATOR 22 ---help--- 23 Regulators are seldom needed in SPL. Even if they are accessed, some 24 code space can be saved by accessing the PMIC registers directly. 25 Enable this option if you need regulators in SPL and can cope with 26 the extra code size. 27 28config REGULATOR_ACT8846 29 bool "Enable driver for ACT8846 regulator" 30 depends on DM_REGULATOR && PMIC_ACT8846 31 ---help--- 32 Enable support for the regulator functions of the ACT8846 PMIC. The 33 driver implements get/set api for the various BUCKS and LDOS supported 34 by the PMIC device. This driver is controlled by a device tree node 35 which includes voltage limits. 36 37config REGULATOR_AS3722 38 bool "Enable driver for AS7322 regulator" 39 depends on DM_REGULATOR && PMIC_AS3722 40 help 41 Enable support for the regulator functions of the AS3722. The 42 driver implements enable/disable for step-down bucks and LDOs, 43 but does not yet support change voltages. Currently this must be 44 done using direct register writes to the PMIC. 45 46config DM_REGULATOR_PFUZE100 47 bool "Enable Driver Model for REGULATOR PFUZE100" 48 depends on DM_REGULATOR && DM_PMIC_PFUZE100 49 ---help--- 50 This config enables implementation of driver-model regulator uclass 51 features for REGULATOR PFUZE100. The driver implements get/set api for: 52 value, enable and mode. 53 54config REGULATOR_PWM 55 bool "Enable driver for PWM regulators" 56 depends on DM_REGULATOR 57 ---help--- 58 Enable support for the PWM regulator functions which voltage are 59 controlled by PWM duty ratio. Some of Rockchip board using this kind 60 of regulator. The driver implements get/set api for the various BUCKS. 61 This driver is controlled by a device tree node 62 which includes voltage limits. 63 64config SPL_REGULATOR_PWM 65 bool "Enable Driver for PWM regulators in SPL" 66 depends on REGULATOR_PWM 67 help 68 This config enables implementation of driver-model regulator uclass 69 features for PWM regulators in SPL. 70 71config DM_REGULATOR_MAX77686 72 bool "Enable Driver Model for REGULATOR MAX77686" 73 depends on DM_REGULATOR && DM_PMIC_MAX77686 74 ---help--- 75 This config enables implementation of driver-model regulator uclass 76 features for REGULATOR MAX77686. The driver implements get/set api for: 77 value, enable and mode. 78 79config DM_REGULATOR_FAN53555 80 bool "Enable Driver Model for REGULATOR FAN53555" 81 depends on DM_PMIC_FAN53555 82 help 83 This config enables implementation of driver-model regulator 84 uclass features for the FAN53555 regulator. The FAN53555 is 85 a (family of) single-output regulators that supports 86 transitioning between two different output voltages based on 87 an voltage selection pin. 88 89 The driver implements a get/set api for the voltage of the 90 'normal mode' voltage only. Switching to 'suspend mode' 91 (i.e. the alternate voltage), disabling output via software, 92 or switching the mode is not supported by this driver (at 93 this time). 94 95config DM_REGULATOR_FIXED 96 bool "Enable Driver Model for REGULATOR Fixed value" 97 depends on DM_REGULATOR 98 ---help--- 99 This config enables implementation of driver-model regulator uclass 100 features for fixed value regulators. The driver implements get/set api 101 for enable and get only for voltage value. 102 103config SPL_DM_REGULATOR_FIXED 104 bool "Enable Driver Model for REGULATOR Fixed value in SPL" 105 depends on DM_REGULATOR_FIXED 106 ---help--- 107 This config enables implementation of driver-model regulator uclass 108 features for fixed value regulators in SPL. 109 110config DM_REGULATOR_GPIO 111 bool "Enable Driver Model for GPIO REGULATOR" 112 depends on DM_REGULATOR && DM_GPIO 113 ---help--- 114 This config enables implementation of driver-model regulator uclass 115 features for gpio regulators. The driver implements get/set for 116 voltage value. 117 118config SPL_DM_REGULATOR_GPIO 119 bool "Enable Driver Model for GPIO REGULATOR in SPL" 120 depends on DM_REGULATOR_GPIO && SPL_GPIO_SUPPORT 121 ---help--- 122 This config enables implementation of driver-model regulator uclass 123 features for gpio regulators in SPL. 124 125config REGULATOR_RK8XX 126 bool "Enable driver for RK8XX regulators" 127 depends on DM_REGULATOR && PMIC_RK8XX 128 ---help--- 129 Enable support for the regulator functions of the RK8XX PMIC. The 130 driver implements get/set api for the various BUCKS and LDOs supported 131 by the PMIC device. This driver is controlled by a device tree node 132 which includes voltage limits. 133 134config DM_REGULATOR_S2MPS11 135 bool "Enable driver for S2MPS11 regulator" 136 depends on DM_REGULATOR && PMIC_S2MPS11 137 ---help--- 138 This enables implementation of driver-model regulator uclass 139 features for REGULATOR S2MPS11. 140 The driver implements get/set api for: value and enable. 141 142config REGULATOR_S5M8767 143 bool "Enable support for S5M8767 regulator" 144 depends on DM_REGULATOR && PMIC_S5M8767 145 ---help--- 146 This enables the regulator features of the S5M8767, allowing voltages 147 to be set, etc. The driver is not fully complete but supports most 148 common requirements, including all LDOs and BUCKs. This allows many 149 supplies to be set automatically using the device tree values. 150 151config DM_REGULATOR_SANDBOX 152 bool "Enable Driver Model for Sandbox PMIC regulator" 153 depends on DM_REGULATOR && DM_PMIC_SANDBOX 154 ---help--- 155 Enable the regulator driver for emulated Sandbox PMIC. 156 The emulated PMIC device depends on two drivers: 157 - sandbox PMIC I/O driver - implements dm pmic operations 158 - sandbox PMIC regulator driver - implements dm regulator operations 159 - sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission 160 161 The regulator driver provides uclass operations for sandbox PMIC's 162 regulators. The driver implements get/set api for: voltage, current, 163 operation mode and enable state. 164 The driver supports LDO and BUCK regulators. 165 166 The Sandbox PMIC info: 167 * I/O interface: 168 - I2C chip address: 0x40 169 - first register address: 0x0 170 - register count: 0x10 171 * Adjustable outputs: 172 - 2x LDO 173 - 2x BUCK 174 - Each, with a different operating conditions (header). 175 * Reset values: 176 - set by i2c emul driver's probe() (defaults in header) 177 178 A detailed information can be found in header: '<power/sandbox_pmic.h>' 179 Binding info: 'doc/device-tree-bindings/pmic/max77686.txt' 180 181config REGULATOR_TPS65090 182 bool "Enable driver for TPS65090 PMIC regulators" 183 depends on PMIC_TPS65090 184 ---help--- 185 The TPS65090 provides several FETs (Field-effect Transistors, 186 effectively switches) which are supported by this driver as 187 regulators, one for each FET. The standard regulator interface is 188 supported, but it is only possible to turn the regulators on or off. 189 There is no voltage/current control. 190 191config DM_REGULATOR_PALMAS 192 bool "Enable driver for PALMAS PMIC regulators" 193 depends on PMIC_PALMAS 194 ---help--- 195 This enables implementation of driver-model regulator uclass 196 features for REGULATOR PALMAS and the family of PALMAS PMICs. 197 The driver implements get/set api for: value and enable. 198 199config DM_REGULATOR_PBIAS 200 bool "Enable driver for PBIAS regulator" 201 depends on DM_REGULATOR 202 select REGMAP 203 select SYSCON 204 ---help--- 205 This enables implementation of driver-model regulator uclass 206 features for pseudo-regulator PBIAS found in the OMAP SOCs. 207 This pseudo-regulator is used to provide a BIAS voltage to MMC1 208 signal pads and must be configured properly during a voltage switch. 209 Voltage switching is required by some operating modes of SDcards and 210 eMMC. 211 212config DM_REGULATOR_LP873X 213 bool "Enable driver for LP873X PMIC regulators" 214 depends on PMIC_LP873X 215 ---help--- 216 This enables implementation of driver-model regulator uclass 217 features for REGULATOR LP873X and the family of LP873X PMICs. 218 The driver implements get/set api for: value and enable. 219 220config DM_REGULATOR_LP87565 221 bool "Enable driver for LP87565 PMIC regulators" 222 depends on PMIC_LP87565 223 ---help--- 224 This enables implementation of driver-model regulator uclass 225 features for REGULATOR LP87565 and the family of LP87565 PMICs. 226 LP87565 series of PMICs have 4 single phase BUCKs that can also 227 be configured in multi phase modes. The driver implements 228 get/set api for value and enable. 229 230config DM_REGULATOR_STM32_VREFBUF 231 bool "Enable driver for STMicroelectronics STM32 VREFBUF" 232 depends on DM_REGULATOR && (STM32H7 || ARCH_STM32MP) 233 help 234 This driver supports STMicroelectronics STM32 VREFBUF (voltage 235 reference buffer) which can be used as voltage reference for 236 internal ADCs, DACs and also for external components through 237 dedicated Vref+ pin. 238 239config DM_REGULATOR_TPS65910 240 bool "Enable driver for TPS65910 PMIC regulators" 241 depends on DM_PMIC_TPS65910 242 ---help--- 243 The TPS65910 PMIC provides 4 SMPSs and 8 LDOs. This driver supports all 244 regulator types of the TPS65910 (BUCK, BOOST and LDO). It implements 245 the get/set api for value and enable. 246 247config DM_REGULATOR_STPMU1 248 bool "Enable driver for STPMU1 regulators" 249 depends on DM_REGULATOR && PMIC_STPMU1 250 ---help--- 251 Enable support for the regulator functions of the STPMU1 PMIC. The 252 driver implements get/set api for the various BUCKS and LDOs supported 253 by the PMIC device. This driver is controlled by a device tree node 254 which includes voltage limits. 255