[PATCH 04/10] drm/i915: Make plane_config->fb a struct drm_framebuffer*

Ville Syrjala
2026-04-10T15:05:10Z

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

There's no need to use the intel specific struct intel_framebuffer*
type in the initial plane_config structure. Just make it a
struct drm_framebuffer*.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
drivers/gpu/drm/i915/display/i9xx_plane.c | 2 +-
drivers/gpu/drm/i915/display/intel_display_types.h | 2 +-
drivers/gpu/drm/i915/display/intel_initial_plane.c | 10 +++++-----
drivers/gpu/drm/i915/display/skl_universal_plane.c | 2 +-
drivers/gpu/drm/i915/i915_initial_plane.c | 6 +++---
drivers/gpu/drm/xe/display/xe_initial_plane.c | 2 +-
6 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/i9xx_plane.c b/drivers/gpu/drm/i915/display/i9xx_plane.c
index 9c16753a1f3b..70734d32a409 100644
--- a/drivers/gpu/drm/i915/display/i9xx_plane.c
+++ b/drivers/gpu/drm/i915/display/i9xx_plane.c
@@ -1240,7 +1240,7 @@ i9xx_get_initial_plane_config(struct intel_crtc *crtc,
fb->width, fb->height, fb->format->cpp[0] * 8,
base, fb->pitches[0], plane_config->size);

- plane_config->fb = intel_fb;
+ plane_config->fb = &intel_fb->base;
}

bool i9xx_fixup_initial_plane_config(struct intel_crtc *crtc,
diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
index eaa37b8d9584..82c7e03427ff 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -755,7 +755,7 @@ struct intel_plane_state {
};

struct intel_initial_plane_config {
- struct intel_framebuffer *fb;
+ struct drm_framebuffer *fb;
struct i915_vma *vma;
int size;
u32 base;
diff --git a/drivers/gpu/drm/i915/display/intel_initial_plane.c b/drivers/gpu/drm/i915/display/intel_initial_plane.c
index 4f51083dbd11..911d67dceba9 100644
--- a/drivers/gpu/drm/i915/display/intel_initial_plane.c
+++ b/drivers/gpu/drm/i915/display/intel_initial_plane.c
@@ -55,9 +55,9 @@ static struct drm_gem_object *
intel_alloc_initial_plane_obj(struct intel_display *display,
struct intel_initial_plane_config *plane_config)
{
- struct intel_framebuffer *fb = plane_config->fb;
+ struct drm_framebuffer *fb = plane_config->fb;

- switch (fb->base.modifier) {
+ switch (fb->modifier) {
case DRM_FORMAT_MOD_LINEAR:
case I915_FORMAT_MOD_X_TILED:
case I915_FORMAT_MOD_Y_TILED:
@@ -65,7 +65,7 @@ intel_alloc_initial_plane_obj(struct intel_display *display,
break;
default:
drm_dbg_kms(display->drm, "Unsupported modifier for initial FB: 0x%llx\n",
- fb->base.modifier);
+ fb->modifier);
return NULL;
}

@@ -93,7 +93,7 @@ intel_find_initial_plane_obj(struct intel_crtc *crtc,
return;

if (intel_alloc_initial_plane_obj(display, plane_config)) {
- fb = &plane_config->fb->base;
+ fb = plane_config->fb;
vma = plane_config->vma;
} else {
const struct intel_plane_state *other_plane_state;
@@ -149,7 +149,7 @@ static void plane_config_fini(struct intel_display *display,
struct intel_initial_plane_config *plane_config)
{
if (plane_config->fb) {
- struct drm_framebuffer *fb = &plane_config->fb->base;
+ struct drm_framebuffer *fb = plane_config->fb;

/* We may only have the stub and not a full framebuffer */
if (drm_framebuffer_read_refcount(fb))
diff --git a/drivers/gpu/drm/i915/display/skl_universal_plane.c b/drivers/gpu/drm/i915/display/skl_universal_plane.c
index 7a9d494334b5..00c863e378a1 100644
--- a/drivers/gpu/drm/i915/display/skl_universal_plane.c
+++ b/drivers/gpu/drm/i915/display/skl_universal_plane.c
@@ -3206,7 +3206,7 @@ skl_get_initial_plane_config(struct intel_crtc *crtc,
fb->width, fb->height, fb->format->cpp[0] * 8,
base, fb->pitches[0], plane_config->size);

- plane_config->fb = intel_fb;
+ plane_config->fb = &intel_fb->base;
return;

error:
diff --git a/drivers/gpu/drm/i915/i915_initial_plane.c b/drivers/gpu/drm/i915/i915_initial_plane.c
index 6df57db9b62a..5cb1adde67b6 100644
--- a/drivers/gpu/drm/i915/i915_initial_plane.c
+++ b/drivers/gpu/drm/i915/i915_initial_plane.c
@@ -137,7 +137,7 @@ initial_plane_vma(struct drm_i915_private *i915,
i915_gem_object_set_cache_coherency(obj, HAS_WT(i915) ?
I915_CACHE_WT : I915_CACHE_NONE);

- tiling = intel_fb_modifier_to_tiling(plane_config->fb->base.modifier);
+ tiling = intel_fb_modifier_to_tiling(plane_config->fb->modifier);

switch (tiling) {
case I915_TILING_NONE:
@@ -145,7 +145,7 @@ initial_plane_vma(struct drm_i915_private *i915,
case I915_TILING_X:
case I915_TILING_Y:
obj->tiling_and_stride =
- plane_config->fb->base.pitches[0] |
+ plane_config->fb->pitches[0] |
tiling;
break;
default:
@@ -223,7 +223,7 @@ i915_alloc_initial_plane_obj(struct drm_device *drm,
{
struct drm_i915_private *i915 = to_i915(drm);
struct drm_mode_fb_cmd2 mode_cmd = {};
- struct drm_framebuffer *fb = &plane_config->fb->base;
+ struct drm_framebuffer *fb = plane_config->fb;
struct i915_vma *vma;

vma = initial_plane_vma(i915, plane_config);
diff --git a/drivers/gpu/drm/xe/display/xe_initial_plane.c b/drivers/gpu/drm/xe/display/xe_initial_plane.c
index 1c7a4e8c390c..8f2d0244c03f 100644
--- a/drivers/gpu/drm/xe/display/xe_initial_plane.c
+++ b/drivers/gpu/drm/xe/display/xe_initial_plane.c
@@ -115,7 +115,7 @@ xe_alloc_initial_plane_obj(struct drm_device *drm,
{
struct xe_device *xe = to_xe_device(drm);
struct drm_mode_fb_cmd2 mode_cmd = { 0 };
- struct drm_framebuffer *fb = &plane_config->fb->base;
+ struct drm_framebuffer *fb = plane_config->fb;
struct xe_bo *bo;

mode_cmd.pixel_format = fb->format->format;
--
2.52.0