src icon indicating copy to clipboard operation
src copied to clipboard

igc driver does not attach to the I225-V NIC

Open macpijan opened this issue 2 years ago • 2 comments

Important notices

Before you add a new report, we ask you kindly to acknowledge the following:

  • [X] I have read the contributing guide lines at https://github.com/opnsense/src/blob/master/CONTRIBUTING.md
  • [X] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/src/issues?q=is%3Aissue

Describe the bug

The igc driver does not attach to the I225-V NIC device.

To Reproduce

  1. Boot the platform with OPNsense live disk.
  2. Observe that ther are no igc interfaces detected
  3. Observe the igc driver erros in logs (attached in logs section)

Expected behavior

I'd expect the 6x igc devices to show up (the platform has 6 x I225-V NICs).

Describe alternatives you considered

I tried various Linux and FreeBSD distributions and versions. The card is detected fine with Linux drivers.

The igc driver also attaches correctly after this commit was added to FreeBSD: https://github.com/freebsd/freebsd-src/commit/6f3c0d2764f230444818a95009028861493c1594

Screenshots

N/A

Relevant log files

pciconf:

none3@pci0:1:0:0:       class=0x020000 rev=0x03 hdr=0x00 vendor=0x8086 device=0x15f3 subvendor=0x8086 subdevice=0x0000
    vendor     = 'Intel Corporation'
    device     = 'Ethernet Controller I225-V'
    class      = network
    subclass   = ethernet
    bar   [10] = type Memory, range 32, base 0xb2100000, size 1048576, enabled
    bar   [1c] = type Memory, range 32, base 0xb2200000, size 16384, enabled
    cap 01[40] = powerspec 3  supports D0 D3  current D0
    cap 05[50] = MSI supports 1 message, 64 bit, vector masks
    cap 11[70] = MSI-X supports 5 messages
                 Table in map 0x1c[0x0], PBA in map 0x1c[0x2000]
    cap 10[a0] = PCI-Express 2 endpoint max data 256(512) FLR RO NS
                 max read 512
                 link x1(x1) speed 5.0(5.0) ASPM disabled(L1)
    ecap 0001[100] = AER 2 0 fatal 0 non-fatal 0 corrected
    ecap 0003[140] = Serial 1 00e067ffff1c28c4
    ecap 0018[1c0] = LTR 1
    ecap 001f[1f0] = Precision Time Measurement 1
    ecap 001e[1e0] = L1 PM Substates 1
none4@pci0:2:0:0:       class=0x020000 rev=0x03 hdr=0x00 vendor=0x8086 device=0x15f3 subvendor=0x8086 subdevice=0x0000
    vendor     = 'Intel Corporation'
    device     = 'Ethernet Controller I225-V'
    class      = network
    subclass   = ethernet
    bar   [10] = type Memory, range 32, base 0xb1e00000, size 1048576, enabled
    bar   [1c] = type Memory, range 32, base 0xb1f00000, size 16384, enabled
    cap 01[40] = powerspec 3  supports D0 D3  current D0
    cap 05[50] = MSI supports 1 message, 64 bit, vector masks
    cap 11[70] = MSI-X supports 5 messages
                 Table in map 0x1c[0x0], PBA in map 0x1c[0x2000]
    cap 10[a0] = PCI-Express 2 endpoint max data 256(512) FLR RO NS
                 max read 512
                 link x1(x1) speed 5.0(5.0) ASPM disabled(L1)
    ecap 0001[100] = AER 2 0 fatal 0 non-fatal 0 corrected
    ecap 0003[140] = Serial 1 00e067ffff1c28c5
    ecap 0018[1c0] = LTR 1
    ecap 001f[1f0] = Precision Time Measurement 1
    ecap 001e[1e0] = L1 PM Substates 1
none5@pci0:3:0:0:       class=0x020000 rev=0x03 hdr=0x00 vendor=0x8086 device=0x15f3 subvendor=0x8086 subdevice=0x0000
    vendor     = 'Intel Corporation'
    device     = 'Ethernet Controller I225-V'
    class      = network
    subclass   = ethernet
    bar   [10] = type Memory, range 32, base 0xb1b00000, size 1048576, enabled
    bar   [1c] = type Memory, range 32, base 0xb1c00000, size 16384, enabled
    cap 01[40] = powerspec 3  supports D0 D3  current D0
    cap 05[50] = MSI supports 1 message, 64 bit, vector masks
    cap 11[70] = MSI-X supports 5 messages
                 Table in map 0x1c[0x0], PBA in map 0x1c[0x2000]
    cap 10[a0] = PCI-Express 2 endpoint max data 256(512) FLR RO NS
                 max read 512
                 link x1(x1) speed 5.0(5.0) ASPM disabled(L1)
    ecap 0001[100] = AER 2 0 fatal 0 non-fatal 0 corrected
    ecap 0003[140] = Serial 1 00e067ffff1c28c6
    ecap 0018[1c0] = LTR 1
    ecap 001f[1f0] = Precision Time Measurement 1
    ecap 001e[1e0] = L1 PM Substates 1
none6@pci0:4:0:0:       class=0x020000 rev=0x03 hdr=0x00 vendor=0x8086 device=0x15f3 subvendor=0x8086 subdevice=0x0000
    vendor     = 'Intel Corporation'
    device     = 'Ethernet Controller I225-V'
    class      = network
    subclass   = ethernet
    bar   [10] = type Memory, range 32, base 0xb1800000, size 1048576, enabled
    bar   [1c] = type Memory, range 32, base 0xb1900000, size 16384, enabled
    cap 01[40] = powerspec 3  supports D0 D3  current D0
    cap 05[50] = MSI supports 1 message, 64 bit, vector masks
    cap 11[70] = MSI-X supports 5 messages
                 Table in map 0x1c[0x0], PBA in map 0x1c[0x2000]
    cap 10[a0] = PCI-Express 2 endpoint max data 256(512) FLR RO NS
                 max read 512
                 link x1(x1) speed 5.0(5.0) ASPM disabled(L1)
    ecap 0001[100] = AER 2 0 fatal 0 non-fatal 0 corrected
    ecap 0003[140] = Serial 1 00e067ffff1c28c7
    ecap 0018[1c0] = LTR 1
    ecap 001f[1f0] = Precision Time Measurement 1
    ecap 001e[1e0] = L1 PM Substates 1
none7@pci0:5:0:0:       class=0x020000 rev=0x03 hdr=0x00 vendor=0x8086 device=0x15f3 subvendor=0x8086 subdevice=0x0000
    vendor     = 'Intel Corporation'
    device     = 'Ethernet Controller I225-V'
    class      = network
    subclass   = ethernet
    bar   [10] = type Memory, range 32, base 0xb1500000, size 1048576, enabled
    bar   [1c] = type Memory, range 32, base 0xb1600000, size 16384, enabled
    cap 01[40] = powerspec 3  supports D0 D3  current D0
    cap 05[50] = MSI supports 1 message, 64 bit, vector masks
    cap 11[70] = MSI-X supports 5 messages
                 Table in map 0x1c[0x0], PBA in map 0x1c[0x2000]
    cap 10[a0] = PCI-Express 2 endpoint max data 256(512) FLR RO NS
                 max read 512
                 link x1(x1) speed 5.0(5.0) ASPM disabled(L1)
    ecap 0001[100] = AER 2 0 fatal 0 non-fatal 0 corrected
    ecap 0003[140] = Serial 1 00e067ffff1c28c8
    ecap 0018[1c0] = LTR 1
    ecap 001f[1f0] = Precision Time Measurement 1
    ecap 001e[1e0] = L1 PM Substates 1
none8@pci0:6:0:0:       class=0x020000 rev=0x03 hdr=0x00 vendor=0x8086 device=0x15f3 subvendor=0x8086 subdevice=0x0000
    vendor     = 'Intel Corporation'
    device     = 'Ethernet Controller I225-V'
    class      = network
    subclass   = ethernet
    bar   [10] = type Memory, range 32, base 0xb1200000, size 1048576, enabled
    bar   [1c] = type Memory, range 32, base 0xb1300000, size 16384, enabled
    cap 01[40] = powerspec 3  supports D0 D3  current D0
    cap 05[50] = MSI supports 1 message, 64 bit, vector masks
    cap 11[70] = MSI-X supports 5 messages
                 Table in map 0x1c[0x0], PBA in map 0x1c[0x2000]
    cap 10[a0] = PCI-Express 2 endpoint max data 256(512) FLR RO NS
                 max read 512
                 link x1(x1) speed 5.0(5.0) ASPM disabled(L1)
    ecap 0001[100] = AER 2 0 fatal 0 non-fatal 0 corrected
    ecap 0003[140] = Serial 1 00e067ffff1c28c9
    ecap 0018[1c0] = LTR 1
    ecap 001f[1f0] = Precision Time Measurement 1
    ecap 001e[1e0] = L1 PM Substates 1

dmesg:

root@OPNsense:~ # dmesg | grep igc
igc0: <Intel(R) Ethernet Controller I225-V> mem 0xb2100000-0xb21fffff,0xb2200000-0xb2203fff irq 16 at device 0.0 on pci1
igc0: Setup of Shared code failed, error -2
igc0: IFDI_ATTACH_PRE failed 6
device_attach: igc0 attach returned 6
igc0: <Intel(R) Ethernet Controller I225-V> mem 0xb1e00000-0xb1efffff,0xb1f00000-0xb1f03fff irq 17 at device 0.0 on pci2
igc0: Setup of Shared code failed, error -2
igc0: IFDI_ATTACH_PRE failed 6
device_attach: igc0 attach returned 6
igc0: <Intel(R) Ethernet Controller I225-V> mem 0xb1b00000-0xb1bfffff,0xb1c00000-0xb1c03fff irq 18 at device 0.0 on pci3
igc0: Setup of Shared code failed, error -2
igc0: IFDI_ATTACH_PRE failed 6
device_attach: igc0 attach returned 6
igc0: <Intel(R) Ethernet Controller I225-V> mem 0xb1800000-0xb18fffff,0xb1900000-0xb1903fff irq 19 at device 0.0 on pci4
igc0: Setup of Shared code failed, error -2
igc0: IFDI_ATTACH_PRE failed 6
...

Additional context

I'm wondering if there is also a roadmap for patch releases, as there is for major/minor releases: https://opnsense.org/about/road-map/

I'm very interesed in having my platform being supported by the next OPNsense patch release. Any idea when it is planned? Can the reference commit be introduced? Can I help with that somehow? Thanks.

Environment

Software version used and hardware type if relevant, e.g.:

OPNsense 22.1.2 (amd64, OpenSSL). Network Intel® I225-V

macpijan avatar Mar 22 '22 16:03 macpijan

FWIW, I also have an I225-V (on an MSI PRO Z690-A board) that is behaving the same as yours on 22.1.6 which shows up as:

none5@pci0:5:0:0: class=0x020000 rev=0x03 hdr=0x00 vendor=0x8086 device=0x15f3 subvendor=0x1462 subdevice=0x7d25

zenwheel avatar May 08 '22 05:05 zenwheel

What solved the problem in my case so far was having the manufacturer to update firmware of the NIC. In such a case, a workaround from FreeBSD was no longer necessary.

macpijan avatar May 09 '22 13:05 macpijan

Closing since OP noted it was solved.

fichtner avatar Oct 17 '22 06:10 fichtner