mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-12 13:55:32 +00:00
Merge branch 'regulator-4.17' into regulator-4.18 merge window
This commit is contained in:
commit
13ed496405
2 changed files with 20 additions and 3 deletions
|
@ -52,6 +52,7 @@
|
|||
#define LTC3676_CLIRQ 0x1F
|
||||
|
||||
#define LTC3676_DVBxA_REF_SELECT BIT(5)
|
||||
#define LTC3676_DVBxB_PGOOD_MASK BIT(5)
|
||||
|
||||
#define LTC3676_IRQSTAT_PGOOD_TIMEOUT BIT(3)
|
||||
#define LTC3676_IRQSTAT_UNDERVOLT_WARN BIT(4)
|
||||
|
@ -123,6 +124,23 @@ static int ltc3676_set_suspend_mode(struct regulator_dev *rdev,
|
|||
mask, val);
|
||||
}
|
||||
|
||||
static int ltc3676_set_voltage_sel(struct regulator_dev *rdev, unsigned selector)
|
||||
{
|
||||
struct ltc3676 *ltc3676 = rdev_get_drvdata(rdev);
|
||||
struct device *dev = ltc3676->dev;
|
||||
int ret, dcdc = rdev_get_id(rdev);
|
||||
|
||||
dev_dbg(dev, "%s id=%d selector=%d\n", __func__, dcdc, selector);
|
||||
|
||||
ret = regmap_update_bits(ltc3676->regmap, rdev->desc->vsel_reg + 1,
|
||||
LTC3676_DVBxB_PGOOD_MASK,
|
||||
LTC3676_DVBxB_PGOOD_MASK);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return regulator_set_voltage_sel_regmap(rdev, selector);
|
||||
}
|
||||
|
||||
static inline unsigned int ltc3676_scale(unsigned int uV, u32 r1, u32 r2)
|
||||
{
|
||||
uint64_t tmp;
|
||||
|
@ -166,7 +184,7 @@ static const struct regulator_ops ltc3676_linear_regulator_ops = {
|
|||
.disable = regulator_disable_regmap,
|
||||
.is_enabled = regulator_is_enabled_regmap,
|
||||
.list_voltage = regulator_list_voltage_linear,
|
||||
.set_voltage_sel = regulator_set_voltage_sel_regmap,
|
||||
.set_voltage_sel = ltc3676_set_voltage_sel,
|
||||
.get_voltage_sel = regulator_get_voltage_sel_regmap,
|
||||
.set_suspend_voltage = ltc3676_set_suspend_voltage,
|
||||
.set_suspend_mode = ltc3676_set_suspend_mode,
|
||||
|
|
|
@ -309,8 +309,7 @@ static int max8998_set_voltage_buck_sel(struct regulator_dev *rdev,
|
|||
unsigned selector)
|
||||
{
|
||||
struct max8998_data *max8998 = rdev_get_drvdata(rdev);
|
||||
struct max8998_platform_data *pdata =
|
||||
dev_get_platdata(max8998->iodev->dev);
|
||||
struct max8998_platform_data *pdata = max8998->iodev->pdata;
|
||||
struct i2c_client *i2c = max8998->iodev->i2c;
|
||||
int buck = rdev_get_id(rdev);
|
||||
int reg, shift = 0, mask, ret, j;
|
||||
|
|
Loading…
Reference in a new issue