From: Wyatt Wood Date: Wed, 23 Feb 2022 16:22:30 +0000 (-0500) Subject: drm/amd/display: Release AUX engine after failed acquire X-Git-Tag: v6.1-rc5~1719^2~4^2~56 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d8ff38d8fcd0a7bb66d17ec689135239aca78532;p=platform%2Fkernel%2Flinux-starfive.git drm/amd/display: Release AUX engine after failed acquire [Why] There is a sequence in which aux arbitration doesn't work correctly. Driver is left with aux access after it times out waiting for access. In future dmub fw is never granted aux access and is stuck in a while loop. [How] Cancel aux request from driver after timing out. Reviewed-by: Aric Cyr Acked-by: Alan Liu Signed-off-by: Wyatt Wood Tested-by: Daniel Wheeler Signed-off-by: Alex Deucher --- 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 74b05b3..b8d6f42 100644 --- a/drivers/gpu/drm/amd/display/dc/dce/dce_aux.c +++ b/drivers/gpu/drm/amd/display/dc/dce/dce_aux.c @@ -413,7 +413,7 @@ static bool acquire( return false; if (!acquire_engine(engine)) { - dal_ddc_close(ddc); + release_engine(engine); return false; }