Open Jixel opened 1 month ago
I'm pretty SN850X PCIe 4 devices don't work at GEN2 and are incompatible, please check that it works under Linux. If not it's not going to work as a boot device.
If I remove the Hat and connect SN850X via USB with a pcie/usb adapter, rpi5 bootloader runs correctly from USB and rpi5 works fine. I have read that the latest version of pieeprom has introduced compatibility with the WD SN350, SN550 and SN580 series. Could this be a potential solution?
https://wiki.geekworm.com/NVMe_SSD_boot_with_the_Raspberry_Pi_5
To add more detail to my previous comment the question is does NVMe work natively under Linux when the Pi is booted from SD i.e. can you mount the drive, copy files, run dd tests etc.
If a USB adapter is added then the NVMe is talking to a PCIe interface inside the adapter and not the BCM2712 PCIe RC. Linux now just sees a USB-MSD device with some flash memory.
If you want to try a more recent bootloader then flash RPi OS to a spare SD-card, run "sudo rpi-update" then check the native NVMe behavior. There are some improvements for timing and switches.
However, there are some WD Black devices which only work at Gen4 and if these don't work natively from Linux then they definitely aren't going to work with the bootloader.
Hi timg236, Folllowing your steps:
Format nvme to exFat.
Connect SN850X by Pcie (Hat) to rpi5.
Use microSD to boot rpi5.
Rpi5 runs, detects nvme and I mount it.
Copy files ok.
But... same error, rpi5 can't boot from WD_Black SN850X. Any other suggestions?
Thanks a lots
I am in the same boat... my pineberry HatDrive! Bottom 2024/v5 won't let Raspberry Pi OS detect my WD 850X. I tried it all by now...
@Jixel's log (in a screenshot, so not exactly searchable) shows an unhappy NVME interface with various error messages. Booting from an SD card but with the NVME drive attached, what does dmesg | grep nvme
report for you?
dmesg | grep nvme
[ 0.000000] Kernel command line: reboot=w coherent_pool=1M 8250.nr_uarts=1 pci=pcie_bus_safe smsc95xx.macaddr=D8:3A:DD:D7:FD:85 vc_mem.mem_base=0x3fc00000 vc_mem.mem_size=0x40000000 console=tty1 root=PARTUUID=5a7c6c55-02 rootfstype=ext4 fsck.repair=yes rootwait cfg80211.ieee80211_regdom=DE nvme_core.default_ps_max_latency_us=2500
...so basically returns only a desperate attempt of trying everything I found on the interweb. I think I will bring back this SSD to the shop as my Samsung "just works" with the latest gen HatDrive! ...
I just got a new pi5 + M.2 Hat+ today with this same exact drive and same error. however, I can boot from SD and access this drive normally when connected to the hat. so the drive does work. just not for boot.
I tried Geerling's old guide which uses rpi-clone and that got quit a bit further into the boot, but ended up in the same spot with a timeout waiting for the drive to show up.
Describe the bug
ISSUE: RaspBerry Pi5 8G + Hat Geekworm X1015 + nvme WD_Black SN850X 2Tb PCIe 4.0. Bootloader doesn't detect nvme WD_Black SN850X
TEST: RaspBerry Pi5 8G + Hat Geekworm X1015 + nvme SABRENT Rocket Nano 2242 512Gb PCIe 3.0 Bootloader works fine and detect and run Raspberry Pi OS
Steps to reproduce the behaviour
sudo apt update sudo apt upgrade sudo rpi-eeprom-update -a
BOOT_ORDER=0xf146 PCIE_PROBE=1
config.txt dtparam=nvme dtparam=pciex1_gen=3
Device (s)
Raspberry Pi 5
Bootloader configuration.
BOOT_UART=1 POWER_OFF_ON_HALT=0 BOOT_ORDER=0xf146 PCIE_PROBE=1
System
EEPROM
BOOTLOADER: up to date CURRENT: lun 23 sep 2024 13:02:56 UTC (1727096576) LATEST: lun 23 sep 2024 13:02:56 UTC (1727096576) RELEASE: latest (/lib/firmware/raspberrypi/bootloader-2712/latest) Use raspi-config to change the release.
config.txt
dtparam=nvme dtparam=pciex1_gen=3
Bootloader logs
No response
USB boot
No response
NVMe boot
No response
Network (TFTP boot)
No response