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]>

> 
>  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

-- 
Ville Syrjälä
Intel

Reply via email to