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