diff options
author | Dave Airlie <airlied@redhat.com> | 2014-05-30 16:03:37 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2014-06-18 14:09:56 +1000 |
commit | d58cdb37af9b703b2125df4975d12ab50dd88599 (patch) | |
tree | d2c5e453c0f0b9d36258fdf84f651d3bfafdcf74 | |
parent | a9df4a3ce5f6ed2ff1049e73fafc93d6d19ce499 (diff) |
HACK: i915: avoid with fbdev init warningdrm-i915-mst-support
doesn't seem to matter
-rw-r--r-- | drivers/gpu/drm/i915/intel_dp_mst.c | 10 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_fbdev.c | 2 |
2 files changed, 11 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp_mst.c b/drivers/gpu/drm/i915/intel_dp_mst.c index a7db741ecfd4..ddac87f061f9 100644 --- a/drivers/gpu/drm/i915/intel_dp_mst.c +++ b/drivers/gpu/drm/i915/intel_dp_mst.c @@ -346,6 +346,16 @@ struct drm_encoder *intel_mst_best_encoder(struct drm_connector *connector) { struct intel_connector *intel_connector = to_intel_connector(connector); struct intel_dp *intel_dp = intel_connector->mst_port; + int i; + + /* try and pick the enabled one if there is one - + stops intel_fbdev getting confused */ + for (i = 0; i < I915_MAX_PIPES; i++) { + struct intel_dp_mst_encoder *mst_enc = intel_dp->mst_encoders[i]; + if (mst_enc->base.base.crtc) { + return &intel_dp->mst_encoders[i]->base.base; + } + } return &intel_dp->mst_encoders[0]->base.base; } diff --git a/drivers/gpu/drm/i915/intel_fbdev.c b/drivers/gpu/drm/i915/intel_fbdev.c index 953924044fc8..7ef42b7fd26c 100644 --- a/drivers/gpu/drm/i915/intel_fbdev.c +++ b/drivers/gpu/drm/i915/intel_fbdev.c @@ -354,7 +354,7 @@ static bool intel_fb_initial_config(struct drm_fb_helper *fb_helper, connector_funcs = connector->helper_private; encoder = connector_funcs->best_encoder(connector); } - if (!encoder || WARN_ON(!encoder->crtc)) { + if (!encoder || !encoder->crtc) { DRM_DEBUG_KMS("connector %s has no encoder or crtc, skipping\n", connector->name); enabled[i] = false; |