On Wed, Jun 29, 2022 at 08:52:27AM +0200, Geert Uytterhoeven wrote: > On Tue, Jun 28, 2022 at 11:08 PM Andy Shevchenko > <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote: > > On Tue, Jun 28, 2022 at 08:45:26PM +0100, Phil Edworthy wrote: ... > > > +static int rzv2m_i2c_send(struct rzv2m_i2c_priv *priv, struct i2c_msg *msg, > > > + unsigned int *count) > > > +{ > > > + unsigned int i; > > > + int ret = 0; > > > > Redundant assignment, you may return 0 directly. > > Can you prove msg->len is never zero, and the loop below is always > executed at least once? I don't see how this is related. The ret is used only in the loop body, return 0; outside will suffice. No? > The driver does set I2C_AQ_NO_ZERO_LEN, but I don't think the static > checkers know ;-) > > > > > > + for (i = 0; i < msg->len; i++) { > > > + ret = rzv2m_i2c_write_with_ack(priv, msg->buf[i]); > > > + if (ret < 0) > > > + return ret; > > > + } > > > + *count = i; > > > + > > > + return ret; > > > +} -- With Best Regards, Andy Shevchenko