Lines Matching refs:cmd
188 unsigned int cmd; in mmc_update_clk() local
191 cmd = SUNXI_MMC_CMD_START | in mmc_update_clk()
194 writel(cmd, &priv->reg->cmd); in mmc_update_clk()
195 while (readl(&priv->reg->cmd) & SUNXI_MMC_CMD_START) { in mmc_update_clk()
322 struct mmc *mmc, struct mmc_cmd *cmd, in sunxi_mmc_send_cmd_common() argument
333 if (cmd->resp_type & MMC_RSP_BUSY) in sunxi_mmc_send_cmd_common()
334 debug("mmc cmd %d check rsp busy\n", cmd->cmdidx); in sunxi_mmc_send_cmd_common()
335 if (cmd->cmdidx == 12) in sunxi_mmc_send_cmd_common()
338 if (!cmd->cmdidx) in sunxi_mmc_send_cmd_common()
340 if (cmd->resp_type & MMC_RSP_PRESENT) in sunxi_mmc_send_cmd_common()
342 if (cmd->resp_type & MMC_RSP_136) in sunxi_mmc_send_cmd_common()
344 if (cmd->resp_type & MMC_RSP_CRC) in sunxi_mmc_send_cmd_common()
363 cmd->cmdidx, cmdval | cmd->cmdidx, cmd->cmdarg); in sunxi_mmc_send_cmd_common()
364 writel(cmd->cmdarg, &priv->reg->arg); in sunxi_mmc_send_cmd_common()
367 writel(cmdval | cmd->cmdidx, &priv->reg->cmd); in sunxi_mmc_send_cmd_common()
379 writel(cmdval | cmd->cmdidx, &priv->reg->cmd); in sunxi_mmc_send_cmd_common()
406 if (cmd->resp_type & MMC_RSP_BUSY) { in sunxi_mmc_send_cmd_common()
419 if (cmd->resp_type & MMC_RSP_136) { in sunxi_mmc_send_cmd_common()
420 cmd->response[0] = readl(&priv->reg->resp3); in sunxi_mmc_send_cmd_common()
421 cmd->response[1] = readl(&priv->reg->resp2); in sunxi_mmc_send_cmd_common()
422 cmd->response[2] = readl(&priv->reg->resp1); in sunxi_mmc_send_cmd_common()
423 cmd->response[3] = readl(&priv->reg->resp0); in sunxi_mmc_send_cmd_common()
425 cmd->response[3], cmd->response[2], in sunxi_mmc_send_cmd_common()
426 cmd->response[1], cmd->response[0]); in sunxi_mmc_send_cmd_common()
428 cmd->response[0] = readl(&priv->reg->resp0); in sunxi_mmc_send_cmd_common()
429 debug("mmc resp 0x%08x\n", cmd->response[0]); in sunxi_mmc_send_cmd_common()
451 static int sunxi_mmc_send_cmd_legacy(struct mmc *mmc, struct mmc_cmd *cmd, in sunxi_mmc_send_cmd_legacy() argument
456 return sunxi_mmc_send_cmd_common(priv, mmc, cmd, data); in sunxi_mmc_send_cmd_legacy()
534 static int sunxi_mmc_send_cmd(struct udevice *dev, struct mmc_cmd *cmd, in sunxi_mmc_send_cmd() argument
540 return sunxi_mmc_send_cmd_common(priv, &plat->mmc, cmd, data); in sunxi_mmc_send_cmd()