diff options
author | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2015-07-06 09:39:15 -0400 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2015-08-14 12:16:37 -0400 |
commit | 90a6b7b052b1aa17fbb98b049e9c8b7f729c35a7 (patch) | |
tree | d15f9594f940374eb1c7809f543255cc010b049a /drivers/gpu/drm/i915/intel_dp_mst.c | |
parent | b81e34c29e67f5b3e5ce28b5055ae2ca59c36f7b (diff) |
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ä <ville.syrjala@linux.intel.com>
Reviewed-by: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
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, | |||
65 | intel_dp->rate_select = 0; | 65 | intel_dp->rate_select = 0; |
66 | } | 66 | } |
67 | 67 | ||
68 | intel_dp->lane_count = lane_count; | 68 | pipe_config->lane_count = lane_count; |
69 | 69 | ||
70 | pipe_config->pipe_bpp = 24; | 70 | pipe_config->pipe_bpp = 24; |
71 | pipe_config->port_clock = rate; | 71 | pipe_config->port_clock = rate; |
@@ -276,6 +276,10 @@ static void intel_dp_mst_enc_get_config(struct intel_encoder *encoder, | |||
276 | break; | 276 | break; |
277 | } | 277 | } |
278 | pipe_config->base.adjusted_mode.flags |= flags; | 278 | pipe_config->base.adjusted_mode.flags |= flags; |
279 | |||
280 | pipe_config->lane_count = | ||
281 | ((temp & DDI_PORT_WIDTH_MASK) >> DDI_PORT_WIDTH_SHIFT) + 1; | ||
282 | |||
279 | intel_dp_get_m_n(crtc, pipe_config); | 283 | intel_dp_get_m_n(crtc, pipe_config); |
280 | 284 | ||
281 | intel_ddi_clock_get(&intel_dig_port->base, pipe_config); | 285 | intel_ddi_clock_get(&intel_dig_port->base, pipe_config); |