From: Hans Verkuil <[email protected]>

Control events require the use of struct v4l2_fh. Add this to saa7164.

Signed-off-by: Hans Verkuil <[email protected]>
Tested-by: Hans Verkuil <[email protected]>
---
 drivers/media/pci/saa7164/saa7164-encoder.c | 7 +++++--
 drivers/media/pci/saa7164/saa7164-vbi.c     | 7 +++++--
 drivers/media/pci/saa7164/saa7164.h         | 2 ++
 3 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/drivers/media/pci/saa7164/saa7164-encoder.c 
b/drivers/media/pci/saa7164/saa7164-encoder.c
index 390211b..96dd1e4 100644
--- a/drivers/media/pci/saa7164/saa7164-encoder.c
+++ b/drivers/media/pci/saa7164/saa7164-encoder.c
@@ -746,8 +746,10 @@ static int fops_open(struct file *file)
        if (NULL == fh)
                return -ENOMEM;
 
-       file->private_data = fh;
        fh->port = port;
+       v4l2_fh_init(&fh->fh, video_devdata(file));
+       v4l2_fh_add(&fh->fh);
+       file->private_data = fh;
 
        return 0;
 }
@@ -768,7 +770,8 @@ static int fops_release(struct file *file)
                }
        }
 
-       file->private_data = NULL;
+       v4l2_fh_del(&fh->fh);
+       v4l2_fh_exit(&fh->fh);
        kfree(fh);
 
        return 0;
diff --git a/drivers/media/pci/saa7164/saa7164-vbi.c 
b/drivers/media/pci/saa7164/saa7164-vbi.c
index 4858f59..2f9c87d 100644
--- a/drivers/media/pci/saa7164/saa7164-vbi.c
+++ b/drivers/media/pci/saa7164/saa7164-vbi.c
@@ -678,8 +678,10 @@ static int fops_open(struct file *file)
        if (NULL == fh)
                return -ENOMEM;
 
-       file->private_data = fh;
        fh->port = port;
+       v4l2_fh_init(&fh->fh, video_devdata(file));
+       v4l2_fh_add(&fh->fh);
+       file->private_data = fh;
 
        return 0;
 }
@@ -700,7 +702,8 @@ static int fops_release(struct file *file)
                }
        }
 
-       file->private_data = NULL;
+       v4l2_fh_del(&fh->fh);
+       v4l2_fh_exit(&fh->fh);
        kfree(fh);
 
        return 0;
diff --git a/drivers/media/pci/saa7164/saa7164.h 
b/drivers/media/pci/saa7164/saa7164.h
index b3828c6..05707e3 100644
--- a/drivers/media/pci/saa7164/saa7164.h
+++ b/drivers/media/pci/saa7164/saa7164.h
@@ -186,11 +186,13 @@ struct saa7164_subid {
 };
 
 struct saa7164_encoder_fh {
+       struct v4l2_fh fh;
        struct saa7164_port *port;
        atomic_t v4l_reading;
 };
 
 struct saa7164_vbi_fh {
+       struct v4l2_fh fh;
        struct saa7164_port *port;
        atomic_t v4l_reading;
 };
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to