Browse Source

i2c: lpc32xx: fix write timeout

Fix a condition that generate watchdog timeout inside "lpc32xx_i2c_write" when parameters alen = 0 and len = 0.

Signed-off-by: Sylvain Lemieux <slemieux@tycoint.com>
Sylvain Lemieux 9 years ago
parent
commit
58243001a9
1 changed files with 2 additions and 0 deletions
  1. 2 0
      drivers/i2c/lpc32xx_i2c.c

+ 2 - 0
drivers/i2c/lpc32xx_i2c.c

@@ -200,6 +200,8 @@ static int lpc32xx_i2c_write(struct i2c_adapter *adap, u8 dev, uint addr,
 	if (alen | length)
 		/* Address slave in write mode */
 		writel((dev<<1) | LPC32XX_I2C_TX_START, &i2c->tx);
+	else
+		return 0;
 	/* write address bytes */
 	while (alen) {
 		/* wait for transmit fifo not full */