diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2015-09-30 02:47:41 -0400 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2015-09-30 02:47:41 -0400 |
commit | 44cc6c08da0b6c8321c6740bbb6a0c6feb45b2c2 (patch) | |
tree | ec97ee26c9715f8da24377e9cacc63261b0aa2ab /drivers/gpu/drm/i915/intel_dp_mst.c | |
parent | 40a4a5727f21a0e439d317aa99953e24467605eb (diff) | |
parent | 2d4df13c0f9ef56452b1d9a9016cb3946e17bfe5 (diff) |
Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next
Backmerge to catch up with 4.3. slightly more involved conflict in the
irq code, but nothing beyond adjacent changes.
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_dp_mst.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_dp_mst.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp_mst.c b/drivers/gpu/drm/i915/intel_dp_mst.c index 677d70e4d363..ff8ba55853be 100644 --- a/drivers/gpu/drm/i915/intel_dp_mst.c +++ b/drivers/gpu/drm/i915/intel_dp_mst.c | |||
@@ -164,6 +164,11 @@ static void intel_mst_pre_enable_dp(struct intel_encoder *encoder) | |||
164 | return; | 164 | return; |
165 | } | 165 | } |
166 | 166 | ||
167 | /* MST encoders are bound to a crtc, not to a connector, | ||
168 | * force the mapping here for get_hw_state. | ||
169 | */ | ||
170 | found->encoder = encoder; | ||
171 | |||
167 | DRM_DEBUG_KMS("%d\n", intel_dp->active_mst_links); | 172 | DRM_DEBUG_KMS("%d\n", intel_dp->active_mst_links); |
168 | intel_mst->port = found->port; | 173 | intel_mst->port = found->port; |
169 | 174 | ||
@@ -397,7 +402,7 @@ static const struct drm_encoder_funcs intel_dp_mst_enc_funcs = { | |||
397 | 402 | ||
398 | static bool intel_dp_mst_get_hw_state(struct intel_connector *connector) | 403 | static bool intel_dp_mst_get_hw_state(struct intel_connector *connector) |
399 | { | 404 | { |
400 | if (connector->encoder) { | 405 | if (connector->encoder && connector->base.state->crtc) { |
401 | enum pipe pipe; | 406 | enum pipe pipe; |
402 | if (!connector->encoder->get_hw_state(connector->encoder, &pipe)) | 407 | if (!connector->encoder->get_hw_state(connector->encoder, &pipe)) |
403 | return false; | 408 | return false; |