[U-Boot] HS200 for SDHCI is broken
Masahiro Yamada
yamada.masahiro at socionext.com
Tue Jun 12 05:31:27 UTC 2018
2018-06-12 14:26 GMT+09:00 Masahiro Yamada <yamada.masahiro at socionext.com>:
> Hi Siva, Michal.
>
>
> I noticed drivers/mmc/sdhci-cadence.c
> not working for my boards.
>
>
> git-bisect points the following commit:
>
>
>
> commit 434f9d454eb1a17bb7f5cdb21167ccbe7e41da39
> Author: Siva Durga Prasad Paladugu <siva.durga.paladugu at xilinx.com>
> Date: Tue May 29 20:03:10 2018 +0530
>
> mmc: sdhci: Update sdhci_send_command() to handle HS200
>
> This patch updates sdhci_send_command() to handle MMC
> HS200 tuning command.
>
> Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu at xilinx.com>
> Signed-off-by: Michal Simek <michal.simek at xilinx.com>
>
>
>
>
>
> By reverting it, I can get the MMC on my boards working again.
>
> Any idea to fix it?
BTW, 'mmc info' looks like follows on the bad commit:
U-Boot 2018.05-00471-g434f9d4 (Jun 12 2018 - 14:08:39 +0900)
SoC: LD20 (model 1, revision 1)
Model: UniPhier LD20 Reference Board
DRAM: 3 GiB
SC: Micro Support Card (CPLD version 3.6)
NAND: 0 MiB
MMC: sdhc at 5a000000: 0
In: serial at 54006800
Out: serial at 54006800
Err: serial at 54006800
MODE: NOR Boot (STM: OFF)
Net: smc911x-0
Warning: smc911x-0 (eth0) using random MAC address - fe:7e:f8:eb:45:1d
Hit any key to stop autoboot: 0
=> mmc info
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
no tuning point found
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
sdhci_send_command: Timeout for status update!
no tuning point found
Device: sdhc at 5a000000
Manufacturer ID: 11
OEM: 100
Name: 004G6
Bus Speed: 52000000
Mode : MMC DDR52 (52MHz)
Rd Block Len: 512
MMC version 5.0
High Capacity: Yes
Capacity: 3.7 GiB
Bus Width: 8-bit DDR
Erase Group Size: 512 KiB
HC WP Group Size: 4 MiB
User Capacity: 3.7 GiB WRREL
Boot Capacity: 2 MiB ENH
RPMB Capacity: 512 KiB ENH
--
Best Regards
Masahiro Yamada
More information about the U-Boot
mailing list