1af41e8dbSPrzemyslaw Marczakconfig DM_REGULATOR 2af41e8dbSPrzemyslaw Marczak bool "Enable Driver Model for REGULATOR drivers (UCLASS_REGULATOR)" 3af41e8dbSPrzemyslaw Marczak depends on DM 4af41e8dbSPrzemyslaw Marczak ---help--- 5af41e8dbSPrzemyslaw Marczak This config enables the driver model regulator support. 6af41e8dbSPrzemyslaw Marczak UCLASS_REGULATOR - designed to provide a common API for basic regulator's 7af41e8dbSPrzemyslaw Marczak functions, like get/set Voltage or Current value, enable state, etc... 8af41e8dbSPrzemyslaw Marczak Note: 9af41e8dbSPrzemyslaw Marczak When enabling this, please read the description, found in the files: 10af41e8dbSPrzemyslaw Marczak - 'include/power/pmic.h' 11af41e8dbSPrzemyslaw Marczak - 'include/power/regulator.h' 12af41e8dbSPrzemyslaw Marczak - 'drivers/power/pmic/pmic-uclass.c' 13af41e8dbSPrzemyslaw Marczak - 'drivers/power/pmic/regulator-uclass.c' 14af41e8dbSPrzemyslaw Marczak It's important to call the device_bind() with the proper node offset, 15af41e8dbSPrzemyslaw Marczak when binding the regulator devices. The pmic_bind_childs() can be used 162e3f1ff6SSimon Glass for this purpose if PMIC I/O driver is implemented or dm_scan_fdt_dev() 173b880757SPrzemyslaw Marczak otherwise. Detailed information can be found in the header file. 181757df46SPrzemyslaw Marczak 191f2b4b06SSimon Glassconfig SPL_DM_REGULATOR 201f2b4b06SSimon Glass bool "Enable regulators for SPL" 211f2b4b06SSimon Glass depends on DM_REGULATOR 221f2b4b06SSimon Glass ---help--- 231f2b4b06SSimon Glass Regulators are seldom needed in SPL. Even if they are accessed, some 241f2b4b06SSimon Glass code space can be saved by accessing the PMIC registers directly. 251f2b4b06SSimon Glass Enable this option if you need regulators in SPL and can cope with 261f2b4b06SSimon Glass the extra code size. 271f2b4b06SSimon Glass 289119820bSSimon Glassconfig REGULATOR_ACT8846 299119820bSSimon Glass bool "Enable driver for ACT8846 regulator" 309119820bSSimon Glass depends on DM_REGULATOR && PMIC_ACT8846 319119820bSSimon Glass ---help--- 329119820bSSimon Glass Enable support for the regulator functions of the ACT8846 PMIC. The 339119820bSSimon Glass driver implements get/set api for the various BUCKS and LDOS supported 349119820bSSimon Glass by the PMIC device. This driver is controlled by a device tree node 359119820bSSimon Glass which includes voltage limits. 369119820bSSimon Glass 37deea211aSSimon Glassconfig REGULATOR_AS3722 38deea211aSSimon Glass bool "Enable driver for AS7322 regulator" 39deea211aSSimon Glass depends on DM_REGULATOR && PMIC_AS3722 40deea211aSSimon Glass help 41deea211aSSimon Glass Enable support for the regulator functions of the AS3722. The 42deea211aSSimon Glass driver implements enable/disable for step-down bucks and LDOs, 43deea211aSSimon Glass but does not yet support change voltages. Currently this must be 44deea211aSSimon Glass done using direct register writes to the PMIC. 45deea211aSSimon Glass 468fa46350SPeng Fanconfig DM_REGULATOR_PFUZE100 478fa46350SPeng Fan bool "Enable Driver Model for REGULATOR PFUZE100" 488fa46350SPeng Fan depends on DM_REGULATOR && DM_PMIC_PFUZE100 498fa46350SPeng Fan ---help--- 508fa46350SPeng Fan This config enables implementation of driver-model regulator uclass 518fa46350SPeng Fan features for REGULATOR PFUZE100. The driver implements get/set api for: 528fa46350SPeng Fan value, enable and mode. 538fa46350SPeng Fan 541a016956SKever Yangconfig REGULATOR_PWM 551a016956SKever Yang bool "Enable driver for PWM regulators" 561a016956SKever Yang depends on DM_REGULATOR 571a016956SKever Yang ---help--- 581a016956SKever Yang Enable support for the PWM regulator functions which voltage are 591a016956SKever Yang controlled by PWM duty ratio. Some of Rockchip board using this kind 601a016956SKever Yang of regulator. The driver implements get/set api for the various BUCKS. 611a016956SKever Yang This driver is controlled by a device tree node 621a016956SKever Yang which includes voltage limits. 631a016956SKever Yang 64*ddc824f8SChristoph Muellnerconfig SPL_REGULATOR_PWM 65*ddc824f8SChristoph Muellner bool "Enable Driver for PWM regulators in SPL" 66*ddc824f8SChristoph Muellner depends on REGULATOR_PWM 67*ddc824f8SChristoph Muellner help 68*ddc824f8SChristoph Muellner This config enables implementation of driver-model regulator uclass 69*ddc824f8SChristoph Muellner features for PWM regulators in SPL. 70*ddc824f8SChristoph Muellner 711757df46SPrzemyslaw Marczakconfig DM_REGULATOR_MAX77686 721757df46SPrzemyslaw Marczak bool "Enable Driver Model for REGULATOR MAX77686" 731757df46SPrzemyslaw Marczak depends on DM_REGULATOR && DM_PMIC_MAX77686 741757df46SPrzemyslaw Marczak ---help--- 751757df46SPrzemyslaw Marczak This config enables implementation of driver-model regulator uclass 761757df46SPrzemyslaw Marczak features for REGULATOR MAX77686. The driver implements get/set api for: 771757df46SPrzemyslaw Marczak value, enable and mode. 789923a8b4SPrzemyslaw Marczak 79dfb0a70aSPhilipp Tomsichconfig DM_REGULATOR_FAN53555 80dfb0a70aSPhilipp Tomsich bool "Enable Driver Model for REGULATOR FAN53555" 81dfb0a70aSPhilipp Tomsich depends on DM_PMIC_FAN53555 82dfb0a70aSPhilipp Tomsich help 83dfb0a70aSPhilipp Tomsich This config enables implementation of driver-model regulator 84dfb0a70aSPhilipp Tomsich uclass features for the FAN53555 regulator. The FAN53555 is 85dfb0a70aSPhilipp Tomsich a (family of) single-output regulators that supports 86dfb0a70aSPhilipp Tomsich transitioning between two different output voltages based on 87dfb0a70aSPhilipp Tomsich an voltage selection pin. 88dfb0a70aSPhilipp Tomsich 89dfb0a70aSPhilipp Tomsich The driver implements a get/set api for the voltage of the 90dfb0a70aSPhilipp Tomsich 'normal mode' voltage only. Switching to 'suspend mode' 91dfb0a70aSPhilipp Tomsich (i.e. the alternate voltage), disabling output via software, 92dfb0a70aSPhilipp Tomsich or switching the mode is not supported by this driver (at 93dfb0a70aSPhilipp Tomsich this time). 94dfb0a70aSPhilipp Tomsich 959923a8b4SPrzemyslaw Marczakconfig DM_REGULATOR_FIXED 969923a8b4SPrzemyslaw Marczak bool "Enable Driver Model for REGULATOR Fixed value" 979923a8b4SPrzemyslaw Marczak depends on DM_REGULATOR 989923a8b4SPrzemyslaw Marczak ---help--- 999923a8b4SPrzemyslaw Marczak This config enables implementation of driver-model regulator uclass 1009923a8b4SPrzemyslaw Marczak features for fixed value regulators. The driver implements get/set api 1019923a8b4SPrzemyslaw Marczak for enable and get only for voltage value. 1025d387d0dSPrzemyslaw Marczak 1039086eab8SPhilipp Tomsichconfig SPL_DM_REGULATOR_FIXED 1049086eab8SPhilipp Tomsich bool "Enable Driver Model for REGULATOR Fixed value in SPL" 1059086eab8SPhilipp Tomsich depends on DM_REGULATOR_FIXED 1069086eab8SPhilipp Tomsich ---help--- 1079086eab8SPhilipp Tomsich This config enables implementation of driver-model regulator uclass 1089086eab8SPhilipp Tomsich features for fixed value regulators in SPL. 1099086eab8SPhilipp Tomsich 110477dfe2fSKeerthyconfig DM_REGULATOR_GPIO 111477dfe2fSKeerthy bool "Enable Driver Model for GPIO REGULATOR" 11226da01f7SLokesh Vutla depends on DM_REGULATOR && DM_GPIO 113477dfe2fSKeerthy ---help--- 114477dfe2fSKeerthy This config enables implementation of driver-model regulator uclass 115477dfe2fSKeerthy features for gpio regulators. The driver implements get/set for 116477dfe2fSKeerthy voltage value. 117477dfe2fSKeerthy 11826da01f7SLokesh Vutlaconfig SPL_DM_REGULATOR_GPIO 11926da01f7SLokesh Vutla bool "Enable Driver Model for GPIO REGULATOR in SPL" 12026da01f7SLokesh Vutla depends on DM_REGULATOR_GPIO && SPL_GPIO_SUPPORT 12126da01f7SLokesh Vutla ---help--- 12226da01f7SLokesh Vutla This config enables implementation of driver-model regulator uclass 12326da01f7SLokesh Vutla features for gpio regulators in SPL. 12426da01f7SLokesh Vutla 125453c5a92SJacob Chenconfig REGULATOR_RK8XX 126453c5a92SJacob Chen bool "Enable driver for RK8XX regulators" 127453c5a92SJacob Chen depends on DM_REGULATOR && PMIC_RK8XX 128e1227764SSimon Glass ---help--- 129453c5a92SJacob Chen Enable support for the regulator functions of the RK8XX PMIC. The 130e1227764SSimon Glass driver implements get/set api for the various BUCKS and LDOs supported 131e1227764SSimon Glass by the PMIC device. This driver is controlled by a device tree node 132e1227764SSimon Glass which includes voltage limits. 133e1227764SSimon Glass 13460599ea6SJaehoon Chungconfig DM_REGULATOR_S2MPS11 13560599ea6SJaehoon Chung bool "Enable driver for S2MPS11 regulator" 13660599ea6SJaehoon Chung depends on DM_REGULATOR && PMIC_S2MPS11 13760599ea6SJaehoon Chung ---help--- 13860599ea6SJaehoon Chung This enables implementation of driver-model regulator uclass 13960599ea6SJaehoon Chung features for REGULATOR S2MPS11. 14060599ea6SJaehoon Chung The driver implements get/set api for: value and enable. 14160599ea6SJaehoon Chung 142f615e6a6SSimon Glassconfig REGULATOR_S5M8767 143f615e6a6SSimon Glass bool "Enable support for S5M8767 regulator" 144f615e6a6SSimon Glass depends on DM_REGULATOR && PMIC_S5M8767 145f615e6a6SSimon Glass ---help--- 146f615e6a6SSimon Glass This enables the regulator features of the S5M8767, allowing voltages 147f615e6a6SSimon Glass to be set, etc. The driver is not fully complete but supports most 148f615e6a6SSimon Glass common requirements, including all LDOs and BUCKs. This allows many 149f615e6a6SSimon Glass supplies to be set automatically using the device tree values. 150f615e6a6SSimon Glass 1515d387d0dSPrzemyslaw Marczakconfig DM_REGULATOR_SANDBOX 1525d387d0dSPrzemyslaw Marczak bool "Enable Driver Model for Sandbox PMIC regulator" 1535d387d0dSPrzemyslaw Marczak depends on DM_REGULATOR && DM_PMIC_SANDBOX 1545d387d0dSPrzemyslaw Marczak ---help--- 1555d387d0dSPrzemyslaw Marczak Enable the regulator driver for emulated Sandbox PMIC. 1565d387d0dSPrzemyslaw Marczak The emulated PMIC device depends on two drivers: 1575d387d0dSPrzemyslaw Marczak - sandbox PMIC I/O driver - implements dm pmic operations 1585d387d0dSPrzemyslaw Marczak - sandbox PMIC regulator driver - implements dm regulator operations 1595d387d0dSPrzemyslaw Marczak - sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission 1605d387d0dSPrzemyslaw Marczak 1615d387d0dSPrzemyslaw Marczak The regulator driver provides uclass operations for sandbox PMIC's 1625d387d0dSPrzemyslaw Marczak regulators. The driver implements get/set api for: voltage, current, 1635d387d0dSPrzemyslaw Marczak operation mode and enable state. 1645d387d0dSPrzemyslaw Marczak The driver supports LDO and BUCK regulators. 1655d387d0dSPrzemyslaw Marczak 1665d387d0dSPrzemyslaw Marczak The Sandbox PMIC info: 1675d387d0dSPrzemyslaw Marczak * I/O interface: 1685d387d0dSPrzemyslaw Marczak - I2C chip address: 0x40 1695d387d0dSPrzemyslaw Marczak - first register address: 0x0 1705d387d0dSPrzemyslaw Marczak - register count: 0x10 1715d387d0dSPrzemyslaw Marczak * Adjustable outputs: 1725d387d0dSPrzemyslaw Marczak - 2x LDO 1735d387d0dSPrzemyslaw Marczak - 2x BUCK 1745d387d0dSPrzemyslaw Marczak - Each, with a different operating conditions (header). 1755d387d0dSPrzemyslaw Marczak * Reset values: 1765d387d0dSPrzemyslaw Marczak - set by i2c emul driver's probe() (defaults in header) 1775d387d0dSPrzemyslaw Marczak 1785d387d0dSPrzemyslaw Marczak A detailed information can be found in header: '<power/sandbox_pmic.h>' 1795d387d0dSPrzemyslaw Marczak Binding info: 'doc/device-tree-bindings/pmic/max77686.txt' 1801c88b67eSSimon Glass 1811c88b67eSSimon Glassconfig REGULATOR_TPS65090 1821c88b67eSSimon Glass bool "Enable driver for TPS65090 PMIC regulators" 1831c88b67eSSimon Glass depends on PMIC_TPS65090 1841c88b67eSSimon Glass ---help--- 1851c88b67eSSimon Glass The TPS65090 provides several FETs (Field-effect Transistors, 1861c88b67eSSimon Glass effectively switches) which are supported by this driver as 1871c88b67eSSimon Glass regulators, one for each FET. The standard regulator interface is 1881c88b67eSSimon Glass supported, but it is only possible to turn the regulators on or off. 1891c88b67eSSimon Glass There is no voltage/current control. 190884d88bcSKeerthy 191884d88bcSKeerthyconfig DM_REGULATOR_PALMAS 192884d88bcSKeerthy bool "Enable driver for PALMAS PMIC regulators" 193884d88bcSKeerthy depends on PMIC_PALMAS 194884d88bcSKeerthy ---help--- 195884d88bcSKeerthy This enables implementation of driver-model regulator uclass 196884d88bcSKeerthy features for REGULATOR PALMAS and the family of PALMAS PMICs. 197884d88bcSKeerthy The driver implements get/set api for: value and enable. 19899785de8SKeerthy 1998ff7763dSJean-Jacques Hiblotconfig DM_REGULATOR_PBIAS 2008ff7763dSJean-Jacques Hiblot bool "Enable driver for PBIAS regulator" 2018ff7763dSJean-Jacques Hiblot depends on DM_REGULATOR 2028ff7763dSJean-Jacques Hiblot select REGMAP 2038ff7763dSJean-Jacques Hiblot select SYSCON 2048ff7763dSJean-Jacques Hiblot ---help--- 2058ff7763dSJean-Jacques Hiblot This enables implementation of driver-model regulator uclass 2068ff7763dSJean-Jacques Hiblot features for pseudo-regulator PBIAS found in the OMAP SOCs. 2078ff7763dSJean-Jacques Hiblot This pseudo-regulator is used to provide a BIAS voltage to MMC1 2088ff7763dSJean-Jacques Hiblot signal pads and must be configured properly during a voltage switch. 2098ff7763dSJean-Jacques Hiblot Voltage switching is required by some operating modes of SDcards and 2108ff7763dSJean-Jacques Hiblot eMMC. 2118ff7763dSJean-Jacques Hiblot 21299785de8SKeerthyconfig DM_REGULATOR_LP873X 21399785de8SKeerthy bool "Enable driver for LP873X PMIC regulators" 21499785de8SKeerthy depends on PMIC_LP873X 21599785de8SKeerthy ---help--- 21699785de8SKeerthy This enables implementation of driver-model regulator uclass 21799785de8SKeerthy features for REGULATOR LP873X and the family of LP873X PMICs. 21899785de8SKeerthy The driver implements get/set api for: value and enable. 2192dd9dc02SKeerthy 2202dd9dc02SKeerthyconfig DM_REGULATOR_LP87565 2212dd9dc02SKeerthy bool "Enable driver for LP87565 PMIC regulators" 2222dd9dc02SKeerthy depends on PMIC_LP87565 2232dd9dc02SKeerthy ---help--- 2242dd9dc02SKeerthy This enables implementation of driver-model regulator uclass 2252dd9dc02SKeerthy features for REGULATOR LP87565 and the family of LP87565 PMICs. 2262dd9dc02SKeerthy LP87565 series of PMICs have 4 single phase BUCKs that can also 2272dd9dc02SKeerthy be configured in multi phase modes. The driver implements 2282dd9dc02SKeerthy get/set api for value and enable. 229854dfbf9SFelix Brack 23093cf0ae7SFabrice Gasnierconfig DM_REGULATOR_STM32_VREFBUF 23193cf0ae7SFabrice Gasnier bool "Enable driver for STMicroelectronics STM32 VREFBUF" 23293cf0ae7SFabrice Gasnier depends on DM_REGULATOR && (STM32H7 || ARCH_STM32MP) 23393cf0ae7SFabrice Gasnier help 23493cf0ae7SFabrice Gasnier This driver supports STMicroelectronics STM32 VREFBUF (voltage 23593cf0ae7SFabrice Gasnier reference buffer) which can be used as voltage reference for 23693cf0ae7SFabrice Gasnier internal ADCs, DACs and also for external components through 23793cf0ae7SFabrice Gasnier dedicated Vref+ pin. 23893cf0ae7SFabrice Gasnier 239854dfbf9SFelix Brackconfig DM_REGULATOR_TPS65910 240854dfbf9SFelix Brack bool "Enable driver for TPS65910 PMIC regulators" 241854dfbf9SFelix Brack depends on DM_PMIC_TPS65910 242854dfbf9SFelix Brack ---help--- 243854dfbf9SFelix Brack The TPS65910 PMIC provides 4 SMPSs and 8 LDOs. This driver supports all 244854dfbf9SFelix Brack regulator types of the TPS65910 (BUCK, BOOST and LDO). It implements 245854dfbf9SFelix Brack the get/set api for value and enable. 246069f0b63SChristophe Kerello 247069f0b63SChristophe Kerelloconfig DM_REGULATOR_STPMU1 248069f0b63SChristophe Kerello bool "Enable driver for STPMU1 regulators" 249069f0b63SChristophe Kerello depends on DM_REGULATOR && PMIC_STPMU1 250069f0b63SChristophe Kerello ---help--- 251069f0b63SChristophe Kerello Enable support for the regulator functions of the STPMU1 PMIC. The 252069f0b63SChristophe Kerello driver implements get/set api for the various BUCKS and LDOs supported 253069f0b63SChristophe Kerello by the PMIC device. This driver is controlled by a device tree node 254069f0b63SChristophe Kerello which includes voltage limits. 255