From: Ville Syrjälä Date: Wed, 26 Mar 2025 16:25:33 +0000 (+0200) Subject: drm/i915: Extract intel_dbuf_bw_changed() X-Git-Tag: v6.16-rc1~144^2~20^2~31 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8261fbacd9bb523ddebc3bee624f36c7d8d0b8d8;p=thirdparty%2Flinux.git drm/i915: Extract intel_dbuf_bw_changed() Extract the struct intel_dbuf_bw comparison into a small helper. We'll get more users later. Signed-off-by: Ville Syrjälä Link: https://patchwork.freedesktop.org/patch/msgid/20250326162544.3642-4-ville.syrjala@linux.intel.com Reviewed-by: Jani Nikula --- diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c index b34db55f5a7e6..898ddaf7e76b8 100644 --- a/drivers/gpu/drm/i915/display/intel_bw.c +++ b/drivers/gpu/drm/i915/display/intel_bw.c @@ -1150,6 +1150,21 @@ static int intel_bw_check_qgv_points(struct intel_display *display, old_bw_state, new_bw_state); } +static bool intel_dbuf_bw_changed(struct intel_display *display, + const struct intel_dbuf_bw *old_dbuf_bw, + const struct intel_dbuf_bw *new_dbuf_bw) +{ + enum dbuf_slice slice; + + for_each_dbuf_slice(display, slice) { + if (old_dbuf_bw->max_bw[slice] != new_dbuf_bw->max_bw[slice] || + old_dbuf_bw->active_planes[slice] != new_dbuf_bw->active_planes[slice]) + return true; + } + + return false; +} + static bool intel_bw_state_changed(struct intel_display *display, const struct intel_bw_state *old_bw_state, const struct intel_bw_state *new_bw_state) @@ -1161,13 +1176,9 @@ static bool intel_bw_state_changed(struct intel_display *display, &old_bw_state->dbuf_bw[pipe]; const struct intel_dbuf_bw *new_dbuf_bw = &new_bw_state->dbuf_bw[pipe]; - enum dbuf_slice slice; - for_each_dbuf_slice(display, slice) { - if (old_dbuf_bw->max_bw[slice] != new_dbuf_bw->max_bw[slice] || - old_dbuf_bw->active_planes[slice] != new_dbuf_bw->active_planes[slice]) - return true; - } + if (intel_dbuf_bw_changed(display, old_dbuf_bw, new_dbuf_bw)) + return true; if (intel_bw_crtc_min_cdclk(display, old_bw_state->data_rate[pipe]) != intel_bw_crtc_min_cdclk(display, new_bw_state->data_rate[pipe]))