diff options
-rw-r--r-- | drivers/gpu/drm/msm/dsi/dsi.c | 10 | ||||
-rw-r--r-- | drivers/gpu/drm/msm/dsi/dsi_manager.c | 6 | ||||
-rw-r--r-- | drivers/gpu/drm/msm/edp/edp_connector.c | 2 |
3 files changed, 12 insertions, 6 deletions
diff --git a/drivers/gpu/drm/msm/dsi/dsi.c b/drivers/gpu/drm/msm/dsi/dsi.c index 28d1f95a90cc..ad50b80225f5 100644 --- a/drivers/gpu/drm/msm/dsi/dsi.c +++ b/drivers/gpu/drm/msm/dsi/dsi.c | |||
@@ -177,6 +177,11 @@ int msm_dsi_modeset_init(struct msm_dsi *msm_dsi, struct drm_device *dev, | |||
177 | goto fail; | 177 | goto fail; |
178 | } | 178 | } |
179 | 179 | ||
180 | for (i = 0; i < MSM_DSI_ENCODER_NUM; i++) { | ||
181 | encoders[i]->bridge = msm_dsi->bridge; | ||
182 | msm_dsi->encoders[i] = encoders[i]; | ||
183 | } | ||
184 | |||
180 | msm_dsi->connector = msm_dsi_manager_connector_init(msm_dsi->id); | 185 | msm_dsi->connector = msm_dsi_manager_connector_init(msm_dsi->id); |
181 | if (IS_ERR(msm_dsi->connector)) { | 186 | if (IS_ERR(msm_dsi->connector)) { |
182 | ret = PTR_ERR(msm_dsi->connector); | 187 | ret = PTR_ERR(msm_dsi->connector); |
@@ -185,11 +190,6 @@ int msm_dsi_modeset_init(struct msm_dsi *msm_dsi, struct drm_device *dev, | |||
185 | goto fail; | 190 | goto fail; |
186 | } | 191 | } |
187 | 192 | ||
188 | for (i = 0; i < MSM_DSI_ENCODER_NUM; i++) { | ||
189 | encoders[i]->bridge = msm_dsi->bridge; | ||
190 | msm_dsi->encoders[i] = encoders[i]; | ||
191 | } | ||
192 | |||
193 | priv->bridges[priv->num_bridges++] = msm_dsi->bridge; | 193 | priv->bridges[priv->num_bridges++] = msm_dsi->bridge; |
194 | priv->connectors[priv->num_connectors++] = msm_dsi->connector; | 194 | priv->connectors[priv->num_connectors++] = msm_dsi->connector; |
195 | 195 | ||
diff --git a/drivers/gpu/drm/msm/dsi/dsi_manager.c b/drivers/gpu/drm/msm/dsi/dsi_manager.c index ee3ebcaa33f5..0a40f3c64e8b 100644 --- a/drivers/gpu/drm/msm/dsi/dsi_manager.c +++ b/drivers/gpu/drm/msm/dsi/dsi_manager.c | |||
@@ -462,7 +462,7 @@ struct drm_connector *msm_dsi_manager_connector_init(u8 id) | |||
462 | struct msm_dsi *msm_dsi = dsi_mgr_get_dsi(id); | 462 | struct msm_dsi *msm_dsi = dsi_mgr_get_dsi(id); |
463 | struct drm_connector *connector = NULL; | 463 | struct drm_connector *connector = NULL; |
464 | struct dsi_connector *dsi_connector; | 464 | struct dsi_connector *dsi_connector; |
465 | int ret; | 465 | int ret, i; |
466 | 466 | ||
467 | dsi_connector = devm_kzalloc(msm_dsi->dev->dev, | 467 | dsi_connector = devm_kzalloc(msm_dsi->dev->dev, |
468 | sizeof(*dsi_connector), GFP_KERNEL); | 468 | sizeof(*dsi_connector), GFP_KERNEL); |
@@ -495,6 +495,10 @@ struct drm_connector *msm_dsi_manager_connector_init(u8 id) | |||
495 | if (ret) | 495 | if (ret) |
496 | goto fail; | 496 | goto fail; |
497 | 497 | ||
498 | for (i = 0; i < MSM_DSI_ENCODER_NUM; i++) | ||
499 | drm_mode_connector_attach_encoder(connector, | ||
500 | msm_dsi->encoders[i]); | ||
501 | |||
498 | return connector; | 502 | return connector; |
499 | 503 | ||
500 | fail: | 504 | fail: |
diff --git a/drivers/gpu/drm/msm/edp/edp_connector.c b/drivers/gpu/drm/msm/edp/edp_connector.c index d8812e84da54..b4d1b469862a 100644 --- a/drivers/gpu/drm/msm/edp/edp_connector.c +++ b/drivers/gpu/drm/msm/edp/edp_connector.c | |||
@@ -151,6 +151,8 @@ struct drm_connector *msm_edp_connector_init(struct msm_edp *edp) | |||
151 | if (ret) | 151 | if (ret) |
152 | goto fail; | 152 | goto fail; |
153 | 153 | ||
154 | drm_mode_connector_attach_encoder(connector, edp->encoder); | ||
155 | |||
154 | return connector; | 156 | return connector; |
155 | 157 | ||
156 | fail: | 158 | fail: |