disp: msm: dsi: correct external dsi bridge interface number

Get the interface number from dsi panel timing node, if no
timing node was set, set the number as ext_bridge_num.

Change-Id: I1f36df6b5780f6eb1ef42e5b260cbdb16ec61c15
Signed-off-by: Boyuan Yan <boyuyan@qti.qualcomm.com>
This commit is contained in:
Boyuan Yan 2023-08-04 08:53:23 +05:30
commit 60ae7e9b8d

View file

@ -6349,6 +6349,9 @@ static int dsi_display_ext_get_info(struct drm_connector *connector,
return -EINVAL;
}
if (display->panel->num_timing_nodes)
return dsi_display_get_info(connector, info, disp);
mutex_lock(&display->display_lock);
memset(info, 0, sizeof(struct msm_display_info));
@ -6379,23 +6382,27 @@ static int dsi_display_ext_get_mode_info(struct drm_connector *connector,
void *display, const struct msm_resource_caps_info *avail_res)
{
struct msm_display_topology *topology;
struct dsi_display *ext_display = (struct dsi_display *)display;
if (!drm_mode || !mode_info ||
!avail_res || !avail_res->max_mixer_width)
return -EINVAL;
if (ext_display->panel->num_timing_nodes)
return dsi_conn_get_mode_info(connector, drm_mode,
mode_info, display, avail_res);
memset(mode_info, 0, sizeof(*mode_info));
mode_info->frame_rate = drm_mode->vrefresh;
mode_info->vtotal = drm_mode->vtotal;
mode_info->comp_info.comp_type = MSM_DISPLAY_COMPRESSION_NONE;
topology = &mode_info->topology;
topology->num_lm = (avail_res->max_mixer_width
<= drm_mode->hdisplay) ? 2 : 1;
topology->num_lm = ext_display->ctrl_count;
topology->num_enc = 0;
topology->num_intf = topology->num_lm;
mode_info->comp_info.comp_type = MSM_DISPLAY_COMPRESSION_NONE;
return 0;
}