V4L/DVB (10086): Add new set_std function on soc_camera
authorKuninori Morimoto <morimoto.kuninori@renesas.com>
Thu, 18 Dec 2008 15:46:45 +0000 (12:46 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Tue, 30 Dec 2008 11:40:24 +0000 (09:40 -0200)
This patch presents new method to be able to check v4l2_std_id

Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/soc_camera.c
include/media/soc_camera.h

index e869670dbae56923c4238af843c4892776a90755..b12d11f213bd3dcfee630bdc4ce645d9fd210c88 100644 (file)
@@ -152,7 +152,14 @@ static int soc_camera_s_input(struct file *file, void *priv, unsigned int i)
 
 static int soc_camera_s_std(struct file *file, void *priv, v4l2_std_id *a)
 {
-       return 0;
+       struct soc_camera_file *icf = file->private_data;
+       struct soc_camera_device *icd = icf->icd;
+       int ret = 0;
+
+       if (icd->ops->set_std)
+               ret = icd->ops->set_std(icd, a);
+
+       return ret;
 }
 
 static int soc_camera_reqbufs(struct file *file, void *priv,
index 8bae9a359d93480e968812702277b3b9a5917b2c..26dede82057c077437eec1ceef8118d7147fbbc6 100644 (file)
@@ -165,6 +165,7 @@ struct soc_camera_ops {
        int (*set_bus_param)(struct soc_camera_device *, unsigned long);
        int (*get_chip_id)(struct soc_camera_device *,
                           struct v4l2_chip_ident *);
+       int (*set_std)(struct soc_camera_device *, v4l2_std_id *);
 #ifdef CONFIG_VIDEO_ADV_DEBUG
        int (*get_register)(struct soc_camera_device *, struct v4l2_register *);
        int (*set_register)(struct soc_camera_device *, struct v4l2_register *);