On 03/16, Dan Carpenter wrote: > You're right that there is a bug but this is not the right fix. > > The ade7854_i2c_write_reg_32() function returns 6 on success which makes > no sense. It should be zero or negative error codes. All the write_reg > functions in drivers/staging/iio/meter/ade7854-i2c.c have the same bug. > > Please, fix that instead and leave ade7854_initial_setup() alone. I see. However, I think the following steps could be better: 1) Update ade7854_i2c_write_reg() in order to return 0 The primary objective of this patchset it removes the duplications related to write_reg_* and read_reg_*. As a result, in the first patch create the function ade7854_i2c_write_reg(). I will add the following code to fix the problem that we are discussing: ade7854_i2c_write_reg() { ... ret = i2c_master_send(st->i2c, st->tx, count); ... return ret < 0 ? ret : 0; } With this, I do not need to touch any of the ade7854_i2c_write_reg_(8|16|24|32) functions. 2) Drop out the last patch from the patchset Is that ok? If so, I will send the V2 today. > regards, > dan carpenter > _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel