diff --git a/arch/x86/cpu/pci.c b/arch/x86/cpu/pci.c
index c209f15..fdfd5f7 100644
--- a/arch/x86/cpu/pci.c
+++ b/arch/x86/cpu/pci.c
@@ -152,23 +152,30 @@
 	return 0;
 }
 
-void pci_assign_irqs(int bus, int device, int func, u8 irq[4])
+void pci_assign_irqs(int bus, int device, u8 irq[4])
 {
 	pci_dev_t bdf;
+	int func;
+	u16 vendor;
 	u8 pin, line;
 
-	bdf = PCI_BDF(bus, device, func);
+	for (func = 0; func < 8; func++) {
+		bdf = PCI_BDF(bus, device, func);
+		vendor = x86_pci_read_config16(bdf, PCI_VENDOR_ID);
+		if (vendor == 0xffff || vendor == 0x0000)
+			continue;
 
-	pin = x86_pci_read_config8(bdf, PCI_INTERRUPT_PIN);
+		pin = x86_pci_read_config8(bdf, PCI_INTERRUPT_PIN);
 
-	/* PCI spec says all values except 1..4 are reserved */
-	if ((pin < 1) || (pin > 4))
-		return;
+		/* PCI spec says all values except 1..4 are reserved */
+		if ((pin < 1) || (pin > 4))
+			continue;
 
-	line = irq[pin - 1];
+		line = irq[pin - 1];
 
-	debug("Assigning IRQ %d to PCI device %d.%x.%d (INT%c)\n",
-	      line, bus, device, func, 'A' + pin - 1);
+		debug("Assigning IRQ %d to PCI device %d.%x.%d (INT%c)\n",
+		      line, bus, device, func, 'A' + pin - 1);
 
-	x86_pci_write_config8(bdf, PCI_INTERRUPT_LINE, line);
+		x86_pci_write_config8(bdf, PCI_INTERRUPT_LINE, line);
+	}
 }
diff --git a/arch/x86/include/asm/pci.h b/arch/x86/include/asm/pci.h
index 56eaa25..f7e968e 100644
--- a/arch/x86/include/asm/pci.h
+++ b/arch/x86/include/asm/pci.h
@@ -72,11 +72,10 @@
  *
  * @bus:	PCI bus number
  * @device:	PCI device number
- * @func:	PCI function number
  * @irq:	An array of IRQ numbers that are assigned to INTA through
  *		INTD of this PCI device.
  */
-void pci_assign_irqs(int bus, int device, int func, u8 irq[4]);
+void pci_assign_irqs(int bus, int device, u8 irq[4]);
 
 #endif /* __ASSEMBLY__ */
 
diff --git a/arch/x86/lib/pirq_routing.c b/arch/x86/lib/pirq_routing.c
index 7a34dcf..ba41169 100644
--- a/arch/x86/lib/pirq_routing.c
+++ b/arch/x86/lib/pirq_routing.c
@@ -98,8 +98,7 @@
 		}
 
 		/* Bus, device, slots IRQs for {A,B,C,D} */
-		pci_assign_irqs(irq->bus, irq->devfn >> 3, irq->devfn & 7,
-				irq_slot);
+		pci_assign_irqs(irq->bus, irq->devfn >> 3, irq_slot);
 
 		irq++;
 	}
