All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [BUG] snow: mmc: SD card access broken: unable to select a mode
@ 2018-04-09 12:02 Guillaume Gardet
  2018-04-09 13:58 ` Jean-Jacques Hiblot
       [not found] ` <CGME20180426103106epcas1p106acee25ea8ae693cebe1d14f46c6ba9@epcas1p1.samsung.com>
  0 siblings, 2 replies; 13+ messages in thread
From: Guillaume Gardet @ 2018-04-09 12:02 UTC (permalink / raw)
  To: u-boot

Hi Jaehoon,

There are problems with SD card access on Samsung Chromebook (snow) with latest master (and also 2018.05-rc1 and 2018.03).

eMMC is ok, but SD card access leads to 'unable to select a mode' problem. If I disable HS mode, I can access the SD card without problem:
********************************************************************************
diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
index 23f642980bf..28f4fa0f213 100644
--- a/drivers/mmc/dw_mmc.c
+++ b/drivers/mmc/dw_mmc.c
@@ -508,7 +508,8 @@ void dwmci_setup_cfg(struct mmc_config *cfg, struct dwmci_host *host,
          cfg->host_caps |= MMC_MODE_4BIT;
          cfg->host_caps &= ~MMC_MODE_8BIT;
      }
-    cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
+    /* Temp workaround for Chromebook snow to avoid the 'unable to select a mode' error */
+//     cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;

      cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
  }
********************************************************************************

Once we try to select HS mode, all access to SD card result in failure, even when trying to setup a lower frequency mode, including SD legacy at 25 MHz.

Any idea what is going? Maybe you have fixes pending?


Guillaume

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [U-Boot] [BUG] snow: mmc: SD card access broken: unable to select a mode
  2018-04-09 12:02 [U-Boot] [BUG] snow: mmc: SD card access broken: unable to select a mode Guillaume Gardet
@ 2018-04-09 13:58 ` Jean-Jacques Hiblot
  2018-04-09 14:03   ` Guillaume Gardet
       [not found] ` <CGME20180426103106epcas1p106acee25ea8ae693cebe1d14f46c6ba9@epcas1p1.samsung.com>
  1 sibling, 1 reply; 13+ messages in thread
From: Jean-Jacques Hiblot @ 2018-04-09 13:58 UTC (permalink / raw)
  To: u-boot



On 09/04/2018 14:02, Guillaume Gardet wrote:
> Hi Jaehoon,
>
> There are problems with SD card access on Samsung Chromebook (snow) 
> with latest master (and also 2018.05-rc1 and 2018.03).
>
> eMMC is ok, but SD card access leads to 'unable to select a mode' 
> problem. If I disable HS mode, I can access the SD card without problem:
> ******************************************************************************** 
>
> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
> index 23f642980bf..28f4fa0f213 100644
> --- a/drivers/mmc/dw_mmc.c
> +++ b/drivers/mmc/dw_mmc.c
> @@ -508,7 +508,8 @@ void dwmci_setup_cfg(struct mmc_config *cfg, 
> struct dwmci_host *host,
>          cfg->host_caps |= MMC_MODE_4BIT;
>          cfg->host_caps &= ~MMC_MODE_8BIT;
>      }
> -    cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
> +    /* Temp workaround for Chromebook snow to avoid the 'unable to 
> select a mode' error */
> +//     cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>
>      cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
>  }
> ******************************************************************************** 
>
>
> Once we try to select HS mode, all access to SD card result in 
> failure, even when trying to setup a lower frequency mode, including 
> SD legacy at 25 MHz.
>
> Any idea what is going? Maybe you have fixes pending?

Can try with MMC_MODE_HS | MMC_MODE_HS_52MHz but with a lower 
max-frequency (<25MHz) ? It would be interesting to know if it could 
come from a frequency limitation.
Is there some pad configuration to do when using higher frequency?

JJ

>
>
> Guillaume
>
>
>

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [U-Boot] [BUG] snow: mmc: SD card access broken: unable to select a mode
  2018-04-09 13:58 ` Jean-Jacques Hiblot
@ 2018-04-09 14:03   ` Guillaume Gardet
  2018-04-09 14:21     ` Jean-Jacques Hiblot
  0 siblings, 1 reply; 13+ messages in thread
From: Guillaume Gardet @ 2018-04-09 14:03 UTC (permalink / raw)
  To: u-boot



Le 09/04/2018 à 15:58, Jean-Jacques Hiblot a écrit :
>
>
> On 09/04/2018 14:02, Guillaume Gardet wrote:
>> Hi Jaehoon,
>>
>> There are problems with SD card access on Samsung Chromebook (snow) with latest master (and also 2018.05-rc1 and 2018.03).
>>
>> eMMC is ok, but SD card access leads to 'unable to select a mode' problem. If I disable HS mode, I can access the SD card without problem:
>> ********************************************************************************
>> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
>> index 23f642980bf..28f4fa0f213 100644
>> --- a/drivers/mmc/dw_mmc.c
>> +++ b/drivers/mmc/dw_mmc.c
>> @@ -508,7 +508,8 @@ void dwmci_setup_cfg(struct mmc_config *cfg, struct dwmci_host *host,
>>          cfg->host_caps |= MMC_MODE_4BIT;
>>          cfg->host_caps &= ~MMC_MODE_8BIT;
>>      }
>> -    cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>> +    /* Temp workaround for Chromebook snow to avoid the 'unable to select a mode' error */
>> +//     cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>
>>      cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
>>  }
>> ********************************************************************************
>>
>> Once we try to select HS mode, all access to SD card result in failure, even when trying to setup a lower frequency mode, including SD legacy at 25 MHz.
>>
>> Any idea what is going? Maybe you have fixes pending?
>
> Can try with MMC_MODE_HS | MMC_MODE_HS_52MHz but with a lower max-frequency (<25MHz) ? It would be interesting to know if it could come from a frequency limitation.

I already tried to change SD_HS freq (in mmc_mode2freq) from 50000000 to 25000000 with no difference.

> Is there some pad configuration to do when using higher frequency?

I do not think so.

Guillaume



>
> JJ
>
>>
>>
>> Guillaume
>>
>>
>>
>
>

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [U-Boot] [BUG] snow: mmc: SD card access broken: unable to select a mode
  2018-04-09 14:03   ` Guillaume Gardet
@ 2018-04-09 14:21     ` Jean-Jacques Hiblot
  2018-04-09 14:46       ` Guillaume Gardet
  0 siblings, 1 reply; 13+ messages in thread
From: Jean-Jacques Hiblot @ 2018-04-09 14:21 UTC (permalink / raw)
  To: u-boot



On 09/04/2018 16:03, Guillaume Gardet wrote:
>
>
> Le 09/04/2018 à 15:58, Jean-Jacques Hiblot a écrit :
>>
>>
>> On 09/04/2018 14:02, Guillaume Gardet wrote:
>>> Hi Jaehoon,
>>>
>>> There are problems with SD card access on Samsung Chromebook (snow) 
>>> with latest master (and also 2018.05-rc1 and 2018.03).
>>>
>>> eMMC is ok, but SD card access leads to 'unable to select a mode' 
>>> problem. If I disable HS mode, I can access the SD card without 
>>> problem:
>>> ******************************************************************************** 
>>>
>>> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
>>> index 23f642980bf..28f4fa0f213 100644
>>> --- a/drivers/mmc/dw_mmc.c
>>> +++ b/drivers/mmc/dw_mmc.c
>>> @@ -508,7 +508,8 @@ void dwmci_setup_cfg(struct mmc_config *cfg, 
>>> struct dwmci_host *host,
>>>          cfg->host_caps |= MMC_MODE_4BIT;
>>>          cfg->host_caps &= ~MMC_MODE_8BIT;
>>>      }
>>> -    cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>> +    /* Temp workaround for Chromebook snow to avoid the 'unable to 
>>> select a mode' error */
>>> +//     cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>
>>>      cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
>>>  }
>>> ******************************************************************************** 
>>>
>>>
>>> Once we try to select HS mode, all access to SD card result in 
>>> failure, even when trying to setup a lower frequency mode, including 
>>> SD legacy at 25 MHz.
>>>
>>> Any idea what is going? Maybe you have fixes pending?
>>
>> Can try with MMC_MODE_HS | MMC_MODE_HS_52MHz but with a lower 
>> max-frequency (<25MHz) ? It would be interesting to know if it could 
>> come from a frequency limitation.
>
> I already tried to change SD_HS freq (in mmc_mode2freq) from 50000000 
> to 25000000 with no difference.
>
>> Is there some pad configuration to do when using higher frequency?
>
> I do not think so.
Can you enable the debug output and post a log ?
>
> Guillaume
>
>
>
>>
>> JJ
>>
>>>
>>>
>>> Guillaume
>>>
>>>
>>>
>>
>>
>
>

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [U-Boot] [BUG] snow: mmc: SD card access broken: unable to select a mode
  2018-04-09 14:21     ` Jean-Jacques Hiblot
@ 2018-04-09 14:46       ` Guillaume Gardet
  2018-04-09 15:18         ` Jean-Jacques Hiblot
  0 siblings, 1 reply; 13+ messages in thread
From: Guillaume Gardet @ 2018-04-09 14:46 UTC (permalink / raw)
  To: u-boot



Le 09/04/2018 à 16:21, Jean-Jacques Hiblot a écrit :
>
>
> On 09/04/2018 16:03, Guillaume Gardet wrote:
>>
>>
>> Le 09/04/2018 à 15:58, Jean-Jacques Hiblot a écrit :
>>>
>>>
>>> On 09/04/2018 14:02, Guillaume Gardet wrote:
>>>> Hi Jaehoon,
>>>>
>>>> There are problems with SD card access on Samsung Chromebook (snow) with latest master (and also 2018.05-rc1 and 2018.03).
>>>>
>>>> eMMC is ok, but SD card access leads to 'unable to select a mode' problem. If I disable HS mode, I can access the SD card without problem:
>>>> ********************************************************************************
>>>> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
>>>> index 23f642980bf..28f4fa0f213 100644
>>>> --- a/drivers/mmc/dw_mmc.c
>>>> +++ b/drivers/mmc/dw_mmc.c
>>>> @@ -508,7 +508,8 @@ void dwmci_setup_cfg(struct mmc_config *cfg, struct dwmci_host *host,
>>>>          cfg->host_caps |= MMC_MODE_4BIT;
>>>>          cfg->host_caps &= ~MMC_MODE_8BIT;
>>>>      }
>>>> -    cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>> +    /* Temp workaround for Chromebook snow to avoid the 'unable to select a mode' error */
>>>> +//     cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>>
>>>>      cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
>>>>  }
>>>> ********************************************************************************
>>>>
>>>> Once we try to select HS mode, all access to SD card result in failure, even when trying to setup a lower frequency mode, including SD legacy at 25 MHz.
>>>>
>>>> Any idea what is going? Maybe you have fixes pending?
>>>
>>> Can try with MMC_MODE_HS | MMC_MODE_HS_52MHz but with a lower max-frequency (<25MHz) ? It would be interesting to know if it could come from a frequency limitation.
>>
>> I already tried to change SD_HS freq (in mmc_mode2freq) from 50000000 to 25000000 with no difference.
>>
>>> Is there some pad configuration to do when using higher frequency?
>>
>> I do not think so.
> Can you enable the debug output and post a log ?

Here is the log from u-boot built from u-boot-mmc (latest commit: 21c2ac32b845)
Yes, I have no serial, so I retyped the messages, so I hope there is no typo:
**********************************************************************
selecting mode MMC legacy (freq : 0 MHz)
selecting mode MMC legacy (freq : 25 MHz)
sd card: widths [4, 1] modes [SD Legacy, SD High SPeed (50MHz)]
host: widths [4, 1] modes [MMC legacy, SD Legacy, MMC High Speed (26MHz), SD High Speed (50MHz), MMC High Speed (52MHz), MMC DDR52 (52MHz)]
trying mode SD High Speed (50MHz) width 4 (at 50 MHz)
selecting mode SD High Speed (50 MHz) (freq : 50 MHz)
unable to read ssr
selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
trying mode SD High Speed (50MHz) width 1 (at 50 MHz)
selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
trying mode SD Legacy (25MHz) width 4 (at 25 MHz)
selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
trying mode SD Legacy (25MHz) width 1 (at 25 MHz)
selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
unable to select a mode
mmc_init: -524, time 127
** Bad device mmc 1 **
**********************************************************************

Note that eMMC (on mmc 0) is working fine with MMC DDR52 (52MHz).

Guillaume

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [U-Boot] [BUG] snow: mmc: SD card access broken: unable to select a mode
  2018-04-09 14:46       ` Guillaume Gardet
@ 2018-04-09 15:18         ` Jean-Jacques Hiblot
  2018-04-09 16:02           ` Guillaume Gardet
  0 siblings, 1 reply; 13+ messages in thread
From: Jean-Jacques Hiblot @ 2018-04-09 15:18 UTC (permalink / raw)
  To: u-boot



On 09/04/2018 16:46, Guillaume Gardet wrote:
>
>
> Le 09/04/2018 à 16:21, Jean-Jacques Hiblot a écrit :
>>
>>
>> On 09/04/2018 16:03, Guillaume Gardet wrote:
>>>
>>>
>>> Le 09/04/2018 à 15:58, Jean-Jacques Hiblot a écrit :
>>>>
>>>>
>>>> On 09/04/2018 14:02, Guillaume Gardet wrote:
>>>>> Hi Jaehoon,
>>>>>
>>>>> There are problems with SD card access on Samsung Chromebook 
>>>>> (snow) with latest master (and also 2018.05-rc1 and 2018.03).
>>>>>
>>>>> eMMC is ok, but SD card access leads to 'unable to select a mode' 
>>>>> problem. If I disable HS mode, I can access the SD card without 
>>>>> problem:
>>>>> ******************************************************************************** 
>>>>>
>>>>> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
>>>>> index 23f642980bf..28f4fa0f213 100644
>>>>> --- a/drivers/mmc/dw_mmc.c
>>>>> +++ b/drivers/mmc/dw_mmc.c
>>>>> @@ -508,7 +508,8 @@ void dwmci_setup_cfg(struct mmc_config *cfg, 
>>>>> struct dwmci_host *host,
>>>>>          cfg->host_caps |= MMC_MODE_4BIT;
>>>>>          cfg->host_caps &= ~MMC_MODE_8BIT;
>>>>>      }
>>>>> -    cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>>> +    /* Temp workaround for Chromebook snow to avoid the 'unable 
>>>>> to select a mode' error */
>>>>> +//     cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>>>
>>>>>      cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
>>>>>  }
>>>>> ******************************************************************************** 
>>>>>
>>>>>
>>>>> Once we try to select HS mode, all access to SD card result in 
>>>>> failure, even when trying to setup a lower frequency mode, 
>>>>> including SD legacy at 25 MHz.
>>>>>
>>>>> Any idea what is going? Maybe you have fixes pending?
>>>>
>>>> Can try with MMC_MODE_HS | MMC_MODE_HS_52MHz but with a lower 
>>>> max-frequency (<25MHz) ? It would be interesting to know if it 
>>>> could come from a frequency limitation.
>>>
>>> I already tried to change SD_HS freq (in mmc_mode2freq) from 
>>> 50000000 to 25000000 with no difference.
>>>
>>>> Is there some pad configuration to do when using higher frequency?
>>>
>>> I do not think so.
>> Can you enable the debug output and post a log ?
>
> Here is the log from u-boot built from u-boot-mmc (latest commit: 
> 21c2ac32b845)
> Yes, I have no serial, so I retyped the messages, so I hope there is 
> no typo:
> **********************************************************************
> selecting mode MMC legacy (freq : 0 MHz)
> selecting mode MMC legacy (freq : 25 MHz)
> sd card: widths [4, 1] modes [SD Legacy, SD High SPeed (50MHz)]
> host: widths [4, 1] modes [MMC legacy, SD Legacy, MMC High Speed 
> (26MHz), SD High Speed (50MHz), MMC High Speed (52MHz), MMC DDR52 
> (52MHz)]
> trying mode SD High Speed (50MHz) width 4 (at 50 MHz)
> selecting mode SD High Speed (50 MHz) (freq : 50 MHz)
> unable to read ssr
> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
> trying mode SD High Speed (50MHz) width 1 (at 50 MHz)
So it fails either in sd_select_bus_width() or sd_set_card_speed()
Can you try to limit the bus width to 1 ? Does it fail also at 50 MHz ?

> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
> trying mode SD Legacy (25MHz) width 4 (at 25 MHz)
> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
> trying mode SD Legacy (25MHz) width 1 (at 25 MHz)
> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
> unable to select a mode
> mmc_init: -524, time 127
> ** Bad device mmc 1 **
> **********************************************************************
>
> Note that eMMC (on mmc 0) is working fine with MMC DDR52 (52MHz).
>
> Guillaume
>

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [U-Boot] [BUG] snow: mmc: SD card access broken: unable to select a mode
  2018-04-09 15:18         ` Jean-Jacques Hiblot
@ 2018-04-09 16:02           ` Guillaume Gardet
  2018-04-09 16:29             ` Guillaume Gardet
  0 siblings, 1 reply; 13+ messages in thread
From: Guillaume Gardet @ 2018-04-09 16:02 UTC (permalink / raw)
  To: u-boot



Le 09/04/2018 à 17:18, Jean-Jacques Hiblot a écrit :
>
>
> On 09/04/2018 16:46, Guillaume Gardet wrote:
>>
>>
>> Le 09/04/2018 à 16:21, Jean-Jacques Hiblot a écrit :
>>>
>>>
>>> On 09/04/2018 16:03, Guillaume Gardet wrote:
>>>>
>>>>
>>>> Le 09/04/2018 à 15:58, Jean-Jacques Hiblot a écrit :
>>>>>
>>>>>
>>>>> On 09/04/2018 14:02, Guillaume Gardet wrote:
>>>>>> Hi Jaehoon,
>>>>>>
>>>>>> There are problems with SD card access on Samsung Chromebook (snow) with latest master (and also 2018.05-rc1 and 2018.03).
>>>>>>
>>>>>> eMMC is ok, but SD card access leads to 'unable to select a mode' problem. If I disable HS mode, I can access the SD card without problem:
>>>>>> ********************************************************************************
>>>>>> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
>>>>>> index 23f642980bf..28f4fa0f213 100644
>>>>>> --- a/drivers/mmc/dw_mmc.c
>>>>>> +++ b/drivers/mmc/dw_mmc.c
>>>>>> @@ -508,7 +508,8 @@ void dwmci_setup_cfg(struct mmc_config *cfg, struct dwmci_host *host,
>>>>>>          cfg->host_caps |= MMC_MODE_4BIT;
>>>>>>          cfg->host_caps &= ~MMC_MODE_8BIT;
>>>>>>      }
>>>>>> -    cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>>>> +    /* Temp workaround for Chromebook snow to avoid the 'unable to select a mode' error */
>>>>>> +//     cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>>>>
>>>>>>      cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
>>>>>>  }
>>>>>> ********************************************************************************
>>>>>>
>>>>>> Once we try to select HS mode, all access to SD card result in failure, even when trying to setup a lower frequency mode, including SD legacy at 25 MHz.
>>>>>>
>>>>>> Any idea what is going? Maybe you have fixes pending?
>>>>>
>>>>> Can try with MMC_MODE_HS | MMC_MODE_HS_52MHz but with a lower max-frequency (<25MHz) ? It would be interesting to know if it could come from a frequency limitation.
>>>>
>>>> I already tried to change SD_HS freq (in mmc_mode2freq) from 50000000 to 25000000 with no difference.
>>>>
>>>>> Is there some pad configuration to do when using higher frequency?
>>>>
>>>> I do not think so.
>>> Can you enable the debug output and post a log ?
>>
>> Here is the log from u-boot built from u-boot-mmc (latest commit: 21c2ac32b845)
>> Yes, I have no serial, so I retyped the messages, so I hope there is no typo:
>> **********************************************************************
>> selecting mode MMC legacy (freq : 0 MHz)
>> selecting mode MMC legacy (freq : 25 MHz)
>> sd card: widths [4, 1] modes [SD Legacy, SD High SPeed (50MHz)]
>> host: widths [4, 1] modes [MMC legacy, SD Legacy, MMC High Speed (26MHz), SD High Speed (50MHz), MMC High Speed (52MHz), MMC DDR52 (52MHz)]
>> trying mode SD High Speed (50MHz) width 4 (at 50 MHz)
>> selecting mode SD High Speed (50 MHz) (freq : 50 MHz)
>> unable to read ssr
>> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
>> trying mode SD High Speed (50MHz) width 1 (at 50 MHz)
> So it fails either in sd_select_bus_width() or sd_set_card_speed()
> Can you try to limit the bus width to 1 ? Does it fail also at 50 MHz ?

Yes, it fails too.

Guillaume

>
>> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
>> trying mode SD Legacy (25MHz) width 4 (at 25 MHz)
>> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
>> trying mode SD Legacy (25MHz) width 1 (at 25 MHz)
>> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
>> unable to select a mode
>> mmc_init: -524, time 127
>> ** Bad device mmc 1 **
>> **********************************************************************
>>
>> Note that eMMC (on mmc 0) is working fine with MMC DDR52 (52MHz).
>>
>> Guillaume
>>
>
>

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [U-Boot] [BUG] snow: mmc: SD card access broken: unable to select a mode
  2018-04-09 16:02           ` Guillaume Gardet
@ 2018-04-09 16:29             ` Guillaume Gardet
  2018-04-10  5:24               ` Anand Moon
  0 siblings, 1 reply; 13+ messages in thread
From: Guillaume Gardet @ 2018-04-09 16:29 UTC (permalink / raw)
  To: u-boot



Le 09/04/2018 à 18:02, Guillaume Gardet a écrit :
>
>
> Le 09/04/2018 à 17:18, Jean-Jacques Hiblot a écrit :
>>
>>
>> On 09/04/2018 16:46, Guillaume Gardet wrote:
>>>
>>>
>>> Le 09/04/2018 à 16:21, Jean-Jacques Hiblot a écrit :
>>>>
>>>>
>>>> On 09/04/2018 16:03, Guillaume Gardet wrote:
>>>>>
>>>>>
>>>>> Le 09/04/2018 à 15:58, Jean-Jacques Hiblot a écrit :
>>>>>>
>>>>>>
>>>>>> On 09/04/2018 14:02, Guillaume Gardet wrote:
>>>>>>> Hi Jaehoon,
>>>>>>>
>>>>>>> There are problems with SD card access on Samsung Chromebook (snow) with latest master (and also 2018.05-rc1 and 2018.03).
>>>>>>>
>>>>>>> eMMC is ok, but SD card access leads to 'unable to select a mode' problem. If I disable HS mode, I can access the SD card without problem:
>>>>>>> ********************************************************************************
>>>>>>> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
>>>>>>> index 23f642980bf..28f4fa0f213 100644
>>>>>>> --- a/drivers/mmc/dw_mmc.c
>>>>>>> +++ b/drivers/mmc/dw_mmc.c
>>>>>>> @@ -508,7 +508,8 @@ void dwmci_setup_cfg(struct mmc_config *cfg, struct dwmci_host *host,
>>>>>>>          cfg->host_caps |= MMC_MODE_4BIT;
>>>>>>>          cfg->host_caps &= ~MMC_MODE_8BIT;
>>>>>>>      }
>>>>>>> -    cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>>>>> +    /* Temp workaround for Chromebook snow to avoid the 'unable to select a mode' error */
>>>>>>> +//     cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>>>>>
>>>>>>>      cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
>>>>>>>  }
>>>>>>> ********************************************************************************
>>>>>>>
>>>>>>> Once we try to select HS mode, all access to SD card result in failure, even when trying to setup a lower frequency mode, including SD legacy at 25 MHz.
>>>>>>>
>>>>>>> Any idea what is going? Maybe you have fixes pending?
>>>>>>
>>>>>> Can try with MMC_MODE_HS | MMC_MODE_HS_52MHz but with a lower max-frequency (<25MHz) ? It would be interesting to know if it could come from a frequency limitation.
>>>>>
>>>>> I already tried to change SD_HS freq (in mmc_mode2freq) from 50000000 to 25000000 with no difference.
>>>>>
>>>>>> Is there some pad configuration to do when using higher frequency?
>>>>>
>>>>> I do not think so.
>>>> Can you enable the debug output and post a log ?
>>>
>>> Here is the log from u-boot built from u-boot-mmc (latest commit: 21c2ac32b845)
>>> Yes, I have no serial, so I retyped the messages, so I hope there is no typo:
>>> **********************************************************************
>>> selecting mode MMC legacy (freq : 0 MHz)
>>> selecting mode MMC legacy (freq : 25 MHz)
>>> sd card: widths [4, 1] modes [SD Legacy, SD High SPeed (50MHz)]
>>> host: widths [4, 1] modes [MMC legacy, SD Legacy, MMC High Speed (26MHz), SD High Speed (50MHz), MMC High Speed (52MHz), MMC DDR52 (52MHz)]
>>> trying mode SD High Speed (50MHz) width 4 (at 50 MHz)
>>> selecting mode SD High Speed (50 MHz) (freq : 50 MHz)
>>> unable to read ssr
>>> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
>>> trying mode SD High Speed (50MHz) width 1 (at 50 MHz)
>> So it fails either in sd_select_bus_width() or sd_set_card_speed()
>> Can you try to limit the bus width to 1 ? Does it fail also at 50 MHz ?
>
> Yes, it fails too.

If I disable sd_set_card_speed, then it is working fine.

Guillaume

>
> Guillaume
>
>>
>>> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
>>> trying mode SD Legacy (25MHz) width 4 (at 25 MHz)
>>> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
>>> trying mode SD Legacy (25MHz) width 1 (at 25 MHz)
>>> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
>>> unable to select a mode
>>> mmc_init: -524, time 127
>>> ** Bad device mmc 1 **
>>> **********************************************************************
>>>
>>> Note that eMMC (on mmc 0) is working fine with MMC DDR52 (52MHz).
>>>
>>> Guillaume
>>>
>>
>>
>

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [U-Boot] [BUG] snow: mmc: SD card access broken: unable to select a mode
  2018-04-09 16:29             ` Guillaume Gardet
@ 2018-04-10  5:24               ` Anand Moon
  0 siblings, 0 replies; 13+ messages in thread
From: Anand Moon @ 2018-04-10  5:24 UTC (permalink / raw)
  To: u-boot

Hi Guillaume,

On 9 April 2018 at 21:59, Guillaume Gardet <guillaume.gardet@free.fr> wrote:
>
>
> Le 09/04/2018 à 18:02, Guillaume Gardet a écrit :
>>
>>
>>
>> Le 09/04/2018 à 17:18, Jean-Jacques Hiblot a écrit :
>>>
>>>
>>>
>>> On 09/04/2018 16:46, Guillaume Gardet wrote:
>>>>
>>>>
>>>>
>>>> Le 09/04/2018 à 16:21, Jean-Jacques Hiblot a écrit :
>>>>>
>>>>>
>>>>>
>>>>> On 09/04/2018 16:03, Guillaume Gardet wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>> Le 09/04/2018 à 15:58, Jean-Jacques Hiblot a écrit :
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On 09/04/2018 14:02, Guillaume Gardet wrote:
>>>>>>>>
>>>>>>>> Hi Jaehoon,
>>>>>>>>
>>>>>>>> There are problems with SD card access on Samsung Chromebook (snow)
>>>>>>>> with latest master (and also 2018.05-rc1 and 2018.03).
>>>>>>>>
>>>>>>>> eMMC is ok, but SD card access leads to 'unable to select a mode'
>>>>>>>> problem. If I disable HS mode, I can access the SD card without problem:
>>>>>>>>
>>>>>>>> ********************************************************************************
>>>>>>>> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
>>>>>>>> index 23f642980bf..28f4fa0f213 100644
>>>>>>>> --- a/drivers/mmc/dw_mmc.c
>>>>>>>> +++ b/drivers/mmc/dw_mmc.c
>>>>>>>> @@ -508,7 +508,8 @@ void dwmci_setup_cfg(struct mmc_config *cfg,
>>>>>>>> struct dwmci_host *host,
>>>>>>>>          cfg->host_caps |= MMC_MODE_4BIT;
>>>>>>>>          cfg->host_caps &= ~MMC_MODE_8BIT;
>>>>>>>>      }
>>>>>>>> -    cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>>>>>> +    /* Temp workaround for Chromebook snow to avoid the 'unable to
>>>>>>>> select a mode' error */
>>>>>>>> +//     cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>>>>>>
>>>>>>>>      cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
>>>>>>>>  }
>>>>>>>>
>>>>>>>> ********************************************************************************
>>>>>>>>
>>>>>>>> Once we try to select HS mode, all access to SD card result in
>>>>>>>> failure, even when trying to setup a lower frequency mode, including SD
>>>>>>>> legacy at 25 MHz.
>>>>>>>>
>>>>>>>> Any idea what is going? Maybe you have fixes pending?
>>>>>>>
>>>>>>>
>>>>>>> Can try with MMC_MODE_HS | MMC_MODE_HS_52MHz but with a lower
>>>>>>> max-frequency (<25MHz) ? It would be interesting to know if it could come
>>>>>>> from a frequency limitation.
>>>>>>
>>>>>>
>>>>>> I already tried to change SD_HS freq (in mmc_mode2freq) from 50000000
>>>>>> to 25000000 with no difference.
>>>>>>
>>>>>>> Is there some pad configuration to do when using higher frequency?
>>>>>>
>>>>>>
>>>>>> I do not think so.
>>>>>
>>>>> Can you enable the debug output and post a log ?
>>>>
>>>>
>>>> Here is the log from u-boot built from u-boot-mmc (latest commit:
>>>> 21c2ac32b845)
>>>> Yes, I have no serial, so I retyped the messages, so I hope there is no
>>>> typo:
>>>> **********************************************************************
>>>> selecting mode MMC legacy (freq : 0 MHz)
>>>> selecting mode MMC legacy (freq : 25 MHz)
>>>> sd card: widths [4, 1] modes [SD Legacy, SD High SPeed (50MHz)]
>>>> host: widths [4, 1] modes [MMC legacy, SD Legacy, MMC High Speed
>>>> (26MHz), SD High Speed (50MHz), MMC High Speed (52MHz), MMC DDR52 (52MHz)]
>>>> trying mode SD High Speed (50MHz) width 4 (at 50 MHz)
>>>> selecting mode SD High Speed (50 MHz) (freq : 50 MHz)
>>>> unable to read ssr
>>>> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
>>>> trying mode SD High Speed (50MHz) width 1 (at 50 MHz)
>>>
>>> So it fails either in sd_select_bus_width() or sd_set_card_speed()
>>> Can you try to limit the bus width to 1 ? Does it fail also at 50 MHz ?
>>
>>
>> Yes, it fails too.
>
>
> If I disable sd_set_card_speed, then it is working fine.
>
> Guillaume
>

Thanks for your investigation on this issue,
I feel their is some clk initialization for mmc for exynos platform is missing.

Best Regards
-Anand

>>
>> Guillaume
>>
>>>
>>>> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
>>>> trying mode SD Legacy (25MHz) width 4 (at 25 MHz)
>>>> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
>>>> trying mode SD Legacy (25MHz) width 1 (at 25 MHz)
>>>> selecting mode SD Legacy (25 MHz) (freq : 25 MHz)
>>>> unable to select a mode
>>>> mmc_init: -524, time 127
>>>> ** Bad device mmc 1 **
>>>> **********************************************************************
>>>>
>>>> Note that eMMC (on mmc 0) is working fine with MMC DDR52 (52MHz).
>>>>
>>>> Guillaume
>>>>
>>>
>>>
>>
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> https://lists.denx.de/listinfo/u-boot

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [U-Boot] [U-Boot, BUG] snow: mmc: SD card access broken: unable to select a mode
       [not found] ` <CGME20180426103106epcas1p106acee25ea8ae693cebe1d14f46c6ba9@epcas1p1.samsung.com>
@ 2018-04-26 10:31   ` Jaehoon Chung
  2018-04-26 13:15     ` Guillaume Gardet
  0 siblings, 1 reply; 13+ messages in thread
From: Jaehoon Chung @ 2018-04-26 10:31 UTC (permalink / raw)
  To: u-boot

Hi,

On 04/09/2018 09:02 PM, Guillaume Gardet wrote:
> Hi Jaehoon,
> 
> There are problems with SD card access on Samsung Chromebook (snow) with latest master (and also 2018.05-rc1 and 2018.03).
> 
> eMMC is ok, but SD card access leads to 'unable to select a mode' problem. If I disable HS mode, I can access the SD card without problem:
> ********************************************************************************
> ********************************************************************************
> 
> Once we try to select HS mode, all access to SD card result in failure, even when trying to setup a lower frequency mode, including SD legacy at 25 MHz.
> 
> Any idea what is going? Maybe you have fixes pending?

Sorry for late. Hmm. I will check your issue. Just disable MMC_MODE_HS, then it's working fine?
or HS_52MHz?

Best Regards,
Jaehoon Chung

> 
> 
> Guillaume
> 
> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
> index 23f642980bf..28f4fa0f213 100644
> --- a/drivers/mmc/dw_mmc.c
> +++ b/drivers/mmc/dw_mmc.c
> @@ -508,7 +508,8 @@ void dwmci_setup_cfg(struct mmc_config *cfg, struct dwmci_host *host,
>           cfg->host_caps |= MMC_MODE_4BIT;
>           cfg->host_caps &= ~MMC_MODE_8BIT;
>       }
> -    cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
> +    /* Temp workaround for Chromebook snow to avoid the 'unable to select a mode' error */
> +//     cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
> 
>       cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
>   }
> 

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [U-Boot] [U-Boot, BUG] snow: mmc: SD card access broken: unable to select a mode
  2018-04-26 10:31   ` [U-Boot] [U-Boot, BUG] " Jaehoon Chung
@ 2018-04-26 13:15     ` Guillaume Gardet
  2018-05-16  7:22       ` Guillaume Gardet
  0 siblings, 1 reply; 13+ messages in thread
From: Guillaume Gardet @ 2018-04-26 13:15 UTC (permalink / raw)
  To: u-boot



Le 26/04/2018 à 12:31, Jaehoon Chung a écrit :
> Hi,
>
> On 04/09/2018 09:02 PM, Guillaume Gardet wrote:
>> Hi Jaehoon,
>>
>> There are problems with SD card access on Samsung Chromebook (snow) with latest master (and also 2018.05-rc1 and 2018.03).
>>
>> eMMC is ok, but SD card access leads to 'unable to select a mode' problem. If I disable HS mode, I can access the SD card without problem:
>> ********************************************************************************
>> ********************************************************************************
>>
>> Once we try to select HS mode, all access to SD card result in failure, even when trying to setup a lower frequency mode, including SD legacy at 25 MHz.
>>
>> Any idea what is going? Maybe you have fixes pending?
> Sorry for late. Hmm. I will check your issue. Just disable MMC_MODE_HS, then it's working fine?
> or HS_52MHz?

I tried to disable HS_52MHz only and it did not fix the problem. Then I tried to disable both HS and HS_52MHz and it fixed the problem.


Guillaume

>
> Best Regards,
> Jaehoon Chung
>
>>
>> Guillaume
>>
>> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
>> index 23f642980bf..28f4fa0f213 100644
>> --- a/drivers/mmc/dw_mmc.c
>> +++ b/drivers/mmc/dw_mmc.c
>> @@ -508,7 +508,8 @@ void dwmci_setup_cfg(struct mmc_config *cfg, struct dwmci_host *host,
>>            cfg->host_caps |= MMC_MODE_4BIT;
>>            cfg->host_caps &= ~MMC_MODE_8BIT;
>>        }
>> -    cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>> +    /* Temp workaround for Chromebook snow to avoid the 'unable to select a mode' error */
>> +//     cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>
>>        cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
>>    }
>>
>

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [U-Boot] [U-Boot, BUG] snow: mmc: SD card access broken: unable to select a mode
  2018-04-26 13:15     ` Guillaume Gardet
@ 2018-05-16  7:22       ` Guillaume Gardet
  2018-10-15 12:12         ` Guillaume Gardet
  0 siblings, 1 reply; 13+ messages in thread
From: Guillaume Gardet @ 2018-05-16  7:22 UTC (permalink / raw)
  To: u-boot

Hi Jaehoon,


Le 26/04/2018 à 15:15, Guillaume Gardet a écrit :
>
>
> Le 26/04/2018 à 12:31, Jaehoon Chung a écrit :
>> Hi,
>>
>> On 04/09/2018 09:02 PM, Guillaume Gardet wrote:
>>> Hi Jaehoon,
>>>
>>> There are problems with SD card access on Samsung Chromebook (snow) with latest master (and also 2018.05-rc1 and 2018.03).
>>>
>>> eMMC is ok, but SD card access leads to 'unable to select a mode' problem. If I disable HS mode, I can access the SD card without problem:
>>> ********************************************************************************
>>> ********************************************************************************
>>>
>>> Once we try to select HS mode, all access to SD card result in failure, even when trying to setup a lower frequency mode, including SD legacy at 25 MHz.
>>>
>>> Any idea what is going? Maybe you have fixes pending?
>> Sorry for late. Hmm. I will check your issue. Just disable MMC_MODE_HS, then it's working fine?
>> or HS_52MHz?
>
> I tried to disable HS_52MHz only and it did not fix the problem. Then I tried to disable both HS and HS_52MHz and it fixed the problem.

Any progress on this problem?

Guillaume

>
>
> Guillaume
>
>>
>> Best Regards,
>> Jaehoon Chung
>>
>>>
>>> Guillaume
>>>
>>> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
>>> index 23f642980bf..28f4fa0f213 100644
>>> --- a/drivers/mmc/dw_mmc.c
>>> +++ b/drivers/mmc/dw_mmc.c
>>> @@ -508,7 +508,8 @@ void dwmci_setup_cfg(struct mmc_config *cfg, struct dwmci_host *host,
>>>            cfg->host_caps |= MMC_MODE_4BIT;
>>>            cfg->host_caps &= ~MMC_MODE_8BIT;
>>>        }
>>> -    cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>> +    /* Temp workaround for Chromebook snow to avoid the 'unable to select a mode' error */
>>> +//     cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>
>>>        cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
>>>    }
>>>
>>
>

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [U-Boot] [U-Boot, BUG] snow: mmc: SD card access broken: unable to select a mode
  2018-05-16  7:22       ` Guillaume Gardet
@ 2018-10-15 12:12         ` Guillaume Gardet
  0 siblings, 0 replies; 13+ messages in thread
From: Guillaume Gardet @ 2018-10-15 12:12 UTC (permalink / raw)
  To: u-boot

Hi,

Le 16/05/2018 à 09:22, Guillaume Gardet a écrit :
> Hi Jaehoon,
>
>
> Le 26/04/2018 à 15:15, Guillaume Gardet a écrit :
>>
>>
>> Le 26/04/2018 à 12:31, Jaehoon Chung a écrit :
>>> Hi,
>>>
>>> On 04/09/2018 09:02 PM, Guillaume Gardet wrote:
>>>> Hi Jaehoon,
>>>>
>>>> There are problems with SD card access on Samsung Chromebook (snow) with latest master (and also 2018.05-rc1 and 2018.03).
>>>>
>>>> eMMC is ok, but SD card access leads to 'unable to select a mode' problem. If I disable HS mode, I can access the SD card without problem:
>>>> ********************************************************************************
>>>> ********************************************************************************
>>>>
>>>> Once we try to select HS mode, all access to SD card result in failure, even when trying to setup a lower frequency mode, including SD legacy at 25 MHz.
>>>>
>>>> Any idea what is going? Maybe you have fixes pending?
>>> Sorry for late. Hmm. I will check your issue. Just disable MMC_MODE_HS, then it's working fine?
>>> or HS_52MHz?
>>
>> I tried to disable HS_52MHz only and it did not fix the problem. Then I tried to disable both HS and HS_52MHz and it fixed the problem.
>
> Any progress on this problem?


Ping again.
The problem is still there in u-boot v2018.11-rc1.


Guillaume


>
> Guillaume
>
>>
>>
>> Guillaume
>>
>>>
>>> Best Regards,
>>> Jaehoon Chung
>>>
>>>>
>>>> Guillaume
>>>>
>>>> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
>>>> index 23f642980bf..28f4fa0f213 100644
>>>> --- a/drivers/mmc/dw_mmc.c
>>>> +++ b/drivers/mmc/dw_mmc.c
>>>> @@ -508,7 +508,8 @@ void dwmci_setup_cfg(struct mmc_config *cfg, struct dwmci_host *host,
>>>>            cfg->host_caps |= MMC_MODE_4BIT;
>>>>            cfg->host_caps &= ~MMC_MODE_8BIT;
>>>>        }
>>>> -    cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>> +    /* Temp workaround for Chromebook snow to avoid the 'unable to select a mode' error */
>>>> +//     cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
>>>>
>>>>        cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
>>>>    }
>>>>
>>>
>>
>

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2018-10-15 12:12 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-04-09 12:02 [U-Boot] [BUG] snow: mmc: SD card access broken: unable to select a mode Guillaume Gardet
2018-04-09 13:58 ` Jean-Jacques Hiblot
2018-04-09 14:03   ` Guillaume Gardet
2018-04-09 14:21     ` Jean-Jacques Hiblot
2018-04-09 14:46       ` Guillaume Gardet
2018-04-09 15:18         ` Jean-Jacques Hiblot
2018-04-09 16:02           ` Guillaume Gardet
2018-04-09 16:29             ` Guillaume Gardet
2018-04-10  5:24               ` Anand Moon
     [not found] ` <CGME20180426103106epcas1p106acee25ea8ae693cebe1d14f46c6ba9@epcas1p1.samsung.com>
2018-04-26 10:31   ` [U-Boot] [U-Boot, BUG] " Jaehoon Chung
2018-04-26 13:15     ` Guillaume Gardet
2018-05-16  7:22       ` Guillaume Gardet
2018-10-15 12:12         ` Guillaume Gardet

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.