drm/i915: Make skl_compute_dbuf_slices() behave consistently for all platforms
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Tue, 25 Feb 2020 17:11:10 +0000 (19:11 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Fri, 15 May 2020 21:16:46 +0000 (00:16 +0300)
Currently skl_compute_dbuf_slices() returns 0 for any inactive pipe on
icl+, but returns BIT(S1) on pre-icl for any pipe (whether it's active or
not). Let's make the behaviour consistent and always return 0 for any
inactive pipe.

Cc: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200225171125.28885-6-ville.syrjala@linux.intel.com
Reviewed-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
drivers/gpu/drm/i915/intel_pm.c

index 696491d..5c47b89 100644 (file)
@@ -4606,7 +4606,7 @@ static u8 skl_compute_dbuf_slices(const struct intel_crtc_state *crtc_state,
         * For anything else just return one slice yet.
         * Should be extended for other platforms.
         */
-       return BIT(DBUF_S1);
+       return active_pipes & BIT(pipe) ? BIT(DBUF_S1) : 0;
 }
 
 static u64