Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6
* 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6: i2c: Convert most new-style drivers to use module aliasing i2c: Add support for device alias names i2c-amd756-s4882: Fix an error path i2c: Drop unused RTC driver IDs i2c/tps65010: Add missing intialization of client data i2c-sis5595: Minor cleanups in sis5595_access i2c-piix4: Minor cleanups i2c: Spelling fix (successful) i2c-stub: No newline in parameter description
This commit is contained in:
@@ -79,12 +79,9 @@
|
||||
#define I2C_DRIVERID_UPD64031A 79 /* upd64031a video processor */
|
||||
#define I2C_DRIVERID_SAA717X 80 /* saa717x video encoder */
|
||||
#define I2C_DRIVERID_DS1672 81 /* Dallas/Maxim DS1672 RTC */
|
||||
#define I2C_DRIVERID_X1205 82 /* Xicor/Intersil X1205 RTC */
|
||||
#define I2C_DRIVERID_PCF8563 83 /* Philips PCF8563 RTC */
|
||||
#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_WM8731 89 /* Wolfson WM8731 audio codec */
|
||||
#define I2C_DRIVERID_WM8750 90 /* Wolfson WM8750 audio codec */
|
||||
#define I2C_DRIVERID_WM8753 91 /* Wolfson WM8753 audio codec */
|
||||
|
||||
+8
-9
@@ -126,7 +126,7 @@ struct i2c_driver {
|
||||
* With the driver model, device enumeration is NEVER done by drivers;
|
||||
* it's done by infrastructure. (NEW STYLE DRIVERS ONLY)
|
||||
*/
|
||||
int (*probe)(struct i2c_client *);
|
||||
int (*probe)(struct i2c_client *, const struct i2c_device_id *);
|
||||
int (*remove)(struct i2c_client *);
|
||||
|
||||
/* driver model interfaces that don't relate to enumeration */
|
||||
@@ -140,11 +140,10 @@ struct i2c_driver {
|
||||
int (*command)(struct i2c_client *client,unsigned int cmd, void *arg);
|
||||
|
||||
struct device_driver driver;
|
||||
const struct i2c_device_id *id_table;
|
||||
};
|
||||
#define to_i2c_driver(d) container_of(d, struct i2c_driver, driver)
|
||||
|
||||
#define I2C_NAME_SIZE 20
|
||||
|
||||
/**
|
||||
* struct i2c_client - represent an I2C slave device
|
||||
* @flags: I2C_CLIENT_TEN indicates the device uses a ten bit chip address;
|
||||
@@ -230,17 +229,17 @@ struct i2c_board_info {
|
||||
};
|
||||
|
||||
/**
|
||||
* I2C_BOARD_INFO - macro used to list an i2c device and its driver
|
||||
* @driver: identifies the driver to use with the device
|
||||
* I2C_BOARD_INFO - macro used to list an i2c device and its address
|
||||
* @dev_type: identifies the device type
|
||||
* @dev_addr: the device's address on the bus.
|
||||
*
|
||||
* This macro initializes essential fields of a struct i2c_board_info,
|
||||
* declaring what has been provided on a particular board. Optional
|
||||
* fields (such as the chip type, its associated irq, or device-specific
|
||||
* platform_data) are provided using conventional syntax.
|
||||
* fields (such as associated irq, or device-specific platform_data)
|
||||
* are provided using conventional syntax.
|
||||
*/
|
||||
#define I2C_BOARD_INFO(driver,dev_addr) \
|
||||
.driver_name = (driver), .addr = (dev_addr)
|
||||
#define I2C_BOARD_INFO(dev_type,dev_addr) \
|
||||
.type = (dev_type), .addr = (dev_addr)
|
||||
|
||||
|
||||
/* Add-on boards should register/unregister their devices; e.g. a board
|
||||
|
||||
@@ -368,4 +368,15 @@ struct virtio_device_id {
|
||||
};
|
||||
#define VIRTIO_DEV_ANY_ID 0xffffffff
|
||||
|
||||
/* i2c */
|
||||
|
||||
#define I2C_NAME_SIZE 20
|
||||
#define I2C_MODULE_PREFIX "i2c:"
|
||||
|
||||
struct i2c_device_id {
|
||||
char name[I2C_NAME_SIZE];
|
||||
kernel_ulong_t driver_data; /* Data private to the driver */
|
||||
};
|
||||
|
||||
|
||||
#endif /* LINUX_MOD_DEVICETABLE_H */
|
||||
|
||||
Reference in New Issue
Block a user