|
@@ -282,7 +282,6 @@ static int highlander_i2c_smbus_xfer(struct i2c_adapter *adap, u16 addr,
|
|
|
union i2c_smbus_data *data)
|
|
|
{
|
|
|
struct highlander_i2c_dev *dev = i2c_get_adapdata(adap);
|
|
|
- int read = read_write & I2C_SMBUS_READ;
|
|
|
u16 tmp;
|
|
|
|
|
|
init_completion(&dev->cmd_complete);
|
|
@@ -337,11 +336,11 @@ static int highlander_i2c_smbus_xfer(struct i2c_adapter *adap, u16 addr,
|
|
|
highlander_i2c_done(dev);
|
|
|
|
|
|
/* Set slave address */
|
|
|
- iowrite16((addr << 1) | read, dev->base + SMSMADR);
|
|
|
+ iowrite16((addr << 1) | read_write, dev->base + SMSMADR);
|
|
|
|
|
|
highlander_i2c_command(dev, command, dev->buf_len);
|
|
|
|
|
|
- if (read)
|
|
|
+ if (read_write == I2C_SMBUS_READ)
|
|
|
return highlander_i2c_read(dev);
|
|
|
else
|
|
|
return highlander_i2c_write(dev);
|