video: driver: Clear NOC_ErrCLr_low only in power on

- In noc error handler do not clear
   NOC_ERL_ErrorLogger_main_ErrorLogger_ErrClr_Low, to
   avoid sending any pending transactions, move clearing
   to power on

Change-Id: Ib620f3dcb93b92f2c03eb2126c47d5b97526556d
Signed-off-by: Deepa Guthyappa Madivalara <quic_dmadival@quicinc.com>
This commit is contained in:
Deepa Guthyappa Madivalara
2023-05-10 16:47:57 -07:00
parent 0eee7ddf6d
commit a9547c3239

View File

@@ -760,7 +760,19 @@ static int __power_on_iris33(struct msm_vidc_core *core)
__set_registers(core); __set_registers(core);
/* Programm NOC error registers before releasing xo reset */ /*
* Programm NOC error registers before releasing xo reset
* Clear error logger registers and then enable StallEn
*/
rc = __write_register(core,
NOC_ERL_ERRORLOGGER_MAIN_ERRORLOGGER_ERRCLR_LOW, 0x1);
if (rc) {
d_vpr_e(
"%s: error clearing NOC_MAIN_ERRORLOGGER_ERRCLR_LOW\n",
__func__);
goto fail_program_noc_regs;
}
rc = __write_register(core, rc = __write_register(core,
NOC_ERL_ERRORLOGGER_MAIN_ERRORLOGGER_MAINCTL_LOW, 0x3); NOC_ERL_ERRORLOGGER_MAIN_ERRORLOGGER_MAINCTL_LOW, 0x3);
if (rc) { if (rc) {
@@ -995,11 +1007,6 @@ static int __noc_error_info_iris33(struct msm_vidc_core *core)
d_vpr_e("%s: NOC_ERL_ERRORLOGGER_MAIN_ERRORLOGGER_ERRLOG3_LOW: %#x\n", d_vpr_e("%s: NOC_ERL_ERRORLOGGER_MAIN_ERRORLOGGER_ERRLOG3_LOW: %#x\n",
__func__, value); __func__, value);
rc = __write_register(core,
NOC_ERL_ERRORLOGGER_MAIN_ERRORLOGGER_ERRCLR_LOW, 0x1);
if (rc)
d_vpr_e("%s: error clearing NOC reg\n", __func__);
/* release reset control for other consumers */ /* release reset control for other consumers */
rc = call_res_op(core, reset_control_release, core, "video_xo_reset"); rc = call_res_op(core, reset_control_release, core, "video_xo_reset");
if (rc) { if (rc) {