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

Commit acaf6ffe authored by Bengt Jonsson's avatar Bengt Jonsson Committed by Liam Girdwood
Browse files

regulator: enable supply regulator only when use count is zero



Supply regulators are disabled only when the last
reference count is removed on the child regulator
(the use count goes from 1 to 0). This patch changes
the behaviour of enable so the supply regulator is
enabled only when the use count of the child
regulator goes from 0 to 1.

Signed-off-by: default avatarBengt Jonsson <bengt.g.jonsson@stericsson.com>
Acked-by: default avatarLinus Walleij <linus.walleij@stericsson.com>
Acked-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: default avatarLiam Girdwood <lrg@slimlogic.co.uk>
parent 02fa3ec0
Loading
Loading
Loading
Loading
+11 −9
Original line number Diff line number Diff line
@@ -1273,6 +1273,7 @@ static int _regulator_enable(struct regulator_dev *rdev)
{
	int ret, delay;

	if (rdev->use_count == 0) {
		/* do we need to enable the supply regulator first */
		if (rdev->supply) {
			mutex_lock(&rdev->supply->mutex);
@@ -1284,6 +1285,7 @@ static int _regulator_enable(struct regulator_dev *rdev)
				return ret;
			}
		}
	}

	/* check voltage and requested load before enabling */
	if (rdev->constraints &&