RK_I2C_WRITE
RK_I2C_WRITE(sc, RK_I2C_CLKDIV, clkdiv);
RK_I2C_WRITE(sc, RK_I2C_CON, 0);
RK_I2C_WRITE(sc, RK_I2C_TXDATA_BASE + i, buf32);
RK_I2C_WRITE(sc, RK_I2C_IEN, RK_I2C_IEN_STOPIEN);
RK_I2C_WRITE(sc, RK_I2C_CON, reg);
RK_I2C_WRITE(sc, RK_I2C_CON, reg);
RK_I2C_WRITE(sc, RK_I2C_IPD, sc->ipd);
RK_I2C_WRITE(sc, RK_I2C_CON, reg);
RK_I2C_WRITE(sc, RK_I2C_IEN, RK_I2C_IEN_MBRFIEN |
RK_I2C_WRITE(sc, RK_I2C_CON, reg);
RK_I2C_WRITE(sc, RK_I2C_MRXCNT, transfer_len);
RK_I2C_WRITE(sc, RK_I2C_IEN, RK_I2C_IEN_MBTFIEN |
RK_I2C_WRITE(sc, RK_I2C_MTXCNT, transfer_len);
RK_I2C_WRITE(sc, RK_I2C_CON, reg);
RK_I2C_WRITE(sc, RK_I2C_MRXCNT, transfer_len);
RK_I2C_WRITE(sc, RK_I2C_IEN, RK_I2C_IEN_MBTFIEN |
RK_I2C_WRITE(sc, RK_I2C_MTXCNT, transfer_len);
RK_I2C_WRITE(sc, RK_I2C_CON, reg);
RK_I2C_WRITE(sc, RK_I2C_IEN, RK_I2C_IEN_STARTIEN);
RK_I2C_WRITE(sc, RK_I2C_MRXCNT, sc->msg->len);
RK_I2C_WRITE(sc, RK_I2C_IEN, RK_I2C_IEN_MBRFIEN |
RK_I2C_WRITE(sc, RK_I2C_MTXCNT, len);
RK_I2C_WRITE(sc, RK_I2C_IEN, RK_I2C_IEN_MBTFIEN |
RK_I2C_WRITE(sc, RK_I2C_CON, reg);
RK_I2C_WRITE(sc, RK_I2C_CON, 0);
RK_I2C_WRITE(sc, RK_I2C_IEN, 0);
RK_I2C_WRITE(sc, RK_I2C_IPD, RK_I2C_IPD_ALL);
RK_I2C_WRITE(sc, RK_I2C_MRXADDR, reg);
RK_I2C_WRITE(sc, RK_I2C_MRXRADDR, reg);
RK_I2C_WRITE(sc, RK_I2C_MRXADDR, reg);
RK_I2C_WRITE(sc, RK_I2C_MRXRADDR, 0);
RK_I2C_WRITE(sc, RK_I2C_CON, 0);
RK_I2C_WRITE(sc, RK_I2C_IEN, 0);