[PATCH 04/15] drm/amd/display: Replace msleep with udelay while read edid return defer.
Alex Deucher
alexdeucher at gmail.com
Wed Sep 16 21:34:09 UTC 2020
On Wed, Sep 16, 2020 at 3:42 PM Qingqing Zhuo <qingqing.zhuo at amd.com> wrote:
>
> From: jinlong zhang <jinlong.zhang at amd.com>
>
> [why]
> while read edid return defer, then it enter to msleep,
> but it actually took more time during msleep,
> this will cause remaining edid read fail.
>
> [how]
> Replacing msleep with udelay, it will not take any extra time, edid return pass finally.
How long of a delay are we talking about here? Some platforms don't
support long udelays and someone will send a patch to change this to
msleep.
Alex
>
> Signed-off-by: jinlong zhang <jinlong.zhang at amd.com>
> Reviewed-by: Wenjing Liu <Wenjing.Liu at amd.com>
> Acked-by: Qingqing Zhuo <qingqing.zhuo at amd.com>
> ---
> drivers/gpu/drm/amd/display/dc/dce/dce_aux.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_aux.c b/drivers/gpu/drm/amd/display/dc/dce/dce_aux.c
> index 743042d5905a..cdcad82765e0 100644
> --- a/drivers/gpu/drm/amd/display/dc/dce/dce_aux.c
> +++ b/drivers/gpu/drm/amd/display/dc/dce/dce_aux.c
> @@ -653,7 +653,7 @@ bool dce_aux_transfer_with_retries(struct ddc_service *ddc,
> if ((*payload->reply == AUX_TRANSACTION_REPLY_AUX_DEFER) ||
> (*payload->reply == AUX_TRANSACTION_REPLY_I2C_OVER_AUX_DEFER)) {
> if (payload->defer_delay > 0)
> - msleep(payload->defer_delay);
> + udelay(payload->defer_delay * 1000);
> }
> }
> break;
> --
> 2.17.1
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
More information about the amd-gfx
mailing list