Skip to content

Commit

Permalink
I2C: S3C2410: Fixup error codes returned rom a transfer.
Browse files Browse the repository at this point in the history
The driver should be returning -ENXIO for transfers that do not
pass the initial address byte stage.

Note, also small tidyups to the driver comments in the area.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
  • Loading branch information
Ben Dooks committed Jul 1, 2008
1 parent 2709781 commit 63f5c28
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions drivers/i2c/busses/i2c-s3c2410.c
Original file line number Diff line number Diff line change
Expand Up @@ -290,12 +290,12 @@ static int i2s_s3c_irq_nextbyte(struct s3c24xx_i2c *i2c, unsigned long iicstat)
* bus, or started a new i2c message
*/

if (iicstat & S3C2410_IICSTAT_LASTBIT &&
if (iicstat & S3C2410_IICSTAT_LASTBIT &&
!(i2c->msg->flags & I2C_M_IGNORE_NAK)) {
/* ack was not received... */

dev_dbg(i2c->dev, "ack was not received\n");
s3c24xx_i2c_stop(i2c, -EREMOTEIO);
s3c24xx_i2c_stop(i2c, -ENXIO);
goto out_ack;
}

Expand All @@ -305,7 +305,7 @@ static int i2s_s3c_irq_nextbyte(struct s3c24xx_i2c *i2c, unsigned long iicstat)
i2c->state = STATE_WRITE;

/* terminate the transfer if there is nothing to do
* (used by the i2c probe to find devices */
* as this is used by the i2c probe to find devices. */

if (is_lastmsg(i2c) && i2c->msg->len == 0) {
s3c24xx_i2c_stop(i2c, 0);
Expand Down

0 comments on commit 63f5c28

Please sign in to comment.