|
@@ -423,13 +423,13 @@ static int
|
|
|
mv64xxx_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], int num)
|
|
|
{
|
|
|
struct mv64xxx_i2c_data *drv_data = i2c_get_adapdata(adap);
|
|
|
- int i, rc = 0;
|
|
|
+ int i, rc;
|
|
|
|
|
|
for (i=0; i<num; i++)
|
|
|
- if ((rc = mv64xxx_i2c_execute_msg(drv_data, &msgs[i])) != 0)
|
|
|
- break;
|
|
|
+ if ((rc = mv64xxx_i2c_execute_msg(drv_data, &msgs[i])) < 0)
|
|
|
+ return rc;
|
|
|
|
|
|
- return rc;
|
|
|
+ return num;
|
|
|
}
|
|
|
|
|
|
static struct i2c_algorithm mv64xxx_i2c_algo = {
|