diff options
| author | Ville Syrjälä <[email protected]> | 2015-07-06 13:39:15 +0000 |
|---|---|---|
| committer | Daniel Vetter <[email protected]> | 2015-08-14 16:16:37 +0000 |
| commit | 90a6b7b052b1aa17fbb98b049e9c8b7f729c35a7 (patch) | |
| tree | d15f9594f940374eb1c7809f543255cc010b049a /drivers/gpu/drm/i915/intel_dp_mst.c | |
| parent | drm/i915: Avoid confusion between DP and TRANS_DP_CTL in DP .get_config() (diff) | |
| download | kernel-90a6b7b052b1aa17fbb98b049e9c8b7f729c35a7.tar.gz kernel-90a6b7b052b1aa17fbb98b049e9c8b7f729c35a7.zip | |
drm/i915: Move intel_dp->lane_count into pipe_config
Currently we clobber intel_dp->lane_count in compute config, which means
after a rejected modeset we may no longer be able to retrain the current
link. Move lane_count into pipe_config to avoid that.
v2: Add missing ':' to the pipe config debug dump
Signed-off-by: Ville Syrjälä <[email protected]>
Reviewed-by: Sivakumar Thulasimani <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_dp_mst.c')
| -rw-r--r-- | drivers/gpu/drm/i915/intel_dp_mst.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp_mst.c b/drivers/gpu/drm/i915/intel_dp_mst.c index f4fe1183bae6..fdb5e31fedaa 100644 --- a/drivers/gpu/drm/i915/intel_dp_mst.c +++ b/drivers/gpu/drm/i915/intel_dp_mst.c @@ -65,7 +65,7 @@ static bool intel_dp_mst_compute_config(struct intel_encoder *encoder, intel_dp->rate_select = 0; } - intel_dp->lane_count = lane_count; + pipe_config->lane_count = lane_count; pipe_config->pipe_bpp = 24; pipe_config->port_clock = rate; @@ -276,6 +276,10 @@ static void intel_dp_mst_enc_get_config(struct intel_encoder *encoder, break; } pipe_config->base.adjusted_mode.flags |= flags; + + pipe_config->lane_count = + ((temp & DDI_PORT_WIDTH_MASK) >> DDI_PORT_WIDTH_SHIFT) + 1; + intel_dp_get_m_n(crtc, pipe_config); intel_ddi_clock_get(&intel_dig_port->base, pipe_config); |
