Lines Matching refs:cmd
259 const struct i3c_ccc_cmd *cmd) in dw_i3c_master_supports_ccc_cmd() argument
261 if (cmd->ndests > 1) in dw_i3c_master_supports_ccc_cmd()
264 switch (cmd->id) { in dw_i3c_master_supports_ccc_cmd()
388 struct dw_i3c_cmd *cmd = &xfer->cmds[i]; in dw_i3c_master_start_xfer_locked() local
390 dw_i3c_master_wr_tx_fifo(master, cmd->tx_buf, cmd->tx_len); in dw_i3c_master_start_xfer_locked()
399 struct dw_i3c_cmd *cmd = &xfer->cmds[i]; in dw_i3c_master_start_xfer_locked() local
401 writel(cmd->cmd_hi, master->regs + COMMAND_QUEUE_PORT); in dw_i3c_master_start_xfer_locked()
402 writel(cmd->cmd_lo, master->regs + COMMAND_QUEUE_PORT); in dw_i3c_master_start_xfer_locked()
464 struct dw_i3c_cmd *cmd; in dw_i3c_master_end_xfer_locked() local
469 cmd = &xfer->cmds[RESPONSE_PORT_TID(resp)]; in dw_i3c_master_end_xfer_locked()
470 cmd->rx_len = RESPONSE_PORT_DATA_LEN(resp); in dw_i3c_master_end_xfer_locked()
471 cmd->error = RESPONSE_PORT_ERR_STATUS(resp); in dw_i3c_master_end_xfer_locked()
472 if (cmd->rx_len && !cmd->error) in dw_i3c_master_end_xfer_locked()
473 dw_i3c_master_read_rx_fifo(master, cmd->rx_buf, in dw_i3c_master_end_xfer_locked()
474 cmd->rx_len); in dw_i3c_master_end_xfer_locked()
665 struct dw_i3c_cmd *cmd; in dw_i3c_ccc_set() local
678 cmd = xfer->cmds; in dw_i3c_ccc_set()
679 cmd->tx_buf = ccc->dests[0].payload.data; in dw_i3c_ccc_set()
680 cmd->tx_len = ccc->dests[0].payload.len; in dw_i3c_ccc_set()
682 cmd->cmd_hi = COMMAND_PORT_ARG_DATA_LEN(ccc->dests[0].payload.len) | in dw_i3c_ccc_set()
685 cmd->cmd_lo = COMMAND_PORT_CP | in dw_i3c_ccc_set()
707 struct dw_i3c_cmd *cmd; in dw_i3c_ccc_get() local
718 cmd = xfer->cmds; in dw_i3c_ccc_get()
719 cmd->rx_buf = ccc->dests[0].payload.data; in dw_i3c_ccc_get()
720 cmd->rx_len = ccc->dests[0].payload.len; in dw_i3c_ccc_get()
722 cmd->cmd_hi = COMMAND_PORT_ARG_DATA_LEN(ccc->dests[0].payload.len) | in dw_i3c_ccc_get()
725 cmd->cmd_lo = COMMAND_PORT_READ_TRANSFER | in dw_i3c_ccc_get()
765 struct dw_i3c_cmd *cmd; in dw_i3c_master_daa() local
796 cmd = &xfer->cmds[0]; in dw_i3c_master_daa()
797 cmd->cmd_hi = 0x1; in dw_i3c_master_daa()
798 cmd->cmd_lo = COMMAND_PORT_DEV_COUNT(master->maxdevs - pos) | in dw_i3c_master_daa()
809 newdevs = GENMASK(master->maxdevs - cmd->rx_len - 1, 0); in dw_i3c_master_daa()
860 struct dw_i3c_cmd *cmd = &xfer->cmds[i]; in dw_i3c_master_priv_xfers() local
862 cmd->cmd_hi = COMMAND_PORT_ARG_DATA_LEN(i3c_xfers[i].len) | in dw_i3c_master_priv_xfers()
866 cmd->rx_buf = i3c_xfers[i].data.in; in dw_i3c_master_priv_xfers()
867 cmd->rx_len = i3c_xfers[i].len; in dw_i3c_master_priv_xfers()
868 cmd->cmd_lo = COMMAND_PORT_READ_TRANSFER | in dw_i3c_master_priv_xfers()
872 cmd->tx_buf = i3c_xfers[i].data.out; in dw_i3c_master_priv_xfers()
873 cmd->tx_len = i3c_xfers[i].len; in dw_i3c_master_priv_xfers()
874 cmd->cmd_lo = in dw_i3c_master_priv_xfers()
878 cmd->cmd_lo |= COMMAND_PORT_TID(i) | in dw_i3c_master_priv_xfers()
883 cmd->cmd_lo |= COMMAND_PORT_TOC; in dw_i3c_master_priv_xfers()
1004 struct dw_i3c_cmd *cmd = &xfer->cmds[i]; in dw_i3c_master_i2c_xfers() local
1006 cmd->cmd_hi = COMMAND_PORT_ARG_DATA_LEN(i2c_xfers[i].len) | in dw_i3c_master_i2c_xfers()
1009 cmd->cmd_lo = COMMAND_PORT_TID(i) | in dw_i3c_master_i2c_xfers()
1014 cmd->cmd_lo |= COMMAND_PORT_READ_TRANSFER; in dw_i3c_master_i2c_xfers()
1015 cmd->rx_buf = i2c_xfers[i].buf; in dw_i3c_master_i2c_xfers()
1016 cmd->rx_len = i2c_xfers[i].len; in dw_i3c_master_i2c_xfers()
1018 cmd->tx_buf = i2c_xfers[i].buf; in dw_i3c_master_i2c_xfers()
1019 cmd->tx_len = i2c_xfers[i].len; in dw_i3c_master_i2c_xfers()
1023 cmd->cmd_lo |= COMMAND_PORT_TOC; in dw_i3c_master_i2c_xfers()