summaryrefslogtreecommitdiff
path: root/drivers/power/regulator/Kconfig
AgeCommit message (Collapse)Author
2026-05-06power: regulator: Correct Kconfig for PFUZE100Peng Fan
Use CONFIG_$(PHASE_)DM_REGULATOR_PFUZE100 as the build condition for pfuze100 regulator driver. Add Kconfig option for SPL_DM_REGULATOR_PFUZE100. To avoid break current platforms, set the Kconfig default value same as PMIC_PFUZE100. Signed-off-by: Peng Fan <[email protected]>
2026-04-06Merge branch 'next'Tom Rini
2026-03-24power: regulator: qcom: Correct dependenecies for DM_REGULATOR_QCOM_USB_VBUSTom Rini
The DM_REGULATOR_QCOM_USB_VBUS functionality can only work with DM_PMIC enabled as well, so express this dependency in Kconfig. Signed-off-by: Tom Rini <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Casey Connolly <[email protected]>
2026-02-25power: regulator: Kconfig: add SPL_DM_REGULATOR_FAN53555Heinrich Schuchardt
Symbol CONFIG_SPL_DM_REGULATOR_FAN53555 is selected by SPL_DM_PMIC_FAN53555 and used in a Makefile. But the symbol definition is missing. Add the missing configuration symbol. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Peng Fan <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Reviewed-by: Tom Rini <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-02-25power: regulator: mt6359: add driver for MT6359PBo-Chen Chen
Add a new regulator driver for MT6359P and similar PMIC chips. The MT6359P is a eco version for MT6359 regulator. For the MT8391 platform, we use the MT6359P (MT6365) as the main PMIC. The MT6359 and MT6359P have different register maps. Therefore, on the MT8391 platform, we only provide support for the MT6359P. If support for the MT6359 PMIC it can be added later. Signed-off-by: Bo-Chen Chen <[email protected]> Signed-off-by: David Lechner <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-02-25power: regulator: add MediaTek MT6357 driverJulien Masson
Add a driver for the power regulators of the MediaTek MT6357 PMIC chip. Signed-off-by: Julien Masson <[email protected]> Co-developed-by: Macpaul Lin <[email protected]> Signed-off-by: Macpaul Lin <[email protected]> Signed-off-by: David Lechner <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-01-09dm: core: Default to using DEVRES outside of xPLTom Rini
The devm alloc functions that we have may follow the Linux kernel model where allocations are (almost always) automatically free()'d. However, quite often we don't enable, in full U-Boot, the tracking and free()'ing functionality. This in turn leads to memory leaks because the driver author expects that since the functions have the same name as in the Linux Kernel they have the same behavior. In turn we then get functionally correct commits such as commit 00e1fed93c8c ("firmware: ti_sci: Fix memory leaks in devm_ti_sci_get_of_resource") that manually add these calls. Rather than manually tracking allocations and implementing free()s, rework things so that we follow expectations by enabling the DEVRES functionality (outside of xPL phases). This turns DEVRES from a prompted symbol to a symbol that must be select'd, and we now remove our non-managed alloc/free functions from outside of xPL builds. Reviewed-by: Michael Trimarchi <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-12-24power: regulator: Fix dependency of SPL_DM_REGULATOR_GPIOPeng Fan
gpio-regulator uses dm gpio API, so it depends on SPL_DM_GPIO, not SPL_GPIO. Reported-by: Tom Rini <[email protected]> Reviewed-by: Tom Rini <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-12-24power: regulator: remove SPL_REGULATOR_PWM due to unmeetable SPL_DM_PWM ↵Quentin Schulz
dependency SPL_DM_PWM option simply doesn't exist. Moreover, drivers/pwm is only included by drivers/Makefile for non-xPL stages so making SPL_REGULATOR_PWM properly build for SPL/xPL is more involved than just adding an SPL_DM_PWM option. Reading the original commit (ddc824f89aa8 ("power: regulator: Allow PWM regulator to be omitted from SPL."), the intent seemingly wasn't to allow building support in XPL but rather to allow removing it which is done by using $(PHASE_) ($(SPL_) at that time) in the Makefile. If anyone needs that, let them figure out what they need to do without misleading potential users of this symbol by simply removing it. Fixes: 2a846e04c622 ("power: regulator: Correct dependencies on SPL_REGULATOR_PWM") Signed-off-by: Quentin Schulz <[email protected]> Reviewed-by: Anshul Dalal <[email protected]> Reviewed-by: Kory Maincent <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-12-24power: regulator: fix dependency for REGULATOR_PWMQuentin Schulz
The PWM regulator driver is a uclass driver, thus requiring DM_PWM to be enabled to be actually usable (and with the appropriate PWM controller driver enabled as well, but that we cannot enforce easily), so let's add this missing dependency. Fixes: 1a01695615f9 ("power: regulator: add pwm regulator") Signed-off-by: Quentin Schulz <[email protected]> Reviewed-by: Udit Kumar <[email protected]> Reviewed-by: Anshul Dalal <[email protected]> Reviewed-by: Kory Maincent <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-10-10power: regulator: Correct dependencies on SPL_REGULATOR_PWMTom Rini
In order to enable and build with SPL_REGULATOR_PWM we need to have both SPL_DM_REGULATOR and SPL_DM_PWM enabled. Build-wise, we can have SPL have PWM regulator support without enabling it in U-Boot itself so drop that dependency. Signed-off-by: Tom Rini <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-06-06regulator: rk8xx: Add CONFIG_SPL_REGULATOR_RK8XXJustin Klaassen
Allows use of the regulator functions of the RK8XX PMIC in SPL, which is necessary to support the functionality of the Rockchip IO-domain driver on relevant platforms. Signed-off-by: Justin Klaassen <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-05-08power: regulator: max9807: add regulator supportSvyatoslav Ryhel
Added a new regulator driver for the MAXIM MAX8907 PMIC, providing essential regulator functionalities and incorporated the necessary binding framework within the core PMIC driver. Tested-by: Ion Agorria <[email protected]> Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-04-28power: regulator: Add a driver for the AXP PMIC drivevbusSamuel Holland
AXP PMICs have a pin which can either report the USB VBUS state, or driving a regulator that supplies USB VBUS. Add a regulator driver for controlling this pin. The selection between input and output is done via the x-powers,drive-vbus-en pin on the PMIC (parent) node. Signed-off-by: Samuel Holland <[email protected]> Signed-off-by: Andre Przywara <[email protected]> Reviewed-by: Jernej Skrabec <[email protected]>
2025-04-12power: regulator: add regulator support for CPCAP PMICSvyatoslav Ryhel
The driver provides regulator set/get voltage and enable/disable functions for CPCAP PMIC. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-04-10power: regulator: add qcom-usb-vbusRui Miguel Silva
Add regulator driver that allow some Qualcomm PMIC to feed VBUS output to peripherals that are connected. Signed-off-by: Rui Miguel Silva <[email protected]> Acked-by: Caleb Connolly <[email protected]> Reviewed-by: Neil Armstrong <[email protected]> Reviewed-by: Caleb Connolly <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Caleb Connolly <[email protected]>
2025-03-19regulator: rzg2l-usbphy: Add new driverPaul Barker
Add a new regulator driver to control the USB VBUS supply on the Renesas RZ/G2L and related SoCs. Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: Paul Barker <[email protected]>
2024-09-05power: regulator: tps6287x: Add driver for TPS6287x step down convertorsKeerthy
Add driver for TPS6287x step down convertors Data sheet: https://www.ti.com/lit/ds/slvsgc5a/slvsgc5a.pdf Signed-off-by: Keerthy <[email protected]>
2024-07-26power: regulator: qcom-rpmh-regulator: add build infraCaleb Connolly
Add Kconfig and Makefile entries for this driver now that it can build for U-Boot. Reviewed-by: Neil Armstrong <[email protected]> Signed-off-by: Caleb Connolly <[email protected]>
2023-11-03power: regulator: tps65911: add regulator supportSvyatoslav Ryhel
The driver provides regulator set/get voltage enable/disable functions for TI TPS5911 PMIC. Signed-off-by: Svyatoslav Ryhel <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-11-03power: regulator: tps80031: add regulator supportSvyatoslav Ryhel
The driver provides regulator set/get voltage enable/disable functions for TI TPS80031/TPS80032 PMICs. Signed-off-by: Svyatoslav Ryhel <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-11-03power: regulator: max77663: add regulator supportSvyatoslav Ryhel
The driver provides regulator set/get voltage enable/disable functions for MAXIM MAX77663 PMICs. Signed-off-by: Svyatoslav Ryhel <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2023-04-28power: regulator: Add a driver for the AXP USB power supplySamuel Holland
This driver reports the presence/absence of voltage on the PMIC's USB VBUS pin. This information is used by the USB PHY driver. The corresponding Linux driver uses the power supply class, which does not exist in U-Boot. UCLASS_REGULATOR seems to be the closest match. Signed-off-by: Samuel Holland <[email protected]> Acked-by: Andre Przywara <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2023-01-23power: regulator: Add a driver for AXP PMIC regulatorsSamuel Holland
This driver handles most voltage regulators found in X-Powers AXP PMICs. It is based on, and intended to replace, the regulator driver in TF-A. AXP PMIC regulators can be divided into 6 categories: - Switches without voltage control => fully supported. - Single linear range => fully supported. - Two linear ranges, "step" and "2 * step" => fully supported. - Two linear ranges, "step" and "5 * step" => only the first range is supported. No boards are known to use the second range. - Non-linear voltage values => fully supported. - LDOs shared with GPIO pins => not supported. Signed-off-by: Samuel Holland <[email protected]> Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2022-12-26power: regulator: Add support for NPCM8xxJim Liu
Add support for setting nuvoton BMC NPCM845 voltage supply. Signed-off-by: Jim Liu <[email protected]>
2022-07-07spl: Ensure all SPL symbols in Kconfig have some SPL dependencyTom Rini
Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2022-05-20pmic: pca9450: Add regulator driverMarek Vasut
Add PCA9450 regulator driver. This is complementary driver for the BUCKn and LDOn regulators provided by the PCA9450 PMIC driver. Currently the driver permits reading the settngs and configuring the BUCKn and LDOn regulators. Reviewed-by: Fabio Estevam <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: Peng Fan <[email protected]> Cc: Stefano Babic <[email protected]>
2022-05-09regulator: add driver for the TPS65219 BUCK & LDO regulatorsNeil Armstrong
The TPS65219 I2S PMIC features 3 Buck converters and 4 linear regulators, 2 GPOs, 1 GPIO, and 3 multi-function-pin. This adds the driver for the Buck converters & linear regulators. Signed-off-by: Neil Armstrong <[email protected]>
2021-07-28Rename GPIO_SUPPORT to GPIOSimon Glass
Rename these options so that CONFIG_IS_ENABLED can be used with them. Signed-off-by: Simon Glass <[email protected]>
2021-07-28Rename SPL_POWER_SUPPORT to SPL_POWERSimon Glass
Rename this option so that CONFIG_IS_ENABLED can be used with it. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2021-04-20power: regulator: add driver for ANATOP regulatorYing-Chun Liu (PaulLiu)
Anatop is an integrated regulator inside i.MX6 SoC. There are 3 digital regulators which controls PU, CORE (ARM), and SOC. And 3 analog regulators which controls 1P1, 2P5, 3P0 (USB). This patch adds the Anatop regulator driver. Signed-off-by: Ying-Chun Liu (PaulLiu) <[email protected]> Reviewed-by: Sean Anderson <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: Jaehoon Chung <[email protected]> Cc: Peng Fan <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2021-04-12firmware: scmi: voltage regulatorEtienne Carriere
Implement voltage regulators interfaced by the SCMI voltage domain protocol. The DT bindings are defined in the Linux kernel since SCMI voltage domain and regulators patches [1] and [2] integration in v5.11-rc7. Link: [1] https://github.com/torvalds/linux/commit/0f80fcec08e9c50b8d2992cf26495673765ebaba Link: [2] https://github.com/torvalds/linux/commit/2add5cacff3531e54c50b0832128299faa9f0563 Signed-off-by: Etienne Carriere <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2021-01-16power: regulator: Kconfig: add a dependency for POWER_SUPPORT for SPLNishanth Menon
power/regulator will not be built if just CONFIG_SPL_DM_REGULATOR is enabled. It needs CONFIG_SPL_POWER_SUPPORT to be enabled as well. For example, if we just need a GPIO regulator in SPL: CONFIG_DM_REGULATOR=y CONFIG_SPL_DM_REGULATOR=y CONFIG_DM_REGULATOR_GPIO=y CONFIG_SPL_DM_REGULATOR_GPIO=y Will not suffice, since the entire regulator build for SPL depends on CONFIG_SPL_POWER_SUPPORT. Elaborate that information in the Kconfig dependency. Signed-off-by: Nishanth Menon <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2020-01-27power: regulator: add driver for Dialog DA9063 PMICMartin Fuzzey
Add a driver for the regulators in the the DA9063 PMIC. Robert Beckett: move regulator modes to header so board code can set modes. Correct mode mask used in ldo_set_mode. Add an option CONFIG_SPL_DM_REGULATOR_DA9063. Signed-off-by: Martin Fuzzey <[email protected]> Signed-off-by: Robert Beckett <[email protected]>
2019-11-07power: regulator: tps65941: add regulator supportKeerthy
The driver provides regulator set/get voltage enable/disable functions for tps65941 family of PMICs. Signed-off-by: Keerthy <[email protected]>
2019-11-07power: regulator: tps6236x: add support for tps6236x regulatorsTero Kristo
TPS6236x is a family of step down DC-DC converters optimized for battery powered portable applications for a small solution size. Add a regulator driver for supporting these devices. Signed-off-by: Tero Kristo <[email protected]> Signed-off-by: Keerthy <[email protected]>
2019-07-19regulator: bd718x7: support ROHM BD71837 and BD71847 PMICsMatti Vaittinen
BD71837 and BD71847 is PMIC intended for powering single-core, dual-core, and quad-core SoC’s such as NXP-i.MX 8M. BD71847 is used for example on NXP imx8mm EVK. Add regulator driver for ROHM BD71837 and BD71847 PMICs. BD71837 contains 8 bucks and 7 LDOS. BD71847 is reduced version containing 6 bucks and 6 LDOs. Voltages for DVS bucks (1-4 on BD71837, 1 and 2 on BD71847) can be adjusted when regulators are enabled. For other bucks and LDOs we may have over- or undershooting if voltage is adjusted when regulator is enabled. Thus this is prevented by default. BD718x7 has a quirk which may leave power output disabled after reset if enable/disable state was controlled by SW. Thus the SW control is only allowed for BD71837 bucks 3 and 4 by default. The impact of this limitation must be evaluated board-by board and restrictions may need to be modified. (Linux driver get's these limitations from DT and we may want to implement same on u-Boot driver). Signed-off-by: Matti Vaittinen <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2019-07-18regulator: Allow enabling GPIO regulatorSven Schwermer
Drivers need to be able to enable regulators that may be implemented as GPIO regulators. Example: fsl_esdhc enables the vqmmc supply which is commonly implemented as a GPIO regulator in order to switch between I/O voltage levels. Signed-off-by: Sven Schwermer <[email protected]> Reviewed-by: Lukasz Majewski <[email protected]>
2019-07-18regulator: Factor out common enable codeSven Schwermer
In preparation of being able to enable/disable GPIO regulators, the code that will be shared among the two kinds to regulators is factored out into its own source files. Signed-off-by: Sven Schwermer <[email protected]> Reviewed-by: Lukasz Majewski <[email protected]>
2019-07-13power: regulator: Kconfig: Add SPL_DM_REGULATOR configs for ↵Keerthy
palmas/lp873x/lp87565 Add SPL_DM_REGULATOR configs for palmas/lp873x/lp87565. These were missing and the Makefile already assumes them to be defined. Add the corresponding SPL config options. This enables the regulator support in SPL. Signed-off-by: Keerthy <[email protected]>
2019-04-12power: rename stpmu1 to official name stpmic1Patrick Delaunay
Alignment with kernel driver name & binding introduced by https://patchwork.kernel.org/cover/10761943/ to use the final marketing name = STPMIC1. Signed-off-by: Patrick Delaunay <[email protected]> Reviewed-by: Lukasz Majewski <[email protected]>
2019-01-02power: regulator: Allow PWM regulator to be omitted from SPL.Christoph Muellner
This patch allows to enable the PWM regulator driver independent for U-Boot and SPL. Signed-off-by: Christoph Muellner <[email protected]> Reviewed-by: Philipp Tomsich <[email protected]>
2018-12-10power: add FAN53555 family supportPhilipp Tomsich
This adds a driver for the FAN53555 family of regulators and wraps it in a PMIC implementation. While these devices support a 'normal' and 'suspend' mode (controlled via an external pin) to switch between two programmable voltages, this incarnation of the driver assumes that the device is always operating in 'normal' mode. Only setting/reading the programmed voltage is supported at this time and the following device functionality remains unsupported: - switching the selected voltage (via a GPIO) - disabling the voltage output via software-control This matches the functionality of the Linux driver. Tested on a RK3399-Q7 (with 'option 5' devices): setting voltages from the U-Boot shell and verifying output voltages on the board. Signed-off-by: Philipp Tomsich <[email protected]> Tested-by: Klaus Goger <[email protected]>
2018-11-01power: spl: add SPL_DM_REGULATOR_GPIO in KconfigLokesh Vutla
The Makefile already tests for SPL_DM_REGULATOR_GPIO, but Kconfig does not provide it. This adds SPL_DM_REGULATOR_GPIO to Kconfig. Signed-off-by: Lokesh Vutla <[email protected]>
2018-05-08power: regulator: Add support for stm32-vrefbufFabrice Gasnier
Add regulator driver for STM32 voltage reference buffer which can be used as voltage reference for ADCs, DACs and external components through dedicated VREF+ pin. Signed-off-by: Fabrice Gasnier <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2018-05-08power: regulator: stpmu1: Introduce stpmu1 driverChristophe Kerello
Enable support for the regulator functions of the STPMU1X PMIC. The driver implements get/set api for the various BUCKS and LDOs supported by the PMIC device. This driver is controlled by a device tree node which includes voltage limits. Signed-off-by: Christophe Kerello <[email protected]> Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2018-01-24power: regulator: s2mps11: add a regulator driver for s2mps11Jaehoon Chung
exynos5422 has the s2mps11 PMIC. s2mps11 pmic has the 10-BUCK and 38-LDO regulators. Each IP and devices in exynos5422 can be controlled by each regulators. This patch is support for s2mps11 regulator driver. Signed-off-by: Jaehoon Chung <[email protected]> Reviewed-by: Simon Glass <[email protected]> Tested-by: Anand Moon <[email protected]>
2017-12-12power: pmic/regulator: Add basic support for TPS65910Felix Brack
Texas Instrument's TPS65910 PMIC contains 3 buck DC-DC converts, one boost DC-DC converter and 8 LDOs. This patch implements driver model support for the TPS65910 PMIC and its regulators making the get/set API for regulator value/enable available. This patch depends on the patch "am33xx: Add a function to query MPU voltage in uV" to build correctly. For boards relying on the DT include file tps65910.dtsi the v3 patch "power: extend prefix match to regulator-name property" and an appropriate regulator naming is also required. Signed-off-by: Felix Brack <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2017-10-01power: spl: add SPL_DM_REGULATOR_FIXED in KconfigPhilipp Tomsich
The Makefile already tests for SPL_DM_REGULATOR_FIXED, but Kconfig does not provide it. This adds SPL_DM_REGULATOR_FIXED to Kconfig. Signed-off-by: Philipp Tomsich <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2017-09-22regulator: pbias: Add PBIAS regulator for proper voltage switching on MMC1Jean-Jacques Hiblot
In the TI SOCs a PBIAS cell exists to provide a bias voltage to the MMC1 IO cells. Without this bias voltage these I/O cells can not function properly. The PBIAS cell is controlled by software. Signed-off-by: Jean-Jacques Hiblot <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>