Ver código fonte

Merge "disp: msm: dp: log an error when connector has no modes"

qctecmdr 2 anos atrás
pai
commit
a6e0f3a73d
1 arquivos alterados com 9 adições e 6 exclusões
  1. 9 6
      msm/dp/dp_mst_drm.c

+ 9 - 6
msm/dp/dp_mst_drm.c

@@ -630,7 +630,7 @@ static void _dp_mst_bridge_pre_enable_part1(struct dp_mst_bridge *dp_bridge)
 	payload = drm_atomic_get_mst_payload_state(mst_state, port);
 
 	drm_dp_mst_update_slots(mst_state, DP_CAP_ANSI_8B10B);
-	mst->mst_fw_cbs->update_payload_part1(&mst->mst_mgr, mst_state, payload);	
+	mst->mst_fw_cbs->update_payload_part1(&mst->mst_mgr, mst_state, payload);
 #else
 	ret = mst->mst_fw_cbs->allocate_vcpi(&mst->mst_mgr, port, pbn, slots);
 	if (!ret) {
@@ -1161,8 +1161,7 @@ static int dp_mst_connector_get_modes(struct drm_connector *connector,
 			&mst->mst_mgr, c_conn->mst_port);
 
 	if (!edid) {
-		DP_MST_DEBUG("get edid failed. id: %d\n",
-				connector->base.id);
+		DP_ERR("get edid failed. id: %d\n", connector->base.id);
 		goto end;
 	}
 
@@ -1176,7 +1175,6 @@ duplicate_edid:
 	mutex_unlock(&mst->edid_lock);
 
 	if (IS_ERR(edid)) {
-		rc = PTR_ERR(edid);
 		DP_MST_DEBUG("edid duplication failed. id: %d\n",
 				connector->base.id);
 		goto end;
@@ -1186,8 +1184,13 @@ duplicate_edid:
 			connector, edid);
 
 end:
-	DP_MST_DEBUG_V("exit: id: %d rc: %d\n", connector->base.id, rc);
 	SDE_EVT32_EXTERNAL(SDE_EVTLOG_FUNC_EXIT, connector->base.id, rc);
+	if (rc <= 0) {
+		DP_ERR("conn:%d has no modes, rc=%d\n", connector->base.id, rc);
+		rc = 0;
+	} else {
+		DP_MST_INFO("conn:%d has %d modes\n", connector->base.id, rc);
+	}
 
 	return rc;
 }
@@ -1641,7 +1644,7 @@ dp_mst_add_connector(struct drm_dp_mst_topology_mgr *mgr,
 }
 
 static int
-dp_mst_fixed_connector_detect(struct drm_connector *connector, 
+dp_mst_fixed_connector_detect(struct drm_connector *connector,
 			struct drm_modeset_acquire_ctx *ctx,
 			bool force,
 			void *display)