>From c8a190816725dd6586bc9de997bf8e50416da428 Mon Sep 17 00:00:00 2001
From: Yuan Juntao <juntaox.y...@intel.com>
Date: Tue, 22 Jul 2014 18:16:34 +0800
Subject: [PATCH] Add SDR12 & SDR25 support for sdio cards.

According to SDIO simplified specification v3.0, a card should also
support SDR25 & SDR12 if one of the DDR50, SDR50, and SDR104 modes
is supported.

Signed-off-by: Yuan Juntao <juntaox.y...@intel.com>
---
 drivers/mmc/core/sdio.c |   14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/drivers/mmc/core/sdio.c b/drivers/mmc/core/sdio.c
index 4d721c6..6a8ce6f 100644
--- a/drivers/mmc/core/sdio.c
+++ b/drivers/mmc/core/sdio.c
@@ -160,15 +160,23 @@ static int sdio_read_cccr(struct mmc_card *card, u32 ocr)
                        if (mmc_host_uhs(card->host)) {
                                if (data & SDIO_UHS_DDR50)
                                        card->sw_caps.sd3_bus_mode
-                                               |= SD_MODE_UHS_DDR50;
+                                               |= SD_MODE_UHS_DDR50 |
+                                                  SD_MODE_UHS_SDR50 |
+                                                  SD_MODE_UHS_SDR25 |
+                                                  SD_MODE_UHS_SDR12;
 
                                if (data & SDIO_UHS_SDR50)
                                        card->sw_caps.sd3_bus_mode
-                                               |= SD_MODE_UHS_SDR50;
+                                               |= SD_MODE_UHS_SDR50 |
+                                                  SD_MODE_UHS_SDR25 |
+                                                  SD_MODE_UHS_SDR12;
 
                                if (data & SDIO_UHS_SDR104)
                                        card->sw_caps.sd3_bus_mode
-                                               |= SD_MODE_UHS_SDR104;
+                                               |= SD_MODE_UHS_SDR104 |
+                                                  SD_MODE_UHS_SDR50 |
+                                                  SD_MODE_UHS_SDR25 |
+                                                  SD_MODE_UHS_SDR12;
                        }
 
                        ret = mmc_io_rw_direct(card, 0, 0,
-- 
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" 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