I purchased a Cisco WAVE-294 device which came with a Cisco WAVE-INLN-GE-4T-RF expansion card, providing 4 1Gbe RJ45 ports. The device also has 2 built-in 1Gbe ports. I'm running OPNsense on it. The built in ports correctly get recognized as `em0` and `em1` respectively, and function as expected. The 4 ports on the expansion card get recognized as `igb0` to `igb3`, and I'm able to configure them in OPNsense just as expected. The issue is, I'm unable to get anything to transmit on any of the 4 `igbx` ports, no blinking LEDs, just a green status LED indicating that the expansion card has power.
Output of `ifconfig -a`:
igb0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
description: OPT1 (opt1)
options=4e527bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6,HWSTATS,MEXTPG>
ether f4:cf:e2:11:ac:32
inet 192.168.100.1 netmask 0xffffff00 broadcast 192.168.100.255
inet6 fe80::f6cf:e2ff:fe11:ac32%igb0 prefixlen 64 scopeid 0x1
media: Ethernet 1000baseT <full-duplex> (autoselect)
status: no carrier
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
igb1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
description: OPT2 (opt2)
options=4802028<VLAN_MTU,JUMBO_MTU,WOL_MAGIC,HWSTATS,MEXTPG>
ether f4:cf:e2:11:ac:33
inet6 fe80::f6cf:e2ff:fe11:ac33%igb1 prefixlen 64 scopeid 0x2
media: Ethernet autoselect
status: no carrier
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
igb2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
description: OPT3 (opt3)
options=4802028<VLAN_MTU,JUMBO_MTU,WOL_MAGIC,HWSTATS,MEXTPG>
ether f4:cf:e2:11:ac:34
inet6 fe80::f6cf:e2ff:fe11:ac34%igb2 prefixlen 64 scopeid 0x3
media: Ethernet autoselect
status: no carrier
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
igb3: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
description: OPT4 (opt4)
options=4802028<VLAN_MTU,JUMBO_MTU,WOL_MAGIC,HWSTATS,MEXTPG>
ether f4:cf:e2:11:ac:35
inet6 fe80::f6cf:e2ff:fe11:ac35%igb3 prefixlen 64 scopeid 0x4
media: Ethernet autoselect
status: no carrier
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
em0: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
description: LAN (lan)
options=4800028<VLAN_MTU,JUMBO_MTU,HWSTATS,MEXTPG>
ether f4:cf:e2:4c:a1:5f
inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
inet6 fe80::f6cf:e2ff:fe4c:a15f%em0 prefixlen 64 scopeid 0x5
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
Everything looks like it should work, but I cannot get it to recognize the link as `active` instead of `no-carrier`
Steps tried so far:
Load up PFSense in case it's something with OPNsense
Reset interface via the shell
Disconnect/reconnect the expansion card
Several reboots
Several interface configs (DHCP, Static IPv4)
Nothing seems to work and there's nothing in the logs that would indicate an issue with the drivers or the card itself.
Any help or pointers on what I could try/check would be really appreciated at this
- OPNsense version: 24.7.4_1
- PFsense version (for testing only): 2.7.2
Is it on the HCL? https://www.freebsd.org/releases/14.0R/hardware/
Yes, the igb driver seems to get picked up correctly too.
It's an Intel 82576 controller.
Output of pciconf -lv | grep -A4 igb:
igb0@pci0:6:0:0: class=0x020000 rev=0x01 hdr=0x00 vendor=0x8086 device=0x10c9 subvendor=0x1137 subdevice=0x00a2
vendor = 'Intel Corporation'
device = '82576 Gigabit Network Connection'
class = network
subclass = ethernet
igb1@pci0:6:0:1: class=0x020000 rev=0x01 hdr=0x00 vendor=0x8086 device=0x10c9 subvendor=0x1137 subdevice=0x00a2
vendor = 'Intel Corporation'
device = '82576 Gigabit Network Connection'
class = network
subclass = ethernet
igb2@pci0:7:0:0: class=0x020000 rev=0x01 hdr=0x00 vendor=0x8086 device=0x10c9 subvendor=0x1137 subdevice=0x00a2
vendor = 'Intel Corporation'
device = '82576 Gigabit Network Connection'
class = network
subclass = ethernet
igb3@pci0:7:0:1: class=0x020000 rev=0x01 hdr=0x00 vendor=0x8086 device=0x10c9 subvendor=0x1137 subdevice=0x00a2
vendor = 'Intel Corporation'
device = '82576 Gigabit Network Connection'
class = network
subclass = ethernet
Output of dmesg | grep igb"
igb0: <Intel(R) PRO/1000 82576> port 0xc020-0xc03f mem 0xfe3a0000-0xfe3bffff,0xfe380000-0xfe39ffff,0xfe3c4000-0xfe3c7fff irq 16 at device 0.0 on pci5
igb0: EEPROM V2.0-2 eTrack 0x0001398d
igb0: Using 1024 TX descriptors and 1024 RX descriptors
igb0: Using 2 RX queues 2 TX queues
igb0: Using MSI-X interrupts with 3 vectors
igb0: Ethernet address: f4:cf:e2:11:ac:32
igb0: netmap queues/slots: TX 2/1024, RX 2/1024
igb1: <Intel(R) PRO/1000 82576> port 0xc000-0xc01f mem 0xfe340000-0xfe35ffff,0xfe320000-0xfe33ffff,0xfe3c0000-0xfe3c3fff irq 17 at device 0.1 on pci5
igb1: EEPROM V2.0-2 eTrack 0x0001398d
igb1: Using 1024 TX descriptors and 1024 RX descriptors
igb1: Using 2 RX queues 2 TX queues
igb1: Using MSI-X interrupts with 3 vectors
igb1: Ethernet address: f4:cf:e2:11:ac:33
igb1: netmap queues/slots: TX 2/1024, RX 2/1024
igb2: <Intel(R) PRO/1000 82576> port 0xb020-0xb03f mem 0xfe2a0000-0xfe2bffff,0xfe280000-0xfe29ffff,0xfe2c4000-0xfe2c7fff irq 17 at device 0.0 on pci6
igb2: EEPROM V2.0-2 eTrack 0x0001398d
igb2: Using 1024 TX descriptors and 1024 RX descriptors
igb2: Using 2 RX queues 2 TX queues
igb2: Using MSI-X interrupts with 3 vectors
igb2: Ethernet address: f4:cf:e2:11:ac:34
igb2: netmap queues/slots: TX 2/1024, RX 2/1024
igb3: <Intel(R) PRO/1000 82576> port 0xb000-0xb01f mem 0xfe240000-0xfe25ffff,0xfe220000-0xfe23ffff,0xfe2c0000-0xfe2c3fff irq 18 at device 0.1 on pci6
igb3: EEPROM V2.0-2 eTrack 0x0001398d
igb3: Using 1024 TX descriptors and 1024 RX descriptors
igb3: Using 2 RX queues 2 TX queues
igb3: Using MSI-X interrupts with 3 vectors
igb3: Ethernet address: f4:cf:e2:11:ac:35
igb3: netmap queues/slots: TX 2/1024, RX 2/1024