diff options
-rw-r--r-- | drivers/i2c/i2c-core.c | 4 | ||||
-rw-r--r-- | include/linux/i2c.h | 7 |
2 files changed, 7 insertions, 4 deletions
diff --git a/drivers/i2c/i2c-core.c b/drivers/i2c/i2c-core.c index 910a62de190d..06b4b9e1a23e 100644 --- a/drivers/i2c/i2c-core.c +++ b/drivers/i2c/i2c-core.c | |||
@@ -226,7 +226,9 @@ i2c_new_device(struct i2c_adapter *adap, struct i2c_board_info const *info) | |||
226 | client->adapter = adap; | 226 | client->adapter = adap; |
227 | 227 | ||
228 | client->dev.platform_data = info->platform_data; | 228 | client->dev.platform_data = info->platform_data; |
229 | client->flags = info->flags; | 229 | device_init_wakeup(&client->dev, info->flags & I2C_CLIENT_WAKE); |
230 | |||
231 | client->flags = info->flags & ~I2C_CLIENT_WAKE; | ||
230 | client->addr = info->addr; | 232 | client->addr = info->addr; |
231 | client->irq = info->irq; | 233 | client->irq = info->irq; |
232 | 234 | ||
diff --git a/include/linux/i2c.h b/include/linux/i2c.h index 2a32f2fd940d..e4793feac2bb 100644 --- a/include/linux/i2c.h +++ b/include/linux/i2c.h | |||
@@ -342,9 +342,10 @@ static inline void i2c_set_adapdata (struct i2c_adapter *dev, void *data) | |||
342 | } | 342 | } |
343 | 343 | ||
344 | /*flags for the client struct: */ | 344 | /*flags for the client struct: */ |
345 | #define I2C_CLIENT_PEC 0x04 /* Use Packet Error Checking */ | 345 | #define I2C_CLIENT_PEC 0x04 /* Use Packet Error Checking */ |
346 | #define I2C_CLIENT_TEN 0x10 /* we have a ten bit chip address */ | 346 | #define I2C_CLIENT_TEN 0x10 /* we have a ten bit chip address */ |
347 | /* Must equal I2C_M_TEN below */ | 347 | /* Must equal I2C_M_TEN below */ |
348 | #define I2C_CLIENT_WAKE 0x80 /* for board_info; true iff can wake */ | ||
348 | 349 | ||
349 | /* i2c adapter classes (bitmask) */ | 350 | /* i2c adapter classes (bitmask) */ |
350 | #define I2C_CLASS_HWMON (1<<0) /* lm_sensors, ... */ | 351 | #define I2C_CLASS_HWMON (1<<0) /* lm_sensors, ... */ |