Przeglądaj źródła

V4L/DVB (10291): em28xx: fix VIDIOC_G_CTRL when there is no msp34xx device.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Hans Verkuil 16 lat temu
rodzic
commit
07f7db4ce7
1 zmienionych plików z 6 dodań i 1 usunięć
  1. 6 1
      drivers/media/video/em28xx/em28xx-video.c

+ 6 - 1
drivers/media/video/em28xx/em28xx-video.c

@@ -1008,8 +1008,13 @@ static int vidioc_g_ctrl(struct file *file, void *priv,
 
 	if (dev->board.has_msp34xx)
 		em28xx_i2c_call_clients(dev, VIDIOC_G_CTRL, ctrl);
-	else
+	else {
 		rc = em28xx_get_ctrl(dev, ctrl);
+		if (rc < 0) {
+			em28xx_i2c_call_clients(dev, VIDIOC_G_CTRL, ctrl);
+			rc = 0;
+		}
+	}
 
 	mutex_unlock(&dev->lock);
 	return rc;