From: Jouni Högander Date: Tue, 12 May 2026 08:00:22 +0000 (+0300) Subject: drm/i915/display: Handle odd position for planar formats in selective fetch X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3638d90b23798290ae9a34af1481fdcf617238b2;p=thirdparty%2Fkernel%2Flinux.git drm/i915/display: Handle odd position for planar formats in selective fetch Since Lunarlake there is no restriction planar planes has to be even positions. Due to this we may end up having odd offset for UV-plane in selective fetch configuration. Add handling for this case into selective fetch configuration. Bspec: 68927 Suggested-by: Vidya Srinivas Signed-off-by: Jouni Högander Reviewed-by: Vidya Srinivas Link: https://patch.msgid.link/20260512080022.2527094-1-jouni.hogander@intel.com --- diff --git a/drivers/gpu/drm/i915/display/skl_universal_plane.c b/drivers/gpu/drm/i915/display/skl_universal_plane.c index ef431dd32e74a..ad4bfff6903da 100644 --- a/drivers/gpu/drm/i915/display/skl_universal_plane.c +++ b/drivers/gpu/drm/i915/display/skl_universal_plane.c @@ -1532,7 +1532,7 @@ static void icl_plane_update_sel_fetch_noarm(struct intel_dsb *dsb, if (!color_plane) y = plane_state->view.color_plane[color_plane].y + clip->y1; else - y = plane_state->view.color_plane[color_plane].y + clip->y1 / 2; + y = plane_state->view.color_plane[color_plane].y + DIV_ROUND_UP(clip->y1, 2); val = y << 16 | x;