NVME boot still not working (after SPI flash)

NVME boot is still not working for me

Steps i have done

  1. flashed Debian (official download link on wiki) onto SD card
  2. successfully booted from it !
  3. followed procedure to flash SPI from rock5 itself (with debian booted fro mSD card). Cleared SPI flash, writed bootloader to SPI flash (rock-5b-spi-image-g49da44e116d.img) checked md5sum for /dev/mtdblock0 and image that they match
  4. flashed Debian (official download link on wiki) onto Samsung 970Evo Plus SSD
  5. spilled coffee onto desk, cleaned desk :slight_smile:
  6. inserted SSD to PCIe slot on bottom
  7. removed SD card
  8. tried to boot

Only blue led flashes , nothing happens (no HDMI output or red/blue blinking etc).

What am I doing wrong
Could be Samsung 970Evo Plus SSD unsupported?
My radxa board version is rock 5b v1.42

You can try flashing a different SPI, e.g. rkspi_loader.img (the one described as “Use this if you like to boot armbian from the M.2 NVME SSD”).

This is not helping.
Are there any more “recent builds” of bootloader, i mean this file – rock-5b-spi-image-g49da44e116d.img , which might fix it?

That’s what I’m saying: the page at Rock5/install/spi has three different SPIs, one of them is for NVMe.

tried

  • bootloader for armbian
  • debuging bootloader

in both cases, after inserting nvme disk only blue led flashes and nothing happens.
Even with SD card inserted (together with nvme disk) , boot is not successful.

Only thing you havent tested was an emmc.
Emmc then files to nvme

by the way have u wiped your nvme?

Make sure you wipe it first (just for troubleshooting).

Also spi flash on via emmc on maskrom id say its the best way to do so … but I cant be sure as I havent tried anything via nvme yet emmc hasnt failed to me MicroSD is slightly an hit and miss…

For me spi flash worked via windows via emmc spi flash load file on default spi img.

Idk if it helps probably not but if you desire to try more options I think emmc is the way to go

how sure are you flashed the spi ?

from your writing i get the feeling you didnt flash the spi right ,

and rkdevtool is a little easier to do that

as long there is no uboot with pcie enabled it wont boot from nvme .

i have a nvme with leds and as long i dont have a uboot with nvme enabled the board only sees the nvme after the kernel inits . same with maskrom dont work for that you have to be in loader mode to see the nvme

so first check that your distro on sd/emmc sees the nvme so you know nvme works before trying to boot from uboot.

and with rkdevtool you have to be in loadermode to acces the pcie ,maskrom dont see pcie

1 Like

yes I am confident, i have flashed it correctly
i can even compare md5sum, and it matches :

rock@rock-5b:~$ sudo md5sum /dev/mtdblock0 rock-5b-spi-image-g3caf61a44c2-debug.img 
[sudo] password for rock: 
958cbdb6cf9b2e0841fd76c26930db8f  /dev/mtdblock0
958cbdb6cf9b2e0841fd76c26930db8f  rock-5b-spi-image-g3caf61a44c2-debug.img

and just in case i have even wiped SPI before flashing with zero.img

I am unable to test it since it wont boot even with SD card + SSD (970evo plus 2TB), only with SD card alone
therefore i am really suspicious about compatibility of that SSD.

Also it is important to note, that i am using meanwell DC which is rated 12V 5A (60W), directly connected to USB-C (dummy power). Could that be an issue?

Is there a list of supported NVME disks to try? I will buy another one probably, just to find out if Samsung 970 evo cloud be issue itself.

If You booted from SD card and nvme is visible in lsblk then probably it’s ok, check dmesg for nvme messages and You will know if it’s initialised.

well its not , i can not boot when i have both SD card and NVME inserted.
I am on my way to buy WD Blue SN570 500GB, to see if Samsung was an issue (could be since 2TB NVMe drive could consume much more wattage than rock5b could provide)

This sounds like some power problem, nvme takes bit more power. On my tests I’ve got bootloop on some power adapters and I could see that on UART. Unsupported nvmes gave me pcie link errors but that won’t stop system to boot.
yep, SN570 works fine, I’ve got it connected to two Rock5 and there was no problem with them.

1 Like

Guys, I can confirm , that after replacing Samsung 970Evo Plus with WD Blue SN570, booting from NVME works (after SPI flash)!

Let this thread be an information that Samsung 970 Evo Plus SSD is no-go for ROCK 5 (i guess it consumes too much power)

2 Likes

it is nice to know that it could be that the 970 doesnt work .

only one not working doesn’t mean they all not work ,someone also said xpg 256gb dont work and another user had same drive wich worked out of the box .

i think it better to make a topic where people can post their working and not working setups so we can make a nice overview and people can look up it more easy as 50 topics of the same

so topic working drives , topic green light/bootloops and topic usb-chargers would keep the forum a little clean and more friendly

there is no main topics for such on this forum so there is no oversight of it

1 Like

This list is not that easy to do and support for several nvme can change in time as well as in drivers in some system images builds.
For now easiest way to check compatibility is to search on this forum, discord don’t work for some of us and is not indexable.
Hopefully more and more drives will be supported. I also got one problematic, but just swapped it with SN570 which is OK.

ow i didnt say it is easy but searching through topics to see if your drive works or not or a sticky topic where you can search would already make a huge diffrence l

Hello, after I inserted and placed the nvme disk sumsung 970 EVO 2Tb, my board stopped loading with the eMMC connected nvme disk, I tried to write different images to the SD card, as a result, on the forum I found an armbian image from @balbes150 https://users.armbian.com/balbes150 /rock5b/
And the board started up with the disk

Welcome to Armbian 23.02.0-trunk Jammy with Linux 5.10.110-media

No end-user support: built from trunk

System load:   1%           	Up time:       5 min
Memory usage:  1% of 15.33G 	IP:	       192.168.3.10
CPU temp:      35°C           	Usage of /:    15% of 15G
RX today:      7.5 MiB

[ 8 security updates available, 28 updates total: apt upgrade ]
Last check: 2023-03-05 23:04

[ General system configuration (beta): armbian-config ]

Last login: Sun Mar  5 23:19:49 2023 from 192.168.3.31
root@rock-5b:~# sensors
nvme-pci-0100
Adapter: PCI adapter
Composite:    +43.9°C  (low  = -273.1°C, high = +81.8°C)
                       (crit = +84.8°C)
Sensor 1:     +43.9°C  (low  = -273.1°C, high = +65261.8°C)
Sensor 2:     +63.9°C  (low  = -273.1°C, high = +65261.8°C)

root@rock-5b:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
tmpfs           1.6G  9.8M  1.6G   1% /run
/dev/mmcblk0p1   15G  2.1G   12G  15% /
tmpfs           7.7G     0  7.7G   0% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           7.7G   20K  7.7G   1% /tmp
/dev/zram1       47M  3.0M   41M   7% /var/log
tmpfs           1.6G     0  1.6G   0% /run/user/0
/dev/nvme0n1p1  1.8T   60K  1.7T   1% /home

root@rock-5b:~# smartctl -a /dev/nvme0
smartctl 7.2 2020-12-30 r5155 [aarch64-linux-5.10.110-media] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Number:                       Samsung SSD 970 EVO Plus 2TB
Serial Number:                      S6P1NS0T413847J
Firmware Version:                   4B2QEXM7
PCI Vendor/Subsystem ID:            0x144d
IEEE OUI Identifier:                0x002538
Total NVM Capacity:                 2,000,398,934,016 [2.00 TB]
Unallocated NVM Capacity:           0
Controller ID:                      6
NVMe Version:                       1.3
Number of Namespaces:               1
Namespace 1 Size/Capacity:          2,000,398,934,016 [2.00 TB]
Namespace 1 Utilization:            32,358,219,776 [32.3 GB]
Namespace 1 Formatted LBA Size:     512
Namespace 1 IEEE EUI-64:            002538 542140fdd6
Local Time is:                      Sun Mar  5 23:47:37 2023 +05
Firmware Updates (0x16):            3 Slots, no Reset required
Optional Admin Commands (0x0017):   Security Format Frmw_DL Self_Test
Optional NVM Commands (0x0057):     Comp Wr_Unc DS_Mngmt Sav/Sel_Feat Timestmp
Log Page Attributes (0x0f):         S/H_per_NS Cmd_Eff_Lg Ext_Get_Lg Telmtry_Lg
Maximum Data Transfer Size:         128 Pages
Warning  Comp. Temp. Threshold:     82 Celsius
Critical Comp. Temp. Threshold:     85 Celsius

Supported Power States
St Op     Max   Active     Idle   RL RT WL WT  Ent_Lat  Ex_Lat
 0 +     7.59W       -        -    0  0  0  0        0       0
 1 +     7.59W       -        -    1  1  1  1        0     200
 2 +     7.59W       -        -    2  2  2  2        0    1000
 3 -   0.0500W       -        -    3  3  3  3     2000    1200
 4 -   0.0050W       -        -    4  4  4  4      500    9500

Supported LBA Sizes (NSID 0x1)
Id Fmt  Data  Metadt  Rel_Perf
 0 +     512       0         0

=== START OF SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

SMART/Health Information (NVMe Log 0x02)
Critical Warning:                   0x00
Temperature:                        40 Celsius
Available Spare:                    100%
Available Spare Threshold:          10%
Percentage Used:                    0%
Data Units Read:                    33 [16.8 MB]
Data Units Written:                 63,204 [32.3 GB]
Host Read Commands:                 773
Host Write Commands:                93,503
Controller Busy Time:               0
Power Cycles:                       50
Power On Hours:                     0
Unsafe Shutdowns:                   47
Media and Data Integrity Errors:    0
Error Information Log Entries:      0
Warning  Comp. Temperature Time:    0
Critical Comp. Temperature Time:    0
Temperature Sensor 1:               40 Celsius
Temperature Sensor 2:               48 Celsius

Error Information (NVMe Log 0x01, 16 of 64 entries)
No Errors Logged

Before that, there was a sumsung 980 nvme disk on 1Tb and there were no problems on a regular armbian

Interesting, what Power Adapter are you using?

@balbes150 clearly indicated that PD is disabled in his bootloader, so you need a stupid 5V power supply, and preferably 12V up to 5A with an adapter to USB-C

so even more trouble

I solved this problem on my end by using the ubuntu-rockchip image.

See this issue

I’m finally able to boot from NVMe.

1 Like