Download raw body.
bge(4): Enable use of MSI-X interrupts
Tested on amd64 and arm64.
bge0 at pci26 dev 0 function 0 "Broadcom BCM5720" rev 0x00, BCM5720 A0
(0x5720000), APE firmware NCSI 1.5.14.0: msix, address 34:48:ed:e9:6d:48
brgphy0 at bge0 phy 1: BCM5720C 10/100/1000baseT PHY, rev. 0
bge1 at pci26 dev 0 function 1 "Broadcom BCM5720" rev 0x00, BCM5720 A0
(0x5720000), APE firmware NCSI 1.5.14.0: msix, address 34:48:ed:e9:6d:49
brgphy1 at bge1 phy 2: BCM5720C 10/100/1000baseT PHY, rev. 0
bge0 at pci3 dev 0 function 0 "Broadcom BCM57762" rev 0x00, BCM57766 A0 (0x57766000): msix, address 14:98:77:67:d0:5a
brgphy0 at bge0 phy 1: BCM57765, rev. 0
BCM5720 tested by Hrvoje.
Index: if_bge.c
===================================================================
RCS file: /home/cvs/src/sys/dev/pci/if_bge.c,v
diff -u -p -u -p -r1.404 if_bge.c
--- if_bge.c 14 Apr 2024 03:26:25 -0000 1.404
+++ if_bge.c 29 May 2024 08:50:13 -0000
@@ -2916,7 +2916,8 @@ bge_attach(struct device *parent, struct
}
DPRINTFN(5, ("pci_intr_map\n"));
- if (pci_intr_map_msi(pa, &ih) == 0)
+ if (pci_intr_map_msix(pa, 0, &ih) == 0 ||
+ pci_intr_map_msi(pa, &ih) == 0)
sc->bge_flags |= BGE_MSI;
else if (pci_intr_map(pa, &ih)) {
printf(": couldn't map interrupt\n");
bge(4): Enable use of MSI-X interrupts