[PATCH] drm/bridge: Add 200ms delay to wait FW HPD status stable

Jani Nikula jani.nikula at linux.intel.com
Thu Sep 21 12:09:10 UTC 2023


On Thu, 21 Sep 2023, Xin Ji <xji at analogixsemi.com> wrote:
> For the none-interrupt design(sink device is panel, polling HPD
> status when chip power on), anx7625 FW has more than 200ms HPD
> de-bounce time in FW, for the safety to get HPD status, driver
> better to wait 200ms before HPD detection after OS resume back.
>
> Signed-off-by: Xin Ji <xji at analogixsemi.com>
> ---
>  drivers/gpu/drm/bridge/analogix/anx7625.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/bridge/analogix/anx7625.c b/drivers/gpu/drm/bridge/analogix/anx7625.c
> index 51abe42c639e..833d6d50a03d 100644
> --- a/drivers/gpu/drm/bridge/analogix/anx7625.c
> +++ b/drivers/gpu/drm/bridge/analogix/anx7625.c
> @@ -1464,6 +1464,9 @@ static int _anx7625_hpd_polling(struct anx7625_data *ctx,
>  	if (ctx->pdata.intp_irq)
>  		return 0;
>  
> +	/* Delay 200ms for FW HPD de-bounce */
> +	usleep_range(200000, 201000);

If you need to sleep for 200 ms, maybe use msleep instead?

BR,
Jani.

> +
>  	ret = readx_poll_timeout(anx7625_read_hpd_status_p0,
>  				 ctx, val,
>  				 ((val & HPD_STATUS) || (val < 0)),

-- 
Jani Nikula, Intel


More information about the dri-devel mailing list