From 88b041897f382d07a3fdc109dcb87cfc5152b9fe Mon Sep 17 00:00:00 2001 From: Nico Huber Date: Thu, 28 Apr 2022 18:31:48 +0200 Subject: [PATCH] libpayload/nvme: Test for NVMe-command-set bit individually We only need to know if the NVMe command set is supported. Other command-set bits can be set too, but we don't have to care. Fixes init in QEMU which has more command-set bits set by now. Change-Id: I29a693cf8cc13775e94dc671e8d0412ad86fef9c Signed-off-by: Nico Huber Reviewed-on: https://review.coreboot.org/c/coreboot/+/63934 Tested-by: build bot (Jenkins) Reviewed-by: Thomas Heijligen Reviewed-by: Angel Pons --- payloads/libpayload/drivers/storage/nvme.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/payloads/libpayload/drivers/storage/nvme.c b/payloads/libpayload/drivers/storage/nvme.c index 14174cfd83..7bcb05dec1 100644 --- a/payloads/libpayload/drivers/storage/nvme.c +++ b/payloads/libpayload/drivers/storage/nvme.c @@ -321,7 +321,7 @@ static void nvme_init(pcidev_t dev) void *pci_bar0 = phys_to_virt(pci_read_config32(dev, 0x10) & ~0x3ff); - if (!(((read64(pci_bar0) >> 37) & 0xff) == 0x01)) { + if (!(read64(pci_bar0) >> 37 & 0x01)) { printf("NVMe ERROR: PCIe device does not support the NVMe command set\n"); return; }