Lines Matching refs:msg

97 	struct i2c_msg *msg;  member
206 static int i2c_m_rd(const struct i2c_msg *msg) in i2c_m_rd() argument
208 return (msg->flags & I2C_M_RD) != 0; in i2c_m_rd()
211 static int i2c_m_ten(const struct i2c_msg *msg) in i2c_m_ten() argument
213 return (msg->flags & I2C_M_TEN) != 0; in i2c_m_ten()
216 static int i2c_m_recv_len(const struct i2c_msg *msg) in i2c_m_recv_len() argument
218 return (msg->flags & I2C_M_RECV_LEN) != 0; in i2c_m_recv_len()
227 struct i2c_msg *msg = idev->msg; in axxia_i2c_empty_rx_fifo() local
229 int bytes_to_transfer = min(rx_fifo_avail, msg->len - idev->msg_xfrd); in axxia_i2c_empty_rx_fifo()
234 if (idev->msg_xfrd == 0 && i2c_m_recv_len(msg)) { in axxia_i2c_empty_rx_fifo()
244 msg->len = 1 + c; in axxia_i2c_empty_rx_fifo()
245 writel(msg->len, idev->base + MST_RX_XFER); in axxia_i2c_empty_rx_fifo()
247 msg->buf[idev->msg_xfrd++] = c; in axxia_i2c_empty_rx_fifo()
259 struct i2c_msg *msg = idev->msg; in axxia_i2c_fill_tx_fifo() local
261 int bytes_to_transfer = min(tx_fifo_avail, msg->len - idev->msg_xfrd); in axxia_i2c_fill_tx_fifo()
262 int ret = msg->len - idev->msg_xfrd - bytes_to_transfer; in axxia_i2c_fill_tx_fifo()
265 writel(msg->buf[idev->msg_xfrd++], idev->base + MST_DATA); in axxia_i2c_fill_tx_fifo()
281 if (!idev->msg) { in axxia_i2c_isr()
287 if (i2c_m_rd(idev->msg) && (status & MST_STATUS_RFL)) in axxia_i2c_isr()
291 if (!i2c_m_rd(idev->msg) && (status & MST_STATUS_TFL)) { in axxia_i2c_isr()
303 if (i2c_m_rd(idev->msg) && idev->msg_xfrd < idev->msg->len) in axxia_i2c_isr()
317 idev->msg->addr, in axxia_i2c_isr()
332 static int axxia_i2c_xfer_msg(struct axxia_i2c_dev *idev, struct i2c_msg *msg) in axxia_i2c_xfer_msg() argument
339 idev->msg = msg; in axxia_i2c_xfer_msg()
344 if (i2c_m_ten(msg)) { in axxia_i2c_xfer_msg()
349 addr_1 = 0xF0 | ((msg->addr >> 7) & 0x06); in axxia_i2c_xfer_msg()
350 addr_2 = msg->addr & 0xFF; in axxia_i2c_xfer_msg()
356 addr_1 = (msg->addr << 1) & 0xFF; in axxia_i2c_xfer_msg()
360 if (i2c_m_rd(msg)) { in axxia_i2c_xfer_msg()
362 rx_xfer = i2c_m_recv_len(msg) ? I2C_SMBUS_BLOCK_MAX : msg->len; in axxia_i2c_xfer_msg()
368 tx_xfer = msg->len; in axxia_i2c_xfer_msg()
376 if (i2c_m_rd(msg)) in axxia_i2c_xfer_msg()