mirror of
https://github.com/torvalds/linux.git
synced 2026-04-19 23:34:00 -04:00
drm/amd/display: Fix incorrect cursor pos on scaled primary plane
[Why] Cursor pos is correctly adjusted from DC side for source rect offset on DCN ASIC, but only on the overlay. This is because DM places offsets the cursor for primary planes only to workaround missing code in DCE for the adjustment we're now correctly doing in DC for DCN ASIC. [How] Drop the adjustment for source rect from the DM side of things and put the code where it actually belongs - in DC on the pipe level. This matches what we do for DCN now. Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Reviewed-by: Zhan Liu <Zhan.Liu@amd.com> Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
committed by
Alex Deucher
parent
d3227976f4
commit
03a4059b8d
@@ -6272,12 +6272,6 @@ static int get_cursor_position(struct drm_plane *plane, struct drm_crtc *crtc,
|
||||
y <= -amdgpu_crtc->max_cursor_height)
|
||||
return 0;
|
||||
|
||||
if (crtc->primary->state) {
|
||||
/* avivo cursor are offset into the total surface */
|
||||
x += crtc->primary->state->src_x >> 16;
|
||||
y += crtc->primary->state->src_y >> 16;
|
||||
}
|
||||
|
||||
if (x < 0) {
|
||||
xorigin = min(-x, amdgpu_crtc->max_cursor_width - 1);
|
||||
x = 0;
|
||||
|
||||
Reference in New Issue
Block a user