From: Ville Syrjälä Date: Thu, 10 Jun 2021 18:32:33 +0000 (+0300) Subject: drm/i915/fbc: Handle 16bpp compression limit better X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=d502f6c4389f27fd316c417cfc58d69bf2831839;p=linux.git drm/i915/fbc: Handle 16bpp compression limit better The limit++ for the 16bpp case is nonsense since the compression limit is always supposed to be power of two. Replace it with <<=1. Signed-off-by: Ville Syrjälä Link: https://patchwork.freedesktop.org/patch/msgid/20210610183237.3920-6-ville.syrjala@linux.intel.com Reviewed-by: José Roberto de Souza --- diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c b/drivers/gpu/drm/i915/display/intel_fbc.c index 55bc708e87122..1c220cea89779 100644 --- a/drivers/gpu/drm/i915/display/intel_fbc.c +++ b/drivers/gpu/drm/i915/display/intel_fbc.c @@ -239,11 +239,10 @@ static void ilk_fbc_activate(struct drm_i915_private *dev_priv) dpfc_ctl = DPFC_CTL_PLANE(params->crtc.i9xx_plane); if (params->fb.format->cpp[0] == 2) - limit++; + limit <<= 1; switch (limit) { case 4: - case 3: dpfc_ctl |= DPFC_CTL_LIMIT_4X; break; case 2: @@ -319,11 +318,10 @@ static void gen7_fbc_activate(struct drm_i915_private *dev_priv) dpfc_ctl |= IVB_DPFC_CTL_PLANE(params->crtc.i9xx_plane); if (params->fb.format->cpp[0] == 2) - limit++; + limit <<= 1; switch (limit) { case 4: - case 3: dpfc_ctl |= DPFC_CTL_LIMIT_4X; break; case 2: