i2c: Bus drivers don't have to support I2C_M_REV_DIR_ADDR
authorJean Delvare <khali@linux-fr.org>
Sun, 6 Dec 2009 16:06:22 +0000 (17:06 +0100)
committerJean Delvare <khali@linux-fr.org>
Sun, 6 Dec 2009 16:06:22 +0000 (17:06 +0100)
I2C bus drivers don't have to support I2C_M_REV_DIR_ADDR. It is a
deviation from the I2C specification, which only makes sense to
implement when really needed.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Ben Dooks <ben-linux@fluff.org>
drivers/i2c/busses/i2c-iop3xx.c
drivers/i2c/busses/i2c-mv64xxx.c
drivers/i2c/busses/i2c-powermac.c

index a75c75e..5901707 100644 (file)
@@ -56,12 +56,6 @@ iic_cook_addr(struct i2c_msg *msg)
        if (msg->flags & I2C_M_RD)
                addr |= 1;
 
-       /*
-        * Read or Write?
-        */
-       if (msg->flags & I2C_M_REV_DIR_ADDR)
-               addr ^= 1;
-
        return addr;   
 }
 
index bbab0e1..ed387ff 100644 (file)
@@ -338,9 +338,6 @@ mv64xxx_i2c_prepare_for_io(struct mv64xxx_i2c_data *drv_data,
        if (msg->flags & I2C_M_RD)
                dir = 1;
 
-       if (msg->flags & I2C_M_REV_DIR_ADDR)
-               dir ^= 1;
-
        if (msg->flags & I2C_M_TEN) {
                drv_data->addr1 = 0xf0 | (((u32)msg->addr & 0x300) >> 7) | dir;
                drv_data->addr2 = (u32)msg->addr & 0xff;
index 02b0241..1c440a7 100644 (file)
@@ -162,8 +162,6 @@ static int i2c_powermac_master_xfer(        struct i2c_adapter *adap,
                return -EINVAL;
        read = (msgs->flags & I2C_M_RD) != 0;
        addrdir = (msgs->addr << 1) | read;
-       if (msgs->flags & I2C_M_REV_DIR_ADDR)
-               addrdir ^= 1;
 
        rc = pmac_i2c_open(bus, 0);
        if (rc) {