SSD not recognized


I recently bought a ROCK960 Model C and a M.2 extended board and it doesn’t recognize a Kingston SA1000M8 SSD that I’m plugging in the device before power on.

I’m using the firmware provided in this topic and this is the output of dmesg | grep 'pcie':

[    0.225446] of_get_named_gpiod_flags: parsed 'gpio' property of node '/vcc3v3-pcie-regulator[0]' - status (0)
[    0.225487] reg-fixed-voltage vcc3v3-pcie-regulator: Looking up vin-supply from device tree
[    0.225522] vcc3v3_pcie: supplied by vcc3v3_sys
[    0.225954] vcc3v3_pcie: at 3300 mV 
[    0.226120] reg-fixed-voltage vcc3v3-pcie-regulator: vcc3v3_pcie supplying 0uV
[    0.332497] phy phy-pcie-phy.9: Looking up phy-supply from device tree
[    0.332507] phy phy-pcie-phy.9: Looking up phy-supply property in node /pcie-phy failed
[    0.333914] rockchip-pcie f8000000.pcie: GPIO lookup for consumer ep
[    0.333924] rockchip-pcie f8000000.pcie: using device tree for GPIO lookup
[    0.333951] of_get_named_gpiod_flags: parsed 'ep-gpios' property of node '/pcie@f8000000[0]' - status (0)
[    0.334191] rockchip-pcie f8000000.pcie: Looking up vpcie3v3-supply from device tree
[    0.334202] rockchip-pcie f8000000.pcie: Looking up vpcie3v3-supply property in node /pcie@f8000000 failed
[    0.334216] rockchip-pcie f8000000.pcie: no vpcie3v3 regulator found
[    0.334803] rockchip-pcie f8000000.pcie: Looking up vpcie1v8-supply from device tree
[    0.334813] rockchip-pcie f8000000.pcie: Looking up vpcie1v8-supply property in node /pcie@f8000000 failed
[    0.334823] rockchip-pcie f8000000.pcie: no vpcie1v8 regulator found
[    0.335394] rockchip-pcie f8000000.pcie: Looking up vpcie0v9-supply from device tree
[    0.335404] rockchip-pcie f8000000.pcie: Looking up vpcie0v9-supply property in node /pcie@f8000000 failed
[    0.335414] rockchip-pcie f8000000.pcie: no vpcie0v9 regulator found
[    0.877297] rockchip-pcie f8000000.pcie: PCIe link training gen1 timeout!
[    0.878018] rockchip-pcie: probe of f8000000.pcie failed with error -110

Any help is welcome.

We are on holiday now, I am afraid we will check this tomorrow. Happy Moon Cake Day.

Any news regarding this issue ?

We can confirm it’s a firmware issue. We are working on it now. I will update to you after we fix it.

The fix is to update the u-boot. You can do it with steps below on rock960c:

cd /tmp
sudo dd if=uboot.img of=/dev/mmcblk1 seek=16384

sector 16384 is important because it’s the uboot.img offset. Now you should see /dev/nvme0* devices.

The update doesn’t work for me, fdisk -l doesn’t find any /dev/nvme* device and the output of dmesg is the same.

This issue may be related.

This issue is not related, pcie nvme support is already enabled in the kernel. Could you plug in the M.2 SSD directly in the M.2 connector and boot?

Also, if you have serial console, please check there is

Pci: enable power

at u-boot stage.

I can confirm that if I connect the SSD directly it works correctly.
I think that the M.2 extended board is connected properly, what could be the issue?

In that case, it might be a signal issue or a m.2 extend board issue.

As you know, pcie are high speed bus and if the device is not designed with good signal, the communication might failed.

The m.2 extend board contains with two boards and one FPC, two boards are tested at the factory separately, so we don’t need to mount/remount the M.2 SSD, we just change the FPC cable. The FPC cable we use at the factory is 30cm long, which is far more longer than the shipped one to make sure in worse case the signal still works.

So, if you can test with another brand M.2 SSD and check if it works on the extend board. If yes, it means the Kingston SA1000M8 SSD has compatibility issue. If no, we consider send you another m.2 extend board.

I don’t have another M.2 SSD available. If I buy an USB to TTL cable can I provide more useful information?

No. The USB to TTL can not help for debugging such an issue. We will just send you another m.2 extend board to test. I just send you a PM.

1 Like

Hey, I received the new M.2 extended board today and it’s working perfectly. Thanks!

Could you please test the defective one and check which part exactly not working? It helps us to improve the QA. Thank you.

I have tested each part individually and this is the defective one. Although at first glance I do not see any difference.

1 Like

Thanks for the picture. It seems some pin on the FPC indeed suspicious. Anyway thank you, we will find a way to avoid that in production.