I2C_CTL
u32 tmp = readl(i2c_dev->base + I2C_CTL);
writel(tmp & ~STP_EN, i2c_dev->base + I2C_CTL);
writel(tmp | STP_EN, i2c_dev->base + I2C_CTL);
u32 tmp = readl(i2c_dev->base + I2C_CTL);
writel(tmp & ~I2C_START, i2c_dev->base + I2C_CTL);
u32 tmp = readl(i2c_dev->base + I2C_CTL);
writel(tmp, i2c_dev->base + I2C_CTL);
u32 tmp = readl(i2c_dev->base + I2C_CTL);
writel(tmp, i2c_dev->base + I2C_CTL);
u32 tmp = readl(i2c_dev->base + I2C_CTL);
writel(tmp, i2c_dev->base + I2C_CTL);
u32 tmp = readl(i2c_dev->base + I2C_CTL);
writel(tmp, i2c_dev->base + I2C_CTL);
u32 tmp = readl(i2c_dev->base + I2C_CTL);
writel(tmp | I2C_START, i2c_dev->base + I2C_CTL);
u32 cmd = readl(i2c_dev->base + I2C_CTL) & ~I2C_MODE;
writel(cmd | rw << 3, i2c_dev->base + I2C_CTL);
writel(tmp, i2c_dev->base + I2C_CTL);
tmp = readl(i2c_dev->base + I2C_CTL);
writel(tmp | I2C_EN | I2C_INT_EN, i2c_dev->base + I2C_CTL);