From: Shinya Kuribayashi Date: Fri, 6 Nov 2009 12:50:02 +0000 (+0900) Subject: i2c-designware: i2c_dw_func: Set I2C_FUNC_SMBUS_foo bits X-Git-Tag: v2.6.33-rc1~339^2~10 X-Git-Url: http://ftp.safe.ca/?a=commitdiff_plain;h=52d7e430cff3f076d5ae5587e94f2e9b832b85d2;p=safe%2Fjmp%2Flinux-2.6 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 Signed-off-by: Ben Dooks --- diff --git a/drivers/i2c/busses/i2c-designware.c b/drivers/i2c/busses/i2c-designware.c index c3702a8..5ba7e55 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)