X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=drivers%2Fi2c%2Frcar_i2c.c;h=90ad116a982e7c10618280b33b47a8057eab9445;hb=a538ae997ae4cb375ba5362b50ba3f5b35f9519b;hp=ba2cadb17ecccb009bc5506f8f1a107745babcf8;hpb=85b8c5c4bf80025de4632ae6c9a8a606e51508a4;p=u-boot diff --git a/drivers/i2c/rcar_i2c.c b/drivers/i2c/rcar_i2c.c index ba2cadb17e..90ad116a98 100644 --- a/drivers/i2c/rcar_i2c.c +++ b/drivers/i2c/rcar_i2c.c @@ -121,9 +121,11 @@ rcar_i2c_raw_read(struct rcar_i2c *dev, u8 chip, uint addr) writel((chip << 1) | 1, &dev->icmar); /* start master receive */ writel(MCR_MDBS | MCR_MIE | MCR_ESG, &dev->icmcr); + /* clear status */ + writel(0, &dev->icmsr); - while ((readl(&dev->icmsr) & (MSR_MAT | MSR_MDE)) - != (MSR_MAT | MSR_MDE)) + while ((readl(&dev->icmsr) & (MSR_MAT | MSR_MDR)) + != (MSR_MAT | MSR_MDR)) udelay(10); /* clear ESG */