diff options
author | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2024-06-12 23:47:06 +0300 |
---|---|---|
committer | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2024-06-24 17:09:50 +0300 |
commit | 195b7a0d2ebe5672a58210992f3629d19d5a95ae (patch) | |
tree | 7918d3662ad607f29ecebd03fba9e322f5dd19fb /drivers/gpu/drm/i915/display/intel_cursor.c | |
parent | 1c5f18d88eae348cf45f90aaee7b361f593b0701 (diff) | |
download | linux-195b7a0d2ebe5672a58210992f3629d19d5a95ae.tar.gz linux-195b7a0d2ebe5672a58210992f3629d19d5a95ae.tar.bz2 linux-195b7a0d2ebe5672a58210992f3629d19d5a95ae.zip |
drm/i915: Introduce the plane->min_alignment() vfunc
Different hardware generations have different scanout alignment
requirements. Introduce a new vfunc that will allow us to
make that distinction without horrible if-ladders.
For now we directly plug in the existing intel_surf_alignment()
and intel_cursor_alignment() functions.
For fbdev we (temporarily) introduce intel_fbdev_min_alignment()
that simply queries the alignment from the primary plane of
the first crtc.
TODO: someone will need to fix xe's alignment handling
Reviewed-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240612204712.31404-4-ville.syrjala@linux.intel.com
Acked-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/display/intel_cursor.c')
-rw-r--r-- | drivers/gpu/drm/i915/display/intel_cursor.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_cursor.c b/drivers/gpu/drm/i915/display/intel_cursor.c index 66436e526021..46f39ab17e43 100644 --- a/drivers/gpu/drm/i915/display/intel_cursor.c +++ b/drivers/gpu/drm/i915/display/intel_cursor.c @@ -954,6 +954,8 @@ intel_cursor_plane_create(struct drm_i915_private *dev_priv, cursor->check_plane = i9xx_check_cursor; } + cursor->min_alignment = intel_cursor_alignment; + cursor->cursor.base = ~0; cursor->cursor.cntl = ~0; |