[PATCH v2 04/14] drm/i915: Pass intel_dbuf_bw to skl_*_calc_dbuf_bw() explicitly
Jani Nikula
jani.nikula at linux.intel.com
Thu Mar 27 07:57:46 UTC 2025
On Wed, 26 Mar 2025, Ville Syrjala <ville.syrjala at linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> Make skl_*_calc_dbuf_bw() a bit lower level passing in the
> to be mutated dbuf_bw struct in explicitly. This will allow
> more reuse later.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
Reviewed-by: Jani Nikula <jani.nikula at intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_bw.c | 13 ++++++-------
> 1 file changed, 6 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c
> index 898ddaf7e76b..67d088da1f38 100644
> --- a/drivers/gpu/drm/i915/display/intel_bw.c
> +++ b/drivers/gpu/drm/i915/display/intel_bw.c
> @@ -1188,7 +1188,7 @@ static bool intel_bw_state_changed(struct intel_display *display,
> return false;
> }
>
> -static void skl_plane_calc_dbuf_bw(struct intel_bw_state *bw_state,
> +static void skl_plane_calc_dbuf_bw(struct intel_dbuf_bw *dbuf_bw,
> struct intel_crtc *crtc,
> enum plane_id plane_id,
> const struct skl_ddb_entry *ddb,
> @@ -1196,7 +1196,6 @@ static void skl_plane_calc_dbuf_bw(struct intel_bw_state *bw_state,
> {
> struct intel_display *display = to_intel_display(crtc);
> struct drm_i915_private *i915 = to_i915(display->drm);
> - struct intel_dbuf_bw *dbuf_bw = &bw_state->dbuf_bw[crtc->pipe];
> unsigned int dbuf_mask = skl_ddb_dbuf_slice_mask(i915, ddb);
> enum dbuf_slice slice;
>
> @@ -1210,12 +1209,11 @@ static void skl_plane_calc_dbuf_bw(struct intel_bw_state *bw_state,
> }
> }
>
> -static void skl_crtc_calc_dbuf_bw(struct intel_bw_state *bw_state,
> +static void skl_crtc_calc_dbuf_bw(struct intel_dbuf_bw *dbuf_bw,
> const struct intel_crtc_state *crtc_state)
> {
> struct intel_display *display = to_intel_display(crtc_state);
> struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> - struct intel_dbuf_bw *dbuf_bw = &bw_state->dbuf_bw[crtc->pipe];
> enum plane_id plane_id;
>
> memset(dbuf_bw, 0, sizeof(*dbuf_bw));
> @@ -1231,12 +1229,12 @@ static void skl_crtc_calc_dbuf_bw(struct intel_bw_state *bw_state,
> if (plane_id == PLANE_CURSOR)
> continue;
>
> - skl_plane_calc_dbuf_bw(bw_state, crtc, plane_id,
> + skl_plane_calc_dbuf_bw(dbuf_bw, crtc, plane_id,
> &crtc_state->wm.skl.plane_ddb[plane_id],
> crtc_state->data_rate[plane_id]);
>
> if (DISPLAY_VER(display) < 11)
> - skl_plane_calc_dbuf_bw(bw_state, crtc, plane_id,
> + skl_plane_calc_dbuf_bw(dbuf_bw, crtc, plane_id,
> &crtc_state->wm.skl.plane_ddb_y[plane_id],
> crtc_state->data_rate[plane_id]);
> }
> @@ -1311,7 +1309,8 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
>
> old_bw_state = intel_atomic_get_old_bw_state(state);
>
> - skl_crtc_calc_dbuf_bw(new_bw_state, crtc_state);
> + skl_crtc_calc_dbuf_bw(&new_bw_state->dbuf_bw[crtc->pipe],
> + crtc_state);
> }
>
> if (!old_bw_state)
--
Jani Nikula, Intel
More information about the Intel-gfx
mailing list