On 05/26/2016 02:16 PM, 장민우 wrote: > Hello, Jaehoon Chung. > > I mentioned "default speed mode" not hs200, hs400, ddr and hs mode. Yes, default speed mode is not HS400, HS400, DDR.. You mean "default speed mode" is 26MHz? As i know, default speed is 26MHz. and it used for initializing card. > > I think If "default speed mode" is set, there is no bus width change. There is DEVICE_TYPE[196] at ext_csd register. Device type should be selected one of them. (You can see the currently valid value.) I don't know exactly what your purpose. If i missed something, let me know in more detail about default speed, eMMC version, your environment. Best Regards, Jaehoon Chung > > If you have any advice to use "default speed mode" of the eMMC. please > let me know. > > Thank you. > > Best Regards, > Minwoo Jang. > > 2016-05-24 18:41 GMT+09:00 Jaehoon Chung <jh80.chung@xxxxxxxxxxx>: >> Hi, >> >> On 05/24/2016 06:07 PM, 장민우 wrote: >>> Dear linux-mmc. >>> >>> Hello, I'm Minwoo Jang. >>> >>> I have a question about using default speed of the eMMC. >>> >>> When default speed is used, mmc_select_bus_width() is never called. >>> >>> So, eMMC can not be set 4 bit or 8 bit bus width, I think. >>> >>> Please, give me your opinions on the following diff codes. >> >> In mmc_select_timing(), timing should be set to MMC_TIMING_HS or others. >> Then mmc_select_bus_width() should be entered. >> >> Best Regards, >> Jaehoon Chung >> >>> >>> Thank you. >>> >>> ===================================================== >>> >>> diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c >>> index 94b4462..3b1cc4d 100644 >>> --- a/drivers/mmc/core/mmc.c >>> +++ b/drivers/mmc/core/mmc.c >>> @@ -952,6 +952,8 @@ static int mmc_select_bus_width(struct mmc_card *card) >>> >>> if (!err) { >>> err = bus_width; >>> + pr_warn("%s: switch to bus width %d\n", >>> + mmc_hostname(host), (1 << bus_width)); >>> break; >>> } else { >>> pr_warn("%s: switch to bus width %d failed\n", >>> @@ -1500,6 +1502,14 @@ static int mmc_init_card(struct mmc_host *host, u32 ocr, >>> if (err) >>> goto err; >>> } >>> + } else { >>> + /* Select the bus width for normal speed mode */ >>> + err = mmc_select_bus_width(card); >>> + if (IS_ERR_VALUE(err)) { >>> + pr_warn("%s: Selecting bus width failed\n", >>> + mmc_hostname(card->host)); >>> + goto err; >>> + } >>> } >>> >>> Best regards, >>> >>> MW Jang. >>> -- >>> 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 >>> >>> >>> >> > > > -- 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