diff --git a/msm/sde/sde_connector.c b/msm/sde/sde_connector.c index 4fb0dd5f06..84e2d5b891 100644 --- a/msm/sde/sde_connector.c +++ b/msm/sde/sde_connector.c @@ -2707,6 +2707,12 @@ static int _sde_connector_install_properties(struct drm_device *dev, sizeof(dsi_display->panel->hdr_props), CONNECTOR_PROP_HDR_INFO); } + + mutex_lock(&c_conn->base.dev->mode_config.mutex); + sde_connector_fill_modes(&c_conn->base, + dev->mode_config.max_width, + dev->mode_config.max_height); + mutex_unlock(&c_conn->base.dev->mode_config.mutex); } msm_property_install_volatile_range( diff --git a/msm/sde/sde_kms.c b/msm/sde/sde_kms.c index 82a5530f8e..a46077cb2d 100644 --- a/msm/sde/sde_kms.c +++ b/msm/sde/sde_kms.c @@ -3086,16 +3086,6 @@ static int sde_kms_cont_splash_config(struct msm_kms *kms) mutex_unlock(&dev->mode_config.mutex); return -EINVAL; } - - if (connector->funcs->fill_modes) { - connector->funcs->fill_modes(connector, - dev->mode_config.max_width, - dev->mode_config.max_height); - } else { - SDE_ERROR("fill_modes api not defined\n"); - mutex_unlock(&dev->mode_config.mutex); - return -EINVAL; - } mutex_unlock(&dev->mode_config.mutex); crtc->state->encoder_mask = (1 << drm_encoder_index(encoder));