/******************************************************************** Function Name :- esd_dma_dsi_panel_off Arguments :- None Return Value :- None Functionality :- to power off DMA , MIPI DSI & LCD panel. dependencies :- Should be called after dsi_video_on or off function. *********************************************************************/ void esd_dma_dsi_panel_off(void) { if(esd_reset_pdev) { mdp_dsi_video_off(esd_reset_pdev); } }
int msm_display_off(void) { int ret = NO_ERROR; struct msm_panel_info *pinfo; if (!panel) return ERR_INVALID_ARGS; pinfo = &(panel->panel_info); switch (pinfo->type) { case LVDS_PANEL: dprintf(INFO, "Turn off LVDS PANEL.\n"); mdp_lcdc_off(); break; case MIPI_VIDEO_PANEL: dprintf(INFO, "Turn off MIPI_VIDEO_PANEL.\n"); ret = mdp_dsi_video_off(pinfo); if (ret) goto msm_display_off_out; ret = mipi_dsi_off(); if (ret) goto msm_display_off_out; break; case MIPI_CMD_PANEL: dprintf(INFO, "Turn off MIPI_CMD_PANEL.\n"); ret = mdp_dsi_cmd_off(); if (ret) goto msm_display_off_out; ret = mipi_dsi_off(); if (ret) goto msm_display_off_out; break; case LCDC_PANEL: dprintf(INFO, "Turn off LCDC PANEL.\n"); mdp_lcdc_off(); break; default: return ERR_INVALID_ARGS; }; if (pinfo->off) ret = pinfo->off(); /* Disable clock */ if (panel->clk_func) ret = panel->clk_func(0); if (ret) goto msm_display_off_out; /* Disable panel */ if (panel->power_func) ret = panel->power_func(0); msm_display_off_out: return ret; }