mbox series

[00/20] drm/{i915, xe}: FBC cleanups + tweak fbdev stolen usage

Message ID 20240705145254.3355-1-ville.syrjala@linux.intel.com (mailing list archive)
Headers show
Series drm/{i915, xe}: FBC cleanups + tweak fbdev stolen usage | expand

Message

Ville Syrjälä July 5, 2024, 2:52 p.m. UTC
From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Here's an idea for a slightly better heuristic to answer
the "should fbdev use stolen or not?" question.

Ended up with a pile of refactoring and cleanups in
the FBC code as a result.

Ville Syrjälä (20):
  drm/i915/fbc: Extract intel_fbc_has_fences()
  drm/i915/fbc: Convert to intel_display, mostly
  drm/i915/fbc: s/_intel_fbc_cfb_stride()/intel_fbc_plane_cfb_stride()/
  drm/i915/fbc: Extract intel_fbc_max_plane_size()
  drm/i915/fbc: Extract intel_fbc_max_surface_size()
  drm/i915/fbc:
    s/intel_fbc_hw_tracking_covers_screen()/intel_fbc_surface_size_ok()/
  drm/i915/fbc: Adjust g4x+ platform checks
  drm/i915/fbc: Extract _intel_fbc_cfb_stride()
  drm/i915/fbc: s/lines/height/
  drm/i915/fbc: Reoder CFB max height platform checks
  drm/i915/fbc: Extract intel_fbc_max_cfb_height()
  drm/i915/fbc: Extract _intel_fbc_cfb_size()
  drm/i915/fbc: Extract intel_fbc_cfb_cpp()
  drm/i915/fbc: Introduce intel_fbc_preferred_cfb_size()
  drm/xe/fbdev: Fix BIOS FB vs.s stolen size checke
  drm/i915/fbdev: Extract intel_fbdev_fb_prefer_stolen()
  drm/xe/fbdev: Extract intel_fbdev_fb_prefer_stolen()
  drm/xe/fbdev: Use the same logic for fbdev stolen takever and fresh
    allocation
  drm/i915/fbdev: Adjust fbdev stolen mem usage heuristic
  drm/xe/fbdev: Adjust fbdev stolen mem usage heuristic

 .../drm/i915/display/intel_display_debugfs.c  |   4 +-
 .../drm/i915/display/intel_display_driver.c   |   4 +-
 drivers/gpu/drm/i915/display/intel_fbc.c      | 564 ++++++++++--------
 drivers/gpu/drm/i915/display/intel_fbc.h      |  14 +-
 drivers/gpu/drm/i915/display/intel_fbdev_fb.c |  23 +-
 drivers/gpu/drm/i915/display/intel_fbdev_fb.h |   5 +-
 .../drm/i915/display/intel_fifo_underrun.c    |   2 +-
 .../drm/i915/display/intel_modeset_setup.c    |   2 +-
 .../drm/i915/display/intel_plane_initial.c    |  10 +-
 drivers/gpu/drm/xe/display/intel_fbdev_fb.c   |  22 +-
 drivers/gpu/drm/xe/display/xe_plane_initial.c |   8 +-
 11 files changed, 389 insertions(+), 269 deletions(-)

Comments

Ville Syrjälä July 12, 2024, 9:39 p.m. UTC | #1
On Fri, Jul 05, 2024 at 05:52:34PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Here's an idea for a slightly better heuristic to answer
> the "should fbdev use stolen or not?" question.
> 
> Ended up with a pile of refactoring and cleanups in
> the FBC code as a result.
> 
> Ville Syrjälä (20):
>   drm/i915/fbc: Extract intel_fbc_has_fences()
>   drm/i915/fbc: Convert to intel_display, mostly
>   drm/i915/fbc: s/_intel_fbc_cfb_stride()/intel_fbc_plane_cfb_stride()/
>   drm/i915/fbc: Extract intel_fbc_max_plane_size()
>   drm/i915/fbc: Extract intel_fbc_max_surface_size()
>   drm/i915/fbc:
>     s/intel_fbc_hw_tracking_covers_screen()/intel_fbc_surface_size_ok()/
>   drm/i915/fbc: Adjust g4x+ platform checks
>   drm/i915/fbc: Extract _intel_fbc_cfb_stride()
>   drm/i915/fbc: s/lines/height/
>   drm/i915/fbc: Reoder CFB max height platform checks
>   drm/i915/fbc: Extract intel_fbc_max_cfb_height()
>   drm/i915/fbc: Extract _intel_fbc_cfb_size()
>   drm/i915/fbc: Extract intel_fbc_cfb_cpp()

Pushed all the FBC code refactoring. Thanks for the reviews.

>   drm/i915/fbc: Introduce intel_fbc_preferred_cfb_size()
>   drm/xe/fbdev: Fix BIOS FB vs.s stolen size checke
>   drm/i915/fbdev: Extract intel_fbdev_fb_prefer_stolen()
>   drm/xe/fbdev: Extract intel_fbdev_fb_prefer_stolen()
>   drm/xe/fbdev: Use the same logic for fbdev stolen takever and fresh
>     allocation
>   drm/i915/fbdev: Adjust fbdev stolen mem usage heuristic
>   drm/xe/fbdev: Adjust fbdev stolen mem usage heuristic

Left out the rest for now. This should go in after the more
urgent LNL/etc. stolen issues are sorted.

> 
>  .../drm/i915/display/intel_display_debugfs.c  |   4 +-
>  .../drm/i915/display/intel_display_driver.c   |   4 +-
>  drivers/gpu/drm/i915/display/intel_fbc.c      | 564 ++++++++++--------
>  drivers/gpu/drm/i915/display/intel_fbc.h      |  14 +-
>  drivers/gpu/drm/i915/display/intel_fbdev_fb.c |  23 +-
>  drivers/gpu/drm/i915/display/intel_fbdev_fb.h |   5 +-
>  .../drm/i915/display/intel_fifo_underrun.c    |   2 +-
>  .../drm/i915/display/intel_modeset_setup.c    |   2 +-
>  .../drm/i915/display/intel_plane_initial.c    |  10 +-
>  drivers/gpu/drm/xe/display/intel_fbdev_fb.c   |  22 +-
>  drivers/gpu/drm/xe/display/xe_plane_initial.c |   8 +-
>  11 files changed, 389 insertions(+), 269 deletions(-)
> 
> -- 
> 2.44.2