[Intel-gfx] [PATCH 4/9] drm/i915/dp: Avoid more dpcd transactions after resume failure
Dhinakaran Pandiyan
dhinakaran.pandiyan at intel.com
Tue Sep 12 23:57:25 UTC 2017
drm_dp_mst_topology_mgr_resume() fails if there are dpcd failures, so
there's no need to try that again in _check_mst_status()
Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan at intel.com>
---
drivers/gpu/drm/i915/intel_dp.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
index 98e7b96ca826..b3d95cb7546b 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -6224,12 +6224,16 @@ void intel_dp_mst_resume(struct drm_device *dev)
for (i = 0; i < I915_MAX_PORTS; i++) {
struct intel_digital_port *intel_dig_port = dev_priv->hotplug.irq_port[i];
int ret;
+ struct intel_dp *intel_dp = &intel_dig_port->dp;
- if (!intel_dig_port || !intel_dig_port->dp.can_mst)
+ if (!intel_dig_port || !intel_dp->can_mst)
continue;
- ret = drm_dp_mst_topology_mgr_resume(&intel_dig_port->dp.mst_mgr);
- if (ret)
- intel_dp_check_mst_status(&intel_dig_port->dp);
+ ret = drm_dp_mst_topology_mgr_resume(&intel_dp->mst_mgr);
+ if (ret) {
+ intel_dp->is_mst = false;
+ drm_dp_mst_topology_mgr_set_mst(&intel_dp->mst_mgr, intel_dp->is_mst);
+ drm_kms_helper_hotplug_event(dev);
+ }
}
}
--
2.11.0
More information about the Intel-gfx
mailing list