Lines Matching refs:cmd
21 static int imx_usdhc_send_cmd(struct mmc_cmd *cmd);
110 static int imx_usdhc_send_cmd(struct mmc_cmd *cmd) in imx_usdhc_send_cmd() argument
117 assert(cmd); in imx_usdhc_send_cmd()
133 switch (cmd->cmd_idx) { in imx_usdhc_send_cmd()
165 if (cmd->resp_type & MMC_RSP_48 && cmd->resp_type != MMC_RESPONSE_R2) in imx_usdhc_send_cmd()
167 else if (cmd->resp_type & MMC_RSP_136) in imx_usdhc_send_cmd()
169 else if (cmd->resp_type & MMC_RSP_BUSY) in imx_usdhc_send_cmd()
172 if (cmd->resp_type & MMC_RSP_CMD_IDX) in imx_usdhc_send_cmd()
175 if (cmd->resp_type & MMC_RSP_CRC) in imx_usdhc_send_cmd()
178 xfertype |= XFERTYPE_CMD(cmd->cmd_idx); in imx_usdhc_send_cmd()
181 mmio_write_32(reg_base + CMDARG, cmd->cmd_arg); in imx_usdhc_send_cmd()
198 cmd->cmd_idx, state, err); in imx_usdhc_send_cmd()
203 if (cmd->resp_type & MMC_RSP_136) { in imx_usdhc_send_cmd()
210 cmd->resp_data[3] = (cmdrsp3 << 8) | (cmdrsp2 >> 24); in imx_usdhc_send_cmd()
211 cmd->resp_data[2] = (cmdrsp2 << 8) | (cmdrsp1 >> 24); in imx_usdhc_send_cmd()
212 cmd->resp_data[1] = (cmdrsp1 << 8) | (cmdrsp0 >> 24); in imx_usdhc_send_cmd()
213 cmd->resp_data[0] = (cmdrsp0 << 8); in imx_usdhc_send_cmd()
215 cmd->resp_data[0] = mmio_read_32(reg_base + CMDRSP0); in imx_usdhc_send_cmd()