OSDN Git Service

drm/bridge: sii902x: Allow reset line to be tied to a sleepy GPIO controller
authorWadim Egorov <w.egorov@phytec.de>
Wed, 28 Dec 2022 14:57:04 +0000 (15:57 +0100)
committerNeil Armstrong <neil.armstrong@linaro.org>
Thu, 19 Jan 2023 07:39:43 +0000 (08:39 +0100)
Switch to gpiod_set_value_cansleep() in sii902x_reset().
This is relevant if the reset line is tied to a I2C GPIO
controller.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Andrzej Hajda <andrzej.hajda@intel.com>
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20221228145704.939801-1-w.egorov@phytec.de
drivers/gpu/drm/bridge/sii902x.c

index d212ff7..7ae22bf 100644 (file)
@@ -239,12 +239,12 @@ static void sii902x_reset(struct sii902x *sii902x)
        if (!sii902x->reset_gpio)
                return;
 
-       gpiod_set_value(sii902x->reset_gpio, 1);
+       gpiod_set_value_cansleep(sii902x->reset_gpio, 1);
 
        /* The datasheet says treset-min = 100us. Make it 150us to be sure. */
        usleep_range(150, 200);
 
-       gpiod_set_value(sii902x->reset_gpio, 0);
+       gpiod_set_value_cansleep(sii902x->reset_gpio, 0);
 }
 
 static enum drm_connector_status sii902x_detect(struct sii902x *sii902x)