diff options
author | Mauro Carvalho Chehab <mchehab@infradead.org> | 2008-05-02 00:33:59 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2008-05-02 00:33:59 -0300 |
commit | 21caee2a17a4430d00a96e72f6fcb406ae40295f (patch) | |
tree | ba1585accfd49ac2001493d605ab61052f0501b2 /linux/include | |
parent | ade6577c13a32eaef761a14550dd18af91b8ace3 (diff) | |
download | mediapointer-dvb-s2-21caee2a17a4430d00a96e72f6fcb406ae40295f.tar.gz mediapointer-dvb-s2-21caee2a17a4430d00a96e72f6fcb406ae40295f.tar.bz2 |
backport commit d2653e92732bd3911feff6bee5e23dbf959381db
From: Mauro Carvalho Chehab <mchehab@infradead.org>
kernel-sync:
Author: Jean Delvare <khali@linux-fr.org>
Date: Tue Apr 29 23:11:39 2008 +0200
i2c: Add support for device alias names
Based on earlier work by Jon Smirl and Jochen Friedrich.
This patch allows new-style i2c chip drivers to have alias names using
the official kernel aliasing system and MODULE_DEVICE_TABLE(). At this
point, the old i2c driver binding scheme (driver_name/type) is still
supported.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'linux/include')
-rw-r--r-- | linux/include/media/v4l2-common.h | 4 | ||||
-rw-r--r-- | linux/include/media/v4l2-i2c-drv-legacy.h | 2 | ||||
-rw-r--r-- | linux/include/media/v4l2-i2c-drv.h | 2 |
3 files changed, 5 insertions, 3 deletions
diff --git a/linux/include/media/v4l2-common.h b/linux/include/media/v4l2-common.h index 72ed0ddb2..47cc48ea9 100644 --- a/linux/include/media/v4l2-common.h +++ b/linux/include/media/v4l2-common.h @@ -113,9 +113,11 @@ int v4l2_chip_match_host(u32 id_type, u32 chip_id); struct i2c_driver; struct i2c_adapter; struct i2c_client; +struct i2c_device_id; int v4l2_i2c_attach(struct i2c_adapter *adapter, int address, struct i2c_driver *driver, - const char *name, int (*probe)(struct i2c_client *)); + const char *name, + int (*probe)(struct i2c_client *, const struct i2c_device_id *)); /* ------------------------------------------------------------------------- */ diff --git a/linux/include/media/v4l2-i2c-drv-legacy.h b/linux/include/media/v4l2-i2c-drv-legacy.h index 10c3231f0..39e8f3b1b 100644 --- a/linux/include/media/v4l2-i2c-drv-legacy.h +++ b/linux/include/media/v4l2-i2c-drv-legacy.h @@ -25,7 +25,7 @@ struct v4l2_i2c_driver_data { const char * const name; int driverid; int (*command)(struct i2c_client *client, unsigned int cmd, void *arg); - int (*probe)(struct i2c_client *client); + int (*probe)(struct i2c_client *client, const struct i2c_device_id *id); int (*remove)(struct i2c_client *client); int (*suspend)(struct i2c_client *client, pm_message_t state); int (*resume)(struct i2c_client *client); diff --git a/linux/include/media/v4l2-i2c-drv.h b/linux/include/media/v4l2-i2c-drv.h index 8b5d74912..ed1a752bd 100644 --- a/linux/include/media/v4l2-i2c-drv.h +++ b/linux/include/media/v4l2-i2c-drv.h @@ -30,7 +30,7 @@ struct v4l2_i2c_driver_data { const char * const name; int driverid; int (*command)(struct i2c_client *client, unsigned int cmd, void *arg); - int (*probe)(struct i2c_client *client); + int (*probe)(struct i2c_client *client, const struct i2c_device_id *id); int (*remove)(struct i2c_client *client); int (*suspend)(struct i2c_client *client, pm_message_t state); int (*resume)(struct i2c_client *client); |