]> git.itanic.dy.fi Git - linux-stable/commit
drm/amd/display: fix flickering caused by S/G mode
authorHamza Mahfooz <hamza.mahfooz@amd.com>
Fri, 14 Apr 2023 18:26:27 +0000 (14:26 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 27 Apr 2023 02:51:59 +0000 (22:51 -0400)
commit08da182175db4c7f80850354849d95f2670e8cd9
tree5ef07db40a0e416b5a2aeffdf230ae54a3ccfd3e
parent9675b3ba99ec79273d94afa09e9b69e2b8c0d238
drm/amd/display: fix flickering caused by S/G mode

Currently, on a handful of ASICs. We allow the framebuffer for a given
plane to exist in either VRAM or GTT. However, if the plane's new
framebuffer is in a different memory domain than it's previous
framebuffer, flipping between them can cause the screen to flicker. So,
to fix this, don't perform an immediate flip in the aforementioned case.

Cc: stable@vger.kernel.org
Link: https://gitlab.freedesktop.org/drm/amd/-/issues/2354
Reviewed-by: Roman Li <Roman.Li@amd.com>
Fixes: 81d0bcf99009 ("drm/amdgpu: make display pinning more flexible (v2)")
Signed-off-by: Hamza Mahfooz <hamza.mahfooz@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c