[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20250825155208.2b3c483b@jic23-huawei>
Date: Mon, 25 Aug 2025 15:52:08 +0100
From: Jonathan Cameron <jic23@...nel.org>
To: Salah Triki <salah.triki@...il.com>
Cc: David Lechner <dlechner@...libre.com>, Nuno Sá
<nuno.sa@...log.com>, Andy Shevchenko <andy@...nel.org>,
linux-iio@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v5 3/3] iio: pressure: bmp280: Use
gpiod_set_value_cansleep()
On Sun, 24 Aug 2025 13:06:09 +0100
Salah Triki <salah.triki@...il.com> wrote:
> Replace `gpiod_set_value()` with `gpiod_set_value_cansleep()`, which is
> required when the GPIO controller is connected via a slow bus such as
> I2C. This is also safe to use in sleepable contexts like the driver
> probe function.
>
> Signed-off-by: Salah Triki <salah.triki@...il.com>
> Reviewed-by: David Lechner <dlechner@...libre.com>
> Reviewed-by: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
> ---
Don't worry about keeping the number of patches consistent if some
are already applied. However, I'm not sure where the previous patch 2
has gone...
Jonathan
> Changes in v5:
> - Clarify commit message in patch 3/3 to better explain why
> gpiod_set_value_cansleep() is needed, as suggested by Andy
> Shevchenko.
>
> Changes in v4:
> - Split patch 2/2 into two separate patches, as suggested by Markus
> Elfring.
>
> Changes in v3:
> - Split into two separate patches, as suggested by Andy Shevchenko.
> - Improve the error message to "failed to get reset GPIO", as
> suggested by David Lechner.
> - Add Fixes and Cc tags where appropriate, as suggested by Markus
> Elfring.
>
> Changes in v2:
> - Use IS_ERR() instead of IS_ERR_OR_NULL()
> - Drop dev_info()
> - Use gpiod_set_value_cansleep()
> - Improve commit title and message
> drivers/iio/pressure/bmp280-core.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/iio/pressure/bmp280-core.c b/drivers/iio/pressure/bmp280-core.c
> index 1f0852fc3414..656f6189c84c 100644
> --- a/drivers/iio/pressure/bmp280-core.c
> +++ b/drivers/iio/pressure/bmp280-core.c
> @@ -3217,7 +3217,7 @@ int bmp280_common_probe(struct device *dev,
> return dev_err_probe(dev, PTR_ERR(gpiod), "failed to get reset GPIO\n");
>
> /* Deassert the signal */
> - gpiod_set_value(gpiod, 0);
> + gpiod_set_value_cansleep(gpiod, 0);
>
> data->regmap = regmap;
>
Powered by blists - more mailing lists