mtk_i2c_writew
mtk_i2c_writew(i2c, 0x00, OFFSET_DEBUGCTRL);
mtk_i2c_writew(i2c, I2C_HANDSHAKE_RST, OFFSET_SOFTRESET);
mtk_i2c_writew(i2c, I2C_CHN_CLR_FLAG, OFFSET_SOFTRESET);
mtk_i2c_writew(i2c, I2C_RELIABILITY | I2C_DMAACK_ENABLE,
mtk_i2c_writew(i2c, control_reg, OFFSET_CONTROL);
mtk_i2c_writew(i2c, addr_reg, OFFSET_SLAVE_ADDR);
mtk_i2c_writew(i2c, restart_flag | I2C_HS_NACKERR | I2C_ACKERR |
mtk_i2c_writew(i2c, I2C_FIFO_ADDR_CLR, OFFSET_FIFO_ADDR_CLR);
mtk_i2c_writew(i2c, restart_flag | I2C_HS_NACKERR | I2C_ACKERR |
mtk_i2c_writew(i2c, msgs->len, OFFSET_TRANSFER_LEN);
mtk_i2c_writew(i2c, (msgs + 1)->len,
mtk_i2c_writew(i2c, msgs->len | ((msgs + 1)->len) << 8,
mtk_i2c_writew(i2c, I2C_WRRD_TRANAC_VALUE, OFFSET_TRANSAC_LEN);
mtk_i2c_writew(i2c, msgs->len, OFFSET_TRANSFER_LEN);
mtk_i2c_writew(i2c, num, OFFSET_TRANSAC_LEN);
mtk_i2c_writew(i2c, start_reg, OFFSET_START);
mtk_i2c_writew(i2c, ~(restart_flag | I2C_HS_NACKERR | I2C_ACKERR |
mtk_i2c_writew(i2c, intr_stat, OFFSET_INTR_STAT);
mtk_i2c_writew(i2c, I2C_RS_MUL_CNFG | I2C_RS_MUL_TRIG |
mtk_i2c_writew(i2c, I2C_CHN_CLR_FLAG, OFFSET_START);
mtk_i2c_writew(i2c, intr_stat_reg, OFFSET_INTR_STAT);
mtk_i2c_writew(i2c, I2C_HANDSHAKE_RST | I2C_SOFT_RST,
mtk_i2c_writew(i2c, I2C_CHN_CLR_FLAG, OFFSET_SOFTRESET);
mtk_i2c_writew(i2c, I2C_SOFT_RST, OFFSET_SOFTRESET);
mtk_i2c_writew(i2c, I2C_IO_CONFIG_PUSH_PULL, OFFSET_IO_CONFIG);
mtk_i2c_writew(i2c, I2C_IO_CONFIG_OPEN_DRAIN, OFFSET_IO_CONFIG);
mtk_i2c_writew(i2c, I2C_DCM_DISABLE, OFFSET_DCM_EN);
mtk_i2c_writew(i2c, i2c->timing_reg, OFFSET_TIMING);
mtk_i2c_writew(i2c, i2c->high_speed_reg, OFFSET_HS);
mtk_i2c_writew(i2c, i2c->ltiming_reg, OFFSET_LTIMING);
mtk_i2c_writew(i2c, i2c->ac_timing.inter_clk_div,
mtk_i2c_writew(i2c, I2C_SCL_MIS_COMP_VALUE,
mtk_i2c_writew(i2c, i2c->ac_timing.sda_timing,
mtk_i2c_writew(i2c, i2c->ac_timing.htiming,
mtk_i2c_writew(i2c, i2c->ac_timing.hs, OFFSET_HS);
mtk_i2c_writew(i2c, i2c->ac_timing.ltiming,
mtk_i2c_writew(i2c, i2c->ac_timing.scl_hl_ratio,
mtk_i2c_writew(i2c, i2c->ac_timing.hs_scl_hl_ratio,
mtk_i2c_writew(i2c, i2c->ac_timing.sta_stop,
mtk_i2c_writew(i2c, i2c->ac_timing.hs_sta_stop,
mtk_i2c_writew(i2c, ext_conf_val, OFFSET_EXT_CONF);
mtk_i2c_writew(i2c, I2C_CONTROL_WRAPPER, OFFSET_PATH_DIR);
mtk_i2c_writew(i2c, control_reg, OFFSET_CONTROL);
mtk_i2c_writew(i2c, I2C_DELAY_LEN, OFFSET_DELAY_LEN);