static int i2c_reset(struct saa7134_dev *dev) { enum i2c_status status; int count; d2printk(KERN_DEBUG "%s: i2c reset\n",dev->name); status = i2c_get_status(dev); if (!i2c_is_error(status)) return TRUE; i2c_set_status(dev,status); for (count = 0; count < I2C_WAIT_RETRY; count++) { status = i2c_get_status(dev); if (!i2c_is_error(status)) break; udelay(I2C_WAIT_DELAY); } if (I2C_WAIT_RETRY == count) return FALSE; if (!i2c_is_idle(status)) return FALSE; i2c_set_attr(dev,NOP); return TRUE; }
static int i2c_reset(struct saa7134_dev *dev) { enum i2c_status status; int count; i2c_dbg(2, "i2c reset\n"); status = i2c_get_status(dev); if (!i2c_is_error(status)) return true; i2c_set_status(dev,status); for (count = 0; count < I2C_WAIT_RETRY; count++) { status = i2c_get_status(dev); if (!i2c_is_error(status)) break; udelay(I2C_WAIT_DELAY); } if (I2C_WAIT_RETRY == count) return false; if (!i2c_is_idle(status)) return false; i2c_set_attr(dev,NOP); return true; }