diff options
| author | Leo Li <[email protected]> | 2022-08-30 20:38:16 +0000 |
|---|---|---|
| committer | Alex Deucher <[email protected]> | 2022-09-19 19:09:34 +0000 |
| commit | 22c42b0ec225c92db33e4b3045ad15baf1427cff (patch) | |
| tree | 135a3e81ec6e5d295d0806ac2276e206651b3aa2 /drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | |
| parent | drm/amd/display: Only consider pixle rate div policy for DCN32+ (diff) | |
| download | kernel-22c42b0ec225c92db33e4b3045ad15baf1427cff.tar.gz kernel-22c42b0ec225c92db33e4b3045ad15baf1427cff.zip | |
drm/amd/display: Fix double cursor on non-video RGB MPO
[Why]
DC makes use of layer_index (zpos) when picking the HW plane to enable
HW cursor on. However, some compositors will not attach zpos information
to each DRM plane. Consequently, in amdgpu, we default layer_index to 0
and do not update it.
This causes said DC logic to enable HW cursor on all planes of the same
layer_index, which manifests as a double cursor issue if one of the
planes is scaled (and hence scaling the cursor as well).
[How]
Use DRM core helpers to calculate a normalized_zpos value for each
drm_plane_state under each crtc, within the atomic state.
This helper will first consider existing zpos values, and if
identical/unset, fallback to plane ID ordering.
The normalized_zpos is then passed to dc_plane_info during atomic check
for later use by the cursor logic.
Reviewed-by: Bhawanpreet Lakha <[email protected]>
Acked-by: Wayne Lin <[email protected]>
Signed-off-by: Leo Li <[email protected]>
Tested-by: Daniel Wheeler <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c')
0 files changed, 0 insertions, 0 deletions
