Cannot boot from eMMC on Odroid C4 with u-boot 2020.10-rc2

Garrick James garrick at jamesplace.org
Thu Aug 13 00:47:16 CEST 2020


As I understand it, initial support for the Odroid C4 (OC4) has been added
to u-boot and is included in 2020.10-rc2.  I have been able to successfully
boot my OC4 using u-boot 2020.10-rc2 from the SD card.  Yay!  Thank you.

Unfortunately, I cannot boot from the eMMC.  U-boot is unable to reliably
communicate with the eMMC--it encounters random, sporadic errors (more
often errors than success).  Note that once Linux (kernel version 5.8) is
booted (using u-boot on the SD card), Linux has no problems communicating
with the eMMC.  In fact all Linux file systems reside on the eMMC.  (The
only files on the SD card are boot.scr, the Linux kernel image, initramfs
image, and the dtb.)

Below is a log of an interactive u-boot session that shows that the same
commands accessing the eMMC both succeeding and failing.  You will note
that the u-boot version includes "-dirty."  This is because I
changed EXTRAVERSION in the toplevel Makefile to be "-rc2" (it was still
set to "-rc1" in commit 554e551, tagged as 2020.10-rc2).

Is eMMC support supposed to be working at this point?  If so, does anyone
have any ideas about what I need to do to get it working?

Thank you,
Garrick

P.S.
Please CC me, as I am not subscribed to the list.

U-Boot 2020.10-rc2-dirty (Aug 12 2020 - 15:08:40 -0700) odroid-c4

Model: Hardkernel ODROID-C4
SoC:   Amlogic Meson SM1 (Unknown) Revision 2b:c (10:2)
DRAM:  3.8 GiB
MMC:   sd at ffe05000: 0, mmc at ffe07000: 1
In:    serial
Out:   serial
Err:   serial
Net:   eth0: ethernet at ff3f0000
Hit any key to stop autoboot:  0
Card did not respond to voltage select!
switch to partitions #0, OK
mmc1(part 0) is current device
Scanning mmc 1:1...
** Unrecognized filesystem type **
** No partition table - mmc 1 **
** No partition table - mmc 1 **
** No partition table - mmc 1 **
** No partition table - mmc 1 **
** No partition table - mmc 1 **
** No partition table - mmc 1 **
** No partition table - mmc 1 **
MMC Device 2 not found
no mmc device at slot 2
starting USB...
Bus usb at ff500000: Register 3000140 NbrPorts 3
Starting the controller
USB XHCI 1.10
scanning bus usb at ff500000 for devices... 3 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found

Device 0: unknown device
Speed: 1000, full duplex
BOOTP broadcast 1
BOOTP broadcast 2
BOOTP broadcast 3
BOOTP broadcast 4

Abort
missing environment variable: pxeuuid
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/01-00-1e-06-48-0b-c7
Speed: 1000, full duplex
*** ERROR: `serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00000000
Speed: 1000, full duplex
*** ERROR: `serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0000000
Speed: 1000, full duplex
*** ERROR: `serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/000000
Speed: 1000, full duplex
*** ERROR: `serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00000
Speed: 1000, full duplex
*** ERROR: `serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0000
Speed: 1000, full duplex
*** ERROR: `serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/000
Speed: 1000, full duplex
*** ERROR: `serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00
Speed: 1000, full duplex
*** ERROR: `serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0
Speed: 1000, full duplex
*** ERROR: `serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm-meson-odroid-n2
Speed: 1000, full duplex
*** ERROR: `serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm-meson
Speed: 1000, full duplex
*** ERROR: `serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm
Speed: 1000, full duplex
*** ERROR: `serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default
Speed: 1000, full duplex
*** ERROR: `serverip' not set
Config file not found
=> mmc list
sd at ffe05000: 0
mmc at ffe07000: 1 (eMMC)
=> mmc dev 1
switch to partitions #0, OK
mmc1(part 0) is current device
=> fatls mmc 1:1
** No partition table - mmc 1 **
=> mmc dev 0
Card did not respond to voltage select!
=> mmc dev 1
switch to partitions #0, OK
mmc1(part 0) is current device
=> mmc part
## Unknown partition table type 0
=> mmc part
## Unknown partition table type 0
=> mmc dev 1
switch to partitions #0, OK
mmc1(part 0) is current device
=> mmc part

Partition Map for MMC device 1  --   Partition Type: DOS

Part    Start Sector    Num Sectors     UUID            Type
  1     32768           2097152         03823826-01     0c Boot
  2     2129920         57540608        03823826-02     83
  3     59670528        57540608        03823826-03     83
  4     117211136       4931584         03823826-04     83
=> fatls mmc 1:1
  5912348   Image.gz
    46307   meson-sm1-odroid-c4.dtb
     4741   new.scr
     4741   old.scr
     4748   sd.scr
  8889884   uInitrd
     4733   current.scr

7 file(s), 0 dir(s)

=> fatls mmc 1:1
  5912348   Image.gz
    46307   meson-sm1-odroid-c4.dtb
     4741   new.scr
     4741   old.scr
     4748   sd.scr
  8889884   uInitrd
     4733   current.scr

7 file(s), 0 dir(s)

=> fatls mmc 1:1
  5912348   Image.gz
    46307   meson-sm1-odroid-c4.dtb
     4741   new.scr
     4741   old.scr
     4748   sd.scr
  8889884   uInitrd
     4733   current.scr

7 file(s), 0 dir(s)

=> mmc part

Partition Map for MMC device 1  --   Partition Type: DOS

Part    Start Sector    Num Sectors     UUID            Type
  1     32768           2097152         03823826-01     0c Boot
  2     2129920         57540608        03823826-02     83
  3     59670528        57540608        03823826-03     83
  4     117211136       4931584         03823826-04     83
=> fatls mmc 1:1

0 file(s), 0 dir(s)


More information about the U-Boot mailing list