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

Commit cbc13a66 authored by Mark Brown's avatar Mark Brown
Browse files

Merge branch 'topic/bypass' of...

Merge branch 'topic/bypass' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator into regulator-supply
parents c438b9d0 fef95019
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -3110,6 +3110,20 @@ EXPORT_SYMBOL_GPL(regulator_sync_voltage);
static int _regulator_get_voltage(struct regulator_dev *rdev)
{
	int sel, ret;
	bool bypassed;

	if (rdev->desc->ops->get_bypass) {
		ret = rdev->desc->ops->get_bypass(rdev, &bypassed);
		if (ret < 0)
			return ret;
		if (bypassed) {
			/* if bypassed the regulator must have a supply */
			if (!rdev->supply)
				return -EINVAL;

			return _regulator_get_voltage(rdev->supply->rdev);
		}
	}

	if (rdev->desc->ops->get_voltage_sel) {
		sel = rdev->desc->ops->get_voltage_sel(rdev);