|
@@ -330,6 +330,11 @@ static int tegra_i2c_init(struct tegra_i2c_dev *i2c_dev)
|
|
|
i2c_writel(i2c_dev, 0, I2C_INT_MASK);
|
|
|
clk_set_rate(i2c_dev->clk, i2c_dev->bus_clk_rate * 8);
|
|
|
|
|
|
+ if (!i2c_dev->is_dvc) {
|
|
|
+ u32 sl_cfg = i2c_readl(i2c_dev, I2C_SL_CNFG);
|
|
|
+ i2c_writel(i2c_dev, sl_cfg | I2C_SL_CNFG_NEWSL, I2C_SL_CNFG);
|
|
|
+ }
|
|
|
+
|
|
|
val = 7 << I2C_FIFO_CONTROL_TX_TRIG_SHIFT |
|
|
|
0 << I2C_FIFO_CONTROL_RX_TRIG_SHIFT;
|
|
|
i2c_writel(i2c_dev, val, I2C_FIFO_CONTROL);
|