summaryrefslogtreecommitdiff
path: root/linux/include
diff options
context:
space:
mode:
Diffstat (limited to 'linux/include')
-rw-r--r--linux/include/linux/i2c-id.h1
-rw-r--r--linux/include/linux/videodev.h7
-rw-r--r--linux/include/linux/videodev2.h2
-rw-r--r--linux/include/media/ir-common.h1
-rw-r--r--linux/include/media/v4l2-dev.h30
5 files changed, 23 insertions, 18 deletions
diff --git a/linux/include/linux/i2c-id.h b/linux/include/linux/i2c-id.h
index 21338bb34..9418519a5 100644
--- a/linux/include/linux/i2c-id.h
+++ b/linux/include/linux/i2c-id.h
@@ -115,6 +115,7 @@
#define I2C_DRIVERID_BT866 85 /* Conexant bt866 video encoder */
#define I2C_DRIVERID_KS0127 86 /* Samsung ks0127 video decoder */
#define I2C_DRIVERID_TLV320AIC23B 87 /* TI TLV320AIC23B audio codec */
+#define I2C_DRIVERID_ISL1208 88 /* Intersil ISL1208 RTC */
#define I2C_DRIVERID_I2CDEV 900
#define I2C_DRIVERID_ARP 902 /* SMBus ARP Client */
diff --git a/linux/include/linux/videodev.h b/linux/include/linux/videodev.h
index 41bc7e960..518c7a321 100644
--- a/linux/include/linux/videodev.h
+++ b/linux/include/linux/videodev.h
@@ -12,10 +12,11 @@
#ifndef __LINUX_VIDEODEV_H
#define __LINUX_VIDEODEV_H
-#define HAVE_V4L1 1
-
#include <linux/videodev2.h>
+#ifdef CONFIG_VIDEO_V4L1_COMPAT
+#define HAVE_V4L1 1
+
struct video_capability
{
char name[32];
@@ -336,6 +337,8 @@ struct video_code
#define VID_HARDWARE_SN9C102 38
#define VID_HARDWARE_ARV 39
+#endif /* CONFIG_VIDEO_V4L1_COMPAT */
+
#endif /* __LINUX_VIDEODEV_H */
/*
diff --git a/linux/include/linux/videodev2.h b/linux/include/linux/videodev2.h
index 60b5b4b27..9eccad749 100644
--- a/linux/include/linux/videodev2.h
+++ b/linux/include/linux/videodev2.h
@@ -716,7 +716,7 @@ struct v4l2_ext_control
__s64 value64;
void *reserved;
};
-};
+} __attribute__ ((packed));
struct v4l2_ext_controls
{
diff --git a/linux/include/media/ir-common.h b/linux/include/media/ir-common.h
index 7bab09b0e..f883bc3aa 100644
--- a/linux/include/media/ir-common.h
+++ b/linux/include/media/ir-common.h
@@ -90,6 +90,7 @@ extern IR_KEYTAB_TYPE ir_codes_winfast[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_pinnacle_color[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_hauppauge_new[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_npgtech[IR_KEYTAB_SIZE];
+extern IR_KEYTAB_TYPE ir_codes_norwood[IR_KEYTAB_SIZE];
#endif
diff --git a/linux/include/media/v4l2-dev.h b/linux/include/media/v4l2-dev.h
index 39f4b7c69..2a55cd41c 100644
--- a/linux/include/media/v4l2-dev.h
+++ b/linux/include/media/v4l2-dev.h
@@ -9,13 +9,11 @@
#ifndef _V4L2_DEV_H
#define _V4L2_DEV_H
-#define OBSOLETE_OWNER 1 /* to be removed soon */
+#define OBSOLETE_OWNER 1 /* to be removed soon */
+#define OBSOLETE_DEVDATA 1 /* to be removed soon */
#include <linux/poll.h>
#include <linux/fs.h>
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,69)
-#include <linux/devfs_fs_kernel.h>
-#endif
#if LINUX_VERSION_CODE > KERNEL_VERSION(2,5,0)
#include <linux/device.h>
#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,15)
@@ -23,7 +21,7 @@
#endif
#endif
#include <linux/compiler.h> /* need __user */
-#ifdef CONFIG_VIDEO_V4L1
+#ifdef CONFIG_VIDEO_V4L1_COMPAT
#include <linux/videodev.h>
#else
#include <linux/videodev2.h>
@@ -341,11 +339,6 @@ void *priv;
#else
struct semaphore lock; /* ... helper function uses these */
#endif
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,69)
- devfs_handle_t devfs_handle; /* devfs */
-#else
- char devfs_name[64]; /* devfs */
-#endif
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
struct class_device class_dev; /* sysfs */
#endif
@@ -372,15 +365,16 @@ extern int video_usercopy(struct inode *inode, struct file *file,
#ifdef HAVE_V4L1
#include <linux/mm.h>
-extern struct video_device* video_devdata(struct file*);
-
#if LINUX_VERSION_CODE > KERNEL_VERSION(2,5,0)
#define to_video_device(cd) container_of(cd, struct video_device, class_dev)
-static inline void
+static inline int
video_device_create_file(struct video_device *vfd,
struct class_device_attribute *attr)
{
- class_device_create_file(&vfd->class_dev, attr);
+ int ret = class_device_create_file(&vfd->class_dev, attr);
+ if (ret < 0)
+ printk(KERN_WARNING "%s error: %d\n", __FUNCTION__, ret);
+ return ret;
}
static inline void
video_device_remove_file(struct video_device *vfd,
@@ -390,6 +384,8 @@ video_device_remove_file(struct video_device *vfd,
}
#endif
+#endif /* HAVE_V4L1 */
+
#ifdef OBSOLETE_OWNER /* to be removed soon */
/* helper functions to access driver private data. */
static inline void *video_get_drvdata(struct video_device *dev)
@@ -401,10 +397,14 @@ static inline void video_set_drvdata(struct video_device *dev, void *data)
{
dev->priv = data;
}
+
#endif
+#ifdef OBSOLETE_DEVDATA /* to be removed soon */
+/* Obsolete stuff - Still needed for radio devices and obsolete drivers */
+extern struct video_device* video_devdata(struct file*);
extern int video_exclusive_open(struct inode *inode, struct file *file);
extern int video_exclusive_release(struct inode *inode, struct file *file);
-#endif /* HAVE_V4L1 */
+#endif
#endif /* _V4L2_DEV_H */