Merge "disp: msm: only set nolp command when panel in LP1/LP2 mode"

This commit is contained in:
qctecmdr
2019-09-26 00:23:18 -07:00
committed by Gerrit - the friendly Code Review server
3 changed files with 16 additions and 2 deletions

View File

@@ -1060,10 +1060,22 @@ int dsi_display_set_power(struct drm_connector *connector,
case SDE_MODE_DPMS_LP2:
rc = dsi_panel_set_lp2(display->panel);
break;
default:
rc = dsi_panel_set_nolp(display->panel);
case SDE_MODE_DPMS_ON:
if ((display->panel->power_mode == SDE_MODE_DPMS_LP1) ||
(display->panel->power_mode == SDE_MODE_DPMS_LP2))
rc = dsi_panel_set_nolp(display->panel);
break;
case SDE_MODE_DPMS_OFF:
default:
return rc;
}
DSI_DEBUG("Power mode transition from %d to %d %s",
display->panel->power_mode, power_mode,
rc ? "failed" : "successful");
if (!rc)
display->panel->power_mode = power_mode;
return rc;
}

View File

@@ -3306,6 +3306,7 @@ struct dsi_panel *dsi_panel_get(struct device *parent,
if (rc)
DSI_DEBUG("failed to parse esd config, rc=%d\n", rc);
panel->power_mode = SDE_MODE_DPMS_OFF;
drm_panel_init(&panel->drm_panel);
panel->drm_panel.dev = &panel->mipi_device.dev;
panel->mipi_device.dev.of_node = of_node;

View File

@@ -198,6 +198,7 @@ struct dsi_panel {
bool sync_broadcast_en;
int panel_test_gpio;
int power_mode;
};
static inline bool dsi_panel_ulps_feature_enabled(struct dsi_panel *panel)