I have an old motherboard that doesn't support nvme boot. I've connected nvme disk using a pci-e expansion card.
NVME is detected in windows and Linux when booted up from old HDD.
Since my motherboard doesn't support nvme boot I installed grub2 in my old hdd to boot nvme using GRUB.
The problem is, GRUB isn't detecting the nvme disk at all. In the grub command line ls gives (hd0,msdos1),(hd0,msdos2),.....(hd0,msdos10)(hd1,msdos1) (my old hdd partitions  and usb flash disk )
I tried
insomd pci
insmod lspci
insmod setpci
insmod pcidump
then ls but after all that still Nvme isn't listed.
I tried EasyBSD for Windows Boot Manager too but the same problem
Finally I installed my /boot partition in old hdd and / (and swap ...) in nvme and successfully booted my Ubuntu and Kali.
Now I can install and boot Linux from nvme but for Windows this trick doesn't work because Windows can't have a separate /boot on a different partition.
How can I make GRUB detect pcie nvme disk like Linux kernel?
OR
How can I make Windows install its boot files on one partition and other files on a different partition?
OR
Is there any other boot loader that supports both Windows and Linux and pci-e devices (hard disk)?
 
    