Lines Matching defs:msgs

357 					struct i2c_msg *msgs)
364 dma->dma_buf = dma_map_single(chan_dev, msgs->buf,
659 struct i2c_msg *msgs)
671 dma->dma_len = msgs->len - 1;
672 result = i2c_imx_dma_xfer(i2c_imx, msgs);
684 imx_i2c_write_reg(i2c_8bit_addr_from_msg(msgs), i2c_imx, IMX_I2C_I2DR);
711 imx_i2c_write_reg(msgs->buf[msgs->len-1],
721 struct i2c_msg *msgs, bool is_lastmsg)
735 dma->dma_len = msgs->len - 2;
736 result = i2c_imx_dma_xfer(i2c_imx, msgs);
770 msgs->buf[msgs->len-2] = imx_i2c_read_reg(i2c_imx, IMX_I2C_I2DR);
801 msgs->buf[msgs->len-1] = imx_i2c_read_reg(i2c_imx, IMX_I2C_I2DR);
806 static int i2c_imx_write(struct imx_i2c_struct *i2c_imx, struct i2c_msg *msgs,
812 __func__, i2c_8bit_addr_from_msg(msgs));
815 imx_i2c_write_reg(i2c_8bit_addr_from_msg(msgs), i2c_imx, IMX_I2C_I2DR);
825 for (i = 0; i < msgs->len; i++) {
828 __func__, i, msgs->buf[i]);
829 imx_i2c_write_reg(msgs->buf[i], i2c_imx, IMX_I2C_I2DR);
840 static int i2c_imx_read(struct imx_i2c_struct *i2c_imx, struct i2c_msg *msgs,
845 int block_data = msgs->flags & I2C_M_RECV_LEN;
846 int use_dma = i2c_imx->dma && msgs->flags & I2C_M_DMA_SAFE &&
847 msgs->len >= DMA_THRESHOLD && !block_data;
851 __func__, i2c_8bit_addr_from_msg(msgs));
854 imx_i2c_write_reg(i2c_8bit_addr_from_msg(msgs), i2c_imx, IMX_I2C_I2DR);
872 if ((msgs->len - 1) || block_data)
882 return i2c_imx_dma_read(i2c_imx, msgs, is_lastmsg);
885 for (i = 0; i < msgs->len; i++) {
894 * msgs->len.
903 msgs->len += len;
905 if (i == (msgs->len - 1)) {
932 } else if (i == (msgs->len - 2)) {
940 msgs->buf[0] = len;
942 msgs->buf[i] = imx_i2c_read_reg(i2c_imx, IMX_I2C_I2DR);
945 __func__, i, msgs->buf[i]);
951 struct i2c_msg *msgs, int num, bool atomic)
1011 if (msgs[i].flags & I2C_M_RD) {
1012 result = i2c_imx_read(i2c_imx, &msgs[i], is_lastmsg, atomic);
1015 i2c_imx->dma && msgs[i].len >= DMA_THRESHOLD &&
1016 msgs[i].flags & I2C_M_DMA_SAFE)
1017 result = i2c_imx_dma_write(i2c_imx, &msgs[i]);
1019 result = i2c_imx_write(i2c_imx, &msgs[i], atomic);
1036 struct i2c_msg *msgs, int num)
1045 result = i2c_imx_xfer_common(adapter, msgs, num, false);
1054 struct i2c_msg *msgs, int num)
1063 result = i2c_imx_xfer_common(adapter, msgs, num, true);