[U-Boot] mmc1 not working on Samsung snow chromebook

Guillaume Gardet guillaume.gardet at free.fr
Fri Dec 1 12:42:27 UTC 2017



Le 18/11/2017 à 17:33, Guillaume Gardet a écrit :
>
>
> Le 17/11/2017 à 17:06, Jaehoon Chung a écrit :
>>
>> On 2017년 11월 17일 18:38, Guillaume Gardet wrote:
>>>
>>> Le 17/11/2017 à 10:36, Lukasz Majewski a écrit :
>>>> On Thu, 16 Nov 2017 13:29:56 +0100
>>>> Guillaume Gardet <guillaume.gardet at free.fr> wrote:
>>>>
>>>>> I found a workaround. If I disable MMC_MODE_HS_52MHz, then it is
>>>>> working fine.
>>>>>
>>>>> I guess there is a better way to implement the following patch ?
>>>>>
>>>>> **********************************************************************
>>>>> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
>>>>> index 23f642980b..a6a0934eef 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;
>>>>> +       /* MMC_MODE_HS_52MHz is broken (at least) on Samsung Snow, so
>>>>> disbale it for now */
>>>>> +       cfg->host_caps |= MMC_MODE_HS;
>>>> This seems like a workaround. The root cause of the problem is the
>>>> regression with HS 52MHz....
>>> Not sure it ever worked on this target.
>> Could you give me the debug log after enabled DEBUG?
>
> WIth debug in mmc.c and dw_mmc.c on the broken system, I have:
> Buswidth = 1, clock: 0
> Buswidth = 1, clock: 400000
> Sending CMD0
> Sending CMD8
> Sending CMD55
> Sending CMD41
> Sending CMD55
> Sending CMD41
> Sending CMD55
> Sending CMD41
> Sending CMD55
> Sending CMD41
> Sending CMD55
> Sending CMD41
> Sending CMD55
> Sending CMD41
> Sending CMD2
> Sending CMD3
> Sending CMD9
> Sending CMD7
> Sending CMD55
> Sending CMD51
> Sending CMD6
> Sending CMD6
> Sending CMD55
> dwmci_send_cmd: Response Error.
> mmc_init: -5, time 78
>
>
> WIth debug in mmc.c and dw_mmc.c with my workaround, I have:
> Buswidth = 1, clock: 0
> Buswidth = 1, clock: 400000
> Sending CMD0
> Sending CMD8
> Sending CMD55
> Sending CMD41
> Sending CMD55
> Sending CMD41
> Sending CMD55
> Sending CMD41
> Sending CMD55
> Sending CMD41
> Sending CMD55
> Sending CMD41
> Sending CMD55
> Sending CMD41
> Sending CMD2
> Sending CMD3
> Sending CMD9
> Sending CMD7
> Sending CMD55
> Sending CMD51
> Sending CMD6
> Sending CMD55
> Sending CMD6
> Buswidth = 4, clock: 400000
> Sending CMD55
> Sending CMD13
> Buswidth = 4, clock: 25000000
> Sending CMD16
> Sending CMD17
> switch to partitions #0, OK
> mmc1 is current device
>
> The problem occurs in 'sd_change_freq' function when if we try to set high speed with the 2nd call to  'sd_switch' (1st call is just a check).

Any progress on this problem?

Guillaume


>
>
> Guillaume
>
>
>>
>> Best Regards,
>> Jaehoon Chung
>>
>>> Guillaume
>>>
>>>>>            cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT;
>>>>>     }
>>>>> **********************************************************************
>>>>>
>>>>>
>>>>> Guillaume
>>>>>
>>>>>
>>>>>
>>>>> Le 15/11/2017 à 11:27, Guillaume Gardet a écrit :
>>>>>> Le 15/11/2017 à 11:22, Guillaume Gardet a écrit :
>>>>>>> Forgot to Cc ML. Done now.
>>>>>>>
>>>>>>>
>>>>>>> Le 15/11/2017 à 11:14, Guillaume Gardet a écrit :
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> I tested U-Boot v2017.09 on a Samsung Snow (Chromebook ARM) and
>>>>>>>> while mmc0 (internal eMMC) is working fine, mmc1 (external SD
>>>>>>>> slot) does not work. I get the following error for 'mmc dev 1'
>>>>>>>> command: mmc_init: -110, time 30
>>>>>> Please also note that on boot (or on 1st 'mmc dev 1' cmd if I stop
>>>>>> auto-boot), I firstly get: mmc_init: -5, time 39
>>>>>>
>>>>>> Then, all next attempts retruns:
>>>>>>       mmc_init: -110, time 30
>>>>>>
>>>>>>
>>>>>> Guillaume
>>>>>>
>>>>>>>> Any idea what could be wrong?
>>>>>>>>
>>>>>>>> Guillaume
>>>>>>>>
>>>>> _______________________________________________
>>>>> U-Boot mailing list
>>>>> U-Boot at lists.denx.de
>>>>> https://lists.denx.de/listinfo/u-boot
>>>>
>>>> Best regards,
>>>>
>>>> Lukasz Majewski
>>>>
>>>> -- 
>>>>
>>>> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
>>>> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
>>>> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
>>> _______________________________________________
>>> U-Boot mailing list
>>> U-Boot at lists.denx.de
>>> https://lists.denx.de/listinfo/u-boot
>



More information about the U-Boot mailing list