Hi Peng, On 11 March 2016 at 22:19, Peng Fan <van.free...@gmail.com> wrote: > Before set value for a gpio, need to set its direction to > output first. > > Signed-off-by: Peng Fan <van.free...@gmail.com> > Cc: Przemyslaw Marczak <p.marc...@samsung.com> > Cc: Simon Glass <s...@chromium.org> > --- > drivers/power/regulator/fixed.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/power/regulator/fixed.c b/drivers/power/regulator/fixed.c > index d053817..1b0d193 100644 > --- a/drivers/power/regulator/fixed.c > +++ b/drivers/power/regulator/fixed.c > @@ -95,6 +95,11 @@ static int fixed_regulator_set_enable(struct udevice *dev, > bool enable) > if (!dev_pdata->gpio.dev) > return -ENOSYS; > > + ret = dm_gpio_set_dir_flags(&dev_pdata->gpio, GPIOD_IS_OUT); > + if (ret) { > + error("Can't set out direction : %s gpio\n", dev->name); > + return ret; > + } > ret = dm_gpio_set_value(&dev_pdata->gpio, enable); > if (ret) { > error("Can't set regulator : %s gpio to: %d\n", dev->name, > -- > 2.6.2 >
This should already be done by the GPIOD_IS_OUT flag in fixed_regulator_ofdata_to_platdata(). BTW I notice that mxc_gpio.c does not have an xlate() method, so GPIO_ACTIVE_LOW will not be supported. Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot