In the spirit of trying to enable MSI for various devices, who wants
to play with bge(4)?

bge0 at pci2 dev 0 function 0 "Broadcom BCM5761" rev 0x10, BCM5761 A1 
(0x5761100): msi, address 00:10:18:4b:23:b4
brgphy0 at bge0 phy 1: BCM5761 10/100/1000baseT PHY, rev. 0

Works for me so far.


Index: if_bge.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/if_bge.c,v
retrieving revision 1.306
diff -u -p -r1.306 if_bge.c
--- if_bge.c    5 Apr 2011 18:01:21 -0000       1.306
+++ if_bge.c    27 May 2011 23:48:27 -0000
@@ -1835,7 +1835,7 @@ bge_attach(struct device *parent, struct
        }
 
        DPRINTFN(5, ("pci_intr_map\n"));
-       if (pci_intr_map(pa, &ih)) {
+       if (pci_intr_map_msi(pa, &ih) != 0 && pci_intr_map(pa, &ih) != 0) {
                printf(": couldn't map interrupt\n");
                goto fail_1;
        }
-- 
Christian "naddy" Weisgerber                          [email protected]

Reply via email to