Commit 2b16b44a authored by Laurent Pinchart's avatar Laurent Pinchart Committed by Mauro Carvalho Chehab
Browse files

[media] v4l: omap4iss: Simplify error paths



Get rid of a goto statement for a simple error path that can be inlined,
and split spaghetti error code to a separate section.

Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 245d6b2d
Loading
Loading
Loading
Loading
+9 −11
Original line number Diff line number Diff line
@@ -887,24 +887,22 @@ void omap4iss_isp_subclk_disable(struct iss_device *iss,
 */
static int iss_enable_clocks(struct iss_device *iss)
{
	int r;
	int ret;

	r = clk_enable(iss->iss_fck);
	if (r) {
	ret = clk_enable(iss->iss_fck);
	if (ret) {
		dev_err(iss->dev, "clk_enable iss_fck failed\n");
		return r;
		return ret;
	}

	r = clk_enable(iss->iss_ctrlclk);
	if (r) {
	ret = clk_enable(iss->iss_ctrlclk);
	if (ret) {
		dev_err(iss->dev, "clk_enable iss_ctrlclk failed\n");
		goto out_clk_enable_ctrlclk;
		clk_disable(iss->iss_fck);
		return ret;
	}
	return 0;

out_clk_enable_ctrlclk:
	clk_disable(iss->iss_fck);
	return r;
	return 0;
}

/*
+8 −7
Original line number Diff line number Diff line
@@ -826,7 +826,9 @@ iss_video_streamon(struct file *file, void *fh, enum v4l2_buf_type type)
		spin_unlock_irqrestore(&video->qlock, flags);
	}

	if (ret < 0) {
	mutex_unlock(&video->stream_lock);
	return 0;

err_omap4iss_set_stream:
	vb2_streamoff(&vfh->queue, type);
err_iss_video_check_format:
@@ -835,7 +837,6 @@ iss_video_streamon(struct file *file, void *fh, enum v4l2_buf_type type)
	if (video->iss->pdata->set_constraints)
		video->iss->pdata->set_constraints(video->iss, false);
	video->queue = NULL;
	}

	mutex_unlock(&video->stream_lock);
	return ret;