Loading drivers/gpu/drm/msm/dsi-staging/dsi_display.c +16 −12 Original line number Diff line number Diff line Loading @@ -822,6 +822,11 @@ int dsi_display_check_status(struct drm_connector *connector, void *display, if (te_check_override && gpio_is_valid(dsi_display->disp_te_gpio)) status_mode = ESD_MODE_PANEL_TE; if (status_mode == ESD_MODE_PANEL_TE) { rc = dsi_display_status_check_te(dsi_display); goto exit; } dsi_display_clk_ctrl(dsi_display->dsi_clk_handle, DSI_ALL_CLKS, DSI_CLK_ON); Loading @@ -834,26 +839,25 @@ int dsi_display_check_status(struct drm_connector *connector, void *display, rc = dsi_display_status_reg_read(dsi_display); } else if (status_mode == ESD_MODE_SW_BTA) { rc = dsi_display_status_bta_request(dsi_display); } else if (status_mode == ESD_MODE_PANEL_TE) { rc = dsi_display_status_check_te(dsi_display); } else { pr_warn("unsupported check status mode\n"); pr_warn("Unsupported ESD check mode: %d\n", status_mode); panel->esd_config.esd_enabled = false; } /* Unmask error interrupts */ /* Unmask error interrupts if check passed */ if (rc > 0) { dsi_display_set_ctrl_esd_check_flag(dsi_display, false); dsi_display_mask_ctrl_error_interrupts(dsi_display, mask, false); } else { /* Handle Panel failures during display disable sequence */ atomic_set(&panel->esd_recovery_pending, 1); dsi_display_mask_ctrl_error_interrupts(dsi_display, mask, false); } dsi_display_clk_ctrl(dsi_display->dsi_clk_handle, DSI_ALL_CLKS, DSI_CLK_OFF); exit: /* Handle Panel failures during display disable sequence */ if (rc <= 0) atomic_set(&panel->esd_recovery_pending, 1); release_panel_lock: dsi_panel_release_panel_lock(panel); SDE_EVT32(SDE_EVTLOG_FUNC_EXIT); Loading Loading
drivers/gpu/drm/msm/dsi-staging/dsi_display.c +16 −12 Original line number Diff line number Diff line Loading @@ -822,6 +822,11 @@ int dsi_display_check_status(struct drm_connector *connector, void *display, if (te_check_override && gpio_is_valid(dsi_display->disp_te_gpio)) status_mode = ESD_MODE_PANEL_TE; if (status_mode == ESD_MODE_PANEL_TE) { rc = dsi_display_status_check_te(dsi_display); goto exit; } dsi_display_clk_ctrl(dsi_display->dsi_clk_handle, DSI_ALL_CLKS, DSI_CLK_ON); Loading @@ -834,26 +839,25 @@ int dsi_display_check_status(struct drm_connector *connector, void *display, rc = dsi_display_status_reg_read(dsi_display); } else if (status_mode == ESD_MODE_SW_BTA) { rc = dsi_display_status_bta_request(dsi_display); } else if (status_mode == ESD_MODE_PANEL_TE) { rc = dsi_display_status_check_te(dsi_display); } else { pr_warn("unsupported check status mode\n"); pr_warn("Unsupported ESD check mode: %d\n", status_mode); panel->esd_config.esd_enabled = false; } /* Unmask error interrupts */ /* Unmask error interrupts if check passed */ if (rc > 0) { dsi_display_set_ctrl_esd_check_flag(dsi_display, false); dsi_display_mask_ctrl_error_interrupts(dsi_display, mask, false); } else { /* Handle Panel failures during display disable sequence */ atomic_set(&panel->esd_recovery_pending, 1); dsi_display_mask_ctrl_error_interrupts(dsi_display, mask, false); } dsi_display_clk_ctrl(dsi_display->dsi_clk_handle, DSI_ALL_CLKS, DSI_CLK_OFF); exit: /* Handle Panel failures during display disable sequence */ if (rc <= 0) atomic_set(&panel->esd_recovery_pending, 1); release_panel_lock: dsi_panel_release_panel_lock(panel); SDE_EVT32(SDE_EVTLOG_FUNC_EXIT); Loading