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 <Aric.Cyr@amd.com>
Acked-by: Alan Liu <HaoPing.Liu@amd.com>
Signed-off-by: Wyatt Wood <wyatt.wood@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Wyatt Wood
2022-02-23 11:22:30 -05:00
committed by Alex Deucher
parent 3741584519
commit d8ff38d8fc

View File

@@ -413,7 +413,7 @@ static bool acquire(
return false;
if (!acquire_engine(engine)) {
dal_ddc_close(ddc);
release_engine(engine);
return false;
}