OSDN Git Service

media: em28xx: Fix misplaced reset of dev->v4l::field_count
authorBen Hutchings <ben@decadent.org.uk>
Thu, 17 Jan 2019 00:22:48 +0000 (00:22 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 26 Jan 2019 08:42:49 +0000 (09:42 +0100)
The backport of commit afeaade90db4 "media: em28xx: make
v4l2-compliance happier by starting sequence on zero" added a
reset on em28xx_v4l2::field_count to em28xx_ctrl_notify(),
but it should be done in em28xx_start_analog_streaming().

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Cc: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/media/usb/em28xx/em28xx-video.c

index 6cfcdce..873948e 100644 (file)
@@ -930,6 +930,8 @@ int em28xx_start_analog_streaming(struct vb2_queue *vq, unsigned int count)
 
        em28xx_videodbg("%s\n", __func__);
 
+       dev->v4l2->field_count = 0;
+
        /* Make sure streaming is not already in progress for this type
           of filehandle (e.g. video, vbi) */
        rc = res_get(dev, vq->type);
@@ -1149,8 +1151,6 @@ static void em28xx_ctrl_notify(struct v4l2_ctrl *ctrl, void *priv)
 {
        struct em28xx *dev = priv;
 
-       dev->v4l2->field_count = 0;
-
        /*
         * In the case of non-AC97 volume controls, we still need
         * to do some setups at em28xx, in order to mute/unmute