Loading msm/sde/sde_kms.c +43 −43 Original line number Diff line number Diff line Loading @@ -1319,102 +1319,102 @@ static int _sde_kms_setup_displays(struct drm_device *dev, SDE_ERROR("capping number of displays to %d", max_encoders); } /* dsi */ for (i = 0; i < sde_kms->dsi_display_count && /* wb */ for (i = 0; i < sde_kms->wb_display_count && priv->num_encoders < max_encoders; ++i) { display = sde_kms->dsi_displays[i]; display = sde_kms->wb_displays[i]; encoder = NULL; memset(&info, 0x0, sizeof(info)); rc = dsi_display_get_info(NULL, &info, display); rc = sde_wb_get_info(NULL, &info, display); if (rc) { SDE_ERROR("dsi get_info %d failed\n", i); SDE_ERROR("wb get_info %d failed\n", i); continue; } encoder = sde_encoder_init(dev, &info); if (IS_ERR_OR_NULL(encoder)) { SDE_ERROR("encoder init failed for dsi %d\n", i); SDE_ERROR("encoder init failed for wb %d\n", i); continue; } rc = dsi_display_drm_bridge_init(display, encoder); rc = sde_wb_drm_init(display, encoder); if (rc) { SDE_ERROR("dsi bridge %d init failed, %d\n", i, rc); SDE_ERROR("wb bridge %d init failed, %d\n", i, rc); sde_encoder_destroy(encoder); continue; } connector = sde_connector_init(dev, encoder, dsi_display_get_drm_panel(display), 0, display, &dsi_ops, &wb_ops, DRM_CONNECTOR_POLL_HPD, DRM_MODE_CONNECTOR_DSI); DRM_MODE_CONNECTOR_VIRTUAL); if (connector) { priv->encoders[priv->num_encoders++] = encoder; priv->connectors[priv->num_connectors++] = connector; } else { SDE_ERROR("dsi %d connector init failed\n", i); dsi_display_drm_bridge_deinit(display); sde_encoder_destroy(encoder); continue; } rc = dsi_display_drm_ext_bridge_init(display, encoder, connector); if (rc) { SDE_ERROR("dsi %d ext bridge init failed\n", rc); dsi_display_drm_bridge_deinit(display); sde_connector_destroy(connector); SDE_ERROR("wb %d connector init failed\n", i); sde_wb_drm_deinit(display); sde_encoder_destroy(encoder); } } /* wb */ for (i = 0; i < sde_kms->wb_display_count && /* dsi */ for (i = 0; i < sde_kms->dsi_display_count && priv->num_encoders < max_encoders; ++i) { display = sde_kms->wb_displays[i]; display = sde_kms->dsi_displays[i]; encoder = NULL; memset(&info, 0x0, sizeof(info)); rc = sde_wb_get_info(NULL, &info, display); rc = dsi_display_get_info(NULL, &info, display); if (rc) { SDE_ERROR("wb get_info %d failed\n", i); SDE_ERROR("dsi get_info %d failed\n", i); continue; } encoder = sde_encoder_init(dev, &info); if (IS_ERR_OR_NULL(encoder)) { SDE_ERROR("encoder init failed for wb %d\n", i); SDE_ERROR("encoder init failed for dsi %d\n", i); continue; } rc = sde_wb_drm_init(display, encoder); rc = dsi_display_drm_bridge_init(display, encoder); if (rc) { SDE_ERROR("wb bridge %d init failed, %d\n", i, rc); SDE_ERROR("dsi bridge %d init failed, %d\n", i, rc); sde_encoder_destroy(encoder); continue; } connector = sde_connector_init(dev, encoder, 0, dsi_display_get_drm_panel(display), display, &wb_ops, &dsi_ops, DRM_CONNECTOR_POLL_HPD, DRM_MODE_CONNECTOR_VIRTUAL); DRM_MODE_CONNECTOR_DSI); if (connector) { priv->encoders[priv->num_encoders++] = encoder; priv->connectors[priv->num_connectors++] = connector; } else { SDE_ERROR("wb %d connector init failed\n", i); sde_wb_drm_deinit(display); SDE_ERROR("dsi %d connector init failed\n", i); dsi_display_drm_bridge_deinit(display); sde_encoder_destroy(encoder); continue; } rc = dsi_display_drm_ext_bridge_init(display, encoder, connector); if (rc) { SDE_ERROR("dsi %d ext bridge init failed\n", rc); dsi_display_drm_bridge_deinit(display); sde_connector_destroy(connector); sde_encoder_destroy(encoder); } } /* dp */ for (i = 0; i < sde_kms->dp_display_count && priv->num_encoders < max_encoders; ++i) { Loading Loading
msm/sde/sde_kms.c +43 −43 Original line number Diff line number Diff line Loading @@ -1319,102 +1319,102 @@ static int _sde_kms_setup_displays(struct drm_device *dev, SDE_ERROR("capping number of displays to %d", max_encoders); } /* dsi */ for (i = 0; i < sde_kms->dsi_display_count && /* wb */ for (i = 0; i < sde_kms->wb_display_count && priv->num_encoders < max_encoders; ++i) { display = sde_kms->dsi_displays[i]; display = sde_kms->wb_displays[i]; encoder = NULL; memset(&info, 0x0, sizeof(info)); rc = dsi_display_get_info(NULL, &info, display); rc = sde_wb_get_info(NULL, &info, display); if (rc) { SDE_ERROR("dsi get_info %d failed\n", i); SDE_ERROR("wb get_info %d failed\n", i); continue; } encoder = sde_encoder_init(dev, &info); if (IS_ERR_OR_NULL(encoder)) { SDE_ERROR("encoder init failed for dsi %d\n", i); SDE_ERROR("encoder init failed for wb %d\n", i); continue; } rc = dsi_display_drm_bridge_init(display, encoder); rc = sde_wb_drm_init(display, encoder); if (rc) { SDE_ERROR("dsi bridge %d init failed, %d\n", i, rc); SDE_ERROR("wb bridge %d init failed, %d\n", i, rc); sde_encoder_destroy(encoder); continue; } connector = sde_connector_init(dev, encoder, dsi_display_get_drm_panel(display), 0, display, &dsi_ops, &wb_ops, DRM_CONNECTOR_POLL_HPD, DRM_MODE_CONNECTOR_DSI); DRM_MODE_CONNECTOR_VIRTUAL); if (connector) { priv->encoders[priv->num_encoders++] = encoder; priv->connectors[priv->num_connectors++] = connector; } else { SDE_ERROR("dsi %d connector init failed\n", i); dsi_display_drm_bridge_deinit(display); sde_encoder_destroy(encoder); continue; } rc = dsi_display_drm_ext_bridge_init(display, encoder, connector); if (rc) { SDE_ERROR("dsi %d ext bridge init failed\n", rc); dsi_display_drm_bridge_deinit(display); sde_connector_destroy(connector); SDE_ERROR("wb %d connector init failed\n", i); sde_wb_drm_deinit(display); sde_encoder_destroy(encoder); } } /* wb */ for (i = 0; i < sde_kms->wb_display_count && /* dsi */ for (i = 0; i < sde_kms->dsi_display_count && priv->num_encoders < max_encoders; ++i) { display = sde_kms->wb_displays[i]; display = sde_kms->dsi_displays[i]; encoder = NULL; memset(&info, 0x0, sizeof(info)); rc = sde_wb_get_info(NULL, &info, display); rc = dsi_display_get_info(NULL, &info, display); if (rc) { SDE_ERROR("wb get_info %d failed\n", i); SDE_ERROR("dsi get_info %d failed\n", i); continue; } encoder = sde_encoder_init(dev, &info); if (IS_ERR_OR_NULL(encoder)) { SDE_ERROR("encoder init failed for wb %d\n", i); SDE_ERROR("encoder init failed for dsi %d\n", i); continue; } rc = sde_wb_drm_init(display, encoder); rc = dsi_display_drm_bridge_init(display, encoder); if (rc) { SDE_ERROR("wb bridge %d init failed, %d\n", i, rc); SDE_ERROR("dsi bridge %d init failed, %d\n", i, rc); sde_encoder_destroy(encoder); continue; } connector = sde_connector_init(dev, encoder, 0, dsi_display_get_drm_panel(display), display, &wb_ops, &dsi_ops, DRM_CONNECTOR_POLL_HPD, DRM_MODE_CONNECTOR_VIRTUAL); DRM_MODE_CONNECTOR_DSI); if (connector) { priv->encoders[priv->num_encoders++] = encoder; priv->connectors[priv->num_connectors++] = connector; } else { SDE_ERROR("wb %d connector init failed\n", i); sde_wb_drm_deinit(display); SDE_ERROR("dsi %d connector init failed\n", i); dsi_display_drm_bridge_deinit(display); sde_encoder_destroy(encoder); continue; } rc = dsi_display_drm_ext_bridge_init(display, encoder, connector); if (rc) { SDE_ERROR("dsi %d ext bridge init failed\n", rc); dsi_display_drm_bridge_deinit(display); sde_connector_destroy(connector); sde_encoder_destroy(encoder); } } /* dp */ for (i = 0; i < sde_kms->dp_display_count && priv->num_encoders < max_encoders; ++i) { Loading