Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 00f2e3e6 authored by Umesh Pandey's avatar Umesh Pandey Committed by Gerrit - the friendly Code Review server
Browse files

msm: vidc: Selectively handle SYS_ERROR as FATAL



User SSR triggers a SYS_ERROR from the hardware.
However the driver cannot detect if the error is
due to user SSR or other reasons. Handle SYS_ERROR
due to user SSR as non-fatal

CRs-Fixed: 1054921
Change-Id: I4151b6bfb24e55c1f1a38bfdca012f7b7af86603
Signed-off-by: default avatarUmesh Pandey <umeshp@codeaurora.org>
parent 8ec8b328
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -4792,9 +4792,20 @@ int msm_vidc_trigger_ssr(struct msm_vidc_core *core,
		return -EINVAL;
	}
	hdev = core->device;
	if (core->state == VIDC_CORE_INIT_DONE)
	if (core->state == VIDC_CORE_INIT_DONE) {
		/*
		 * In current implementation user-initiated SSR triggers
		 * a fatal error from hardware. However, there is no way
		 * to know if fatal error is due to SSR or not. Handle
		 * user SSR as non-fatal.
		 */
		mutex_lock(&core->lock);
		core->resources.debug_timeout = false;
		mutex_unlock(&core->lock);
		rc = call_hfi_op(hdev, core_trigger_ssr,
				hdev->hfi_device_data, type);
	}

	return rc;
}