浏览代码

drm/mediatek: Only try to attach bridge if there is one

Even if dsi->bridge is NULL, we still try to call drm_bridge_attach,
and print out an error message, before creating the connector.

When no bridge is provided, let's skip these 2 steps and directly
create the connector.

Signed-off-by: Nicolas Boichat <drinkcat@chromium.org>
Signed-off-by: CK Hu <ck.hu@mediatek.com>
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Nicolas Boichat 6 年之前
父节点
当前提交
a0071bc455
共有 1 个文件被更改,包括 7 次插入4 次删除
  1. 7 4
      drivers/gpu/drm/mediatek/mtk_dsi.c

+ 7 - 4
drivers/gpu/drm/mediatek/mtk_dsi.c

@@ -818,10 +818,13 @@ static int mtk_dsi_create_conn_enc(struct drm_device *drm, struct mtk_dsi *dsi)
 	dsi->encoder.possible_crtcs = 1;
 
 	/* If there's a bridge, attach to it and let it create the connector */
-	ret = drm_bridge_attach(&dsi->encoder, dsi->bridge, NULL);
-	if (ret) {
-		DRM_ERROR("Failed to attach bridge to drm\n");
-
+	if (dsi->bridge) {
+		ret = drm_bridge_attach(&dsi->encoder, dsi->bridge, NULL);
+		if (ret) {
+			DRM_ERROR("Failed to attach bridge to drm\n");
+			goto err_encoder_cleanup;
+		}
+	} else {
 		/* Otherwise create our own connector and attach to a panel */
 		ret = mtk_dsi_create_connector(drm, dsi);
 		if (ret)