aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/i2c.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/include/linux/i2c.h b/include/linux/i2c.h
index 7e00efd6a62f..82cf90945bb8 100644
--- a/include/linux/i2c.h
+++ b/include/linux/i2c.h
@@ -135,7 +135,8 @@ enum i2c_alert_protocol {
135 * struct i2c_driver - represent an I2C device driver 135 * struct i2c_driver - represent an I2C device driver
136 * @class: What kind of i2c device we instantiate (for detect) 136 * @class: What kind of i2c device we instantiate (for detect)
137 * @attach_adapter: Callback for bus addition (deprecated) 137 * @attach_adapter: Callback for bus addition (deprecated)
138 * @probe: Callback for device binding 138 * @probe: Callback for device binding - soon to be deprecated
139 * @probe_new: New callback for device binding
139 * @remove: Callback for device unbinding 140 * @remove: Callback for device unbinding
140 * @shutdown: Callback for device shutdown 141 * @shutdown: Callback for device shutdown
141 * @alert: Alert callback, for example for the SMBus alert protocol 142 * @alert: Alert callback, for example for the SMBus alert protocol
@@ -178,6 +179,11 @@ struct i2c_driver {
178 int (*probe)(struct i2c_client *, const struct i2c_device_id *); 179 int (*probe)(struct i2c_client *, const struct i2c_device_id *);
179 int (*remove)(struct i2c_client *); 180 int (*remove)(struct i2c_client *);
180 181
182 /* New driver model interface to aid the seamless removal of the
183 * current probe()'s, more commonly unused than used second parameter.
184 */
185 int (*probe_new)(struct i2c_client *);
186
181 /* driver model interfaces that don't relate to enumeration */ 187 /* driver model interfaces that don't relate to enumeration */
182 void (*shutdown)(struct i2c_client *); 188 void (*shutdown)(struct i2c_client *);
183 189