diff options
Diffstat (limited to 'isp')
| -rw-r--r-- | isp/omap3isp.c | 26 | 
1 files changed, 11 insertions, 15 deletions
| diff --git a/isp/omap3isp.c b/isp/omap3isp.c index a85db10..3ecf6b0 100644 --- a/isp/omap3isp.c +++ b/isp/omap3isp.c @@ -140,11 +140,21 @@ static const char *entity_name(struct omap3_isp_entity *entity)  static int omap3_isp_video_start(struct omap3_isp_video *video)  { -	return v4l2_stream_on(video->video); +	int ret; + +	ret = v4l2_stream_on(video->video); +	if (ret < 0) +		return ret; + +	video->running = true; +	return 0;  }  static int omap3_isp_video_stop(struct omap3_isp_video *video)  { +	video->queued = 0; +	video->running = false; +  	return v4l2_stream_off(video->video);  } @@ -261,9 +271,6 @@ static int omap3_isp_pool_start(struct omap3_isp_pool *pool)  		return ret;  	} -	pool->input->running = true; -	pool->output->running = true; -  	return 0;  } @@ -281,11 +288,6 @@ static void omap3_isp_pool_stop(struct omap3_isp_pool *pool)  	ret = omap3_isp_video_stop(pool->output);  	if (ret < 0)  		printf("error: pool: streamoff failed for output (%d)\n", ret); - -	pool->input->queued = 0; -	pool->input->running = false; -	pool->output->queued = 0; -	pool->output->running = false;  }  static int omap3_isp_pool_alloc_buffers(struct omap3_isp_pool *pool) @@ -915,7 +917,6 @@ int omap3_isp_viewfinder_start(struct omap3_isp_device *isp)  		return ret;  	} -	isp->viewfinder.output->running = true;  	return 0;  } @@ -937,8 +938,6 @@ int omap3_isp_viewfinder_stop(struct omap3_isp_device *isp)  	list_for_each_entry(pool, &isp->viewfinder.pools, list)  		omap3_isp_pool_stop(pool); -	isp->viewfinder.output->queued = 0; -	isp->viewfinder.output->running = false;  	return 0;  } @@ -1137,8 +1136,6 @@ static void omap3_isp_snapshot_event(void *priv)  		return;  	} -	isp->snapshot.output->running = false; -  	isp->ops->snapshot_ready(isp, &buffer);  	/* Resume the viewfinder. */ @@ -1195,7 +1192,6 @@ int omap3_isp_snapshot_capture(struct omap3_isp_device *isp)  		return ret;  	} -	isp->snapshot.output->running = true;  	return 0;  } | 
