Просмотр исходного кода

disp: msm: dp: adapt function change of drm_dp_mst_topology_mgr_init for multiple SIs

Commit 283560c ("disp: msm: dp: use Extended Base Receiver Capability DPCD space")
pass additional parameters to supply maximum lane count and rate to MST topology
manager. In cases where sources have lower maximum lane count or rate than default
MAX_LINK_RATE, these values will be used instead.
This change puts macros in the callers of function drm_dp_mst_topology_mgr_init to
handle interface change between kernel version 5.10 and version 5.15.

Change-Id: I394c70640606de477d67b08cafb495bebb6c549f
Signed-off-by: Bruce Hoo <[email protected]>
Bruce Hoo 3 лет назад
Родитель
Сommit
a5c5224acd
1 измененных файлов с 9 добавлено и 0 удалено
  1. 9 0
      msm/dp/dp_mst_drm.c

+ 9 - 0
msm/dp/dp_mst_drm.c

@@ -36,6 +36,7 @@
 #include <drm/drm_fixed.h>
 #include <drm/drm_connector.h>
 #include <drm/drm_dp_helper.h>
+#include <linux/version.h>
 
 #include "msm_drv.h"
 #include "msm_kms.h"
@@ -1869,11 +1870,19 @@ int dp_mst_init(struct dp_display *dp_display)
 	mutex_init(&dp_mst.mst_lock);
 	mutex_init(&dp_mst.edid_lock);
 
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 15, 0))
 	ret = drm_dp_mst_topology_mgr_init(&dp_mst.mst_mgr, dev,
 					dp_mst.caps.drm_aux,
 					dp_mst.caps.max_dpcd_transaction_bytes,
 					dp_mst.caps.max_streams_supported,
 					4, DP_LINK_BW_8_1, conn_base_id);
+#else
+	ret = drm_dp_mst_topology_mgr_init(&dp_mst.mst_mgr, dev,
+					dp_mst.caps.drm_aux,
+					dp_mst.caps.max_dpcd_transaction_bytes,
+					dp_mst.caps.max_streams_supported,
+					conn_base_id);
+#endif
 	if (ret) {
 		DP_ERR("dp drm mst topology manager init failed\n");
 		goto error;