s5p-jpeg: Initialize vfd_decoder->vfl_dir field
authorJacek Anaszewski <j.anaszewski@samsung.com>
Wed, 11 Sep 2013 10:11:48 +0000 (12:11 +0200)
committerChanho Park <chanho61.park@samsung.com>
Tue, 18 Nov 2014 02:44:48 +0000 (11:44 +0900)
This patch fixes regression introduced in the commit
5c77879ff9ab9e7 and caused by not initializing the
vfl_dir field of the vfd_decoder instance of the struct
video_device, after the field was introduced. It precluded
calling the driver ioctls which require vfl_dir not to be
equal to VFL_DIR_RX which is defined as 0 and uninitialized
vfl_dir field is interpreted as such. In effect the unlikely()
condition in the v4l_s_fmt function failed for the ioctls that
expect is_tx to be false, which prevented the ioctl callbacks
registered by the driver from being called.

Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Hans Verkuil <hverkuil@xs4all.nl>
drivers/media/platform/s5p-jpeg/jpeg-core.c

index 88c5beb..1db4736 100644 (file)
@@ -1424,6 +1424,7 @@ static int s5p_jpeg_probe(struct platform_device *pdev)
        jpeg->vfd_decoder->release      = video_device_release;
        jpeg->vfd_decoder->lock         = &jpeg->lock;
        jpeg->vfd_decoder->v4l2_dev     = &jpeg->v4l2_dev;
+       jpeg->vfd_decoder->vfl_dir      = VFL_DIR_M2M;
 
        ret = video_register_device(jpeg->vfd_decoder, VFL_TYPE_GRABBER, -1);
        if (ret) {