i2c: i2c-s3c2410: Add a cpu_relax() to busy wait for bus idle
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Fri, 9 Dec 2011 12:55:03 +0000 (20:55 +0800)
committerBen Dooks <ben-linux@fluff.org>
Sun, 18 Dec 2011 11:44:26 +0000 (11:44 +0000)
Be a bit more friendly.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
drivers/i2c/busses/i2c-s3c2410.c

index 2754cef..37b2de1 100644 (file)
@@ -534,6 +534,7 @@ static int s3c24xx_i2c_doxfer(struct s3c24xx_i2c *i2c,
 
        /* first, try busy waiting briefly */
        do {
 
        /* first, try busy waiting briefly */
        do {
+               cpu_relax();
                iicstat = readl(i2c->regs + S3C2410_IICSTAT);
        } while ((iicstat & S3C2410_IICSTAT_START) && --spins);
 
                iicstat = readl(i2c->regs + S3C2410_IICSTAT);
        } while ((iicstat & S3C2410_IICSTAT_START) && --spins);