VIM3 NVMe SSD Detection Failure. Multiple solutions attempted

Hello,

Unfortunately I have spent the past 2 days attempting to get this board to work to no avail. I’ve tried:

  • U-Boot 2015
  • U-Boot Mainline
  • Ubuntu Focal 4.9
  • Ubuntu Focal 5.7
  • KBI Setting PCIe mode
  • Ubuntu CLI PCIe mode (Only works in 4.9, 5.7 the module does not exist under /sys)
  • Serial Debugging
  • USB-C Flashing

None of these options have resulted in even a detection of any of the NVMe’s I’ve tried, especially the WD SN550 which has been reported to “work” on this forum.

Dmesg output:
root@Khadas:/home/khadas# dmesg | grep -i pci
[ 0.075180] PCI: CLS 0 bytes, default 64
[ 0.337521] dw-pcie fc000000.pcie: IRQ index 1 not found
[ 0.337811] meson-pcie fc000000.pcie: get phy failed, -517
[ 1.208270] ehci-pci: EHCI PCI platform driver
[ 1.223962] ohci-pci: OHCI PCI platform driver
[ 1.461127] dw-pcie fc000000.pcie: IRQ index 1 not found
[ 1.467523] meson-pcie fc000000.pcie: host bridge /soc/pcie@fc000000 ranges:
[ 1.475766] meson-pcie fc000000.pcie: IO 0x00fc600000…0x00fc6fffff -> 0x0000000000
[ 1.490335] meson-pcie fc000000.pcie: MEM 0x00fc700000…0x00fdffffff -> 0x00fc700000
[ 1.545112] meson-pcie fc000000.pcie: error: wait linkup timeout
[ 1.693936] meson-pcie fc000000.pcie: error: wait linkup timeout
[ 1.835385] meson-pcie fc000000.pcie: error: wait linkup timeout
[ 1.976761] meson-pcie fc000000.pcie: error: wait linkup timeout
[ 2.118130] meson-pcie fc000000.pcie: error: wait linkup timeout
[ 2.259507] meson-pcie fc000000.pcie: error: wait linkup timeout
[ 2.408203] meson-pcie fc000000.pcie: error: wait linkup timeout
[ 2.549689] meson-pcie fc000000.pcie: error: wait linkup timeout
[ 2.691063] meson-pcie fc000000.pcie: error: wait linkup timeout
[ 2.832440] meson-pcie fc000000.pcie: error: wait linkup timeout
[ 2.932802] meson-pcie fc000000.pcie: Phy link never came up
[ 2.932833] meson-pcie fc000000.pcie: failed to initialize host
[ 2.938684] meson-pcie fc000000.pcie: Add PCIe port failed, -110

If anyone can help me get this to work today that would be great. I’d really like to use this board in our prototype sensor fusion device given its cost/performance ratio and the NPU (future proofing for realtime SLAM). I have until end of business today ~5 hours before I have to return this board to DigiKey and scrap Khadas from our purchasing options.

Have you checked Android? Also the same result?

Unfortunately Android is incompatible with our project. Headless Linux is the required platform.

Have you checked this image? The PCIe should work without problem. And have you checked other SSD? Samsung EVO 960/970.

https://dl.khadas.com/Firmware/VIM3/Ubuntu/EMMC/VIM3_Ubuntu-server-focal_Linux-4.9_arm64_EMMC_V0.9-20200530.7z

That was the first image tried. Results in dmesg were the same. Oddly enough, if I remove and re-insert either of the ssd’s i’ve tried, I get dmesg complaints:

[ 888.331005] usb 1-1.3: new full-speed USB device number 7 using xhci-hcd
[ 888.431010] usb 1-1.3: device descriptor read/64, error -32
[ 888.639009] usb 1-1.3: device descriptor read/64, error -32
[ 888.847001] usb 1-1.3: new full-speed USB device number 8 using xhci-hcd
[ 888.947010] usb 1-1.3: device descriptor read/64, error -32
[ 889.155011] usb 1-1.3: device descriptor read/64, error -32
[ 889.263040] usb 1-1-port3: attempt power cycle
[ 889.887003] usb 1-1.3: new full-speed USB device number 9 using xhci-hcd
[ 889.887062] usb 1-1.3: Device not responding to setup address.
[ 890.095060] usb 1-1.3: Device not responding to setup address.
[ 890.303002] usb 1-1.3: device not accepting address 9, error -71
[ 890.403004] usb 1-1.3: new full-speed USB device number 10 using xhci-hcd
[ 890.403063] usb 1-1.3: Device not responding to setup address.
[ 890.611060] usb 1-1.3: Device not responding to setup address.
[ 890.819004] usb 1-1.3: device not accepting address 10, error -71
[ 890.819510] usb 1-1-port3: unable to enumerate USB device

USB errors? What device you attached?

NVMe Drive. Most often testing with the WD Blue SN550 NVMe SSd

Please take a photo of your board and all the connections.

Thank you for the attempt.

I’ve already disassembled the serial interface I created with a RPI-4 (which will now replace the VIM3), and repackaged the VIM3. You’re welcome to test out whats wrong with the board once it arrives back from RMA. I had hoped there would be a more detailed solution available, code, or other diagnostics available.

As to why connecting an M.2 board would trigger usb messages in dmesg, that will now be for you to decipher. It didn’t work, there are no solutions posted that I have not tried that work. I can only assume faulty hardware or software. I can no longer spend time on this. I’m sorry that I will not be able to use Khadas in the future.

My apologies if I came off rude above.

Its been a very frustrating two days with your product and its documentation or lack thereof. And, If I’m being honest, I was insulted by the request for a photo of the connections. Its a request you make when you do not believe what is being reported and are looking to find a simple solution. A solution that does not exist.

I’m sorry I won’t be able to use your product.

Best of luck in future.