On Fri, 19 Dec 2025, Ville Syrjälä <[email protected]> wrote:
> On Mon, Dec 15, 2025 at 05:28:14PM +0200, Jani Nikula wrote:
>> The i915 and xe initial plane handling deviate at a too high level,
>> leading to lots of duplication between the two. This series starts to
>> clean it up by moving it to display parent interface, and deduplicating
>> piecemeal.
>>
>> This is intentionally done in small chunks to ease review and catch
>> regressions (hopefully none).
>>
>> There's still more to be done, e.g. it's pointless to have both i915 and
>> xe call intel_framebuffer_init(), but there's some error path stuff to
>> figure out before doing this. And I ran out of steam a bit, and the
>> series got pretty long already.
>>
>> Anyway, by reducing duplication, the series highlights the differences
>> between i915 and xe.
>>
>> BR,
>> Jani.
>>
>>
>> Jani Nikula (15):
>> drm/i915: move display/intel_plane_initial.c to i915_initial_plane.c
>> drm/xe/display: rename xe_plane_initial.c to xe_initial_plane.c
>> drm/i915: rename intel_plane_initial.h to intel_initial_plane.h
>> drm/{i915,xe}: move initial plane calls to parent interface
>> drm/{i915,xe}: deduplicate intel_initial_plane_config() between i915
>> and xe
>> drm/{i915,xe}: deduplicate plane_config_fini() between i915 and xe
>> drm/{i915,xe}: start deduplicating intel_find_initial_plane_obj()
>> between i915 and xe
>> drm/i915: return plane_state from intel_reuse_initial_plane_obj()
>> drm/xe: return plane_state from intel_reuse_initial_plane_obj()
>> drm/i915: further deduplicate intel_find_initial_plane_obj()
>> drm/{i915,xe}: deduplicate intel_alloc_initial_plane_obj() FB modifier
>> checks
>> drm/{i915,xe}: deduplicate initial plane setup
>> drm/{i915,xe}: pass struct drm_plane_state instead of struct drm_crtc
>> to ->setup
>> drm/{i915,xe}: pass struct drm_device instead of drm_device to
>> ->alloc_obj
>> drm/i915: drop dependency on struct intel_display from i915 initial
>> plane
>
> Everything looked quite reasonable. Series is
> Reviewed-by: Ville Syrjälä <[email protected]>
Thanks, pushed the lot to din.
BR,
Jani.
>
>>
>> drivers/gpu/drm/i915/Makefile | 3 +-
>> drivers/gpu/drm/i915/display/intel_display.c | 8 +-
>> .../drm/i915/display/intel_display_driver.c | 2 +-
>> .../drm/i915/display/intel_initial_plane.c | 193 ++++++++
>> ..._plane_initial.h => intel_initial_plane.h} | 6 +-
>> .../drm/i915/display/intel_plane_initial.c | 442 ------------------
>> drivers/gpu/drm/i915/i915_driver.c | 2 +
>> drivers/gpu/drm/i915/i915_initial_plane.c | 290 ++++++++++++
>> drivers/gpu/drm/i915/i915_initial_plane.h | 9 +
>> drivers/gpu/drm/xe/Makefile | 3 +-
>> drivers/gpu/drm/xe/display/xe_display.c | 2 +
>> drivers/gpu/drm/xe/display/xe_initial_plane.c | 189 ++++++++
>> drivers/gpu/drm/xe/display/xe_initial_plane.h | 9 +
>> drivers/gpu/drm/xe/display/xe_plane_initial.c | 321 -------------
>> include/drm/intel/display_parent_interface.h | 17 +
>> 15 files changed, 723 insertions(+), 773 deletions(-)
>> create mode 100644 drivers/gpu/drm/i915/display/intel_initial_plane.c
>> rename drivers/gpu/drm/i915/display/{intel_plane_initial.h =>
>> intel_initial_plane.h} (60%)
>> delete mode 100644 drivers/gpu/drm/i915/display/intel_plane_initial.c
>> create mode 100644 drivers/gpu/drm/i915/i915_initial_plane.c
>> create mode 100644 drivers/gpu/drm/i915/i915_initial_plane.h
>> create mode 100644 drivers/gpu/drm/xe/display/xe_initial_plane.c
>> create mode 100644 drivers/gpu/drm/xe/display/xe_initial_plane.h
>> delete mode 100644 drivers/gpu/drm/xe/display/xe_plane_initial.c
>>
>> --
>> 2.47.3
--
Jani Nikula, Intel