Message ID | 20221128214408.165726-3-hdegoede@redhat.com |
---|---|
State | Accepted |
Commit | 5a7adc6c1069ce31ef4f606ae9c05592c80a6ab5 |
Headers | show |
Series | gpio/media/int3472: Add support for tps68470 privacy-LED output | expand |
On Mon, Nov 28, 2022 at 11:44 PM Hans de Goede <hdegoede@redhat.com> wrote: > > Make tps68470_gpio_output() call tps68470_gpio_set() for output-only pins > too, so that the initial value passed to gpiod_direction_output() is > honored for these pins too. This smells like a fix. Shouldn't be the Fixes tag? Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> > Signed-off-by: Hans de Goede <hdegoede@redhat.com> > --- > drivers/gpio/gpio-tps68470.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpio/gpio-tps68470.c b/drivers/gpio/gpio-tps68470.c > index 778a72cf800c..2ca86fbe1d84 100644 > --- a/drivers/gpio/gpio-tps68470.c > +++ b/drivers/gpio/gpio-tps68470.c > @@ -91,13 +91,13 @@ static int tps68470_gpio_output(struct gpio_chip *gc, unsigned int offset, > struct tps68470_gpio_data *tps68470_gpio = gpiochip_get_data(gc); > struct regmap *regmap = tps68470_gpio->tps68470_regmap; > > + /* Set the initial value */ > + tps68470_gpio_set(gc, offset, value); > + > /* rest are always outputs */ > if (offset >= TPS68470_N_REGULAR_GPIO) > return 0; > > - /* Set the initial value */ > - tps68470_gpio_set(gc, offset, value); > - > return regmap_update_bits(regmap, TPS68470_GPIO_CTL_REG_A(offset), > TPS68470_GPIO_MODE_MASK, > TPS68470_GPIO_MODE_OUT_CMOS); > -- > 2.38.1 >
Hi, On 11/29/22 11:24, Andy Shevchenko wrote: > On Mon, Nov 28, 2022 at 11:44 PM Hans de Goede <hdegoede@redhat.com> wrote: >> >> Make tps68470_gpio_output() call tps68470_gpio_set() for output-only pins >> too, so that the initial value passed to gpiod_direction_output() is >> honored for these pins too. > > This smells like a fix. Shouldn't be the Fixes tag? Ack, and the same really goes for 1/3 too. I'll add a fixed tag there for v2 too. > Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Thanks. Regards, Hans > >> Signed-off-by: Hans de Goede <hdegoede@redhat.com> >> --- >> drivers/gpio/gpio-tps68470.c | 6 +++--- >> 1 file changed, 3 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/gpio/gpio-tps68470.c b/drivers/gpio/gpio-tps68470.c >> index 778a72cf800c..2ca86fbe1d84 100644 >> --- a/drivers/gpio/gpio-tps68470.c >> +++ b/drivers/gpio/gpio-tps68470.c >> @@ -91,13 +91,13 @@ static int tps68470_gpio_output(struct gpio_chip *gc, unsigned int offset, >> struct tps68470_gpio_data *tps68470_gpio = gpiochip_get_data(gc); >> struct regmap *regmap = tps68470_gpio->tps68470_regmap; >> >> + /* Set the initial value */ >> + tps68470_gpio_set(gc, offset, value); >> + >> /* rest are always outputs */ >> if (offset >= TPS68470_N_REGULAR_GPIO) >> return 0; >> >> - /* Set the initial value */ >> - tps68470_gpio_set(gc, offset, value); >> - >> return regmap_update_bits(regmap, TPS68470_GPIO_CTL_REG_A(offset), >> TPS68470_GPIO_MODE_MASK, >> TPS68470_GPIO_MODE_OUT_CMOS); >> -- >> 2.38.1 >> > >
Hi Hans On 28/11/2022 21:44, Hans de Goede wrote: > Make tps68470_gpio_output() call tps68470_gpio_set() for output-only pins > too, so that the initial value passed to gpiod_direction_output() is > honored for these pins too. > > Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com> Tested-by: Daniel Scally <dan.scally@ideasonboard.com> > --- > drivers/gpio/gpio-tps68470.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpio/gpio-tps68470.c b/drivers/gpio/gpio-tps68470.c > index 778a72cf800c..2ca86fbe1d84 100644 > --- a/drivers/gpio/gpio-tps68470.c > +++ b/drivers/gpio/gpio-tps68470.c > @@ -91,13 +91,13 @@ static int tps68470_gpio_output(struct gpio_chip *gc, unsigned int offset, > struct tps68470_gpio_data *tps68470_gpio = gpiochip_get_data(gc); > struct regmap *regmap = tps68470_gpio->tps68470_regmap; > > + /* Set the initial value */ > + tps68470_gpio_set(gc, offset, value); > + > /* rest are always outputs */ > if (offset >= TPS68470_N_REGULAR_GPIO) > return 0; > > - /* Set the initial value */ > - tps68470_gpio_set(gc, offset, value); > - > return regmap_update_bits(regmap, TPS68470_GPIO_CTL_REG_A(offset), > TPS68470_GPIO_MODE_MASK, > TPS68470_GPIO_MODE_OUT_CMOS);
diff --git a/drivers/gpio/gpio-tps68470.c b/drivers/gpio/gpio-tps68470.c index 778a72cf800c..2ca86fbe1d84 100644 --- a/drivers/gpio/gpio-tps68470.c +++ b/drivers/gpio/gpio-tps68470.c @@ -91,13 +91,13 @@ static int tps68470_gpio_output(struct gpio_chip *gc, unsigned int offset, struct tps68470_gpio_data *tps68470_gpio = gpiochip_get_data(gc); struct regmap *regmap = tps68470_gpio->tps68470_regmap; + /* Set the initial value */ + tps68470_gpio_set(gc, offset, value); + /* rest are always outputs */ if (offset >= TPS68470_N_REGULAR_GPIO) return 0; - /* Set the initial value */ - tps68470_gpio_set(gc, offset, value); - return regmap_update_bits(regmap, TPS68470_GPIO_CTL_REG_A(offset), TPS68470_GPIO_MODE_MASK, TPS68470_GPIO_MODE_OUT_CMOS);
Make tps68470_gpio_output() call tps68470_gpio_set() for output-only pins too, so that the initial value passed to gpiod_direction_output() is honored for these pins too. Signed-off-by: Hans de Goede <hdegoede@redhat.com> --- drivers/gpio/gpio-tps68470.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)