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