Re: [PATCH 48/49] drm/i915/bxt: VSwing programming sequence

Imre Deak
2015-04-09T17:14:55Z

Hi Sivakumar,

On Tue, 2015-03-24 at 14:49 +0530, Sivakumar Thulasimani wrote:

> On 3/17/2015 3:10 PM, Imre Deak wrote:
>
> > From: Vandana Kannan <vandana.kannan@intel.com>
> >
> > VSwing programming sequence as specified in the updated BXT BSpec
> > ...
> > ...
> >
> > +void bxt_ddi_vswing_sequence(struct drm_device *dev, u32 level,
> > + enum port port, int type)
> > +{
> > + struct drm_i915_private *dev_priv = dev->dev_private;
> > + const struct bxt_ddi_buf_trans *ddi_translations;
> > + u32 n_entries, i;
> > + uint32_t val;
> > +
> > + if (type == INTEL_OUTPUT_DISPLAYPORT || type == INTEL_OUTPUT_EDP) {
> INTEL_OUPPUT_DP_MST might be needed here, please check once. otherwise
> fine with the changes.

Tbh, I had to check this after you brought this up: we can't get here
with INTEL_OUTPUT_DP_MST. That type is only assigned to "fake" encoders,
which only handle the MST aspects of the modeset. An MST encoder like
this will have an associated "primary" encoder (available via its
"primary" digital port field) which will handle the ordinary DP aspects
of the modeset. So link training as such is handled by the primary
encoder which for DP will be always either INTEL_OUTPUT_DISPLAYPORT or
INTEL_OUTPUT_EDP.

Thanks for pointing this out,
Imre

> Reviewed-by: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>