Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=045290b2a90ff1be60196a061aadecf70eb6bcc3
Commit:     045290b2a90ff1be60196a061aadecf70eb6bcc3
Parent:     b2787845fb91da18ebb079dc9297f92d990e9fe1
Author:     Hans Verkuil <[EMAIL PROTECTED]>
AuthorDate: Fri Apr 27 12:31:04 2007 -0300
Committer:  Mauro Carvalho Chehab <[EMAIL PROTECTED]>
CommitDate: Fri Apr 27 15:43:22 2007 -0300

    V4L/DVB (5290): Add support for VIDIOC_INT_G/S_STD_OUTPUT
    
    Added VIDIOC_INT_G_STD_OUTPUT and VIDIOC_INT_S_STD_OUTPUT to allow drivers
    to set the TV standard for video output separately from the video capture.
    This is needed for cx23415 support where the decoder is separate from the
    encoder and can have a different TV standard.
    Modified the saa7127 module to listen to VIDIOC_INT_G/S_STD_OUTPUT instead
    of VIDIOC_G/S_STD.
    
    Signed-off-by: Hans Verkuil <[EMAIL PROTECTED]>
    Signed-off-by: Mauro Carvalho Chehab <[EMAIL PROTECTED]>
---
 drivers/media/video/saa7127.c     |    4 ++--
 drivers/media/video/v4l2-common.c |    5 ++++-
 include/media/v4l2-common.h       |    8 ++++++++
 3 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/drivers/media/video/saa7127.c b/drivers/media/video/saa7127.c
index 654863d..50dbb76 100644
--- a/drivers/media/video/saa7127.c
+++ b/drivers/media/video/saa7127.c
@@ -550,12 +550,12 @@ static int saa7127_command(struct i2c_client *client,
        struct v4l2_routing *route = arg;
 
        switch (cmd) {
-       case VIDIOC_S_STD:
+       case VIDIOC_INT_S_STD_OUTPUT:
                if (state->std == *(v4l2_std_id *)arg)
                        break;
                return saa7127_set_std(client, *(v4l2_std_id *)arg);
 
-       case VIDIOC_G_STD:
+       case VIDIOC_INT_G_STD_OUTPUT:
                *(v4l2_std_id *)arg = state->std;
                break;
 
diff --git a/drivers/media/video/v4l2-common.c 
b/drivers/media/video/v4l2-common.c
index 740ea5a..4a3635c 100644
--- a/drivers/media/video/v4l2-common.c
+++ b/drivers/media/video/v4l2-common.c
@@ -420,7 +420,10 @@ static const char *v4l2_int_ioctls[] = {
        [_IOC_NR(VIDIOC_INT_G_AUDIO_ROUTING)]  = "VIDIOC_INT_G_AUDIO_ROUTING",
        [_IOC_NR(VIDIOC_INT_S_VIDEO_ROUTING)]  = "VIDIOC_INT_S_VIDEO_ROUTING",
        [_IOC_NR(VIDIOC_INT_G_VIDEO_ROUTING)]  = "VIDIOC_INT_G_VIDEO_ROUTING",
-       [_IOC_NR(VIDIOC_INT_S_CRYSTAL_FREQ)]   = "VIDIOC_INT_S_CRYSTAL_FREQ"
+       [_IOC_NR(VIDIOC_INT_S_CRYSTAL_FREQ)]   = "VIDIOC_INT_S_CRYSTAL_FREQ",
+       [_IOC_NR(VIDIOC_INT_INIT)]             = "VIDIOC_INT_INIT",
+       [_IOC_NR(VIDIOC_INT_G_STD_OUTPUT)]     = "VIDIOC_INT_G_STD_OUTPUT",
+       [_IOC_NR(VIDIOC_INT_S_STD_OUTPUT)]     = "VIDIOC_INT_S_STD_OUTPUT",
 };
 #define V4L2_INT_IOCTLS ARRAY_SIZE(v4l2_int_ioctls)
 
diff --git a/include/media/v4l2-common.h b/include/media/v4l2-common.h
index 6eaeec9..abb9ce9 100644
--- a/include/media/v4l2-common.h
+++ b/include/media/v4l2-common.h
@@ -254,4 +254,12 @@ struct v4l2_crystal_freq {
    default values. */
 #define VIDIOC_INT_INIT                        _IOW ('d', 114, u32)
 
+/* Set v4l2_std_id for video OUTPUT devices. This is ignored by
+   video input devices. */
+#define VIDIOC_INT_S_STD_OUTPUT                _IOW  ('d', 115, v4l2_std_id)
+
+/* Get v4l2_std_id for video OUTPUT devices. This is ignored by
+   video input devices. */
+#define VIDIOC_INT_G_STD_OUTPUT                _IOW  ('d', 116, v4l2_std_id)
+
 #endif /* V4L2_COMMON_H_ */
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to