On Thu, Mar 7, 2013 at 6:37 PM, Jingoo Han <jg1.han@xxxxxxxxxxx> wrote: > The devm_gpio_request_one() flags parameter was set to: > > GPIOF_DIR_OUT | state > > GPIOF_DIR_OUT and GPIOF_DIR_IN are defined as below: > > GPIOF_DIR_OUT (0 << 0) > GPIOF_DIR_IN (1 << 0) > > So, when 'state' is 1, the gpio pin can be set as input, instead > of output. > > To prevent this problem, GPIOF_OUT_INIT flags should be used when > using devm_gpio_request_one(). > Good catch, I will merge these 3 patches. Thanks, -Bryan > Signed-off-by: Jingoo Han <jg1.han@xxxxxxxxxxx> > --- > drivers/leds/leds-lt3593.c | 5 +++-- > 1 files changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/leds/leds-lt3593.c b/drivers/leds/leds-lt3593.c > index c9b9e1f..ca48a7d 100644 > --- a/drivers/leds/leds-lt3593.c > +++ b/drivers/leds/leds-lt3593.c > @@ -106,8 +106,9 @@ static int create_lt3593_led(const struct gpio_led *template, > if (!template->retain_state_suspended) > led_dat->cdev.flags |= LED_CORE_SUSPENDRESUME; > > - ret = devm_gpio_request_one(parent, template->gpio, > - GPIOF_DIR_OUT | state, template->name); > + ret = devm_gpio_request_one(parent, template->gpio, state ? > + GPIOF_OUT_INIT_HIGH : GPIOF_OUT_INIT_LOW, > + template->name); > if (ret < 0) > return ret; > > -- > 1.7.2.5 > > -- To unsubscribe from this list: send the line "unsubscribe linux-leds" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html