From: Ville Syrjälä Date: Tue, 23 Sep 2025 17:19:27 +0000 (+0300) Subject: drm/i915/cdclk: Extract glk_cdclk_audio_wa_needed() X-Git-Tag: v6.19-rc1~157^2~17^2~164 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=24c78dda6d737924cd89da02e33bdcf8992a1146;p=thirdparty%2Fkernel%2Flinux.git drm/i915/cdclk: Extract glk_cdclk_audio_wa_needed() Extract the glk audio w/a check into a small helper. We'll have other uses for this later. Signed-off-by: Ville Syrjälä Link: https://patchwork.freedesktop.org/patch/msgid/20250923171943.7319-6-ville.syrjala@linux.intel.com Reviewed-by: Mika Kahola --- diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c index b54b1006aeb0c..05d9f488895e2 100644 --- a/drivers/gpu/drm/i915/display/intel_cdclk.c +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c @@ -2831,6 +2831,14 @@ static int intel_crtc_compute_min_cdclk(const struct intel_crtc_state *crtc_stat return min_cdclk; } +static bool glk_cdclk_audio_wa_needed(struct intel_display *display, + const struct intel_cdclk_state *cdclk_state) +{ + return display->platform.geminilake && + cdclk_state->active_pipes && + !is_power_of_2(cdclk_state->active_pipes); +} + static int intel_compute_min_cdclk(struct intel_atomic_state *state) { struct intel_display *display = to_intel_display(state); @@ -2887,8 +2895,7 @@ static int intel_compute_min_cdclk(struct intel_atomic_state *state) * by changing the cd2x divider (see glk_cdclk_table[]) and * thus a full modeset won't be needed then. */ - if (display->platform.geminilake && cdclk_state->active_pipes && - !is_power_of_2(cdclk_state->active_pipes)) + if (glk_cdclk_audio_wa_needed(display, cdclk_state)) min_cdclk = max(min_cdclk, 2 * 96000); if (min_cdclk > display->cdclk.max_cdclk_freq) {