OSDN Git Service

drm/amd/display: Remove wait while locked
authorGabe Teeger <gabe.teeger@amd.com>
Mon, 14 Aug 2023 20:06:18 +0000 (16:06 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 31 Aug 2023 22:08:19 +0000 (18:08 -0400)
commit5a3ccb1400339268c5e3dc1fa044a7f6c7f59a02
tree00583706e1f5c44b6060b0c685d2aaf0dadc312e
parent1482650bc7ef01ebb24ec2c3a2e4d50e45da4d8c
drm/amd/display: Remove wait while locked

[Why]
We wait for mpc idle while in a locked state, leading to potential
deadlock.

[What]
Move the wait_for_idle call to outside of HW lock. This and a
call to wait_drr_doublebuffer_pending_clear are moved added to a new
static helper function called wait_for_outstanding_hw_updates, to make
the interface clearer.

Cc: stable@vger.kernel.org
Fixes: 8f0d304d21b3 ("drm/amd/display: Do not commit pipe when updating DRR")
Reviewed-by: Jun Lei <jun.lei@amd.com>
Acked-by: Hamza Mahfooz <hamza.mahfooz@amd.com>
Signed-off-by: Gabe Teeger <gabe.teeger@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/Makefile
drivers/gpu/drm/amd/display/dc/core/dc.c
drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c