[U-Boot] exynos: snow: external SD/MMC broken

Suriyan Ramasami suriyan.r at gmail.com
Thu Dec 4 19:11:01 CET 2014


Hello Jaehoon Chung, Guillaume GARDET,

On Thu, Dec 4, 2014 at 1:11 AM, Guillaume Gardet
<guillaume.gardet at free.fr> wrote:
>
> Le 04/12/2014 09:00, Jaehoon Chung a écrit :
>>
>> Hi, GUillaume
>>
>> On 12/04/2014 09:18 AM, Minkyu Kang wrote:
>>>
>>> + Jaehoon Chung
>>>
>>> On 04/12/14 00:23, Guillaume Gardet wrote:
>>>>
>>>> Hi,
>>>>
>>>> while trying latest u-boot GIT on snow (Google Chromebook ARM), I
>>>> encountered some problems with external SD card.
>>>> I cannot access to external SD card ('mmc dev 1' just returns 'Card did
>>>> not respond to voltage select!' and then 'Timeout') whereas I have access to
>>>> internal eMMC (with 'mmc dev 0').
>>
>> Did you check SD-card's power and clock line? "Timeout" is not important.
>
>
> I cannot, it is a laptop, not a dev board. :(
>
>>
>>>> Any idea what could be the problem?
>>
>> You can enable CONFIG_MMC_TRACE, and you can also print debug message into
>> dw-mmc.c
>> Could you share it?
>
>
> mmc dev 1 returns lots of things and I cannot scroll the screen and I cannot
> redirect cmd output to a file (could I?). (I have no serial cable).
> Here is the end of the log on 1st try (when booted from USB stick):
> ********************************************************************************
> ....
> CMD_SEND:3
>                         ARG                               0x00000000
>                         MMC_RSP_R1,5,6,7        0xB3680520
> CMD_SEND:9
>                         ARG                               0xB3680000
>                         MMC_RSP_R2                 0x400E0032
> 0x5B590000
> 0x3C1D7F80
> 0x0A400063
>
> DUMPING DATA
>                                                               000 - 40 0E 00
> 32
>                                                               004 - 5B 59 00
> 00
>                                                               008 - 3C 1D 7F
> 80
>                                                               012 - 0A 40 00
> 63
> CMD_SEND:13
>                         ARG                               0xB3680000
>                         MMC_RSP_R1,5,6,7        0x00000700
> CURR_STATE:3
> CMD_SEND:7
>                         ARG                               0xB3680000
>                         MMC_RSP_R1,5,6,7        0x00000700
> CMD_SEND:55
>                         ARG                               0xB3680000
>                         MMC_RSP_R1,5,6,7        0x00000920
> CMD_SEND:51
>                         ARG                               0x00000000
>                         MMC_RSP_R1,5,6,7        0x00000920
> CMD_SEND:6
>                         ARG                               0x00FFFFF1
>                         MMC_RSP_R1,5,6,7        0x00000900
> CMD_SEND:6
>                         ARG                               0x80FFFFF1
>                         MMC_RSP_R1,5,6,7        0x00000900
> CMD_SEND:55
>                         ARG                               0xB3680000
> dwmci_send_cmd: Response Error.
>                         MMC_RSP_R1,5,6,7        0x00000700
> ********************************************************************************
>
> Next tries always returns:
> ********************************************************************************
> CMD_SEND:0
>                         ARG                               0x00000000
> dwmci_send_cmd: Timeout.
>                         MMC_RSP_NONE
> ********************************************************************************
>
>
>
> When I boot from SD card (u-boot chainload), on 1st try, it returns:
> ********************************************************************************
> CMD_SEND:0
>                         ARG                               0x00000000
>                         MMC_RSP_NONE
> CMD_SEND:8
>                         ARG                               0x000001AA
> dwmci_send_cmd: Response Error.
>                         MMC_RSP_R1,5,6,7        0x00000008
> CMD_SEND:55
>                         ARG                               0x00000000
> dwmci_send_cmd: Response Error.
>                         MMC_RSP_R1,5,6,7        0x00000008
> ********************************************************************************
>

I would like to mention at this point that if CONFIG_MMC_TRACE is
enabled, then a working mmc stops working (especially after a CMD9 is
issued). I have seen this happen in the Odroid-XU3 with mainline
U-Boot + XU3 patches on top. Somehow I have a feeling that the between
CMD9 and the following CMD13 mess some timing requirement?

This is in no way trying to hijack the issue, but just that there is
some (possibly timing related) issue when debugs are enabled with MMC.

For example, in Odroid XU3 with CONFIG_MMC_TRACE, MMC stops to work,
with below output:
ODROID-XU3 # ls mmc 1:1
CMD_SEND:0
                ARG                      0x00000000
                MMC_RSP_NONE
CMD_SEND:8
                ARG                      0x000001AA
                MMC_RSP_R1,5,6,7         0x000001AA
CMD_SEND:55
                ARG                      0x00000000
                MMC_RSP_R1,5,6,7         0x00000120
CMD_SEND:41
                ARG                      0x40300000
                MMC_RSP_R3,4             0x40FF8000
CMD_SEND:55
                ARG                      0x00000000
                MMC_RSP_R1,5,6,7         0x00000120
CMD_SEND:41
                ARG                      0x40300000
                MMC_RSP_R3,4             0xC0FF8000
CMD_SEND:2
                ARG                      0x00000000
                MMC_RSP_R2               0x1B534D30
                                         0x30303030
                                         0x1049D808
                                         0x1400DC1B

                                        DUMPING DATA
                                        000 - 1B 53 4D 30
                                        004 - 30 30 30 30
                                        008 - 10 49 D8 08
                                        012 - 14 00 DC 1B
CMD_SEND:3
                ARG                      0x00000000
                MMC_RSP_R1,5,6,7         0x00000520
CMD_SEND:9
                ARG                      0x00000000
                MMC_RSP_R2               0x00000520
                                         0x30303030
                                         0x1049D808
                                         0x1400DC1B

                                        DUMPING DATA
                                        000 - 00 00 05 20
                                        004 - 30 30 30 30
                                        008 - 10 49 D8 08
                                        012 - 14 00 DC 1B
CMD_SEND:13
                ARG                      0x00000000
                MMC_RSP_R1,5,6,7         0x000F0000
CMD_SEND:13
                ARG                      0x00000000
                MMC_RSP_R1,5,6,7         0x000F0000
CMD_SEND:13
                ARG                      0x00000000
                MMC_RSP_R1,5,6,7         0x000F0000
CMD_SEND:13
                ARG                      0x00000000
                MMC_RSP_R1,5,6,7         0x000F0000
CMD_SEND:13
                ARG                      0x00000000
                MMC_RSP_R1,5,6,7         0x000F0000
CMD_SEND:13
                ARG                      0x00000000
                MMC_RSP_R1,5,6,7         0x000F0000
** Bad device mmc 1 **
ODROID-XU3 #

And it does work when I undef CONFIG_MMC_TRACE

Thanks
- Suriyan

>
>
> Guillaume
>
>
>
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot


More information about the U-Boot mailing list