QEMU: Only call `pci_assign_irqs` with non-NULL dev

Do not call `pci_assign_irqs` with a NULL device pointer.

Change-Id: Ide9ae38dedd881ed673ba1838a1e29529b306937
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/55900
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
diff --git a/src/mainboard/emulation/qemu-i440fx/mainboard.c b/src/mainboard/emulation/qemu-i440fx/mainboard.c
index 218c47f..a7c6b32 100644
--- a/src/mainboard/emulation/qemu-i440fx/mainboard.c
+++ b/src/mainboard/emulation/qemu-i440fx/mainboard.c
@@ -24,8 +24,11 @@
 	pc_keyboard_init(NO_AUX_DEVICE);
 
 	/* setup IRQ routing */
-	for (i = 0; i < 32; i++)
-		pci_assign_irqs(pcidev_on_root(i, 0), qemu_i440fx_irqs + (i % 4));
+	for (i = 0; i < 32; i++) {
+		struct device *d = pcidev_on_root(i, 0);
+		if (d)
+			pci_assign_irqs(d, qemu_i440fx_irqs + (i % 4));
+	}
 }
 
 static void qemu_nb_read_resources(struct device *dev)
diff --git a/src/mainboard/emulation/qemu-q35/mainboard.c b/src/mainboard/emulation/qemu-q35/mainboard.c
index e53404d..534f606 100644
--- a/src/mainboard/emulation/qemu-q35/mainboard.c
+++ b/src/mainboard/emulation/qemu-q35/mainboard.c
@@ -31,11 +31,17 @@
 	pc_keyboard_init(NO_AUX_DEVICE);
 
 	/* setup IRQ routing for pci slots */
-	for (i = 0; i < 25; i++)
-		pci_assign_irqs(pcidev_on_root(i, 0), qemu_q35_irqs + (i % 4));
+	for (i = 0; i < 25; i++) {
+		struct device *d = pcidev_on_root(i, 0);
+		if (d)
+			pci_assign_irqs(d, qemu_q35_irqs + (i % 4));
+	}
 	/* setup IRQ routing southbridge devices */
-	for (i = 25; i < 32; i++)
-		pci_assign_irqs(pcidev_on_root(i, 0), qemu_q35_irqs);
+	for (i = 25; i < 32; i++) {
+		struct device *d = pcidev_on_root(i, 0);
+		if (d)
+			pci_assign_irqs(d, qemu_q35_irqs);
+	}
 }
 
 static void qemu_nb_read_resources(struct device *dev)