I2C_CR
i2c_clr_bit(priv->virtbase + I2C_CR, I2C_CR_PE);
writel((I2C_CR_FTX | I2C_CR_FRX), priv->virtbase + I2C_CR);
if ((readl(priv->virtbase + I2C_CR) &
i2c_clr_bit(priv->virtbase + I2C_CR, I2C_CR_PE);
writel(0x0, priv->virtbase + I2C_CR);
writel(FIELD_PREP(I2C_CR_SM, priv->sm), priv->virtbase + I2C_CR);
writel(readl(priv->virtbase + I2C_CR) | DEFAULT_I2C_REG_CR,
priv->virtbase + I2C_CR);
i2c_set_bit(priv->virtbase + I2C_CR, I2C_CR_PE);
writel(readl(priv->virtbase + I2C_CR) | DEFAULT_I2C_REG_CR,
priv->virtbase + I2C_CR);
i2c_set_bit(priv->virtbase + I2C_CR, I2C_CR_PE);