Lines Matching refs:msg

178 			struct i2c_msg *msg, uint32_t flags)  in mxs_i2c_dma_setup_xfer()  argument
183 if (msg->flags & I2C_M_RD) { in mxs_i2c_dma_setup_xfer()
185 i2c->addr_data = (msg->addr << 1) | I2C_SMBUS_READ; in mxs_i2c_dma_setup_xfer()
220 MXS_I2C_CTRL0_XFER_COUNT(msg->len); in mxs_i2c_dma_setup_xfer()
231 sg_init_one(&i2c->sg_io[1], msg->buf, msg->len); in mxs_i2c_dma_setup_xfer()
243 i2c->addr_data = (msg->addr << 1) | I2C_SMBUS_WRITE; in mxs_i2c_dma_setup_xfer()
251 MXS_I2C_CTRL0_XFER_COUNT(msg->len + 1); in mxs_i2c_dma_setup_xfer()
264 sg_set_buf(&i2c->sg_io[1], msg->buf, msg->len); in mxs_i2c_dma_setup_xfer()
371 struct i2c_msg *msg, uint32_t flags) in mxs_i2c_pio_setup_xfer() argument
374 uint32_t addr_data = msg->addr << 1; in mxs_i2c_pio_setup_xfer()
399 if (msg->flags & I2C_M_RD) { in mxs_i2c_pio_setup_xfer()
412 BUG_ON(msg->len > 4); in mxs_i2c_pio_setup_xfer()
430 MXS_I2C_CTRL0_XFER_COUNT(msg->len)); in mxs_i2c_pio_setup_xfer()
440 for (i = 0; i < msg->len; i++) { in mxs_i2c_pio_setup_xfer()
441 msg->buf[i] = data & 0xff; in mxs_i2c_pio_setup_xfer()
467 if (msg->len > 3) in mxs_i2c_pio_setup_xfer()
470 for (i = 0; i < msg->len; i++) { in mxs_i2c_pio_setup_xfer()
472 data |= (msg->buf[i] << 24); in mxs_i2c_pio_setup_xfer()
477 if (i + 1 == msg->len) { in mxs_i2c_pio_setup_xfer()
512 xlen, i, msg->len, in mxs_i2c_pio_setup_xfer()
564 static int mxs_i2c_xfer_msg(struct i2c_adapter *adap, struct i2c_msg *msg, in mxs_i2c_xfer_msg() argument
576 msg->addr, msg->len, msg->flags, stop); in mxs_i2c_xfer_msg()
578 if (msg->len == 0) in mxs_i2c_xfer_msg()
586 if ((msg->flags & I2C_M_RD) && (msg->len <= 4)) in mxs_i2c_xfer_msg()
588 if (!(msg->flags & I2C_M_RD) && (msg->len < 7)) in mxs_i2c_xfer_msg()
593 ret = mxs_i2c_pio_setup_xfer(adap, msg, flags); in mxs_i2c_xfer_msg()
599 ret = mxs_i2c_dma_setup_xfer(adap, msg, flags); in mxs_i2c_xfer_msg()