From: Srinivas Kandagatla <srinivas.kandaga...@linaro.org>

Some bits which control Command Path State Machine (CPSM) are new in Qcom
integration, so this patch adds support to those bits.

Signed-off-by: Srinivas Kandagatla <srinivas.kandaga...@linaro.org>
---
 drivers/mmc/host/mmci.c |    4 ++++
 drivers/mmc/host/mmci.h |    7 +++++++
 2 files changed, 11 insertions(+)

diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c
index 2cd3a8f..8fcd8ef 100644
--- a/drivers/mmc/host/mmci.c
+++ b/drivers/mmc/host/mmci.c
@@ -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);
diff --git a/drivers/mmc/host/mmci.h b/drivers/mmc/host/mmci.h
index 0a6de1c..2ba0834 100644
--- a/drivers/mmc/host/mmci.h
+++ b/drivers/mmc/host/mmci.h
@@ -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
-- 
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to