[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1460038959-21592-3-git-send-email-thierry.reding@gmail.com>
Date: Thu, 7 Apr 2016 16:22:37 +0200
From: Thierry Reding <thierry.reding@...il.com>
To: Mark Brown <broonie@...nel.org>
Cc: Jon Hunter <jonathanh@...dia.com>,
Liam Girdwood <lgirdwood@...il.com>,
linux-kernel@...r.kernel.org
Subject: [PATCH 3/5] regulator: helpers: Ensure bypass register field matches ON value
From: Jon Hunter <jonathanh@...dia.com>
When checking the bypass state for a regulator, we check to see if any
bits in the bypass mask are set. For most cases this is fine because
there is typically only a single bit used to determine if the regulator
is in bypass. However, for some regulators, such as LDO6 on AS3722, the
bypass state is indicated by a value rather than a single bit.
Therefore, when checking the bypass state, check that the bypass field
matches the ON value.
Signed-off-by: Jon Hunter <jonathanh@...dia.com>
Signed-off-by: Thierry Reding <treding@...dia.com>
---
drivers/regulator/helpers.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/regulator/helpers.c b/drivers/regulator/helpers.c
index b1e32e7482e9..bcf38fd5106a 100644
--- a/drivers/regulator/helpers.c
+++ b/drivers/regulator/helpers.c
@@ -460,7 +460,7 @@ int regulator_get_bypass_regmap(struct regulator_dev *rdev, bool *enable)
if (ret != 0)
return ret;
- *enable = val & rdev->desc->bypass_mask;
+ *enable = (val & rdev->desc->bypass_mask) == rdev->desc->bypass_val_on;
return 0;
}
--
2.8.0
Powered by blists - more mailing lists