mirror_ubuntu-kernels/drivers/gpu/drm/amd
Simon Ser c1e18c44dc drm/amd/display: only accept async flips for fast updates
Up until now, amdgpu was silently degrading to vsync when
user-space requested an async flip but the hardware didn't support
it.

The hardware doesn't support immediate flips when the update changes
the FB pitch, the DCC state, the rotation, enables or disables CRTCs
or planes, etc. This is reflected in the dm_crtc_state.update_type
field: UPDATE_TYPE_FAST means that immediate flip is supported.

Silently degrading async flips to vsync is not the expected behavior
from a uAPI point-of-view. Xorg expects async flips to fail if
unsupported, to be able to fall back to a blit. i915 already behaves
this way.

This patch aligns amdgpu with uAPI expectations and returns a failure
when an async flip is not possible.

Signed-off-by: Simon Ser <contact@emersion.fr>
Reviewed-by: André Almeida <andrealmeid@igalia.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: André Almeida <andrealmeid@igalia.com>
Signed-off-by: Hamza Mahfooz <hamza.mahfooz@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2023-07-12 11:12:09 -04:00
..
acp
amdgpu drm/amdgpu: add watchdog timer enablement for gfx_v9_4_3 2023-07-12 11:12:09 -04:00
amdkfd drm/amdkfd: Update CWSR grace period for GFX9.4.3 2023-07-12 11:12:09 -04:00
amdxcp drm/amdxcp: fix Makefile to build amdxcp module 2023-06-09 12:32:53 -04:00
display drm/amd/display: only accept async flips for fast updates 2023-07-12 11:12:09 -04:00
include drm/amdkfd: add kfd2kgd debugger callbacks for GC v9.4.3 2023-07-12 10:58:01 -04:00
pm drm/amd/pm: conditionally disable pcie lane/speed switching for SMU13 2023-07-12 11:12:09 -04:00