aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuodong Xu <guodong.xu@linaro.org>2013-05-06 06:37:41 +0800
committerGuodong Xu <guodong.xu@linaro.org>2013-05-06 06:37:41 +0800
commit644a2525241a514f11758496b385942297fd5f8b (patch)
tree19a3ea74485886690422891a420b688d1f11c2d3
parentc9fe8ae84a2dfc27bac57ec936e99bcd0a238d65 (diff)
parent78a406d85f112a5039660698b0d60adf16d13b10 (diff)
Merge remote-tracking branch 'origin/topic-regulator-modes' into integration-linux-mainlineremotes/origin/for-upstreamm3-release.v3.8integration-linux-mainline
-rw-r--r--drivers/regulator/hi6421-regulator.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/regulator/hi6421-regulator.c b/drivers/regulator/hi6421-regulator.c
index 5a73a203eeab..a68b1cb78483 100644
--- a/drivers/regulator/hi6421-regulator.c
+++ b/drivers/regulator/hi6421-regulator.c
@@ -479,6 +479,7 @@ static int hi6421_regulator_probe(struct platform_device *pdev)
struct regulator_dev *rdev;
struct hi6421_regulator *sreg = NULL;
struct regulator_init_data *initdata;
+ struct regulation_constraints *c;
struct regulator_config config = { };
const struct of_device_id *match;
const struct hi6421_regulator *template = NULL;
@@ -492,6 +493,13 @@ static int hi6421_regulator_probe(struct platform_device *pdev)
return -EINVAL;
initdata = of_get_regulator_init_data(dev, np);
+
+ /* hi6421 regulator supports two modes */
+ c = &initdata->constraints;
+ c->valid_modes_mask = REGULATOR_MODE_NORMAL | REGULATOR_MODE_IDLE;
+ c->valid_ops_mask |= (REGULATOR_CHANGE_MODE | REGULATOR_CHANGE_DRMS);
+ c->input_uV = c->min_uV;
+
sreg = kmemdup(template, sizeof(*sreg), GFP_KERNEL);
if (!sreg)
return -ENOMEM;