Cant remember where I got this from, but this is what one site / it may have been here. It says
It may work for some mobos and not for others. Dunno I dont have an NVME to see if this works
1 - Make sure you unplug all SATA and USB drives, the M.2 drive has to be the only drive installed.
2 - Go into the bios, under the boot tab there is an option for CSM, make sure it is disabled.
NO OPTION FOR CMS anywhere in the bios
3 - Click on secure boot option below and make sure it is set to other OS, Not windows UEFI.
NO option to change OS settings under secure boot, secure boot only shows up when you change to win 8_10 compatibility from win 7 compatibility
4 - Click on key management and clear secure boot keys.
NO option unless I make my own boot keys
5 - Insert a USB memory stick with a UEFI bootable iso of Windows 10 on it, USB3 is quicker but USB2 works also. A Windows DVD won’t work unless you’ve created your own UEFI Bootable DVD.
6 - Press F10 to save, exit and reboot.
7 - Windows will now start installing to your NVME drive as it has its own NVME driver built in, I don't think this would work with previous versions.
After a few tries windows did install on the NVMe is just won't boot from it.
8 - When the PC reboots hit F2 to go back into the BIOS, you will see under boot priority that windows boot manager now lists your NVME drive.
No it doesn't
9 - Click on secure boot again but now set it to WIndows UEFI mode.
No option for this in my bios
10 - Click on key management and install default secure boot keys
Option is preset to default boot key
11 - Press F10 to save and exit and windows will finish the install.
Once you have Windows up and running, shutdown the PC and reconnect your other SATA drives. Do not put anything on SATA port 1 as this is now reserved for the NVME drive.
I would also recommend installing the Samsung NVME driver at this point to replace the Windows one.
The background here is NVME SSDs do not appear within the BIOS until Windows creates the system partition with the EFI Boot Sector.
Your M.2 SSD contains UEFI driver information within the firmware. By disabling the CSM module Windows will read and utilize the M.2-specific UEFI driver.
Make sure you do not use SATA port 1 from that point forward!