Lines Matching refs:cmd
41 static void sdhci_cmd_done(struct sdhci_host *host, struct mmc_cmd *cmd) in sdhci_cmd_done() argument
44 if (cmd->resp_type & MMC_RSP_136) { in sdhci_cmd_done()
47 cmd->response[i] = sdhci_readl(host, in sdhci_cmd_done()
50 cmd->response[i] |= sdhci_readb(host, in sdhci_cmd_done()
54 cmd->response[0] = sdhci_readl(host, SDHCI_RESPONSE); in sdhci_cmd_done()
138 static int sdhci_send_command(struct udevice *dev, struct mmc_cmd *cmd, argument
144 static int sdhci_send_command(struct mmc *mmc, struct mmc_cmd *cmd,
167 if (cmd->cmdidx == MMC_CMD_STOP_TRANSMISSION)
191 if (!(cmd->resp_type & MMC_RSP_PRESENT))
193 else if (cmd->resp_type & MMC_RSP_136)
195 else if (cmd->resp_type & MMC_RSP_BUSY) {
202 if (cmd->resp_type & MMC_RSP_CRC)
204 if (cmd->resp_type & MMC_RSP_OPCODE)
209 if (cmd->cmdidx == MMC_SEND_TUNING_BLOCK ||
210 cmd->cmdidx == MMC_SEND_TUNING_BLOCK_HS200) {
259 } else if (cmd->resp_type & MMC_RSP_BUSY) {
263 sdhci_writel(host, cmd->cmdarg, SDHCI_ARGUMENT);
270 sdhci_writew(host, SDHCI_MAKE_CMD(cmd->cmdidx, flags), SDHCI_COMMAND);
289 sdhci_cmd_done(host, cmd);
585 struct mmc_cmd cmd; local
587 cmd.cmdidx = opcode;
588 cmd.resp_type = MMC_RSP_R1;
589 cmd.cmdarg = 0;
610 return sdhci_send_command(host->mmc->dev, &cmd, NULL);
612 return sdhci_send_command(host->mmc, &cmd, NULL);