diff options
Diffstat (limited to 'drivers/media/platform/s3c-camif/camif-capture.c')
| -rw-r--r-- | drivers/media/platform/s3c-camif/camif-capture.c | 21 | 
1 files changed, 11 insertions, 10 deletions
diff --git a/drivers/media/platform/s3c-camif/camif-capture.c b/drivers/media/platform/s3c-camif/camif-capture.c index 40b298ab87f..deba425e3d8 100644 --- a/drivers/media/platform/s3c-camif/camif-capture.c +++ b/drivers/media/platform/s3c-camif/camif-capture.c @@ -435,10 +435,10 @@ static int start_streaming(struct vb2_queue *vq, unsigned int count)  	return 0;  } -static int stop_streaming(struct vb2_queue *vq) +static void stop_streaming(struct vb2_queue *vq)  {  	struct camif_vp *vp = vb2_get_drv_priv(vq); -	return camif_stop_capture(vp); +	camif_stop_capture(vp);  }  static int queue_setup(struct vb2_queue *vq, const struct v4l2_format *pfmt, @@ -1160,7 +1160,7 @@ int s3c_camif_register_video_node(struct camif_dev *camif, int idx)  	q->mem_ops = &vb2_dma_contig_memops;  	q->buf_struct_size = sizeof(struct camif_buffer);  	q->drv_priv = vp; -	q->timestamp_type = V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC; +	q->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC;  	ret = vb2_queue_init(q);  	if (ret) @@ -1592,26 +1592,27 @@ int s3c_camif_create_subdev(struct camif_dev *camif)  			ARRAY_SIZE(s3c_camif_test_pattern_menu) - 1, 0, 0,  			s3c_camif_test_pattern_menu); -	camif->ctrl_colorfx = v4l2_ctrl_new_std_menu(handler, +	if (camif->variant->has_img_effect) { +		camif->ctrl_colorfx = v4l2_ctrl_new_std_menu(handler,  				&s3c_camif_subdev_ctrl_ops,  				V4L2_CID_COLORFX, V4L2_COLORFX_SET_CBCR,  				~0x981f, V4L2_COLORFX_NONE); -	camif->ctrl_colorfx_cbcr = v4l2_ctrl_new_std(handler, +		camif->ctrl_colorfx_cbcr = v4l2_ctrl_new_std(handler,  				&s3c_camif_subdev_ctrl_ops,  				V4L2_CID_COLORFX_CBCR, 0, 0xffff, 1, 0); +	} +  	if (handler->error) {  		v4l2_ctrl_handler_free(handler);  		media_entity_cleanup(&sd->entity);  		return handler->error;  	} -	v4l2_ctrl_auto_cluster(2, &camif->ctrl_colorfx, +	if (camif->variant->has_img_effect) +		v4l2_ctrl_auto_cluster(2, &camif->ctrl_colorfx,  			       V4L2_COLORFX_SET_CBCR, false); -	if (!camif->variant->has_img_effect) { -		camif->ctrl_colorfx->flags |= V4L2_CTRL_FLAG_DISABLED; -		camif->ctrl_colorfx_cbcr->flags |= V4L2_CTRL_FLAG_DISABLED; -	} +  	sd->ctrl_handler = handler;  	v4l2_set_subdevdata(sd, camif);  | 
