Raspberry Pi 5 + HatDrive! NET SSD boot hanging

November 25, 2024, 21:52

srcshelton

I have an RPi5 with a HatDrive! NET (https://pineboards.io/products/hatdrive-net-1g-nvme-2230-2242-gen-2-gigabit-ethernet-for-raspberry-pi-5), which boots entirely as expected from MicroSD - and booted like this the SSD is visible and completely usable. Switching over to boot from the SSD, though (by removing the SD card) the bootloader does its thing, the kernel loads and progresses as far as outputting Run /sbin/init as init process (with no following lines regarding arguments, etc.) at which point the machine hangs with the fan spinning at full speed, and not responding to any further input via serial console or USB keyboard. I’ve seen machines be unable to find their root filesystem or have their init sequence fail, or simply kernel-panic - but I’ve never seen this kind of failure before! Could anyone offer any hints as to what I should check next to try to diagnose this further… I’m currently rather stumped 😵‍💫 (This has been a problem with at least the most recent three firmware/official RPi kernel pairs)

thunder07337

Please show a picture of the SSD and how everything is connected.

srcshelton

I'm not in the same place as the RPi system right now - but again, booted from MicroSD everything works exactly as expected and even booting from SSD with no other storage devices present, the bootloader and kernel load, the root filesystem is found, and it gets as far as trying to exec init... so I can't imagine it's a physical connection issue?

srcshelton

If there is any hardware incompatibility, I'd guess it'd be between the Hat and the SSD controller. The details are:
# smartctl -x /dev/nvme0n1
smartctl 7.4 2023-08-01 r5530 [aarch64-linux-6.6.51+rpt-rpi-2712] (local build)
Copyright (C) 2002-23, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Number:                       TS256GMTE400S
Firmware Version:                   V0804S3
PCI Vendor/Subsystem ID:            0x1d79
Controller ID:                      1
NVMe Version:                       1.3
Number of Namespaces:               1
Namespace 1 Size/Capacity:          256,060,514,304 [256 GB]
Namespace 1 Formatted LBA Size:     512
Firmware Updates (0x12):            1 Slot, no Reset required
Optional Admin Commands (0x0007):   Security Format Frmw_DL
Optional NVM Commands (0x0015):     Comp DS_Mngmt Sav/Sel_Feat
Log Page Attributes (0x03):         S/H_per_NS Cmd_Eff_Lg
Maximum Data Transfer Size:         64 Pages
Warning  Comp. Temp. Threshold:     110 Celsius
Critical Comp. Temp. Threshold:     115 Celsius