[BUG] U-boot does not detect emmc card in odroid-c2 for newer U-boot as 2020.04
Otto Meier
gf435 at gmx.net
Fri Nov 20 14:48:53 CET 2020
Hi Anand,
Am 19.11.20 um 18:53 schrieb Anand Moon:
> Hi Otto,
>
> On Thu, 19 Nov 2020 at 21:23, Otto Meier <gf435 at gmx.net> wrote:
>>
>> Hi,
>>
>> I have extended the previous post.
>>
>>
>>
>> with these modifications i get:
>>
>> U-Boot 2021.01-rc2-00047-g9324c9a823-dirty (Nov 19 2020 - 15:33:00
>> +0100) odroid-c2
>>
>> Model: Hardkernel ODROID-C2
>> SoC: Amlogic Meson GXBB (S905) Revision 1f:c (0:1)
>> DRAM: 2 GiB
>> MMC: mmc at 72000: 0, mmc at 74000: 1
>> In: serial
>> Out: serial
>> Err: serial
>> Net: Could not get PHY for ethernet at c9410000: addr -1
>> No ethernet found.
>>
>> Hit any key to stop autoboot: 0
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = cdff0000
>> MESON EMMC status = 01ff2800
>> meson_dm_mmc_send_cmd[226]
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2800
>> meson_dm_mmc_send_cmd[226]
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = cdff0000
>> MESON EMMC status = 01ff2800
>> meson_dm_mmc_send_cmd[226]
>> Card did not respond to voltage select! : -110
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = cdff0000
>> MESON EMMC status = 01ff2800
>> meson_dm_mmc_send_cmd[226]
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2800
>> meson_dm_mmc_send_cmd[226]
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 00ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2800
>> meson_dm_mmc_send_cmd[226]
>> Card did not respond to voltage select! : -110
>> MMC Device 2 not found
>> no mmc device at slot 2
>> starting USB...
>>
>> Hope this shed more light on the issue.
>>
>> Following you find the output of 2020.04 with this mod.
>>
>> and working reading off mmc info of the emmc
>>
>> => mmc dev 1
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = c8ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = cdff0000
>> MESON EMMC status = 01ff2800
>> meson_dm_mmc_send_cmd[206]
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2800
>> meson_dm_mmc_send_cmd[206]
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = d9fe0000
>> MESON EMMC status = d9fe0000
>> MESON EMMC status = d9fe0000
>> MESON EMMC status = d9fe0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> MESON EMMC status = c5ff0000
>> MESON EMMC status = 01ff2000
>> switch to partitions #0, OK
>> mmc1(part 0) is current device
>> => mmc info
>> Device: mmc at 74000
>> Manufacturer ID: 15
>> OEM: 100
>> Name: CJTD4
>> Bus Speed: 52000000
>> Mode: MMC High Speed (52MHz)
>> Rd Block Len: 512
>> MMC version 5.1
>> High Capacity: Yes
>> Capacity: 58.2 GiB
>> Bus Width: 8-bit
>> Erase Group Size: 512 KiB
>> HC WP Group Size: 8 MiB
>> User Capacity: 58.2 GiB WRREL
>> Boot Capacity: 4 MiB ENH
>> RPMB Capacity: 4 MiB ENH
>>
>>
>> Best regards
>>
> [...]
>
> At my end u-boot 2020.04 was long broken for emmc,
> hope latest emmc changes should fix them all as of now.
>
> Following information for flashing u-boot images for eMMC and sd_card.
> # Binaries should be available in fip directory :
> fip/
> | ...
> |------ u-boot.bin (for eMMC)
> |------ u-boot.bin.sd.bin (for SDCard)
>
> [0] https://github.com/BayLibre/u-boot/tree/readme#install-on-emmc
>
> There are two images in fip dir, hope you are flashing the correct
> image to emmc.
> I do the flash of u-boot images using the script below.
>
> $ cat flash.sh
> FILEB=/dev/mmcblk0boot0
> DEV=/dev/mmcblk0
>
> if [ -b "$FILEB" ]; then
> echo "eMMC module flashing........."
> sudo dd if=fip/u-boot.bin of=$DEV conv=fsync,notrunc bs=512 seek=1
> else
> echo "microSD module flashing........."
> sudo dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc
> bs=512 skip=1 seek=1
> sudo dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc
> bs=1 count=444
> fi
>
> Best Regards
> -Anand
>
i created the u-boot by
make odroid-c2_defconfig
make -j4
and generated a flashable file according to : doc/board/amlogic/odroid-c2.rst.
this is a little bit different as for the libreelec-cc board. The process doesn't
genarate a u-boot.bin.sd.bin file only a u-boot.gxbb file. This file i flashed according
to the instructions of odroid-c2.rst.
You mention "last emmc changes" what does that mean?
best regards
Otto
More information about the U-Boot
mailing list