Rock5 does not work on most PD power supplies

I used Windows 11, a VM, created a snapshot, installed driver (needs admin) used the tool (admin too, super wonky) and rolled the snapshot back, the VM runs on the same Linux box that failed to do the job with the linux CLI tool.
I could not get it working even with fixing the device permissions @xtract I guess there is something else going on there.

I also manage to flash now using Ubuntu, and the solution is VERY STUPID: I used the very cheap USB-A 2.0 to USB-C cable, and don’t use anything in between. Then I just follow the official guide and everything seems fine. I used USB-A 3.0 to USB-C cable before (swapped from my USB HDD) and that won’t work. Having USB-C extension cable also won’t work.

1 Like

Ohh well, I can confirm, works fine with a USB 2.0 USB AtoC cable, not working with C to C and also not with a 3.0 A to C… like what the fuck?

it is really stupid… I just found that out by opening two ssh sessions and monitor on what’s happening on the host side using dmesg -w, and see a lot of usb related messages that should be weird until I used that USB-A 2.0 to USB-C cable, then the usb message become “normal”.

@jack may I get a v1.3 dev board for finding this out? hahaha :rofl:

With rock-5b-ubuntu-focal-server-arm64-20220930-1451-gpt.img all my problematic USB PD chargers work now and the SPI flash is accessible from inside the running OS since this little device-tree snippet is active:

root@rock-5b:/home/rock# ll /dev/mtd*
crw------- 1 root root 90, 0 Oct 16 19:05 /dev/mtd0
crw------- 1 root root 90, 1 Oct 16 19:05 /dev/mtd0ro
brw-rw---- 1 root disk 31, 0 Oct 16 19:05 /dev/mtdblock0

See also https://github.com/radxa/build/commit/5e03c182130740ecf7904b9730613b27548ff490

They are advertising this at 12v, 15v, 20v. Is the problem being discussed affecting the 5B 1.42.2022.08.29 ?

Also unclear but is it a software / firmware problem, or hardware? I’ve got a 5V, 9V, 12V, 15V, 18V, 20V usb-c 65W adapter coming tomorrow; hoping to stick an NVMe in with wifi.

I’ve also stuck passive coolers on the RAM and will put something 25mm x 25mm x 24-50mm on the die with adhesive or a movable pad.

I guess, judging by the bootloader code, the Rock5B only accepts up to 12V.
Advertising was not the point here… At least not so far.

Here is the link I’m referencing. It might be a translation issue
https://wiki.radxa.com/Rock5/hardware/5b#:~:text=USB%20PD%20power,USB%20C%20plug

Well my power supply supports up to 20V 5A but the Rock5B only negotiates 12V 2A with it.

So long as it negotiates and doesn’t burn itself out I don’t mind. Just seems a strange communication glitch. Excited to see how bloated I can go with 16GB RAM :joy:

please be so kind to explain: is this version updating the SPI from the OS or is the OS doing the neg? just got the package today (btw. if someones in germany an desperately waiting for one: i have a spare 8gb version, that i can lend out for the duration of my parental leave/“no tinkering time”) and want a fast start tomorrow. else i’ll just update the bootloader

well that might take ages to merge… but yeah, good to know.

Have You tried with nvme? On my side with m.2 it hangs and are not able to run. I’ll give a try latest image and more chargers but so far I was not able to run with nvme (few different).

Has been merged 20 hours ago but not arrived in Radxa’s package repository. I updated their Ubuntu Focal image right now and after a reboot still no USB PD negotiations exceeding 12000 mV.

Nope, still only crappy SSDs lying around here.

Mine boots fine without anything in m.2 -
I think it booted once, but drive was not found in system.
As far as I understand it’s safe to supply something like 12V 4A to usb-c (without usb-pd)?

If I understood it correctly then the way Radxa is doing this USB PD stuff currently is still flawed. They enabled lower DRAM clocks to

‘have enough power booting to kernel PD voltage negotiation’

Yes.

For now with nvme I have bootloop:

---DDR Version V1.07 20220412
LPDDR4X, 2112MHz
channel[0] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[1] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[2] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[3] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
change to F1: 528MHz
change to F2: 1068MHz
change to F3: 1560MHz
change to F0: 2112MHz
out
INFO:    Preloader serial: 2
NOTICE:  BL31: v2.3():v2.3-371-g07caf6d56:derrick.huang
NOTICE:  BL31: Built : 12:33:59, May 30 2022
INFO:    ext 32k is not valid
INFO:    GICv3 without legacy support detected.
INFO:    ARM GICv3 driver initialized in EL3
INFO:    system boots from cpu-hwid-0
INFO:    idle_st=0x21fff, pd_st=0x11fff9, repair_st=0xfff70001
INFO:    dfs DDR fsp_params[0].freq_mhz= 2112MHz
INFO:    dfs DDR fsp_params[1].freq_mhz= 528MHz
INFO:    dfs DDR fsp_params[2].freq_mhz= 1068MHz
INFO:    dfs DDR fsp_params[3].freq_mhz= 1560MHz
INFO:    BL31: Initialising Exception Handling Framework
INFO:    BL31: Initializing runtime services
WARNING: No OPTEE provided by BL2 boot loader, Booting device without OPTEE initialization. SMC`s destined for OPTEE will return SMC_UNK
ERROR:   Error initializing runtime service opteed_fast
INFO:    BL31: Preparing for EL3 exit to normal world
INFO:    Entry point address = 0x200000
INFO:    SPSR = 0x3c9
 ----@-q----------DDR Version V1.07 20220412
LPDDR4X, 2112MHz
channel[0] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[1] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[2] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[3] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
change to F1: 528MHz
change to F2: 1068MHz
change to F3: 1560MHz
change to F0: 2112MHz
out
INFO:    Preloader serial: 2
NOTICE:  BL31: v2.3():v2.3-371-g07caf6d56:derrick.huang
NOTICE:  BL31: Built : 12:33:59, May 30 2022
INFO:    ext 32k is not valid
INFO:    GICv3 without legacy support detected.
INFO:    ARM GICv3 driver initialized in EL3
INFO:    system boots from cpu-hwid-0
INFO:    idle_st=0x21fff, pd_st=0x11fff9, repair_st=0xfff70001
INFO:    dfs DDR fsp_params[0].freq_mhz= 2112MHz
INFO:    dfs DDR fsp_params[1].freq_mhz= 528MHz
INFO:    dfs DDR fsp_params[2].freq_mhz= 1068MHz
INFO:    dfs DDR fsp_params[3].freq_mhz= 1560MHz
INFO:    BL31: Initialising Exception Handling Framework
INFO:    BL31: Initializing runtime services
WARNING: No OPTEE provided by BL2 boot loader, Booting device without OPTEE initialization. SMC`s destined for OPTEE will return SMC_UNK
ERROR:   Error initializing runtime service opteed_fast
INFO:    BL31: Preparing for EL3 exit to normal world
INFO:    Entry point address = 0x200000
INFO:    SPSR = 0x3c9
--@x -------~-x?-}--------DDR Version V1.07 20220412
LPDDR4X, 2112MHz
channel[0] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[1] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[2] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[3] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
change to F1: 528MHz
change to F2: 1068MHz
change to F3: 1560MHz
change to F0: 2112MHz
out
INFO:    Preloader serial: 2
NOTICE:  BL31: v2.3():v2.3-371-g07caf6d56:derrick.huang
NOTICE:  BL31: Built : 12:33:59, May 30 2022
INFO:    ext 32k is not valid
INFO:    GICv3 without legacy support detected.
INFO:    ARM GICv3 driver initialized in EL3
INFO:    system boots from cpu-hwid-0
INFO:    idle_st=0x21fff, pd_st=0x11fff9, repair_st=0xfff70001
INFO:    dfs DDR fsp_params[0].freq_mhz= 2112MHz
INFO:    dfs DDR fsp_params[1].freq_mhz= 528MHz
INFO:    dfs DDR fsp_params[2].freq_mhz= 1068MHz
INFO:    dfs DDR fsp_params[3].freq_mhz= 1560MHz
INFO:    BL31: Initialising Exception Handling Framework
INFO:    BL31: Initializing runtime services
WARNING: No OPTEE provided by BL2 boot loader, Booting device without OPTEE initialization. SMC`s destined for OPTEE will return SMC_UNK
ERROR:   Error initializing runtime service opteed_fast
INFO:    BL31: Preparing for EL3 exit to normal world
INFO:    Entry point address = 0x200000
INFO:    SPSR = 0x3c9
-N0----I--@O-----}--{----------ZDDR Version V1.07 20220412
LPDDR4X, 2112MHz
channel[0] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[1] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[2] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[3] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
change to F1: 528MHz
change to F2: 1068MHz
change to F3: 1560MHz
change to F0: 2112MHz
out
INFO:    Preloader serial: 2
NOTICE:  BL31: v2.3():v2.3-371-g07caf6d56:derrick.huang
NOTICE:  BL31: Built : 12:33:59, May 30 2022
INFO:    ext 32k is not valid
INFO:    GICv3 without legacy support detected.
INFO:    ARM GICv3 driver initialized in EL3
INFO:    system boots from cpu-hwid-0
INFO:    idle_st=0x21fff, pd_st=0x11fff9, repair_st=0xfff70001
INFO:    dfs DDR fsp_params[0].freq_mhz= 2112MHz
INFO:    dfs DDR fsp_params[1].freq_mhz= 528MHz
INFO:    dfs DDR fsp_params[2].freq_mhz= 1068MHz
INFO:    dfs DDR fsp_params[3].freq_mhz= 1560MHz
INFO:    BL31: Initialising Exception Handling Framework
INFO:    BL31: Initializing runtime services
WARNING: No OPTEE provided by BL2 boot loader, Booting device without OPTEE initialization. SMC`s destined for OPTEE will return SMC_UNK
ERROR:   Error initializing runtime service opteed_fast
INFO:    BL31: Preparing for EL3 exit to normal world
INFO:    Entry point address = 0x200000
INFO:    SPSR = 0x3c9
 - z
---------DDR Version V1.07 20220412
LPDDR4X, 2112MHz
channel[0] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[1] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[2] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
channel[3] BW=16 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=4096MB
change to F1: 528MHz
change to F2: 1068MHz
change to F3: 1560MHz
change to F0: 2112MHz
out
INFO:    Preloader serial: 2
NOTICE:  BL31: v2.3():v2.3-371-g07caf6d56:derrick.huang
NOTICE:  BL31: Built : 12:33:59, May 30 2022
INFO:    ext 32k is not valid
INFO:    GICv3 without legacy support detected.
INFO:    ARM GICv3 driver initialized in EL3
INFO:    system boots from cpu-hwid-0
INFO:    idle_st=0x21fff, pd_st=0x11fff9, repair_st=0xfff70001
INFO:    dfs DDR fsp_params[0].freq_mhz= 2112MHz
INFO:    dfs DDR fsp_params[1].freq_mhz= 528MHz
INFO:    dfs DDR fsp_params[2].freq_mhz= 1068MHz
INFO:    dfs DDR fsp_params[3].freq_mhz= 1560MHz
INFO:    BL31: Initialising Exception Handling Framework
INFO:    BL31: Initializing runtime services
WARNING: No OPTEE provided by BL2 boot loader, Booting device without OPTEE initialization. SMC`s destined for OPTEE will return SMC_UNK
ERROR:   Error initializing runtime service opteed_fast
INFO:    BL31: Preparing for EL3 exit to normal world
INFO:    Entry point address = 0x200000
INFO:    SPSR = 0x3c9
--*OP
    --------

It’s with nvme connected and latest radxa images on sd or emmc card. Is there anything that I should update (firmware, bootloader?). It’s before system is loaded so I’m not sure if anything from sd card make any changes.

Ask Radxa. I’ve never seen such a stupid board bring-up process like here where early adopters / testers were encouraged to send feedback in a closed Discord channel lacking any public log (as such everything babbled there is lost) while reacting to community questions/suggestions neither here in the forums nor over at Github (1st example, 2nd example introducing stability/reliability issues on a number of boards equipped with ‘weak’ RK3588).

try it without any emmc or sd and compare the log if its th same update the firmware in the spi rom