Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1fe23017 authored by Mark Brown's avatar Mark Brown
Browse files

Merge remote-tracking branch 'regulator/topic/max77686' into regulator-next

parents c7b09482 40e72149
Loading
Loading
Loading
Loading
+8 −6
Original line number Diff line number Diff line
@@ -75,13 +75,14 @@ static int max77686_buck_set_suspend_disable(struct regulator_dev *rdev)
{
	unsigned int val;
	struct max77686_data *max77686 = rdev_get_drvdata(rdev);
        int id = rdev_get_id(rdev);

	if (rdev->desc->id == MAX77686_BUCK1)
	if (id == MAX77686_BUCK1)
		val = 0x1;
	else
		val = 0x1 << MAX77686_OPMODE_BUCK234_SHIFT;

	max77686->opmode[rdev->desc->id] = val;
	max77686->opmode[id] = val;
	return regmap_update_bits(rdev->regmap, rdev->desc->enable_reg,
				  rdev->desc->enable_mask,
				  val);
@@ -93,9 +94,10 @@ static int max77686_set_suspend_mode(struct regulator_dev *rdev,
{
	struct max77686_data *max77686 = rdev_get_drvdata(rdev);
	unsigned int val;
        int id = rdev_get_id(rdev);

	/* BUCK[5-9] doesn't support this feature */
	if (rdev->desc->id >= MAX77686_BUCK5)
	if (id >= MAX77686_BUCK5)
		return 0;

	switch (mode) {
@@ -111,7 +113,7 @@ static int max77686_set_suspend_mode(struct regulator_dev *rdev,
		return -EINVAL;
	}

	max77686->opmode[rdev->desc->id] = val;
	max77686->opmode[id] = val;
	return regmap_update_bits(rdev->regmap, rdev->desc->enable_reg,
				  rdev->desc->enable_mask,
				  val);
@@ -140,7 +142,7 @@ static int max77686_ldo_set_suspend_mode(struct regulator_dev *rdev,
		return -EINVAL;
	}

	max77686->opmode[rdev->desc->id] = val;
	max77686->opmode[rdev_get_id(rdev)] = val;
	return regmap_update_bits(rdev->regmap, rdev->desc->enable_reg,
				  rdev->desc->enable_mask,
				  val);
@@ -152,7 +154,7 @@ static int max77686_enable(struct regulator_dev *rdev)

	return regmap_update_bits(rdev->regmap, rdev->desc->enable_reg,
				  rdev->desc->enable_mask,
				  max77686->opmode[rdev->desc->id]);
				  max77686->opmode[rdev_get_id(rdev)]);
}

static int max77686_set_ramp_delay(struct regulator_dev *rdev, int ramp_delay)