V4L/DVB (6214): usbvision: Don't support I2C_M_REV_DIR_ADDR
authorJean Delvare <khali@linux-fr.org>
Sun, 9 Sep 2007 09:17:44 +0000 (06:17 -0300)
committerMauro Carvalho Chehab <mchehab@infradead.org>
Wed, 10 Oct 2007 01:14:35 +0000 (22:14 -0300)
I2C adapters should only support I2C_M_REV_DIR_ADDR if they really have
to (i.e. if they are connected to a broken I2C device which needs this
deviation from the standard I2C protocol.) As no media chip driver
uses I2C_M_REV_DIR_ADDR, I don't think that the usbvision driver needs
to support it.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Thierry Merle <thierry.merle@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
drivers/media/video/usbvision/usbvision-i2c.c

index 025be55..c66aef6 100644 (file)
@@ -134,8 +134,6 @@ static inline int usb_find_address(struct i2c_adapter *i2c_adap,
                addr = (msg->addr << 1);
                if (flags & I2C_M_RD)
                        addr |= 1;
-               if (flags & I2C_M_REV_DIR_ADDR)
-                       addr ^= 1;
 
                add[0] = addr;
                if (flags & I2C_M_RD)
@@ -192,7 +190,7 @@ static int algo_control(struct i2c_adapter *adapter, unsigned int cmd, unsigned
 
 static u32 functionality(struct i2c_adapter *adap)
 {
-       return I2C_FUNC_SMBUS_EMUL | I2C_FUNC_10BIT_ADDR | I2C_FUNC_PROTOCOL_MANGLING;
+       return I2C_FUNC_SMBUS_EMUL | I2C_FUNC_10BIT_ADDR;
 }