Booting Le Potato AML-S905X-CC v1 over USB via DFU/worldcup protocol?

I’ve just purchased the Le Potato AML-S905X-CC (v1) and this is my first post. I’ve tried to search about this question, but haven’t found any results. Although I’ve never used the Le Potato AML-S905X-CC board before, I have used similar boards such as the BPI M5 and the Odroid C4.

What I’d like to do, irrespective of any other possible alternative methods, is boot the Le Potato AML-S905X-CC over USB DFU mode using the amlogic worldcup protocol. I’ve done this with the M5 and C4 (using instructions provided for each). If similar instructions are available for the Le Potato AML-S905X-CC, please point me to them. I tried to wing it myself using the steps below. If there are no official instructions, perhaps someone will notice some error in my attempt as shown below.

After obtaining a wordcup connection to the Le Potato AML-S905X-CC, I ran these commands:

update cwr DDR.USB 0xd9000000

Transfer Complete! total size is 49152 Bytes

update write usbbl2runpara_ddrinit.bin 0xd900c000

Transfer Complete! total size is 32 Bytes

update run 0xd9000000

[update]:Run at Addr d9000000
AmlUsbRunBinCode:ram_addr=d9000000

at this point, the following is displayed over the serial port:

0.0;CHK:0;
TE: 21144663

BL2 Built : 16:43:57, Apr  3 2019. gxl gf3484f5 - luan.yuan@droid15-sz

set vcck to 1120 mv
set vddee to 1000 mv
Board ID = 3
CPU clk: 1200MHz
BL2 USB

Then the next command is run:

update run 0xd900c000

[update]:Run at Addr d900c000
AmlUsbRunBinCode:ram_addr=d900c000

And the following additional text appears over the serial port:

BL2 Built : 16:43:57, Apr  3 2019. gxl gf3484f5 - luan.yuan@droid15-sz

set vcck to 1120 mv
set vddee to 1000 mv
Board ID = 3
CPU clk: 1200MHz
BL2 USB
DDR enable rdbi
DDR use ext vref
DDR ZQ power down
DQS-corr enabled
DDR scramble enabled
DDR3 chl: Rank0+1 @ 1080MHz
bist_test rank: 0 15 04 26 25 16 34 0f 00 1f 28 17 39 12 00 24 24 15 34 11 00 23 26 18 35 734  rank: 1 10 03 1d 24 15 33 0e 00 1c 27 16 38 10 02 1f 24 15 34 12 02 22 28 19 38 734   - PASS

Rank0: 1024MB(auto)-2T-13

Rank1: 1024MB(auto)-2T-13

Then, the next commands are run:

update write UBOOT.USB 0x200c000

Transfer Complete! total size is 786432 Bytes

update write usbbl2runpara_runfipimg.bin 0xd900c000

Transfer Complete! total size is 48 Bytes

update run 0xd900c000

[update]:Run at Addr d900c000
AmlUsbRunBinCode:ram_addr=d900c000

And the following additional text appears over the serial port, but the boot has failed:

Load fip header from USB, src: 0x0000c000, des: 0x01400000, size: 0x00004000, part: 0
New fip structure!
Load bl30 from USB, src: 0x00010000, des: 0x013c0000, size: 0x0000d600, part: 0
Load bl31 from USB, src: 0x00020000, des: 0x05100000, size: 0x0002b400, part: 0
Load bl33 from USB, src: 0x0004c000, des: 0x01000000, size: 0x0007c400, part: 0
GXL:BL1:9ac50e:bb16dc;FEAT:ADFC318C:0;POC:0;RCY:0;USB:0;

Thanks for any response.

The above error has been resolved. The commands listed above do work as shown. The reason the commands were initially failing turned out to be due to a power issue.

The AML-905X-CC v1 board must be adequately powered over the micro usb port power connector. Even if it appears that the board has enough power just to boot to u-boot (without any HDMI or other peripherals being connected), if there is not enough power sent via the micro usb port, a full boot to u-boot will not complete. Or, even if adequate power is applied to some location other than the micro usb port (such as one of the USB A ports), this will not work. The adequate power must be applied to the micro usb power port, and only the micro usb power port, regardless of what else is or is not connected that might be considered to supply enough power.

Anyway, this issue is resolved and no response is needed.

2 Likes