On Wed, Jun 27, 2018 at 02:49:40PM +0300, Jani Nikula wrote:
> On Thu, 21 Jun 2018, Ville Syrjälä <ville.syrj...@linux.intel.com> wrote:
> > On Thu, Jun 21, 2018 at 04:03:30PM +0300, Jani Nikula wrote:
> >> Commit 9504a8924759 ("drm/i915/vlv: Reset the ADPA in
> >> vlv_display_power_well_init()") started calling intel_crt_reset()
> >> directly, while we could just as well use the hooks and keep the
> >> function static.
> >> 
> >> Cc: Lyude <cp...@redhat.com>
> >> Cc: Ville Syrjälä <ville.syrj...@linux.intel.com>
> >> Signed-off-by: Jani Nikula <jani.nik...@intel.com>
> >> ---
> >>  drivers/gpu/drm/i915/intel_crt.c        | 2 +-
> >>  drivers/gpu/drm/i915/intel_drv.h        | 1 -
> >>  drivers/gpu/drm/i915/intel_runtime_pm.c | 2 +-
> >>  3 files changed, 2 insertions(+), 3 deletions(-)
> >> 
> >> diff --git a/drivers/gpu/drm/i915/intel_crt.c 
> >> b/drivers/gpu/drm/i915/intel_crt.c
> >> index 0c6bf82bb059..c2cb3b7a255b 100644
> >> --- a/drivers/gpu/drm/i915/intel_crt.c
> >> +++ b/drivers/gpu/drm/i915/intel_crt.c
> >> @@ -881,7 +881,7 @@ static int intel_crt_get_modes(struct drm_connector 
> >> *connector)
> >>    return ret;
> >>  }
> >>  
> >> -void intel_crt_reset(struct drm_encoder *encoder)
> >> +static void intel_crt_reset(struct drm_encoder *encoder)
> >>  {
> >>    struct drm_i915_private *dev_priv = to_i915(encoder->dev);
> >>    struct intel_crt *crt = intel_encoder_to_crt(to_intel_encoder(encoder));
> >> diff --git a/drivers/gpu/drm/i915/intel_drv.h 
> >> b/drivers/gpu/drm/i915/intel_drv.h
> >> index 0c3ac0eafde0..b2002fee1b58 100644
> >> --- a/drivers/gpu/drm/i915/intel_drv.h
> >> +++ b/drivers/gpu/drm/i915/intel_drv.h
> >> @@ -1373,7 +1373,6 @@ void gen9_disable_guc_interrupts(struct 
> >> drm_i915_private *dev_priv);
> >>  bool intel_crt_port_enabled(struct drm_i915_private *dev_priv,
> >>                        i915_reg_t adpa_reg, enum pipe *pipe);
> >>  void intel_crt_init(struct drm_i915_private *dev_priv);
> >> -void intel_crt_reset(struct drm_encoder *encoder);
> >>  
> >>  /* intel_ddi.c */
> >>  void intel_ddi_fdi_post_disable(struct intel_encoder *intel_encoder,
> >> diff --git a/drivers/gpu/drm/i915/intel_runtime_pm.c 
> >> b/drivers/gpu/drm/i915/intel_runtime_pm.c
> >> index de3a81034f77..0b3da5818383 100644
> >> --- a/drivers/gpu/drm/i915/intel_runtime_pm.c
> >> +++ b/drivers/gpu/drm/i915/intel_runtime_pm.c
> >> @@ -972,7 +972,7 @@ static void vlv_display_power_well_init(struct 
> >> drm_i915_private *dev_priv)
> >>    /* Re-enable the ADPA, if we have one */
> >>    for_each_intel_encoder(&dev_priv->drm, encoder) {
> >>            if (encoder->type == INTEL_OUTPUT_ANALOG)
> >> -                  intel_crt_reset(&encoder->base);
> >> +                  encoder->base.funcs->reset(&encoder->base);
> >
> > I have a feeling I requested the direct call to make it less annoying to
> > figure out what it's actually calling. But if people prefer the function
> > pointer version I can live with that too.
> 
> True that, but I thought the direct call was a layering violation.
> 
> To push, or not to push, that is the question.

Lemma pile my bikeshed on top: Given that we specifically filter for the
CRT encoder I think a direct call is better here, since a bit more clear
what's going on. hw occasionally encouragse layering violations ...
-Daniel

> 
> BR,
> Jani.
> 
> >
> > Reviewed-by: Ville Syrjälä <ville.syrj...@linux.intel.com>
> >
> >>    }
> >>  
> >>    i915_redisable_vga_power_on(dev_priv);
> >> -- 
> >> 2.11.0
> 
> -- 
> Jani Nikula, Intel Open Source Graphics Center
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to