]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/i915/cdclk: Extract glk_cdclk_audio_wa_needed()
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Tue, 23 Sep 2025 17:19:27 +0000 (20:19 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Fri, 10 Oct 2025 23:49:09 +0000 (02:49 +0300)
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ä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250923171943.7319-6-ville.syrjala@linux.intel.com
Reviewed-by: Mika Kahola <mika.kahola@intel.com>
drivers/gpu/drm/i915/display/intel_cdclk.c

index b54b1006aeb0c5f1ba637c1250d383bed0d9c90b..05d9f488895e23772cc25bf44e5e2848cd99bf9d 100644 (file)
@@ -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) {