Re: [PATCH] gpio: sim: mark the GPIO chip as a one that can sleep

From: Andy Shevchenko
Date: Tue Aug 01 2023 - 15:12:03 EST


On Tue, Aug 01, 2023 at 09:09:51PM +0200, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx>
>
> Simulated chips use a mutex for synchronization in driver callbacks so
> they must not be called from interrupt context. Set the can_sleep field
> of the GPIO chip to true to force users to only use threaded irqs.

Ah, good catch! Doesn't it deserve a Fixes tag?

Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>

> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx>
> ---
> drivers/gpio/gpio-sim.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpio/gpio-sim.c b/drivers/gpio/gpio-sim.c
> index cfbdade841e8..5f8723ad0048 100644
> --- a/drivers/gpio/gpio-sim.c
> +++ b/drivers/gpio/gpio-sim.c
> @@ -429,6 +429,7 @@ static int gpio_sim_add_bank(struct fwnode_handle *swnode, struct device *dev)
> gc->set_config = gpio_sim_set_config;
> gc->to_irq = gpio_sim_to_irq;
> gc->free = gpio_sim_free;
> + gc->can_sleep = true;
>
> ret = devm_gpiochip_add_data(dev, gc, chip);
> if (ret)
> --
> 2.39.2
>

--
With Best Regards,
Andy Shevchenko