From 64ee50c6f025c0a62e173bd96c33e48da6012383 Mon Sep 17 00:00:00 2001 From: Jani Nikula Date: Mon, 15 Dec 2025 17:28:25 +0200 Subject: [PATCH] drm/{i915, xe}: deduplicate intel_alloc_initial_plane_obj() FB modifier checks MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Move the modifier checks into common code to deduplicate. Reviewed-by: Ville Syrjälä Link: https://patch.msgid.link/3c62ad48595aa2306219b1d6a215cf7680a67da2.1765812266.git.jani.nikula@intel.com Signed-off-by: Jani Nikula --- drivers/gpu/drm/i915/display/intel_initial_plane.c | 14 ++++++++++++++ drivers/gpu/drm/i915/i915_initial_plane.c | 13 ------------- drivers/gpu/drm/xe/display/xe_initial_plane.c | 13 ------------- 3 files changed, 14 insertions(+), 26 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_initial_plane.c b/drivers/gpu/drm/i915/display/intel_initial_plane.c index cbfcc52f180f..e45d2f4e80ad 100644 --- a/drivers/gpu/drm/i915/display/intel_initial_plane.c +++ b/drivers/gpu/drm/i915/display/intel_initial_plane.c @@ -1,6 +1,7 @@ // SPDX-License-Identifier: MIT /* Copyright © 2025 Intel Corporation */ +#include #include #include "intel_display_core.h" @@ -47,6 +48,19 @@ intel_alloc_initial_plane_obj(struct intel_crtc *crtc, struct intel_initial_plane_config *plane_config) { struct intel_display *display = to_intel_display(crtc); + struct intel_framebuffer *fb = plane_config->fb; + + switch (fb->base.modifier) { + case DRM_FORMAT_MOD_LINEAR: + case I915_FORMAT_MOD_X_TILED: + case I915_FORMAT_MOD_Y_TILED: + case I915_FORMAT_MOD_4_TILED: + break; + default: + drm_dbg_kms(display->drm, "Unsupported modifier for initial FB: 0x%llx\n", + fb->base.modifier); + return NULL; + } return display->parent->initial_plane->alloc_obj(&crtc->base, plane_config); } diff --git a/drivers/gpu/drm/i915/i915_initial_plane.c b/drivers/gpu/drm/i915/i915_initial_plane.c index 0117f9e115d1..5f7dfe7c6d42 100644 --- a/drivers/gpu/drm/i915/i915_initial_plane.c +++ b/drivers/gpu/drm/i915/i915_initial_plane.c @@ -240,19 +240,6 @@ i915_alloc_initial_plane_obj(struct drm_crtc *_crtc, struct drm_framebuffer *fb = &plane_config->fb->base; struct i915_vma *vma; - switch (fb->modifier) { - case DRM_FORMAT_MOD_LINEAR: - case I915_FORMAT_MOD_X_TILED: - case I915_FORMAT_MOD_Y_TILED: - case I915_FORMAT_MOD_4_TILED: - break; - default: - drm_dbg(display->drm, - "Unsupported modifier for initial FB: 0x%llx\n", - fb->modifier); - return NULL; - } - vma = initial_plane_vma(display, plane_config); if (!vma) return NULL; diff --git a/drivers/gpu/drm/xe/display/xe_initial_plane.c b/drivers/gpu/drm/xe/display/xe_initial_plane.c index 2ce0f78cd7b1..e819175d5946 100644 --- a/drivers/gpu/drm/xe/display/xe_initial_plane.c +++ b/drivers/gpu/drm/xe/display/xe_initial_plane.c @@ -134,19 +134,6 @@ xe_alloc_initial_plane_obj(struct drm_crtc *_crtc, struct drm_framebuffer *fb = &plane_config->fb->base; struct xe_bo *bo; - switch (fb->modifier) { - case DRM_FORMAT_MOD_LINEAR: - case I915_FORMAT_MOD_X_TILED: - case I915_FORMAT_MOD_Y_TILED: - case I915_FORMAT_MOD_4_TILED: - break; - default: - drm_dbg_kms(&xe->drm, - "Unsupported modifier for initial FB: 0x%llx\n", - fb->modifier); - return NULL; - } - mode_cmd.pixel_format = fb->format->format; mode_cmd.width = fb->width; mode_cmd.height = fb->height; -- 2.47.3