Take a look here (B450 Pro4):

When you occupy the top M.2 (M2_1) NVME slot, your 2nd x4 PCI-E (PCIE4) slot will be disabled.
When you occupy the bottom M.2 (M2_2) NVME slot, 2 SATA ports out of 6 will be disabled.
What they won't tell you is that you sometimes can't combine 2 NVME drives at once. I had 2 M.2 NVME drives, one slower at 512GB PCI-E x4 3.0 and one faster 1GB PCI-E x4 5.0, the vendor doesn't matter in this instance. Whatever I tried I couldn't get both drives detected at the same time. I had spare M.2 > PCI-E adapter that I used on my Intel Xeon x58 build with clover:

What worked was:
1. Enabling SATA Hotplug
2. Getting the faster drive recognised first in UEFI with the PCI-E > M.2 adapter above at PCI-E x4 slot.
3. Boot to bios and shutdown
4. Plug the slower drive at the bottom M.2 NVME (M2_2) slot
5. At this point NONE of the SATA devices will work when you plug them when pc is off and coldboot but both NVME drives are now working fine, so you need to boot to OS (Linux/Windows - whatever) and now you need to plug your SATA devices one by one.
This humiliation ritual took over a week of troubleshooting half a year ago. But at least everything works...