Skip to content

Commit 2c2f6e3

Browse files
rodrigovivijlahtine-intel
authored andcommitted
drm/i915/glk: Remove 99% limitation.
While checking the opportunity to add a display_gen check to allow glk and cnl to be on same bucket I noticed these FIXME cases here. So I got the confirmation from HW architect that we actually never needed this workaround. "GLK supports 2 pixel per clock, so pixel clock can be up to 2 * cdclk." So, this reverts commit 97f55ca ("drm/i915/glk: limit pixel clock to 99% of cdclk workaround") Fixes: 97f55ca ("drm/i915/glk: limit pixel clock to 99% of cdclk workaround") Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Madhav Chauhan <madhav.chauhan@intel.com> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Clinton Taylor <clinton.a.taylor@intel.com> Cc: Arthur J Runyan <arthur.j.runyan@intel.com> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20181026005636.22274-1-rodrigo.vivi@intel.com (cherry picked from commit 4288233) Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
1 parent 0856032 commit 2c2f6e3

File tree

1 file changed

+2
-16
lines changed

1 file changed

+2
-16
lines changed

drivers/gpu/drm/i915/intel_cdclk.c

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2138,16 +2138,8 @@ void intel_set_cdclk(struct drm_i915_private *dev_priv,
21382138
static int intel_pixel_rate_to_cdclk(struct drm_i915_private *dev_priv,
21392139
int pixel_rate)
21402140
{
2141-
if (INTEL_GEN(dev_priv) >= 10)
2141+
if (INTEL_GEN(dev_priv) >= 10 || IS_GEMINILAKE(dev_priv))
21422142
return DIV_ROUND_UP(pixel_rate, 2);
2143-
else if (IS_GEMINILAKE(dev_priv))
2144-
/*
2145-
* FIXME: Avoid using a pixel clock that is more than 99% of the cdclk
2146-
* as a temporary workaround. Use a higher cdclk instead. (Note that
2147-
* intel_compute_max_dotclk() limits the max pixel clock to 99% of max
2148-
* cdclk.)
2149-
*/
2150-
return DIV_ROUND_UP(pixel_rate * 100, 2 * 99);
21512143
else if (IS_GEN9(dev_priv) ||
21522144
IS_BROADWELL(dev_priv) || IS_HASWELL(dev_priv))
21532145
return pixel_rate;
@@ -2543,14 +2535,8 @@ static int intel_compute_max_dotclk(struct drm_i915_private *dev_priv)
25432535
{
25442536
int max_cdclk_freq = dev_priv->max_cdclk_freq;
25452537

2546-
if (INTEL_GEN(dev_priv) >= 10)
2538+
if (INTEL_GEN(dev_priv) >= 10 || IS_GEMINILAKE(dev_priv))
25472539
return 2 * max_cdclk_freq;
2548-
else if (IS_GEMINILAKE(dev_priv))
2549-
/*
2550-
* FIXME: Limiting to 99% as a temporary workaround. See
2551-
* intel_min_cdclk() for details.
2552-
*/
2553-
return 2 * max_cdclk_freq * 99 / 100;
25542540
else if (IS_GEN9(dev_priv) ||
25552541
IS_BROADWELL(dev_priv) || IS_HASWELL(dev_priv))
25562542
return max_cdclk_freq;

0 commit comments

Comments
 (0)