Can't flash ubuntu to emmc

When I flash radxa-zero-erase-emmc.bin by RZ-USB-BOOT-Helper V1.0.0, the serial port outputs the following information, but does not display the mass storage device, so I cannot write the system to emmc

bl2_stage_init 0x01
bl2_stage_init 0x81
hw id: 0x0001 - pwm id 0x00
bl2_stage_init 0xc0
bl2_stage_init 0x02

L0:00000000
L1:00000703
L2:00008067
L3:04000000
S1:00000000
B2:00002000
B1:e0f83180

TE: 22851069

BL2 Built : 15:21:48, Aug 28 2019. g12a g1bf2b53 - luan.yuan@droid15-sz

Board ID = 2
Set cpu clk to 24M
Set clk81 to 24M
CPU clk: 1200 MHz
Set clk81 to 166.6M
DDR driver_vesion: LPDDR4_PHY_V_0_1_18 build time: Aug 28 2019 15:21:45
board id: 2
Cfg max: 2, cur: 1. Board id: 255. Force loop cfg
DATA transfer complete...
fw parse done
DATA transfer complete...
AML DDR FW load done
DATA transfer complete...
PIEI prepare done
LPDDR4 probe
ddr clk to 792MHz
DATA transfer complete...

dmc_version 0000
Check phy result
INFO : End of CA training
INFO : End of initialization
INFO : Training has run successfully!
Check phy result
INFO : End of initialization
INFO : End of read enable training
INFO : End of fine write leveling
INFO : End of Write leveling coarse delay
INFO : Training has run successfully!
Check phy result
INFO : End of initialization
INFO : End of read dq deskew training
INFO : End of MPR read delay center optimization
INFO : End of write delay center optimization
INFO : End of read delay center optimization
INFO : End of max read latency training
INFO : Training has run successfully!
1D init succeed
DATA transfer complete...
Check phy result
INFO : End of initialization
INFO : End of 2D read delay Voltage center optimization
INFO : End of 2D read delay Voltage center optimization
INFO : End of 2D write delay Voltage center optimization
INFO : End of 2D write delay Voltage center optimization
INFO : Training has run successfully!

channel==0
RxClkDly_Margin_A0==236 ps 12
TxDqDly_Margin_A0==256 ps 13
RxClkDly_Margin_A1==236 ps 12
TxDqDly_Margin_A1==256 ps 13
TrainedVREFDQ_A0==74
TrainedVREFDQ_A1==74
VrefDac_Margin_A0==24
DeviceVref_Margin_A0==40
VrefDac_Margin_A1==23
DeviceVref_Margin_A1==40


channel==1
RxClkDly_Margin_A0==236 ps 12
TxDqDly_Margin_A0==256 ps 13
RxClkDly_Margin_A1==236 ps 12
TxDqDly_Margin_A1==256 ps 13
TrainedVREFDQ_A0==74
TrainedVREFDQ_A1==74
VrefDac_Margin_A0==25
DeviceVref_Margin_A0==40
VrefDac_Margin_A1==26
DeviceVref_Margin_A1==40

 dwc_ddrphy_apb_wr((0<<20)|(2<<16)|(0<<12)|(0xb0):0004

soc_vref_reg_value 0x 00000015 00000012 00000013 00000014 00000014 00000013 00000013 00000014 00000013 00000013 00000015 00000014 00000014 00000013 00000015 00000014 00000015 00000015 00000016 00000015 00000016 00000017 00000017 00000016 00000015 00000015 00000017 00000015 00000015 00000016 00000015 00000015 dram_vref_reg_value 0x 0000005d
2D init succeed
ddr init done, boot next stage
result report
aml_ddr_fw_vesion: LPDDR4_PHY_V_0_1_18 build time: Aug 28 2019 13:53:31
auto size-- 65535DDR cs0 size: 1024MB
DDR cs1 size: 1024MB
DMC_DDR_CTRL: 00e0001bDDR size: 2048MB
cs0 DataBus test pass
cs1 DataBus test pass
cs0 AddrBus test pass
cs1 AddrBus test pass
DATA transfer complete...
DATA transfer complete...
Data req end
DATA transfer complete...
RUN bl2 usb boot
bl2z: ptr: 05129330, size: 00001e40
0.0;M3 CHK:0;cm4_sp_mode 0
MVN_1=0x00000000
MVN_2=0x00000000
[Image: g12a_v1.1.3390-6ac5299 2019-09-26 14:09:46 luan.yuan@droid15-sz]
OPS=0x30
ring efuse init
28 0b 30 00 01 0d 18 00 00 14 35 39 53 42 56 50
[0.017150 Inits done]
secure task start!
high task start!
low task start!
run into bl31
NOTICE:  BL31: v1.3(release):4fc40b1
NOTICE:  BL31: Built : 15:57:33, May 22 2019
NOTICE:  BL31: G12A normal boot!
ERROR:   Error initializing runtime service opteed_fast


U-Boot 2021.07-24133-gf21fc0a44c-dirty (Jan 23 2022 - 09:51:56 +0800) radxa-zero

Model: Radxa Zero
SoC:   Amlogic Meson G12A (S905Y2) Revision 28:b (30:2)
DRAM:  2 GiB
MMC:   sd@ffe03000: 0, sd@ffe05000: 1, mmc@ffe07000: 2
Loading Environment from nowhere... OK
In:    serial
Out:   serial
Err:   serial
Net:   Net Initialization Skipped
No ethernet found.
starting USB...
Bus usb@ff500000: Register 3000140 NbrPorts 3
Starting the controller
USB XHCI 1.10
scanning bus usb@ff500000 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
unable to select a mode : -5
Card did not respond to voltage select! : -110
unable to select a mode : -5
Card did not respond to voltage select! : -110
unable to select a mode : -5
Card did not respond to voltage select! : -110
unable to select a mode : -5
resetting ...
bl31 reboot reason: 0xd
bl31 reboot reason: 0x0
system cmd  1.
G12A:BL:0253b8:61aa2d;FEAT:E0F83180:2000;POC:D;RCY:0;USB:0;

Bulk storage appears when I brush into rz-udisk-loader.bin, but this error occurs when I brush into Ubuntu startup, and it is the same error that I brush into all systems

bl2_stage_init 0x01
bl2_stage_init 0x81
hw id: 0x0001 - pwm id 0x00
bl2_stage_init 0xc0
bl2_stage_init 0x02

L0:00000000
L1:00000703
L2:00008067
L3:04000000
S1:00000000
B2:00002000
B1:e0f83180

TE: 296901

BL2 Built : 15:21:48, Aug 28 2019. g12a g1bf2b53 - luan.yuan@droid15-sz

Board ID = 2
Set cpu clk to 24M
Set clk81 to 24M
CPU clk: 1200 MHz
Set clk81 to 166.6M
eMMC boot @ 0
sw8 s
DDR driver_vesion: LPDDR4_PHY_V_0_1_18 build time: Aug 28 2019 15:21:45
board id: 2
Load FIP HDR from eMMC, src: 0x00010200, des: 0xfffd0000, size: 0x00004000, part: 0
fw parse done
Load ddrfw from eMMC, src: 0x00060200, des: 0xfffd0000, size: 0x0000c000, part: 0
Load ddrfw from eMMC, src: 0x00038200, des: 0xfffd0000, size: 0x00004000, part: 0
PIEI prepare done
fastboot data load
00000000
emmc switch 1 ok
ddr saved addr:00016000
Load ddr parameter from eMMC, src: 0x02c00000, des: 0xfffd0000, size: 0x00001000, part: 0
00000000
emmc switch 0 ok
fastboot data verify
verify result: 267
Cfg max: 2, cur: 1. Board id: 255. Force loop cfg
LPDDR4 probe
ddr clk to 792MHz
Load ddrfw from eMMC, src: 0x0003c200, des: 0xfffd0000, size: 0x0000c000, part: 0

dmc_version 0000
Check phy result
INFO : End of CA training
INFO : End of initialization
INFO : Training has run successfully!
Check phy result
INFO : End of initialization
INFO : End of read enable training
INFO : End of fine write leveling
INFO : End of Write leveling coarse delay
INFO : Training has run successfully!
Check phy result
INFO : End of initialization
INFO : End of read dq deskew training
INFO : End of MPR read delay center optimization
INFO : End of write delay center optimization
INFO : End of read delay center optimization
INFO : End of max read latency training
INFO : Training has run successfully!
1D training succeed
Load ddrfw from eMMC, src: 0x00048200, des: 0xfffd0000, size: 0x0000c000, part: 0
Check phy result
INFO : End of initialization
INFO : End of 2D read delay Voltage center optimization
INFO : End of 2D read delay Voltage center optimization
INFO : End of 2D write delay Voltage center optimization
INFO : End of 2D write delay Voltage center optimization
INFO : Training has run successfully!

channel==0
RxClkDly_Margin_A0==236 ps 12
TxDqDly_Margin_A0==256 ps 13
RxClkDly_Margin_A1==236 ps 12
TxDqDly_Margin_A1==256 ps 13
TrainedVREFDQ_A0==74
TrainedVREFDQ_A1==74
VrefDac_Margin_A0==24
DeviceVref_Margin_A0==40
VrefDac_Margin_A1==23
DeviceVref_Margin_A1==40


channel==1
RxClkDly_Margin_A0==256 ps 13
TxDqDly_Margin_A0==256 ps 13
RxClkDly_Margin_A1==236 ps 12
TxDqDly_Margin_A1==256 ps 13
TrainedVREFDQ_A0==74
TrainedVREFDQ_A1==74
VrefDac_Margin_A0==25
DeviceVref_Margin_A0==40
VrefDac_Margin_A1==26
DeviceVref_Margin_A1==40

 dwc_ddrphy_apb_wr((0<<20)|(2<<16)|(0<<12)|(0xb0):0004

soc_vref_reg_value 0x 00000015 00000012 00000013 00000013 00000013 00000013 00000013 00000014 00000014 00000013 00000015 00000014 00000014 00000013 00000015 00000014 00000015 00000015 00000016 00000015 00000016 00000017 00000016 00000016 00000015 00000015 00000016 00000015 00000015 00000016 00000015 00000015 dram_vref_reg_value 0x 0000005e
2D training succeed
aml_ddr_fw_vesion: LPDDR4_PHY_V_0_1_18 build time: Aug 28 2019 13:53:31
auto size-- 65535DDR cs0 size: 1024MB
DDR cs1 size: 1024MB
DMC_DDR_CTRL: 00e0001bDDR size: 2048MB
cs0 DataBus test pass
cs1 DataBus test pass
cs0 AddrBus test pass
cs1 AddrBus test pass

100bdlr_step_size ps== 444
result report
boot times 0Enable ddr reg access
00000000
emmc switch 3 ok
Authentication key not yet programmed
get rpmb counter error 0x00000007
00000000
emmc switch 0 ok
Load FIP HDR from eMMC, src: 0x00010200, des: 0x01700000, size: 0x00004000, part: 0
Load BL3X from eMMC, src: 0x0006c200, des: 0x0175c000, size: 0x000ec000, part: 0
bl2z: ptr: 05129330, size: 00001e40
0.0;M3 CHK:0;cm4_sp_mode 0
MVN_1=0x00000000
MVN_2=0x00000000
[Image: g12a_v1.1.3390-6ac5299 2019-09-26 14:09:46 luan.yuan@droid15-sz]
OPS=0x30
ring efuse init
28 0b 30 00 01 0d 18 00 00 14 35 39 53 42 56 50
[0.017149 Inits done]
secure task start!
high task start!
low task start!
run into bl31
NOTICE:  BL31: v1.3(release):4fc40b1
NOTICE:  BL31: Built : 15:57:33, May 22 2019
NOTICE:  BL31: G12A normal boot!
ERROR:   Error initializing runtime service opteed_fast


U-Boot 2021.07-24133-gf21fc0a44c (Jan 23 2022 - 09:49:20 +0800) radxa-zero

Model: Radxa Zero
SoC:   Amlogic Meson G12A (S905Y2) Revision 28:b (30:2)
DRAM:  2 GiB
MMC:   sd@ffe03000: 0, sd@ffe05000: 1, mmc@ffe07000: 2
Loading Environment from nowhere... OK
In:    serial
Out:   serial
Err:   serial
Net:   Net Initialization Skipped
No ethernet found.
starting USB...
Bus usb@ff500000: Register 3000140 NbrPorts 3
Starting the controller
USB XHCI 1.10
scanning bus usb@ff500000 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
Card did not respond to voltage select! : -110
Card did not respond to voltage select! : -110
unable to select a mode : -5

Device 0: unknown device
No ethernet found.
missing environment variable: pxeuuid
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00000000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0000000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/000000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm-meson-u200
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm-meson
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default
No ethernet found.
Config file not found
No ethernet found.
No ethernet found.
=>

Seems the board was having issue with the eMMC. After flashing can you try unplug power and let the board rest for a minute before power on again? If that allows you to enter the system, check if you reboot within the system and the board stops working again with the same error in your 2nd post.

Still not working, same boot output

But there is no problem starting with SD card

Can you post the output when you enter the following commands in U-Boot console?

mmc list
mmc dev 0
mmc dev 1
mmc dev 2

dev 0 is WiFi, 1 is SD card, and 2 is eMMC. You should see something like this if you have no SD card inserted:

=> mmc list
sd@ffe03000: 0
sd@ffe05000: 1
mmc@ffe07000: 2
=> mmc dev 0
Card did not respond to voltage select! : -110
=> mmc dev 1
Card did not respond to voltage select! : -110
=> mmc dev 2
switch to partitions #0, OK
mmc2(part 0) is current device

You can list the file with ls mmc 2 / if you can select eMMC.


=> mmc list
sd@ffe03000: 0
sd@ffe05000: 1
mmc@ffe07000: 2
=> mmc dev 2
unable to select a mode : -5
=> mmc dev 1
switch to partitions #0, OK
mmc1 is current device
=> mmc dev 0
Card did not respond to voltage select! : -110
=> mmc dev 1
switch to partitions #0, OK
mmc1 is current device
=> ls mmc 2 /
unable to select a mode : -5
Couldn't find partition mmc 2
=> ls mmc 1 /
            extlinux/
     3188   boot.cmd
     3260   boot.scr
            dtbs/
      383   uEnv.txt
   226556   config-5.10.69-10-amlogic-g617a45dd0fce
 25166336   vmlinuz-5.10.69-10-amlogic-g617a45dd0fce
  4935080   System.map-5.10.69-10-amlogic-g617a45dd0fce
 16550819   initrd.img-5.10.69-10-amlogic-g617a45dd0fce
            System Volume Information/

7 file(s), 3 dir(s)

=>

Now I start from sd card

rock@radxa-zero:~$ lsblk
NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
mmcblk1      179:0    0  28.8G  0 disk
├─mmcblk1p1  179:1    0   512M  0 part
└─mmcblk1p2  179:2    0  28.3G  0 part /
mmcblk2      179:32   0   7.3G  0 disk
├─mmcblk2p1  179:33   0 213.6M  0 part
└─mmcblk2p2  179:34   0   1.8G  0 part
mmcblk2boot0 179:64   0     4M  1 disk
mmcblk2boot1 179:96   0     4M  1 disk
rock@radxa-zero:~$

Thank you for your help. I’ll just start it with SD card :rofl::rofl:

I’m having the same problem with a brand new Radxa Zero V1.51 with 2GB/8GB

I have tried erasing eMMC with
boot-g12.py radxa-zero-erase-emmc.bin
then flashing
boot-g12.py rz-udisk-loader.bin
and then flashing either bullseye or buster images (from here) with Etcher to mmc.
I have powered off the device, waited a few minutes, then powered it back on. With the serial console attached I see:

=> mmc list
sd@ffe03000: 0
sd@ffe05000: 1
mmc@ffe07000: 2
=> mmc dev 0
Card did not respond to voltage select! : -110
=> mmc dev 1
Card did not respond to voltage select! : -110
=> mmc dev 2
unable to select a mode : -5

This is disappointing. I have previously successfully installed Armbian to eMMC on multiple other SBCs, including other Radxa products.

What am I missing here? Do I need to install anything else after flashing eg the bullseye image? Thanks for any help.

@RadxaYuntian Here is sample log output starting with the reset command. This is after flashing bullseye to emmc:

=> reset
resetting ...
bl31 reboot reason: 0xd
bl31 reboot reason: 0x0
system cmd  1.
G12A:BL:0253b8:61aa2d;FEAT:E0F83180:2000;POC:F;RCY:0;EMMC:0;READ:0;0.0
                                                                      l2_stage_init 0x01
bl2_stage_init 0x81
hw id: 0x0001 - pwm id 0x00
bl2_stage_init 0xc0
bl2_stage_init 0x02

L0:00000000
L1:00000703
L2:00008067
L3:04000000
S1:00000000
B2:00002000
B1:e0f83180

TE: 170914

BL2 Built : 15:21:48, Aug 28 2019. g12a g1bf2b53 - luan.yuan@droid15-sz

Board ID = 2
Set cpu clk to 24M
Set clk81 to 24M
CPU clk: 1200 MHz
Set clk81 to 166.6M
eMMC boot @ 0
sw8 s
DDR driver_vesion: LPDDR4_PHY_V_0_1_18 build time: Aug 28 2019 15:21:45
board id: 2
Load FIP HDR from eMMC, src: 0x00010200, des: 0xfffd0000, size: 0x00004000, part: 0
fw parse done
Load ddrfw from eMMC, src: 0x00060200, des: 0xfffd0000, size: 0x0000c000, part: 0
Load ddrfw from eMMC, src: 0x00038200, des: 0xfffd0000, size: 0x00004000, part: 0
PIEI prepare done
fastboot data load
00000000
emmc switch 1 ok
ddr saved addr:00016000
Load ddr parameter from eMMC, src: 0x02c00000, des: 0xfffd0000, size: 0x00001000, part: 0
00000000
emmc switch 0 ok
fastboot data verify
verify result: 267
Cfg max: 2, cur: 1. Board id: 255. Force loop cfg
LPDDR4 probe
ddr clk to 792MHz
Load ddrfw from eMMC, src: 0x0003c200, des: 0xfffd0000, size: 0x0000c000, part: 0

dmc_version 0000
Check phy result
INFO : ERROR : Training has failed!
1D training failed
Cfg max: 2, cur: 2. Board id: 255. Force loop cfg
LPDDR4 probe
ddr clk to 792MHz
Load ddrfw from eMMC, src: 0x0003c200, des: 0xfffd0000, size: 0x0000c000, part: 0

dmc_version 0000
Check phy result
INFO : End of CA training
INFO : End of initialization
INFO : Training has run successfully!
Check phy result
INFO : End of initialization
INFO : End of read enable training
INFO : End of fine write leveling
INFO : End of Write leveling coarse delay
INFO : Training has run successfully!
Check phy result
INFO : End of initialization
INFO : End of read dq deskew training
INFO : End of MPR read delay center optimization
INFO : End of write delay center optimization
INFO : End of read delay center optimization
INFO : End of max read latency training
INFO : Training has run successfully!
1D training succeed
Load ddrfw from eMMC, src: 0x00048200, des: 0xfffd0000, size: 0x0000c000, part: 0
Check phy result
INFO : End of initialization
INFO : End of 2D read delay Voltage center optimization
INFO : End of 2D read delay Voltage center optimization
INFO : End of 2D write delay Voltage center optimization
INFO : End of 2D write delay Voltage center optimization
INFO : Training has run successfully!

channel==0
RxClkDly_Margin_A0==256 ps 13
TxDqDly_Margin_A0==256 ps 13
RxClkDly_Margin_A1==0 ps 0
TxDqDly_Margin_A1==0 ps 0
TrainedVREFDQ_A0==74
TrainedVREFDQ_A1==0
VrefDac_Margin_A0==31
DeviceVref_Margin_A0==40
VrefDac_Margin_A1==0
DeviceVref_Margin_A1==0


channel==1
RxClkDly_Margin_A0==236 ps 12
TxDqDly_Margin_A0==256 ps 13
RxClkDly_Margin_A1==0 ps 0
TxDqDly_Margin_A1==0 ps 0
TrainedVREFDQ_A0==74
TrainedVREFDQ_A1==0
VrefDac_Margin_A0==32
DeviceVref_Margin_A0==40
VrefDac_Margin_A1==0
DeviceVref_Margin_A1==0

 dwc_ddrphy_apb_wr((0<<20)|(2<<16)|(0<<12)|(0xb0):0004 

soc_vref_reg_value 0x 0000001a 0000001a 0000001b 00000019 0000001a 0000001a 0000001a 0000001a 0000001c 0000001c 0000001a 0000001b 0000001a 0000001b 0000001a 0000001b 0000001b 0000001a 0000001a 0000001b 0000001a 00000019 0000001c 00000019 0000001b 0000001a 0000001b 00000019 00000019 0000001c 00000019 00000019 dram_vref_reg_value 0x 00000059
2D training succeed
aml_ddr_fw_vesion: LPDDR4_PHY_V_0_1_18 build time: Aug 28 2019 13:53:31
auto size-- 65535DDR cs0 size: 2048MB
DDR cs1 size: 0MB
DMC_DDR_CTRL: 00c0002cDDR size: 2048MB
cs0 DataBus test pass
cs0 AddrBus test pass

100bdlr_step_size ps== 489
result report
boot times 0Enable ddr reg access
00000000
emmc switch 3 ok
Authentication key not yet programmed
get rpmb counter error 0x00000007
00000000
emmc switch 0 ok
Load FIP HDR from eMMC, src: 0x00010200, des: 0x01700000, size: 0x00004000, part: 0
Load BL3X from eMMC, src: 0x0006c200, des: 0x0175c000, size: 0x00098000, part: 0
bl2z: ptr: 05129330, size: 00001e40
0.0;M3 CHK:0;cm4_sp_mode 0
MVN_1=0x00000000
MVN_2=0x00000000
[Image: g12a_v1.1.3390-6ac5299 2019-09-26 14:09:46 luan.yuan@droid15-sz]
OPS=0x30
ring efuse init
28 0b 30 00 01 04 14 00 00 09 38 38 34 55 30 50 
[1.065601 Inits done]
secure task start!
high task start!
low task start!
run into bl31
NOTICE:  BL31: v1.3(release):4fc40b1
NOTICE:  BL31: Built : 15:57:33, May 22 2019
NOTICE:  BL31: G12A normal boot!
NOTICE:  BL31: BL33 decompress pass
ERROR:   Error initializing runtime service opteed_fast


U-Boot 2022.01-armbian (May 01 2022 - 02:23:42 +0000) radxa-zero

Model: Radxa Zero
SoC:   Amlogic Meson G12A (S905Y2) Revision 28:b (30:2)
DRAM:  2 GiB
MMC:   sd@ffe03000: 0, sd@ffe05000: 1, mmc@ffe07000: 2
Loading Environment from nowhere... OK
In:    serial
Out:   serial
Err:   serial
Net:   No ethernet found.
Hit any key to stop autoboot:  0 

I’m also experiencing a similar issue with Radxa Zero v1.51 2GB RAM/8GB eMMC.

missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default
No ethernet found.
Config file not found
No ethernet found.
No ethernet found.
=> mmc list
sd@ffe03000: 0
sd@ffe05000: 1
mmc@ffe07000: 2
=> mmc dev 2
unable to select a mode : -5
=> 

Booting from eMMC sometimes works but only after several power cycles or reset command. If it boots successfully, it will still fail after several minutes.

I received a new Radxa Zero v1.51 2GB RAM/8GB eMMC and the same issue still happened. The issue happened on either Armbian OS v22.05.1 or Radxa Ubuntu Focal.

I’m currently not sure if this was a u-boot issue or something else.

https://patchwork.ozlabs.org/project/uboot/patch/20191219183620.1423118-3-jbrunet@baylibre.com/
https://patchwork.ozlabs.org/project/uboot/patch/20191219183620.1423118-4-jbrunet@baylibre.com/

I’m also not sure if something in the dtb file can be changed to fix this (eg. max-frequency).

mmc@ffe07000 {
                        compatible = "amlogic,meson-axg-mmc";
                        reg = <0x00 0xffe07000 0x00 0x800>;
                        interrupts = <0x00 0xbf 0x01>;
                        status = "okay";
                        clocks = <0x02 0x23 0x02 0x3e 0x02 0x02>;
                        clock-names = "core\0clkin0\0clkin1";
                        resets = <0x05 0x2e>;
                        pinctrl-0 = <0x34 0x35 0x36>;
                        pinctrl-1 = <0x37>;
                        pinctrl-names = "default\0clk-gate";
                        bus-width = <0x08>;
                        cap-mmc-highspeed;
                        mmc-ddr-1_8v;
                        mmc-hs200-1_8v;
                        max-frequency = <0xbebc200>;
                        disable-wp;
                        mmc-pwrseq = <0x38>;
                        vmmc-supply = <0x39>;
                        vqmmc-supply = <0x3a>;
                        phandle = <0x127>;
                };

Everything seems fine if SD card was used instead of eMMC.

@mubaix @tumbleweed @mars Hi all. I think we have finally found out why eMMC is not working. Please follow this guide to install system image and then update bootloader. Updated system image will be available soon.

1 Like

I’ve tested the new version of U-Boot on my 2 Radxa Zero v1.51 and the new U-Boot definitely fixed the issue from my side. The eMMC is now detected every time I reboot or power cycle the Radxa Zero. Thanks for the support.

I’m still unable to boot exclusively from eMMC.
Here’s what I tried:

  • Wipe the emmc starting from mask rom mode and running
    boot-g12.py radxa-zero-erase-emmc.bin
  • Install bootloader:
sudo dd if=u-boot.bin.sd.bin of=/dev/disk2s1 bs=1 count=444
sudo dd if=u-boot.bin.sd.bin of=/dev/disk2s1 bs=512 skip=1 seek=1
  • Verified download gadget shows up in with lsusb:
Bus 026 Device 005: ID 1b8e:fada Amlogic, Inc. USB download gadget 
  • Installed debian image to eMMC:
sudo dd if=Armbian_22.05.3_Radxa-zero_bullseye_current_5.10.123.img of=/dev/rdisk2s1 bs=1m
  • Remove and reattach power
  • Serial console reports the following and then nothing else:
G12A:BL:0253b8:61aa2d;FEAT:E0F83180:2000;POC:F;RCY:0;EMMC:0;READ:0;CHK:1F;READ:0;CHK:1F;READ:0;CHK:1F;SD?:20000;USB:8;

Am I running these steps in the wrong order? Is it necessary to install u-boot separately to eMMC after installing the armbian image?

You are doing it wrong indeed. Flash Armbian first then flash bootloader in one go.