M.2 NVME not detected by Ubuntu server or Debian images, but detected by Android image


I have a Toshiba OCZ RC100 M.2 2242 NVME board which works fine and is detected by the Android 7.1 image, but not by either the Debian or Ubuntu Server images - in fact no M.2 PCIE device is detected by the debian/ubuntu images (I also have an M.2 ethernet card which I know is working)

I need to use Ubuntu server for my project

Is there something missing in the device tree/uboot that I should change?

I’ve recently run into a similar issue with the M.2 port on Rock960.

Check the output of dmesg | grep pci. In my case, I see:

rockchip-pcie f8000000.pcie: PCIe link training gen1 timeout!
rockchip-pcie: probe of f8000000.pcie failed with error -110 

Apparently updating to a newer kernel, 5.4.6+ fixes this group of issues. More info at https://github.com/rockchip-linux/kernel/issues/116 and https://github.com/google-coral/edgetpu/issues/140#issuecomment-652614479