Commit 4f229b41 authored by Sean Paul's avatar Sean Paul

drm/msm/dsi: Pull out panel init code into function

Pull all of the panel init code out of detect() and put it in its own
function. This will be useful in future patches where it's moved from
detect().
Reviewed-by: default avatarRob Clark <robdclark@chromium.org>
Signed-off-by: default avatarSean Paul <seanpaul@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20190617201301.133275-6-sean@poorly.run
parent 09951aaa
...@@ -239,17 +239,14 @@ static bool dsi_mgr_is_cmd_mode(struct msm_dsi *msm_dsi) ...@@ -239,17 +239,14 @@ static bool dsi_mgr_is_cmd_mode(struct msm_dsi *msm_dsi)
return !(host_flags & MIPI_DSI_MODE_VIDEO); return !(host_flags & MIPI_DSI_MODE_VIDEO);
} }
static enum drm_connector_status dsi_mgr_connector_detect( static void msm_dsi_manager_panel_init(struct drm_connector *connector, u8 id)
struct drm_connector *connector, bool force)
{ {
int id = dsi_mgr_connector_get_id(connector);
struct msm_dsi *msm_dsi = dsi_mgr_get_dsi(id); struct msm_dsi *msm_dsi = dsi_mgr_get_dsi(id);
struct msm_dsi *other_dsi = dsi_mgr_get_other_dsi(id); struct msm_dsi *other_dsi = dsi_mgr_get_other_dsi(id);
struct msm_drm_private *priv = connector->dev->dev_private; struct msm_drm_private *priv = connector->dev->dev_private;
struct msm_kms *kms = priv->kms; struct msm_kms *kms = priv->kms;
bool cmd_mode; bool cmd_mode;
DBG("id=%d", id);
if (!msm_dsi->panel) { if (!msm_dsi->panel) {
msm_dsi->panel = msm_dsi_host_get_panel(msm_dsi->host); msm_dsi->panel = msm_dsi_host_get_panel(msm_dsi->host);
...@@ -292,6 +289,17 @@ static enum drm_connector_status dsi_mgr_connector_detect( ...@@ -292,6 +289,17 @@ static enum drm_connector_status dsi_mgr_connector_detect(
pr_err("mdp does not support dual DSI\n"); pr_err("mdp does not support dual DSI\n");
} }
} }
}
static enum drm_connector_status dsi_mgr_connector_detect(
struct drm_connector *connector, bool force)
{
int id = dsi_mgr_connector_get_id(connector);
struct msm_dsi *msm_dsi = dsi_mgr_get_dsi(id);
DBG("id=%d", id);
if (!msm_dsi->panel)
msm_dsi_manager_panel_init(connector, id);
return msm_dsi->panel ? connector_status_connected : return msm_dsi->panel ? connector_status_connected :
connector_status_disconnected; connector_status_disconnected;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment