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 DM_REGULATOR_MAX77686 65 bool "Enable Driver Model for REGULATOR MAX77686" 66 depends on DM_REGULATOR && DM_PMIC_MAX77686 67 ---help--- 68 This config enables implementation of driver-model regulator uclass 69 features for REGULATOR MAX77686. The driver implements get/set api for: 70 value, enable and mode. 71 72config DM_REGULATOR_FAN53555 73 bool "Enable Driver Model for REGULATOR FAN53555" 74 depends on DM_PMIC_FAN53555 75 help 76 This config enables implementation of driver-model regulator 77 uclass features for the FAN53555 regulator. The FAN53555 is 78 a (family of) single-output regulators that supports 79 transitioning between two different output voltages based on 80 an voltage selection pin. 81 82 The driver implements a get/set api for the voltage of the 83 'normal mode' voltage only. Switching to 'suspend mode' 84 (i.e. the alternate voltage), disabling output via software, 85 or switching the mode is not supported by this driver (at 86 this time). 87 88config DM_REGULATOR_FIXED 89 bool "Enable Driver Model for REGULATOR Fixed value" 90 depends on DM_REGULATOR 91 ---help--- 92 This config enables implementation of driver-model regulator uclass 93 features for fixed value regulators. The driver implements get/set api 94 for enable and get only for voltage value. 95 96config SPL_DM_REGULATOR_FIXED 97 bool "Enable Driver Model for REGULATOR Fixed value in SPL" 98 depends on DM_REGULATOR_FIXED 99 ---help--- 100 This config enables implementation of driver-model regulator uclass 101 features for fixed value regulators in SPL. 102 103config DM_REGULATOR_GPIO 104 bool "Enable Driver Model for GPIO REGULATOR" 105 depends on DM_REGULATOR && DM_GPIO 106 ---help--- 107 This config enables implementation of driver-model regulator uclass 108 features for gpio regulators. The driver implements get/set for 109 voltage value. 110 111config SPL_DM_REGULATOR_GPIO 112 bool "Enable Driver Model for GPIO REGULATOR in SPL" 113 depends on DM_REGULATOR_GPIO && SPL_GPIO_SUPPORT 114 ---help--- 115 This config enables implementation of driver-model regulator uclass 116 features for gpio regulators in SPL. 117 118config REGULATOR_RK8XX 119 bool "Enable driver for RK8XX regulators" 120 depends on DM_REGULATOR && PMIC_RK8XX 121 ---help--- 122 Enable support for the regulator functions of the RK8XX PMIC. The 123 driver implements get/set api for the various BUCKS and LDOs supported 124 by the PMIC device. This driver is controlled by a device tree node 125 which includes voltage limits. 126 127config DM_REGULATOR_S2MPS11 128 bool "Enable driver for S2MPS11 regulator" 129 depends on DM_REGULATOR && PMIC_S2MPS11 130 ---help--- 131 This enables implementation of driver-model regulator uclass 132 features for REGULATOR S2MPS11. 133 The driver implements get/set api for: value and enable. 134 135config REGULATOR_S5M8767 136 bool "Enable support for S5M8767 regulator" 137 depends on DM_REGULATOR && PMIC_S5M8767 138 ---help--- 139 This enables the regulator features of the S5M8767, allowing voltages 140 to be set, etc. The driver is not fully complete but supports most 141 common requirements, including all LDOs and BUCKs. This allows many 142 supplies to be set automatically using the device tree values. 143 144config DM_REGULATOR_SANDBOX 145 bool "Enable Driver Model for Sandbox PMIC regulator" 146 depends on DM_REGULATOR && DM_PMIC_SANDBOX 147 ---help--- 148 Enable the regulator driver for emulated Sandbox PMIC. 149 The emulated PMIC device depends on two drivers: 150 - sandbox PMIC I/O driver - implements dm pmic operations 151 - sandbox PMIC regulator driver - implements dm regulator operations 152 - sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission 153 154 The regulator driver provides uclass operations for sandbox PMIC's 155 regulators. The driver implements get/set api for: voltage, current, 156 operation mode and enable state. 157 The driver supports LDO and BUCK regulators. 158 159 The Sandbox PMIC info: 160 * I/O interface: 161 - I2C chip address: 0x40 162 - first register address: 0x0 163 - register count: 0x10 164 * Adjustable outputs: 165 - 2x LDO 166 - 2x BUCK 167 - Each, with a different operating conditions (header). 168 * Reset values: 169 - set by i2c emul driver's probe() (defaults in header) 170 171 A detailed information can be found in header: '<power/sandbox_pmic.h>' 172 Binding info: 'doc/device-tree-bindings/pmic/max77686.txt' 173 174config REGULATOR_TPS65090 175 bool "Enable driver for TPS65090 PMIC regulators" 176 depends on PMIC_TPS65090 177 ---help--- 178 The TPS65090 provides several FETs (Field-effect Transistors, 179 effectively switches) which are supported by this driver as 180 regulators, one for each FET. The standard regulator interface is 181 supported, but it is only possible to turn the regulators on or off. 182 There is no voltage/current control. 183 184config DM_REGULATOR_PALMAS 185 bool "Enable driver for PALMAS PMIC regulators" 186 depends on PMIC_PALMAS 187 ---help--- 188 This enables implementation of driver-model regulator uclass 189 features for REGULATOR PALMAS and the family of PALMAS PMICs. 190 The driver implements get/set api for: value and enable. 191 192config DM_REGULATOR_PBIAS 193 bool "Enable driver for PBIAS regulator" 194 depends on DM_REGULATOR 195 select REGMAP 196 select SYSCON 197 ---help--- 198 This enables implementation of driver-model regulator uclass 199 features for pseudo-regulator PBIAS found in the OMAP SOCs. 200 This pseudo-regulator is used to provide a BIAS voltage to MMC1 201 signal pads and must be configured properly during a voltage switch. 202 Voltage switching is required by some operating modes of SDcards and 203 eMMC. 204 205config DM_REGULATOR_LP873X 206 bool "Enable driver for LP873X PMIC regulators" 207 depends on PMIC_LP873X 208 ---help--- 209 This enables implementation of driver-model regulator uclass 210 features for REGULATOR LP873X and the family of LP873X PMICs. 211 The driver implements get/set api for: value and enable. 212 213config DM_REGULATOR_LP87565 214 bool "Enable driver for LP87565 PMIC regulators" 215 depends on PMIC_LP87565 216 ---help--- 217 This enables implementation of driver-model regulator uclass 218 features for REGULATOR LP87565 and the family of LP87565 PMICs. 219 LP87565 series of PMICs have 4 single phase BUCKs that can also 220 be configured in multi phase modes. The driver implements 221 get/set api for value and enable. 222 223config DM_REGULATOR_STM32_VREFBUF 224 bool "Enable driver for STMicroelectronics STM32 VREFBUF" 225 depends on DM_REGULATOR && (STM32H7 || ARCH_STM32MP) 226 help 227 This driver supports STMicroelectronics STM32 VREFBUF (voltage 228 reference buffer) which can be used as voltage reference for 229 internal ADCs, DACs and also for external components through 230 dedicated Vref+ pin. 231 232config DM_REGULATOR_TPS65910 233 bool "Enable driver for TPS65910 PMIC regulators" 234 depends on DM_PMIC_TPS65910 235 ---help--- 236 The TPS65910 PMIC provides 4 SMPSs and 8 LDOs. This driver supports all 237 regulator types of the TPS65910 (BUCK, BOOST and LDO). It implements 238 the get/set api for value and enable. 239 240config DM_REGULATOR_STPMU1 241 bool "Enable driver for STPMU1 regulators" 242 depends on DM_REGULATOR && PMIC_STPMU1 243 ---help--- 244 Enable support for the regulator functions of the STPMU1 PMIC. The 245 driver implements get/set api for the various BUCKS and LDOs supported 246 by the PMIC device. This driver is controlled by a device tree node 247 which includes voltage limits. 248