summaryrefslogtreecommitdiff
path: root/linux/include/media/v4l2-common.h
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil@xs4all.nl>2007-09-12 13:32:50 +0200
committerHans Verkuil <hverkuil@xs4all.nl>2007-09-12 13:32:50 +0200
commit30e50fe332679825e6f54936c7c5e97bf109584d (patch)
treedb84205596207a8503b4133d6bc75fbd30342b6c /linux/include/media/v4l2-common.h
parent55c585d89d06e29009f8bdc652c54e3de0993c4a (diff)
downloadmediapointer-dvb-s2-30e50fe332679825e6f54936c7c5e97bf109584d.tar.gz
mediapointer-dvb-s2-30e50fe332679825e6f54936c7c5e97bf109584d.tar.bz2
v4l2: add support for bus-based I2C drivers
From: Hans Verkuil <hverkuil@xs4all.nl> Two new headers were added: one for I2C drivers that are only used by V4L2 drivers converted to the new bus-based I2C API, and one that can be used by both converted and unconverted drivers (at the expense of some additional overhead). To support the legacy I2C API a helper function was added to v4l2-common.c. These headers take care of all the 'boilerplate' code that all V4L2 I2C drivers have in common and will automatically support the bus-based I2C API introduced in kernel 2.6.22. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org> --- linux/drivers/media/video/v4l2-common.c | 37 +++++ linux/include/media/v4l2-common.h | 11 + linux/include/media/v4l2-i2c-drv-legacy.h | 207 ++++++++++++++++++++++++++++++ linux/include/media/v4l2-i2c-drv.h | 199 ++++++++++++++++++++++++++++ 4 files changed, 454 insertions(+)
Diffstat (limited to 'linux/include/media/v4l2-common.h')
-rw-r--r--linux/include/media/v4l2-common.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/linux/include/media/v4l2-common.h b/linux/include/media/v4l2-common.h
index ee1265433..10fc32e16 100644
--- a/linux/include/media/v4l2-common.h
+++ b/linux/include/media/v4l2-common.h
@@ -113,6 +113,17 @@ int v4l2_chip_match_host(u32 id_type, u32 chip_id);
/* ------------------------------------------------------------------------- */
+/* Helper function for I2C legacy drivers */
+
+struct i2c_driver;
+struct i2c_adapter;
+struct i2c_client;
+
+int v4l2_i2c_attach(struct i2c_adapter *adapter, int address, struct i2c_driver *driver,
+ const char *name, int (*probe)(struct i2c_client *));
+
+/* ------------------------------------------------------------------------- */
+
/* Internal ioctls */
/* VIDIOC_INT_DECODE_VBI_LINE */