| /kernel/linux/linux-5.10/drivers/regulator/ |
| D | lp8788-buck.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * TI LP8788 MFD - buck regulator driver 94 /* BUCK 1 ~ 4 voltage ranges */ 100 static void lp8788_buck1_set_dvs(struct lp8788_buck *buck) in lp8788_buck1_set_dvs() argument 102 struct lp8788_buck1_dvs *dvs = (struct lp8788_buck1_dvs *)buck->dvs; in lp8788_buck1_set_dvs() 108 pinstate = dvs->vsel == DVS_SEL_V0 ? DVS_LOW : DVS_HIGH; in lp8788_buck1_set_dvs() 109 if (gpio_is_valid(dvs->gpio)) in lp8788_buck1_set_dvs() 110 gpio_set_value(dvs->gpio, pinstate); in lp8788_buck1_set_dvs() 113 static void lp8788_buck2_set_dvs(struct lp8788_buck *buck) in lp8788_buck2_set_dvs() argument 115 struct lp8788_buck2_dvs *dvs = (struct lp8788_buck2_dvs *)buck->dvs; in lp8788_buck2_set_dvs() [all …]
|
| D | lp3972.c | 1 // SPDX-License-Identifier: GPL-2.0-only 147 LP3972_LDO1 -> 0, LP3972_LDO2 -> 4 148 LP3972_LDO3 -> 0, LP3972_LDO4 -> 4 149 LP3972_LDO5 -> 0 169 return -EIO; in lp3972_i2c_read() 182 return -EIO; in lp3972_i2c_write() 190 mutex_lock(&lp3972->io_lock); in lp3972_reg_read() 192 lp3972_i2c_read(lp3972->i2c, reg, 1, &val); in lp3972_reg_read() 194 dev_dbg(lp3972->dev, "reg read 0x%02x -> 0x%02x\n", (int)reg, in lp3972_reg_read() 197 mutex_unlock(&lp3972->io_lock); in lp3972_reg_read() [all …]
|
| D | lp3971.c | 1 // SPDX-License-Identifier: GPL-2.0-only 40 LP3971_BUCK1 -> 0 41 LP3971_BUCK2 -> 4 42 LP3971_BUCK3 -> 6 77 LP3971_LDO1 -> LP3971_LDO_VOL_CONTR_BASE + 0 78 LP3971_LDO2 -> LP3971_LDO_VOL_CONTR_BASE + 0 79 LP3971_LDO3 -> LP3971_LDO_VOL_CONTR_BASE + 1 80 LP3971_LDO4 -> LP3971_LDO_VOL_CONTR_BASE + 1 81 LP3971_LDO5 -> LP3971_LDO_VOL_CONTR_BASE + 2 86 LP3971_LDO1 -> 0, LP3971_LDO2 -> 4 [all …]
|
| D | max77686-regulator.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // max77686.c - Regulator driver for the Maxim 77686 21 #include <linux/mfd/max77686-private.h> 37 * Value for configuring buck[89] and LDO{20,21,22} as GPIO control. 43 * Forcing low power mode: LDO1, 3-5, 9, 13, 17-26 48 * - LDO2, 6-8, 10-12, 14-16 49 * - buck[1234] 54 /* Forcing low power mode: buck[234] */ 112 if (test_bit(id, max77686->gpio_enabled)) in max77686_map_normal_mode() 129 ret = regmap_update_bits(rdev->regmap, rdev->desc->enable_reg, in max77686_set_suspend_disable() [all …]
|
| D | max77802-regulator.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // max77802.c - Regulator driver for the Maxim 77802 5 // Copyright (C) 2013-2014 Google, Inc 24 #include <linux/mfd/max77686-private.h> 25 #include <dt-bindings/regulator/maxim,max77802.h> 46 /* MAX77802 has two register formats: 2-bit and 4-bit */ 84 return -EINVAL; in max77802_get_opmode_shift() 88 * max77802_set_suspend_disable - Disable the regulator during system suspend 101 if (WARN_ON_ONCE(id >= ARRAY_SIZE(max77802->opmode))) in max77802_set_suspend_disable() 102 return -EINVAL; in max77802_set_suspend_disable() [all …]
|
| D | mt6397-regulator.c | 1 // SPDX-License-Identifier: GPL-2.0 14 #include <linux/regulator/mt6397-regulator.h> 16 #include <dt-bindings/regulator/mediatek,mt6397-regulator.h> 24 * @vselctrl_reg: Register for controlling the buck control mode. 25 * @vselctrl_mask: Mask for query buck's voltage control mode. 49 .n_voltages = (max - min)/step + 1, \ 174 ret = -EINVAL; in mt6397_regulator_set_mode() 178 dev_dbg(&rdev->dev, "mt6397 buck set_mode %#x, %#x, %#x, %#x\n", in mt6397_regulator_set_mode() 179 info->modeset_reg, info->modeset_mask, in mt6397_regulator_set_mode() 180 info->modeset_shift, val); in mt6397_regulator_set_mode() [all …]
|
| D | lp872x.c | 1 // SPDX-License-Identifier: GPL-2.0-only 93 /* dump registers in regmap-debugfs */ 134 /* LP8720 BUCK voltage table */ 143 /* LP8725 BUCK voltage table */ 151 /* LP8725 BUCK current limit */ 161 ret = regmap_read(lp->regmap, addr, &val); in lp872x_read_byte() 163 dev_err(lp->dev, "failed to read 0x%.2x\n", addr); in lp872x_read_byte() 173 return regmap_write(lp->regmap, addr, data); in lp872x_write_byte() 179 return regmap_update_bits(lp->regmap, addr, mask, data); in lp872x_update_bits() 184 enum lp872x_id chip = lp->chipid; in lp872x_get_timestep_usec() [all …]
|
| D | max8998.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // max8998.c - Voltage regulator driver for the Maxim 8998 5 // Copyright (C) 2009-2010 Samsung Electronics 23 #include <linux/mfd/max8998-private.h> 48 *shift = 3 - (ldo - MAX8998_LDO2); in max8998_get_enable_register() 52 *shift = 7 - (ldo - MAX8998_LDO6); in max8998_get_enable_register() 56 *shift = 7 - (ldo - MAX8998_LDO14); in max8998_get_enable_register() 60 *shift = 7 - (ldo - MAX8998_BUCK1); in max8998_get_enable_register() 64 *shift = 7 - (ldo - MAX8998_EN32KHZ_AP); in max8998_get_enable_register() 68 *shift = 7 - (ldo - MAX8998_ESAFEOUT1); in max8998_get_enable_register() [all …]
|
| /kernel/linux/linux-6.6/drivers/regulator/ |
| D | lp8788-buck.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * TI LP8788 MFD - buck regulator driver 94 /* BUCK 1 ~ 4 voltage ranges */ 100 static void lp8788_buck1_set_dvs(struct lp8788_buck *buck) in lp8788_buck1_set_dvs() argument 102 struct lp8788_buck1_dvs *dvs = (struct lp8788_buck1_dvs *)buck->dvs; in lp8788_buck1_set_dvs() 108 pinstate = dvs->vsel == DVS_SEL_V0 ? DVS_LOW : DVS_HIGH; in lp8788_buck1_set_dvs() 109 if (gpio_is_valid(dvs->gpio)) in lp8788_buck1_set_dvs() 110 gpio_set_value(dvs->gpio, pinstate); in lp8788_buck1_set_dvs() 113 static void lp8788_buck2_set_dvs(struct lp8788_buck *buck) in lp8788_buck2_set_dvs() argument 115 struct lp8788_buck2_dvs *dvs = (struct lp8788_buck2_dvs *)buck->dvs; in lp8788_buck2_set_dvs() [all …]
|
| D | rtq2208-regulator.c | 1 // SPDX-License-Identifier: GPL-2.0+ 95 (const struct rtq2208_regulator_desc *)rdev->desc; in rtq2208_set_mode() 106 return -EINVAL; in rtq2208_set_mode() 109 shift = ffs(rdesc->mode_mask) - 1; in rtq2208_set_mode() 110 return regmap_update_bits(rdev->regmap, rdesc->mode_reg, in rtq2208_set_mode() 111 rdesc->mode_mask, val << shift); in rtq2208_set_mode() 117 (const struct rtq2208_regulator_desc *)rdev->desc; in rtq2208_get_mode() 121 ret = regmap_read(rdev->regmap, rdesc->mode_reg, &mode_val); in rtq2208_get_mode() 125 return (mode_val & rdesc->mode_mask) ? REGULATOR_MODE_FAST : REGULATOR_MODE_NORMAL; in rtq2208_get_mode() 130 const struct regulator_desc *desc = rdev->desc; in rtq2208_set_ramp_delay() [all …]
|
| D | lp3972.c | 1 // SPDX-License-Identifier: GPL-2.0-only 147 LP3972_LDO1 -> 0, LP3972_LDO2 -> 4 148 LP3972_LDO3 -> 0, LP3972_LDO4 -> 4 149 LP3972_LDO5 -> 0 169 return -EIO; in lp3972_i2c_read() 182 return -EIO; in lp3972_i2c_write() 190 mutex_lock(&lp3972->io_lock); in lp3972_reg_read() 192 lp3972_i2c_read(lp3972->i2c, reg, 1, &val); in lp3972_reg_read() 194 dev_dbg(lp3972->dev, "reg read 0x%02x -> 0x%02x\n", (int)reg, in lp3972_reg_read() 197 mutex_unlock(&lp3972->io_lock); in lp3972_reg_read() [all …]
|
| D | lp3971.c | 1 // SPDX-License-Identifier: GPL-2.0-only 40 LP3971_BUCK1 -> 0 41 LP3971_BUCK2 -> 4 42 LP3971_BUCK3 -> 6 77 LP3971_LDO1 -> LP3971_LDO_VOL_CONTR_BASE + 0 78 LP3971_LDO2 -> LP3971_LDO_VOL_CONTR_BASE + 0 79 LP3971_LDO3 -> LP3971_LDO_VOL_CONTR_BASE + 1 80 LP3971_LDO4 -> LP3971_LDO_VOL_CONTR_BASE + 1 81 LP3971_LDO5 -> LP3971_LDO_VOL_CONTR_BASE + 2 86 LP3971_LDO1 -> 0, LP3971_LDO2 -> 4 [all …]
|
| D | mt6397-regulator.c | 1 // SPDX-License-Identifier: GPL-2.0 14 #include <linux/regulator/mt6397-regulator.h> 16 #include <dt-bindings/regulator/mediatek,mt6397-regulator.h> 24 * @vselctrl_reg: Register for controlling the buck control mode. 25 * @vselctrl_mask: Mask for query buck's voltage control mode. 48 .n_voltages = (max - min)/step + 1, \ 172 ret = -EINVAL; in mt6397_regulator_set_mode() 176 dev_dbg(&rdev->dev, "mt6397 buck set_mode %#x, %#x, %#x\n", in mt6397_regulator_set_mode() 177 info->modeset_reg, info->modeset_mask, val); in mt6397_regulator_set_mode() 179 val <<= ffs(info->modeset_mask) - 1; in mt6397_regulator_set_mode() [all …]
|
| D | max77802-regulator.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // max77802.c - Regulator driver for the Maxim 77802 5 // Copyright (C) 2013-2014 Google, Inc 24 #include <linux/mfd/max77686-private.h> 25 #include <dt-bindings/regulator/maxim,max77802.h> 83 return -EINVAL; in max77802_get_opmode_shift() 87 * max77802_set_suspend_disable - Disable the regulator during system suspend 100 if (WARN_ON_ONCE(id >= ARRAY_SIZE(max77802->opmode))) in max77802_set_suspend_disable() 101 return -EINVAL; in max77802_set_suspend_disable() 102 max77802->opmode[id] = val; in max77802_set_suspend_disable() [all …]
|
| D | max77686-regulator.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // max77686.c - Regulator driver for the Maxim 77686 21 #include <linux/mfd/max77686-private.h> 37 * Value for configuring buck[89] and LDO{20,21,22} as GPIO control. 43 * Forcing low power mode: LDO1, 3-5, 9, 13, 17-26 48 * - LDO2, 6-8, 10-12, 14-16 49 * - buck[1234] 54 /* Forcing low power mode: buck[234] */ 105 if (test_bit(id, max77686->gpio_enabled)) in max77686_map_normal_mode() 122 ret = regmap_update_bits(rdev->regmap, rdev->desc->enable_reg, in max77686_set_suspend_disable() [all …]
|
| D | da9121-regulator.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // DA9121 Single-channel dual-phase 10A buck converter 7 // DA9130 Single-channel dual-phase 10A buck converter (Automotive) 8 // DA9217 Single-channel dual-phase 6A buck converter 9 // DA9122 Dual-channel single-phase 5A buck converter 10 // DA9131 Dual-channel single-phase 5A buck converter (Automotive) 11 // DA9220 Dual-channel single-phase 3A buck converter 12 // DA9132 Dual-channel single-phase 3A buck converter (Automotive) 30 #include "da9121-regulator.h" 136 int buck_id; /* 0=core, 1/2-buck */ [all …]
|
| D | mt6332-regulator.c | 1 // SPDX-License-Identifier: GPL-2.0 6 // Based on mt6323-regulator.c, 18 #include <linux/regulator/mt6332-regulator.h> 30 * @vselctrl_reg: Register for controlling the buck control mode. 31 * @vselctrl_mask: Mask for query buck's voltage control mode. 57 .n_voltages = (max - min)/step + 1, \ 83 .n_voltages = (max - min)/step + 1, \ 188 if (info->qi > 0) { in mt6332_get_status() 189 reg = info->desc.enable_reg; in mt6332_get_status() 190 en_mask = info->qi; in mt6332_get_status() [all …]
|
| D | max8893.c | 1 // SPDX-License-Identifier: GPL-2.0+ 20 .name = "BUCK", 21 .supply_name = "in-buck", 22 .of_match = of_match_ptr("buck"), 38 .supply_name = "in-ldo1", 55 .supply_name = "in-ldo2", 72 .supply_name = "in-ldo3", 89 .supply_name = "in-ldo4", 106 .supply_name = "in-ldo5", 131 struct regulator_config config = {.dev = &i2c->dev}; in max8893_probe() [all …]
|
| D | max8998.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // max8998.c - Voltage regulator driver for the Maxim 8998 5 // Copyright (C) 2009-2010 Samsung Electronics 23 #include <linux/mfd/max8998-private.h> 48 *shift = 3 - (ldo - MAX8998_LDO2); in max8998_get_enable_register() 52 *shift = 7 - (ldo - MAX8998_LDO6); in max8998_get_enable_register() 56 *shift = 7 - (ldo - MAX8998_LDO14); in max8998_get_enable_register() 60 *shift = 7 - (ldo - MAX8998_BUCK1); in max8998_get_enable_register() 64 *shift = 7 - (ldo - MAX8998_EN32KHZ_AP); in max8998_get_enable_register() 68 *shift = 7 - (ldo - MAX8998_ESAFEOUT1); in max8998_get_enable_register() [all …]
|
| D | mt6357-regulator.c | 1 // SPDX-License-Identifier: GPL-2.0 9 // Based on mt6397-regulator.c 20 #include <linux/regulator/mt6357-regulator.h> 27 * @da_vsel_reg: Monitor register for query buck's voltage. 28 * @da_vsel_mask: Mask for query buck's voltage. 47 .n_voltages = ((max) - (min)) / (step) + 1, \ 90 .n_voltages = ((max) - (min)) / (step) + 1, \ 120 * mt6357_get_buck_voltage_sel - get_voltage_sel for regmap users 133 ret = regmap_read(rdev->regmap, info->da_vsel_reg, ®val); in mt6357_get_buck_voltage_sel() 135 dev_err(&rdev->dev, in mt6357_get_buck_voltage_sel() [all …]
|
| /kernel/linux/linux-5.10/include/linux/mfd/ |
| D | ab3100.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * Copyright (C) 2007-2009 ST-Ericsson AB 28 * these are catenated into a single 32-bit flag in the code 70 * and a buck converter, further the LDO E and buck converter can 108 * the order of these constraints are: LDO A, C, D, E, 109 * F, G, H, K, EXT and BUCK. 111 * plus two sleep settings for LDO E and the BUCK converter. 113 * Order: LDO A, C, E, E sleep, F, G, H, K, EXT, BUCK, 114 * BUCK sleep, LDO D. (LDO D need to be initialized last.)
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/regulator/ |
| D | richtek,rtq2208.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Alina Yu <alina_yu@richtek.com> 14 multi-configurable synchronous buck converters and two LDOs. 16 Bucks support "regulator-allowed-modes" and "regulator-mode". The former defines the permitted 20 operation modes for all buck rails, automatic power saving mode (Auto mode) and forced continuous 25 0 - Auto mode for power saving, which reducing the switching frequency at light load condition 27 …1 - FCCM to meet the strict voltage regulation accuracy, which keeping constant switching frequenc… 35 - richtek,rtq2208 [all …]
|
| D | mediatek,mt6331-regulator.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/regulator/mediatek,mt6331-regulator.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> 13 The MT6331 PMIC provides 6 BUCK and 21 LDO (Low Dropout) regulators 15 buck-<name> and ldo-<name>. 19 "^buck-v(core2|io18|dvfs11|dvfs12|dvfs13|dvfs14)$": 24 regulator-name: 29 "^ldo-v(avdd32aud|auxa32)$": [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/mfd/ |
| D | axp20x.txt | 4 axp152 (X-Powers) 5 axp202 (X-Powers) 6 axp209 (X-Powers) 7 axp221 (X-Powers) 8 axp223 (X-Powers) 9 axp803 (X-Powers) 10 axp806 (X-Powers) 11 axp809 (X-Powers) 12 axp813 (X-Powers) 20 - compatible: should be one of: [all …]
|
| /kernel/linux/linux-6.6/drivers/mfd/ |
| D | lp8788.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * TI LP8788 MFD - core interface 72 MFD_DEV_WITH_ID(BUCK, 1), 73 MFD_DEV_WITH_ID(BUCK, 2), 74 MFD_DEV_WITH_ID(BUCK, 3), 75 MFD_DEV_WITH_ID(BUCK, 4), 127 ret = regmap_read(lp->regmap, reg, &val); in lp8788_read_byte() 129 dev_err(lp->dev, "failed to read 0x%.2x\n", reg); in lp8788_read_byte() 140 return regmap_bulk_read(lp->regmap, reg, data, count); in lp8788_read_multi_bytes() 146 return regmap_write(lp->regmap, reg, data); in lp8788_write_byte() [all …]
|