Hi Guys,
I have an SAMSUNG MZVL21T0HCLR-00BL7 that will not work properly on a Rock 3A. Samsung family PM9A1. Same drive works fine on an Intel Galileo (4.9 kernel).
I have tried many things.
1.) Kernel 4.19, Kernel 5.19
2.) /boot/uEnv.txt adding: extraargs=nvme_core.default_ps_max_latency_us=0 pcie_aspm=off
3.) remove/rescan:
echo 1 > /sys/bus/pci/devices/0002:21:00.0/remove
echo 1 > /sys/bus/pci/rescan
The drive always shows up on “lspci -n” here that is:
0002:21:00.0 0108: 144d:a80a
0108 is NVME of course.
But it does not show up on “lsblk” or “nvme -list” (nvme cli)
Occasionally we get the drives to work, but then while using them, they disappear again.
uname -a
Linux tsarm204 4.19.193-42-rockchip-ge29be2b2ed27 #rockchip SMP Wed Apr 20 01:31:50 UTC 2022 aarch64 aarch64 aarch64 GNU/Linux
lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04 LTS
Release: 20.04
Codename: focal
Here is the “dmesg | grep nvme” from 4.19:
[ 2.558172] nvme nvme0: pci function 0002:21:00.0
[ 2.558407] nvme 0002:21:00.0: enabling device (0000 -> 0002)
[ 4.385290] nvme nvme0: Shutdown timeout set to 10 seconds
[ 35.476782] nvme nvme0: controller is down; will reset: CSTS=0xffffffff, PCI_STATUS=0x10
[ 35.514239] print_req_error: I/O error, dev nvme0n1, sector 2000409088
[ 35.529954] nvme 0002:21:00.0: enabling device (0000 -> 0002)
[ 35.530046] nvme nvme0: Removing after probe failure status: -19
[ 35.553311] Buffer I/O error on dev nvme0n1, logical block 250051136, async page read
We supply separate power to the drive, so we believe our power budget is fine. We have a separate regulator for 3.3V power to the ARM. It has about 5A output (more peak surge) so about 16.5W.
Let me know any feedback or questions.
Thanks
James Meece