disp: msm: reset connector panel_dead during dsi bridge post disable

This change resets panel_dead property at the end of dsi bridge post disable.
Currently as part of the ESD recvoery sequence, dsi_bridge_enable resets this
property, but WD vsync source is selected before this point based on the older
panel_dead status. With this change, panel_dead will be in a proper state and
the correct vsync source will be selected during recovery.

Change-Id: I6d614113cfb0ae8a857974bb4d4f8ceb5988a0c8
Signed-off-by: Samantha Tran <samtran@codeaurora.org>
这个提交包含在:
Samantha Tran
2021-08-24 13:07:06 -07:00
父节点 3a2c526376
当前提交 8dbb23a8f5
修改 3 个文件,包含 20 行新增1 行删除

查看文件

@@ -310,6 +310,7 @@ static void dsi_bridge_disable(struct drm_bridge *bridge)
static void dsi_bridge_post_disable(struct drm_bridge *bridge)
{
int rc = 0;
struct dsi_display *display;
struct dsi_bridge *c_bridge = to_dsi_bridge(bridge);
if (!bridge) {
@@ -317,6 +318,8 @@ static void dsi_bridge_post_disable(struct drm_bridge *bridge)
return;
}
display = c_bridge->display;
SDE_ATRACE_BEGIN("dsi_bridge_post_disable");
SDE_ATRACE_BEGIN("dsi_display_disable");
rc = dsi_display_disable(c_bridge->display);
@@ -328,6 +331,9 @@ static void dsi_bridge_post_disable(struct drm_bridge *bridge)
}
SDE_ATRACE_END("dsi_display_disable");
if (display && display->drm_conn)
sde_connector_helper_bridge_post_disable(display->drm_conn);
rc = dsi_display_unprepare(c_bridge->display);
if (rc) {
DSI_ERR("[%d] DSI display unprepare failed, rc=%d\n",