On Tue, May 20, 2014 at 6:07 PM, Aaron Lu <[email protected]> wrote:
> The GPIO operation region handler should be called where sleep is
> allowed, so we should use the *_cansleep version of gpiod_get/set APIs
> or we will get a warning message complaining invalid context if the GPIO
> chip has the cansleep flag set.

Acked-by: Alexandre Courbot <[email protected]>

>
> Signed-off-by: Aaron Lu <[email protected]>
> Acked-by: Mika Westerberg <[email protected]>
> ---
> v2: remove the inclusion of linux/gpio.h as pointed out by Mika.
>
>  drivers/gpio/gpiolib-acpi.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c
> index 401add28933f..4a987917c186 100644
> --- a/drivers/gpio/gpiolib-acpi.c
> +++ b/drivers/gpio/gpiolib-acpi.c
> @@ -449,9 +449,10 @@ acpi_gpio_adr_space_handler(u32 function, 
> acpi_physical_address address,
>                 mutex_unlock(&achip->conn_lock);
>
>                 if (function == ACPI_WRITE)
> -                       gpiod_set_raw_value(desc, !!((1 << i) & *value));
> +                       gpiod_set_raw_value_cansleep(desc,
> +                                                    !!((1 << i) & *value));
>                 else
> -                       *value |= (u64)gpiod_get_raw_value(desc) << i;
> +                       *value |= (u64)gpiod_get_raw_value_cansleep(desc) << 
> i;
>         }
>
>  out:
> --
> 1.9.0
>
--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to