2022-12-28 15:27:25

by Wadim Egorov

[permalink] [raw]
Subject: [PATCH] drm/bridge: sii902x: Allow reset line to be tied to a sleepy GPIO controller

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 <[email protected]>
---
drivers/gpu/drm/bridge/sii902x.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/bridge/sii902x.c b/drivers/gpu/drm/bridge/sii902x.c
index 878fb7d3732b..980611aec2f6 100644
--- a/drivers/gpu/drm/bridge/sii902x.c
+++ b/drivers/gpu/drm/bridge/sii902x.c
@@ -240,12 +240,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)
--
2.34.1


2022-12-30 16:13:43

by Andrzej Hajda

[permalink] [raw]
Subject: Re: [PATCH] drm/bridge: sii902x: Allow reset line to be tied to a sleepy GPIO controller



On 28.12.2022 15:57, Wadim Egorov wrote:
> 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 <[email protected]>
Reviewed-by: Andrzej Hajda <[email protected]>

Regards
Andrzej
> ---
> drivers/gpu/drm/bridge/sii902x.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/bridge/sii902x.c b/drivers/gpu/drm/bridge/sii902x.c
> index 878fb7d3732b..980611aec2f6 100644
> --- a/drivers/gpu/drm/bridge/sii902x.c
> +++ b/drivers/gpu/drm/bridge/sii902x.c
> @@ -240,12 +240,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)

2023-01-19 07:55:12

by Neil Armstrong

[permalink] [raw]
Subject: Re: [PATCH] drm/bridge: sii902x: Allow reset line to be tied to a sleepy GPIO controller

Hi,

On Wed, 28 Dec 2022 15:57:04 +0100, Wadim Egorov wrote:
> Switch to gpiod_set_value_cansleep() in sii902x_reset().
> This is relevant if the reset line is tied to a I2C GPIO
> controller.
>
>

Thanks, Applied to https://anongit.freedesktop.org/git/drm/drm-misc.git (drm-misc-next)

[1/1] drm/bridge: sii902x: Allow reset line to be tied to a sleepy GPIO controller
https://cgit.freedesktop.org/drm/drm-misc/commit/?id=5688ca34698c734d5591add39e72380123132656

--
Neil