diff options
Diffstat (limited to 'drivers/regulator/gpio-regulator.c')
-rw-r--r-- | drivers/regulator/gpio-regulator.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/regulator/gpio-regulator.c b/drivers/regulator/gpio-regulator.c index 234960dc9607..c0a1d00b78c9 100644 --- a/drivers/regulator/gpio-regulator.c +++ b/drivers/regulator/gpio-regulator.c @@ -203,17 +203,18 @@ of_get_gpio_regulator_config(struct device *dev, struct device_node *np) } config->nr_states = i; + config->type = REGULATOR_VOLTAGE; ret = of_property_read_string(np, "regulator-type", ®type); - if (ret < 0) { - dev_err(dev, "Missing 'regulator-type' property\n"); - return ERR_PTR(-EINVAL); + if (ret >= 0) { + if (!strncmp("voltage", regtype, 7)) + config->type = REGULATOR_VOLTAGE; + else if (!strncmp("current", regtype, 7)) + config->type = REGULATOR_CURRENT; + else + dev_warn(dev, "Unknown regulator-type '%s'\n", + regtype); } - if (!strncmp("voltage", regtype, 7)) - config->type = REGULATOR_VOLTAGE; - else if (!strncmp("current", regtype, 7)) - config->type = REGULATOR_CURRENT; - return config; } |