// called by "esd_recovery_kthread" // protected by sem_early_suspend, sem_update_screen BOOL dsi_esd_check(void) { BOOL result = false; if(lcm_params->dsi.mode == CMD_MODE) { result = lcm_drv->esd_check(); return result; } else { #ifndef BUILD_UBOOT #ifndef MT65XX_NEW_DISP if(lcm_params->dsi.lcm_int_te_monitor) result = DSI_esd_check(); if(result) return true; if(lcm_params->dsi.lcm_ext_te_monitor) result = LCD_esd_check(); #else result = DSI_esd_check(); DSI_LP_Reset(); needStartDSI = true; if(!result) dsi_update_screen(false); #endif return result; #endif } }
// called by "esd_recovery_kthread" // protected by sem_early_suspend, sem_update_screen BOOL dsi_esd_check(void) { BOOL result = false; if(lcm_params->dsi.mode == CMD_MODE || !dsi_vdo_streaming) return false; else { #ifndef BUILD_UBOOT if(lcm_params->dsi.lcm_int_te_monitor) result = DSI_esd_check(); if(result) return true; if(lcm_params->dsi.lcm_ext_te_monitor) result = LCD_esd_check(); return result; #endif } }