On Mon, Sep 02, 2013 at 09:13:35PM +0300, ville.syrjala@xxxxxxxxxxxxxxx wrote: > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > Move intel_crtc_active() to intel_display.c and make it available > elsewhere as well. > > intel_edp_psr_match_conditions() already has one open coded copy, > so replace that one with a call to intel_crtc_active(). > > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/i915/intel_display.c | 11 +++++++++++ > drivers/gpu/drm/i915/intel_dp.c | 3 +-- > drivers/gpu/drm/i915/intel_drv.h | 1 + > drivers/gpu/drm/i915/intel_pm.c | 11 ----------- > 4 files changed, 13 insertions(+), 13 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c > index 19b203c..f49dbe8 100644 > --- a/drivers/gpu/drm/i915/intel_display.c > +++ b/drivers/gpu/drm/i915/intel_display.c > @@ -751,6 +751,17 @@ vlv_find_best_dpll(const intel_limit_t *limit, struct drm_crtc *crtc, > return true; > } > > +bool intel_crtc_active(struct drm_crtc *crtc) > +{ > + struct intel_crtc *intel_crtc = to_intel_crtc(crtc); > + > + /* Be paranoid as we can arrive here with only partial > + * state retrieved from the hardware during setup. > + */ > + return intel_crtc->active && crtc->fb && > + intel_crtc->config.adjusted_mode.clock; If you touch this can you please add a big comment explaining that we can ditch the adjusted_mode.clock check as soon as Haswell has gained clock readout/fastboot support and that we can ditch the crtc->fb check as soon as we can properly reconstruct framebuffers? Thanks, Daniel > +} > + > enum transcoder intel_pipe_to_cpu_transcoder(struct drm_i915_private *dev_priv, > enum pipe pipe) > { > diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c > index e2cb650..5ce5968 100644 > --- a/drivers/gpu/drm/i915/intel_dp.c > +++ b/drivers/gpu/drm/i915/intel_dp.c > @@ -1555,8 +1555,7 @@ static bool intel_edp_psr_match_conditions(struct intel_dp *intel_dp) > } > > intel_crtc = to_intel_crtc(crtc); > - if (!intel_crtc->active || !crtc->fb || > - !intel_crtc->config.adjusted_mode.clock) { > + if (!intel_crtc_active(crtc)) { > DRM_DEBUG_KMS("crtc not active for PSR\n"); > dev_priv->no_psr_reason = PSR_CRTC_NOT_ACTIVE; > return false; > diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h > index 5efb844..e017c30 100644 > --- a/drivers/gpu/drm/i915/intel_drv.h > +++ b/drivers/gpu/drm/i915/intel_drv.h > @@ -798,5 +798,6 @@ extern void hsw_pc8_disable_interrupts(struct drm_device *dev); > extern void hsw_pc8_restore_interrupts(struct drm_device *dev); > extern void intel_aux_display_runtime_get(struct drm_i915_private *dev_priv); > extern void intel_aux_display_runtime_put(struct drm_i915_private *dev_priv); > +extern bool intel_crtc_active(struct drm_crtc *crtc); > > #endif /* __INTEL_DRV_H__ */ > diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c > index 397628b..3ba412c 100644 > --- a/drivers/gpu/drm/i915/intel_pm.c > +++ b/drivers/gpu/drm/i915/intel_pm.c > @@ -43,17 +43,6 @@ > * i915.i915_enable_fbc parameter > */ > > -static bool intel_crtc_active(struct drm_crtc *crtc) > -{ > - struct intel_crtc *intel_crtc = to_intel_crtc(crtc); > - > - /* Be paranoid as we can arrive here with only partial > - * state retrieved from the hardware during setup. > - */ > - return intel_crtc->active && crtc->fb && > - intel_crtc->config.adjusted_mode.clock; > -} > - > static void i8xx_disable_fbc(struct drm_device *dev) > { > struct drm_i915_private *dev_priv = dev->dev_private; > -- > 1.8.1.5 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx