Re: [PATCH] iio: adc: ti-ads124s08: Use gpiod_set_value_cansleep()
From: Andy Shevchenko
Date: Sat Dec 07 2024 - 13:34:50 EST
On Sun, Dec 01, 2024 at 01:03:56PM +0000, Jonathan Cameron wrote:
> On Fri, 22 Nov 2024 13:43:08 -0300
> Fabio Estevam <festevam@xxxxxxxxx> wrote:
> > Using gpiod_set_value() to control the reset GPIO causes some verbose
> > warnings during boot when the reset GPIO is controlled by an I2C IO
> > expander.
> >
> > As the caller can sleep, use the gpiod_set_value_cansleep() variant to
> > fix the issue.
> >
> > Tested on a custom i.MX93 board with a ADS124S08 ADC.
> Hmm. Could be considered a feature, but fair enough as the change is
> trivial and you are setting it on a real board.
>
> Applied to the fixes-togreg branch of iio.git.
...
> > @@ -183,9 +183,9 @@ static int ads124s_reset(struct iio_dev *indio_dev)
> > struct ads124s_private *priv = iio_priv(indio_dev);
> >
> > if (priv->reset_gpio) {
> > - gpiod_set_value(priv->reset_gpio, 0);
> > + gpiod_set_value_cansleep(priv->reset_gpio, 0);
> > udelay(200);
Obviously if you allow that change, you should switch to fsleep() here.
> > - gpiod_set_value(priv->reset_gpio, 1);
> > + gpiod_set_value_cansleep(priv->reset_gpio, 1);
> > } else {
> > return ads124s_write_cmd(indio_dev, ADS124S08_CMD_RESET);
> > }
--
With Best Regards,
Andy Shevchenko