diff options
author | jinlong zhang <jinlong.zhang@amd.com> | 2020-09-25 22:51:04 +0800 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2020-10-26 13:34:47 -0400 |
commit | 7154a51b534707cae0f61190cab8f21cc9b2abdc (patch) | |
tree | f0207538dae53332b2ea415a11d4c85061191656 /drivers/gpu/drm/amd/display/dc/dce/dce_aux.c | |
parent | a2540e34b521d7f040aa8a6b76b3f29bd679a2ae (diff) |
drm/amd/display: Using udelay for specific dongle while edid return defer
[why]
Some platform has a limitation of 2ms for udelay
[how]
Add 1ms udelay for specific dongle.
Signed-off-by: jinlong zhang <jinlong.zhang@amd.com>
Acked-by: Aurabindo Pillai <aurabindo.pillai@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/dce/dce_aux.c')
-rw-r--r-- | drivers/gpu/drm/amd/display/dc/dce/dce_aux.c | 4 |
1 files changed, 3 insertions, 1 deletions
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..cda5fd0464bc 100644 --- a/drivers/gpu/drm/amd/display/dc/dce/dce_aux.c +++ b/drivers/gpu/drm/amd/display/dc/dce/dce_aux.c @@ -652,8 +652,10 @@ bool dce_aux_transfer_with_retries(struct ddc_service *ddc, } else { if ((*payload->reply == AUX_TRANSACTION_REPLY_AUX_DEFER) || (*payload->reply == AUX_TRANSACTION_REPLY_I2C_OVER_AUX_DEFER)) { - if (payload->defer_delay > 0) + if (payload->defer_delay > 1) msleep(payload->defer_delay); + else if (payload->defer_delay <= 1) + udelay(payload->defer_delay * 1000); } } break; |