gpio: pisosr: Use gpiod_set_value_cansleep in pisosr_gpio_refresh()
authorAxel Lin <axel.lin@ingics.com>
Wed, 24 Feb 2016 13:31:14 +0000 (21:31 +0800)
committerLinus Walleij <linus.walleij@linaro.org>
Thu, 25 Feb 2016 14:20:46 +0000 (15:20 +0100)
This driver has .can_sleep flag set.
So the pisosr_gpio_get() can be called from contexts that can sleep.
Thus use the cansleep() variant in pisosr_gpio_refresh().

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/gpio/gpio-pisosr.c

index 8b8bf8f9de6a4f135b5385b2456ce3bb528db097..cb14b8d1d5120e1535dcef462c1cc041c8a50f2a 100644 (file)
@@ -46,9 +46,9 @@ static int pisosr_gpio_refresh(struct pisosr_gpio *gpio)
        mutex_lock(&gpio->lock);
 
        if (gpio->load_gpio) {
-               gpiod_set_value(gpio->load_gpio, 1);
+               gpiod_set_value_cansleep(gpio->load_gpio, 1);
                udelay(1); /* registers load time (~10ns) */
-               gpiod_set_value(gpio->load_gpio, 0);
+               gpiod_set_value_cansleep(gpio->load_gpio, 0);
                udelay(1); /* registers recovery time (~5ns) */
        }