diff options
author | Guodong Xu <guodong.xu@linaro.org> | 2013-05-06 06:37:41 +0800 |
---|---|---|
committer | Guodong Xu <guodong.xu@linaro.org> | 2013-05-06 06:37:41 +0800 |
commit | 644a2525241a514f11758496b385942297fd5f8b (patch) | |
tree | 19a3ea74485886690422891a420b688d1f11c2d3 | |
parent | c9fe8ae84a2dfc27bac57ec936e99bcd0a238d65 (diff) | |
parent | 78a406d85f112a5039660698b0d60adf16d13b10 (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.c | 8 |
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; |