Commit 16b65af8 authored by Jouni Högander's avatar Jouni Högander

drm/i915/display: Selective fetch Y position on Region Early Transport

Selective fetch Y position differs when Region Early Transport is
used. Use formula from Bspec for this.

Bspec: 68927
Reviewed-by: default avatarAnimesh Manna <animesh.manna@intel.com>
Signed-off-by: default avatarJouni Högander <jouni.hogander@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240529093849.1016172-5-jouni.hogander@intel.com
parent 0a8c581c
......@@ -1302,7 +1302,11 @@ static void icl_plane_update_sel_fetch_noarm(struct intel_plane *plane,
clip = &plane_state->psr2_sel_fetch_area;
val = (clip->y1 + plane_state->uapi.dst.y1) << 16;
if (crtc_state->enable_psr2_su_region_et)
y = max(0, plane_state->uapi.dst.y1 - crtc_state->psr2_su_area.y1);
else
y = (clip->y1 + plane_state->uapi.dst.y1);
val = y << 16;
val |= plane_state->uapi.dst.x1;
intel_de_write_fw(i915, SEL_FETCH_PLANE_POS(pipe, plane->id), val);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment