diff options
Diffstat (limited to 'drivers/gpu/drm/mediatek/mtk_dsi.c')
| -rw-r--r-- | drivers/gpu/drm/mediatek/mtk_dsi.c | 11 | 
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c index 66df1b177959..27b507eb4a99 100644 --- a/drivers/gpu/drm/mediatek/mtk_dsi.c +++ b/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)  |