This is mostly extra notes to my recent separate threads about how to UEFI-boot OpenBSD in various ways. The following OS-unrelated factors added ambiguity when trying to figure how to UEFI-boot.
I started with a particular machine from 2013. Whatever I tried, it would just not boot off a PCIe NVME SSD: I'd install the OS on the SSD, and the installation process worked out perfectly, but it wouldn't boot, neither in UEFI/GPT nor in legacy/MBR/BIOS mode. I tried with using an USB memory stick with the OpenBSD boot loader on it as trampoline for the boot process. Interestingly, the MBR boot loader *would identify* the SSD *but could not read* from it. The UEFI boot loader (BOOTX64.EFI) would both identify the SSD and could read on it! Hence we're seeing a system with weird one-quarter-support. How unintuitive is that. While figuring my way through that problem, I stumbled on mentionings that at least two PCIe NVME SSD models apparently include legacy ROM:s to provide AMD64 (and I think ARM64) BIOS legacy disk IO on a system where the BIOS otherwise would have no PCIe NVME SSD support at all. Primary models with legacy are Samsung 950 Pro  and Intel 750. This could be useful for getting a higher-speed SSD on an older computer for someone. Samsung ditched the legacy ROM thing quickly though so Samsung 960 and other newer SSD:s will not have it . The drive I got going by the UEFI USB boot disk trick, is a Samsung 960. For older machines, there may also be ways to patch UEFI firmware to support PCIe NVME SSD:s , didn't try though. Tinker  https://web.archive.org/web/20161027233731/http://www.samsung.com/semiconductor/minisite/ssd/downloads/document/Samsung_SSD_950_PRO_White_paper.pdf  https://us.community.samsung.com/t5/Memory-Storage/960-Pro-Evo-Boot-Support/td-p/66895  https://audiocricket.com/2016/12/31/booting-samsung-sm961-on-asus-p6t-se-mainboard/