Loading msm/vidc/msm_vidc_common.c +6 −2 Original line number Diff line number Diff line Loading @@ -2231,8 +2231,12 @@ static void handle_sys_error(enum hal_command_response cmd, void *data) /* handle the hw error before core released to get full debug info */ msm_vidc_handle_hw_error(core); if (response->status == VIDC_ERR_NOC_ERROR) { d_vpr_e("Got NOC error"); if ((response->status == VIDC_ERR_NOC_ERROR && (msm_vidc_err_recovery_disable & VIDC_DISABLE_NOC_ERR_RECOV)) || (msm_vidc_err_recovery_disable & VIDC_DISABLE_NON_NOC_ERR_RECOV)) { d_vpr_e("Got unrecoverable video fw error"); MSM_VIDC_ERROR(true); } Loading msm/vidc/msm_vidc_debug.c +4 −1 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ bool msm_vidc_thermal_mitigation_disabled = !true; int msm_vidc_clock_voting = !1; bool msm_vidc_syscache_disable = !true; bool msm_vidc_cvp_usage = true; int msm_vidc_err_recovery_disable = !1; #define MAX_DBG_BUF_SIZE 4096 Loading Loading @@ -239,7 +240,9 @@ struct dentry *msm_vidc_debugfs_init_drv(void) &msm_vidc_syscache_disable) && __debugfs_create(bool, "cvp_usage", &msm_vidc_cvp_usage) && __debugfs_create(bool, "lossless_encoding", &msm_vidc_lossless_encode); &msm_vidc_lossless_encode) && __debugfs_create(u32, "disable_err_recovery", &msm_vidc_err_recovery_disable); #undef __debugfs_create Loading msm/vidc/msm_vidc_debug.h +6 −0 Original line number Diff line number Diff line Loading @@ -64,6 +64,11 @@ enum msm_vidc_debugfs_event { MSM_VIDC_DEBUGFS_EVENT_FBD, }; enum vidc_err_recovery_disable { VIDC_DISABLE_NOC_ERR_RECOV = 0x0001, VIDC_DISABLE_NON_NOC_ERR_RECOV = 0x0002 }; extern int msm_vidc_debug; extern int msm_vidc_fw_debug_mode; extern bool msm_vidc_fw_coverage; Loading @@ -72,6 +77,7 @@ extern int msm_vidc_clock_voting; extern bool msm_vidc_syscache_disable; extern bool msm_vidc_lossless_encode; extern bool msm_vidc_cvp_usage; extern int msm_vidc_err_recovery_disable; struct log_cookie { u32 used; Loading Loading
msm/vidc/msm_vidc_common.c +6 −2 Original line number Diff line number Diff line Loading @@ -2231,8 +2231,12 @@ static void handle_sys_error(enum hal_command_response cmd, void *data) /* handle the hw error before core released to get full debug info */ msm_vidc_handle_hw_error(core); if (response->status == VIDC_ERR_NOC_ERROR) { d_vpr_e("Got NOC error"); if ((response->status == VIDC_ERR_NOC_ERROR && (msm_vidc_err_recovery_disable & VIDC_DISABLE_NOC_ERR_RECOV)) || (msm_vidc_err_recovery_disable & VIDC_DISABLE_NON_NOC_ERR_RECOV)) { d_vpr_e("Got unrecoverable video fw error"); MSM_VIDC_ERROR(true); } Loading
msm/vidc/msm_vidc_debug.c +4 −1 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ bool msm_vidc_thermal_mitigation_disabled = !true; int msm_vidc_clock_voting = !1; bool msm_vidc_syscache_disable = !true; bool msm_vidc_cvp_usage = true; int msm_vidc_err_recovery_disable = !1; #define MAX_DBG_BUF_SIZE 4096 Loading Loading @@ -239,7 +240,9 @@ struct dentry *msm_vidc_debugfs_init_drv(void) &msm_vidc_syscache_disable) && __debugfs_create(bool, "cvp_usage", &msm_vidc_cvp_usage) && __debugfs_create(bool, "lossless_encoding", &msm_vidc_lossless_encode); &msm_vidc_lossless_encode) && __debugfs_create(u32, "disable_err_recovery", &msm_vidc_err_recovery_disable); #undef __debugfs_create Loading
msm/vidc/msm_vidc_debug.h +6 −0 Original line number Diff line number Diff line Loading @@ -64,6 +64,11 @@ enum msm_vidc_debugfs_event { MSM_VIDC_DEBUGFS_EVENT_FBD, }; enum vidc_err_recovery_disable { VIDC_DISABLE_NOC_ERR_RECOV = 0x0001, VIDC_DISABLE_NON_NOC_ERR_RECOV = 0x0002 }; extern int msm_vidc_debug; extern int msm_vidc_fw_debug_mode; extern bool msm_vidc_fw_coverage; Loading @@ -72,6 +77,7 @@ extern int msm_vidc_clock_voting; extern bool msm_vidc_syscache_disable; extern bool msm_vidc_lossless_encode; extern bool msm_vidc_cvp_usage; extern int msm_vidc_err_recovery_disable; struct log_cookie { u32 used; Loading