video: driver: follow vcodec power collapse seq for PC failure case
if PC fails for 10 times then video driver is treating that situation as fatal and doing force core_deinit(), in this case firmware will not follow vcodec power_collapse sequence and if there any pending transaction from any session it will cause smmu_fault during next firmware_boot sequence. Added change to perform vcodec power_collapse from power_off_iris3_hardware() incase of core_deinit due to PC failure. Change-Id: I45e32985d87b5cc882c4f96f77d1cabc796e6ba0 Signed-off-by: Govindaraj Rajagopal <quic_grajagop@quicinc.com> Signed-off-by: Ankush Mitra <quic_ankumitr@quicinc.com>
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

parent
78246c24fb
commit
dc39a04e6e
@@ -4905,6 +4905,7 @@ int msm_vidc_core_init_wait(struct msm_vidc_core *core)
|
||||
} else {
|
||||
d_vpr_h("%s: sys init wait timedout. state %s\n",
|
||||
__func__, core_state_name(core->state));
|
||||
core->video_unresponsive = true;
|
||||
rc = -EINVAL;
|
||||
goto unlock;
|
||||
}
|
||||
@@ -4979,6 +4980,8 @@ int msm_vidc_inst_timeout(struct msm_vidc_inst *inst)
|
||||
rc = -EINVAL;
|
||||
goto unlock;
|
||||
}
|
||||
/* mark video hw unresponsive */
|
||||
core->video_unresponsive = true;
|
||||
|
||||
/* call core deinit for a valid instance timeout case */
|
||||
msm_vidc_core_deinit_locked(core, true);
|
||||
|
Reference in New Issue
Block a user