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

Commit 7a8e0acb authored by Nagesh Subba Reddy's avatar Nagesh Subba Reddy Committed by Sagar Gore
Browse files

msm: camera: isp: Error handling for cfg stream failure



During start/stop axi stream or remove bufq, propagate
error to userspace. Userspace will take care of cleanup.

Change-Id: I3b977bacf43b7c2e3ae783efe5c7ae44d6b0b6b4
Signed-off-by: default avatarNagesh Subba Reddy <nageshsreddy@codeaurora.org>
Signed-off-by: default avatarSagar Gore <sgore@codeaurora.org>
parent 2e5123a1
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -791,7 +791,11 @@ int msm_isp_release_axi_stream(struct vfe_device *vfe_dev, void *arg)
		stream_cfg.cmd = STOP_STREAM;
		stream_cfg.num_streams = 1;
		stream_cfg.stream_handle[0] = stream_release_cmd->stream_handle;
		msm_isp_cfg_axi_stream(vfe_dev, (void *) &stream_cfg);
		rc = msm_isp_cfg_axi_stream(vfe_dev, (void *) &stream_cfg);
		if (rc < 0) {
			pr_err("%s: msm_isp_cfg_axi_stream failed: %d\n", __func__, rc);
			return rc;
		}
	}

	for (i = 0; i < stream_info->num_planes; i++) {
@@ -1787,6 +1791,8 @@ static int msm_isp_stop_axi_stream(struct vfe_device *vfe_dev,
			src_mask, 2);
		if (rc < 0) {
			pr_err("%s: wait for config done failed\n", __func__);
			if (rc == -EINVAL)
				return rc;
			for (i = 0; i < stream_cfg_cmd->num_streams; i++) {
				stream_info = &axi_data->stream_info[
				HANDLE_TO_IDX(