Message ID | 20190319142329.22881-1-ville.syrjala@linux.intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | None | expand |
On 19/03/2019 14:23, Ville Syrjala wrote: > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Make the code self-documenting by introducing i9xx_has_pfit(). > Also make PNV an exceptional case so that we can unset > .is_mobile for the desktop variant. > > v2: s/gen4/gen>=4/ (Tvrtko) > > Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/intel_display.c | 12 ++++++++++-- > 1 file changed, 10 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c > index 61acbaf2af75..98270d0cd763 100644 > --- a/drivers/gpu/drm/i915/intel_display.c > +++ b/drivers/gpu/drm/i915/intel_display.c > @@ -7961,14 +7961,22 @@ static int vlv_crtc_compute_clock(struct intel_crtc *crtc, > return 0; > } > > +static bool i9xx_has_pfit(struct drm_i915_private *dev_priv) > +{ > + if (IS_I830(dev_priv)) > + return false; > + > + return INTEL_GEN(dev_priv) >= 4 || > + IS_PINEVIEW(dev_priv) || IS_MOBILE(dev_priv); > +} > + > static void i9xx_get_pfit_config(struct intel_crtc *crtc, > struct intel_crtc_state *pipe_config) > { > struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); > u32 tmp; > > - if (INTEL_GEN(dev_priv) <= 3 && > - (IS_I830(dev_priv) || !IS_MOBILE(dev_priv))) > + if (!i9xx_has_pfit(dev_priv)) > return; > > tmp = I915_READ(PFIT_CONTROL); > Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Regards, Tvrtko
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 61acbaf2af75..98270d0cd763 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -7961,14 +7961,22 @@ static int vlv_crtc_compute_clock(struct intel_crtc *crtc, return 0; } +static bool i9xx_has_pfit(struct drm_i915_private *dev_priv) +{ + if (IS_I830(dev_priv)) + return false; + + return INTEL_GEN(dev_priv) >= 4 || + IS_PINEVIEW(dev_priv) || IS_MOBILE(dev_priv); +} + static void i9xx_get_pfit_config(struct intel_crtc *crtc, struct intel_crtc_state *pipe_config) { struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); u32 tmp; - if (INTEL_GEN(dev_priv) <= 3 && - (IS_I830(dev_priv) || !IS_MOBILE(dev_priv))) + if (!i9xx_has_pfit(dev_priv)) return; tmp = I915_READ(PFIT_CONTROL);