video: pxa3xx-gcu: provide an empty .open call
authorDaniel Mack <zonque@gmail.com>
Wed, 5 Mar 2014 16:12:48 +0000 (17:12 +0100)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Fri, 7 Mar 2014 13:04:49 +0000 (15:04 +0200)
This is necessary in order to make the core set file->private_data to
miscdev in use. We need that information later to dereference the
container of the device, so we can get access to our private struct from
other callbacks.

Signed-off-by: Daniel Mack <zonque@gmail.com>
Acked-by: Haojian Zhuang <haojian.zhuang@gmail.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/video/pxa3xx-gcu.c

index f9961ba9143009b6adb127bcb26d37dc2c3cfd5b..73c29ecf080fa057f86a71d40358d449ef5fe248 100644 (file)
@@ -373,6 +373,15 @@ static inline struct pxa3xx_gcu_priv *to_pxa3xx_gcu_priv(struct file *file)
        return container_of(dev, struct pxa3xx_gcu_priv, misc_dev);
 }
 
+/*
+ * provide an empty .open callback, so the core sets file->private_data
+ * for us.
+ */
+static int pxa3xx_gcu_open(struct inode *inode, struct file *file)
+{
+       return 0;
+}
+
 static ssize_t
 pxa3xx_gcu_write(struct file *file, const char *buff,
                 size_t count, loff_t *offp)
@@ -571,6 +580,7 @@ pxa3xx_gcu_free_buffers(struct device *dev,
 
 static const struct file_operations pxa3xx_gcu_miscdev_fops = {
        .owner =                THIS_MODULE,
+       .open =                 pxa3xx_gcu_open,
        .write =                pxa3xx_gcu_write,
        .unlocked_ioctl =       pxa3xx_gcu_ioctl,
        .mmap =                 pxa3xx_gcu_mmap,