Hi Subhash, Arindam, On Wed, Aug 10 2011, Subhash Jadavani wrote: > Here is Essential conditions to indicate Version 3.00 Card > (SD_SPEC=2 and SD_SPEC3=1) : > (1) The card shall support CMD6 > (2) The card shall support CMD8 > (3) The card shall support CMD42 > (4) User area capacity shall be up to 2GB (SDSC) or 32GB (SDHC) > User area capacity shall be more than or equal to 32GB and > up to 2TB (SDXC) > (5) Speed Class shall be supported (SDHC or SDXC) > > So even if SD card doesn't support any of the newly defined > UHS-I bus speed mode, it can advertise itself as SD3.0 cards > as long as it supports all the essential conditions of > SD3.0 cards. Given this, these type of cards should atleast > run in High Speed mode @50MHZ if it supports HS. > > But current initialization sequence for SD3.0 cards is > such that these non-UHS-I SD3.0 cards runs in Default > Speed mode @25MHz. > > This patch makes sure that these non-UHS-I SD3.0 cards run > in High Speed Mode @50MHz. > > Tested this patch with SanDisk Extreme SDHC 8GB Class 10 card. > > Signed-off-by: Subhash Jadavani <subhashj@xxxxxxxxxxxxxx> > --- > drivers/mmc/core/sd.c | 6 +++--- > 1 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/mmc/core/sd.c b/drivers/mmc/core/sd.c > index ff27741..e2dcf23 100644 > --- a/drivers/mmc/core/sd.c > +++ b/drivers/mmc/core/sd.c > @@ -306,6 +306,9 @@ static int mmc_read_switch(struct mmc_card *card) > goto out; > } > > + if (status[13] & 0x02) > + card->sw_caps.hs_max_dtr = 50000000; > + > if (card->scr.sda_spec3) { > card->sw_caps.sd3_bus_mode = status[13]; > > @@ -348,9 +351,6 @@ static int mmc_read_switch(struct mmc_card *card) > } > > card->sw_caps.sd3_curr_limit = status[7]; > - } else { > - if (status[13] & 0x02) > - card->sw_caps.hs_max_dtr = 50000000; > } > > out: The patch itself is fine, but please could one of you add some #defines for the status response bit names and their possible values inside mmc_read_switch()? It's looking a bit opaque. (I know that this patch doesn't introduce any of these magic numbers; I just think that now is a good time to add documentation for them.) Thanks very much, - Chris. -- Chris Ball <cjb@xxxxxxxxxx> <http://printf.net/> One Laptop Per Child -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html