@@ -910,6 +910,10 @@ mmci_start_command(struct mmci_host *host, struct mmc_command *cmd, u32 c)
if (/*interrupt*/0)
c |= MCI_CPSM_INTERRUPT;
+ if (host->hw_designer == AMBA_VENDOR_QCOM &&
+ mmc_cmd_type(cmd) == MMC_CMD_ADTC)
+ c |= MCI_CSPM_QCOM_DATCMD;
+
host->cmd = cmd;
mmci_writel(host, cmd->arg, MMCIARGUMENT);
@@ -64,6 +64,13 @@
#define MCI_ST_ENCMD_COMPL (1 << 12)
#define MCI_ST_NIEN (1 << 13)
#define MCI_ST_CE_ATACMD (1 << 14)
+/* Modified on Qualcomm Integrations */
+#define MCI_CSPM_QCOM_DATCMD (1 << 12)
+#define MCI_CSPM_QCOM_MCIABORT (1 << 13)
+#define MCI_CSPM_QCOM_CCSENABLE (1 << 14)
+#define MCI_CSPM_QCOM_CCSDISABLE (1 << 15)
+#define MCI_CSPM_QCOM_AUTO_CMD19 (1 << 16)
+#define MCI_CSPM_QCOM_AUTO_CMD21 (1 << 21)
#define MMCIRESPCMD 0x010
#define MMCIRESPONSE0 0x014