diff options
author | Shinya Kuribayashi <shinya.kuribayashi@necel.com> | 2009-11-06 21:50:02 +0900 |
---|---|---|
committer | Ben Dooks <ben-linux@fluff.org> | 2009-12-09 00:19:12 +0000 |
commit | 52d7e430cff3f076d5ae5587e94f2e9b832b85d2 (patch) | |
tree | ceac1b806a2e0b6e45aa58875ad88e2ca3adc89a /drivers/i2c | |
parent | ae72222d03fea3ff561e2a3aee483ef7bd1a2bbb (diff) |
i2c-designware: i2c_dw_func: Set I2C_FUNC_SMBUS_foo bits
Set proper I2C_FUNC_SMBUS_* bits so that the driver could be used with
some utilities requiring SMBus functionalities, such as i2c-tools.
Note that DW I2C core doesn't support I2C_FUNC_SMBUS_QUICK, as it's not
capable of zero-length data transactions.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Diffstat (limited to 'drivers/i2c')
-rw-r--r-- | drivers/i2c/busses/i2c-designware.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/i2c/busses/i2c-designware.c b/drivers/i2c/busses/i2c-designware.c index c3702a8647c..5ba7e55eb7f 100644 --- a/drivers/i2c/busses/i2c-designware.c +++ b/drivers/i2c/busses/i2c-designware.c @@ -528,7 +528,12 @@ done: static u32 i2c_dw_func(struct i2c_adapter *adap) { - return I2C_FUNC_I2C | I2C_FUNC_10BIT_ADDR; + return I2C_FUNC_I2C | + I2C_FUNC_10BIT_ADDR | + I2C_FUNC_SMBUS_BYTE | + I2C_FUNC_SMBUS_BYTE_DATA | + I2C_FUNC_SMBUS_WORD_DATA | + I2C_FUNC_SMBUS_I2C_BLOCK; } static u32 i2c_dw_read_clear_intrbits(struct dw_i2c_dev *dev) |