Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Intel Ethernet Controller I225-LM Support?

    Scheduled Pinned Locked Moved Hardware
    189 Posts 19 Posters 76.8k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • W
      whizatit @stephenw10
      last edited by

      @stephenw10 Im looking for an Intel multi gig card that will support 2.5 Gbps as i currently have 1.5 Gbps internet and the LAN out is 2.5 Gbps along with my 2.5 Gbps switches etc.

      My bottleneck is the 1Gbps Intel pro card in the PfSense box atm.

      1 Reply Last reply Reply Quote 0
      • stephenw10S
        stephenw10 Netgate Administrator
        last edited by

        Right, it looks like the NIC linked there supports that: X710T2LBLK

        I've never tested that myself though.

        Steve

        W 1 Reply Last reply Reply Quote 1
        • W
          whizatit @stephenw10
          last edited by

          @stephenw10 Roger that!

          1 Reply Last reply Reply Quote 0
          • D
            Dave 1 @whizatit
            last edited by

            @whizatit Netgate has added Intel i225-lm support: https://github.com/pfsense/FreeBSD-src/commit/402cb8c4ab502887dc8b8651646890b8e047dd17

            Just took a look at the code quickly, it seems that 70% source code are based
            on Linux's igc, which is GPL license. Is Intel's igc dual licensed under the
            BSD and GPL licenses now?

            W 1 Reply Last reply Reply Quote 0
            • W
              whizatit @Dave 1
              last edited by

              @dave-1 Inteesting

              jimpJ 1 Reply Last reply Reply Quote 0
              • jimpJ
                jimp Rebel Alliance Developer Netgate @whizatit
                last edited by

                The igc driver is in 2.5.0, but support may vary depending on the card. There may be some cards out there not yet covered by the driver or may need IDs added and so on. The only way to know for sure is to try it, or at least compare the IDs of the card against the driver code.

                Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                Need help fast? Netgate Global Support!

                Do not Chat/PM for help!

                SetarcosS 1 Reply Last reply Reply Quote 1
                • SetarcosS
                  Setarcos @jimp
                  last edited by

                  Any updates on this? It looks like the new Netgate 6100 uses the i225-LM and is taking advantage of the support included in 2.5.0+. Is there is a list of tested i225-LM cards somewhere?

                  1 Reply Last reply Reply Quote 0
                  • stephenw10S
                    stephenw10 Netgate Administrator
                    last edited by

                    You can see the driver supported devices here:
                    https://github.com/pfsense/FreeBSD-src/blob/devel-12/sys/dev/igc/igc_hw.h#L44

                    As far as I know though the only tested NIC is that in the 6100:

                    igc0@pci0:4:0:0:	class=0x020000 card=0x00008086 chip=0x15f38086 rev=0x01 hdr=0x00
                        vendor     = 'Intel Corporation'
                        device     = 'Ethernet Controller I225-V'
                        class      = network
                        subclass   = ethernet
                    

                    Steve

                    SetarcosS 2 Replies Last reply Reply Quote 0
                    • SetarcosS
                      Setarcos @stephenw10
                      last edited by Setarcos

                      @stephenw10

                      I decided to give it a try and picked up a PCIe adapter for my Netgate 7100 and the dual port QNAP version listed by @whizatit and tested with 21.05. The igc driver seems to be correctly detecting both I225-LMs properly, and the port responds properly when forcing speed and duplex (as confirmed by watching ifconfig and the switchport that the I225-LM port is connected to). That said, I have been unable to get the I225-LM port (I am testing with igc0) to receive traffic. Packets show up as "errors in" in the interface counters. arp on the 7100 only shows the I225-LM interface, packet captures only show outbound traffic on the 7100 and captures from a device connected to the I225-LM show outbound traffic and inbound arp traffic from the I225-LM.

                      I tried disabling hardware checksum offloading, but this alone doesn't appear to have done anything.

                      Any recommendations for what I should try?

                      Here are my pciconf, ifconfig and sysctl output for this card:

                      igc0@pci0:4:0:0:        class=0x020000 card=0xc0021baa chip=0x15f28086 rev=0x03 hdr=0x00
                          vendor     = 'Intel Corporation'
                          device     = 'Intel(R) Ethernet Controller I225-LM'
                          class      = network
                          subclass   = ethernet
                          bar   [10] = type Memory, range 32, base 0xded00000, size 1048576, enabled
                          bar   [1c] = type Memory, range 32, base 0xdef00000, 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, enabled
                                       Table in map 0x1c[0x0], PBA in map 0x1c[0x2000]
                          cap 10[a0] = PCI-Express 2 endpoint max data 128(512) FLR RO NS
                                       max read 512
                                       link x1(x1) speed 5.0(5.0) ASPM disabled(L1)
                          ecap 0001[100] = AER 2 1 fatal 1 non-fatal 0 corrected
                          ecap 0003[140] = Serial 1 245ebeffff64ce5b
                          ecap 0018[1c0] = LTR 1
                          ecap 001f[1f0] = Precision Time Measurement 1
                          ecap 001e[1e0] = L1 PM Substates 1
                      igc1@pci0:7:0:0:        class=0x020000 card=0xc0021baa chip=0x15f28086 rev=0x03 hdr=0x00
                          vendor     = 'Intel Corporation'
                          device     = 'Intel(R) Ethernet Controller I225-LM'
                          class      = network
                          subclass   = ethernet
                          bar   [10] = type Memory, range 32, base 0xdf000000, size 1048576, enabled
                          bar   [1c] = type Memory, range 32, base 0xdf200000, 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, enabled
                                       Table in map 0x1c[0x0], PBA in map 0x1c[0x2000]
                          cap 10[a0] = PCI-Express 2 endpoint max data 128(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 245ebeffff64ce5a
                          ecap 0018[1c0] = LTR 1
                          ecap 001f[1f0] = Precision Time Measurement 1
                          ecap 001e[1e0] = L1 PM Substates 1
                      
                      igc0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              description: Test
                              options=8120b8<VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,WOL_MAGIC,VLAN_HWFILTER>
                              capabilities=f53fbb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_UCAST,WOL_MCAST,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,NETMAP,RXCSUM_IPV6,TXCSUM_IPV6>
                              ether 24:5e:be:64:ce:5b
                              inet6 fe80::265e:beff:fe64:ce5b%igc0 prefixlen 64 scopeid 0x1
                              inet 10.222.222.1 netmask 0xffffff00 broadcast 10.222.222.255
                              media: Ethernet autoselect (1000baseT <full-duplex>)
                              status: active
                              supported media:
                                      media autoselect
                                      media 2500Base-T
                                      media 1000baseT
                                      media 1000baseT mediaopt full-duplex
                                      media 100baseTX mediaopt full-duplex
                                      media 100baseTX
                                      media 10baseT/UTP mediaopt full-duplex
                                      media 10baseT/UTP
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                      
                      dev.igc.0.interrupts.rx_desc_min_thresh: 0
                      dev.igc.0.interrupts.asserts: 45
                      dev.igc.0.mac_stats.tso_txd: 0
                      dev.igc.0.mac_stats.tx_frames_1024_1522: 0
                      dev.igc.0.mac_stats.tx_frames_512_1023: 0
                      dev.igc.0.mac_stats.tx_frames_256_511: 0
                      dev.igc.0.mac_stats.tx_frames_128_255: 0
                      dev.igc.0.mac_stats.tx_frames_65_127: 0
                      dev.igc.0.mac_stats.tx_frames_64: 41
                      dev.igc.0.mac_stats.mcast_pkts_txd: 0
                      dev.igc.0.mac_stats.bcast_pkts_txd: 41
                      dev.igc.0.mac_stats.good_pkts_txd: 41
                      dev.igc.0.mac_stats.total_pkts_txd: 248
                      dev.igc.0.mac_stats.good_octets_txd: 2624
                      dev.igc.0.mac_stats.good_octets_recvd: 32709
                      dev.igc.0.mac_stats.rx_frames_1024_1522: 0
                      dev.igc.0.mac_stats.rx_frames_512_1023: 37
                      dev.igc.0.mac_stats.rx_frames_256_511: 0
                      dev.igc.0.mac_stats.rx_frames_128_255: 15
                      dev.igc.0.mac_stats.rx_frames_65_127: 14
                      dev.igc.0.mac_stats.rx_frames_64: 30
                      dev.igc.0.mac_stats.mcast_pkts_recvd: 68
                      dev.igc.0.mac_stats.bcast_pkts_recvd: 28
                      dev.igc.0.mac_stats.good_pkts_recvd: 96
                      dev.igc.0.mac_stats.total_pkts_recvd: 302
                      dev.igc.0.mac_stats.xoff_txd: 207
                      dev.igc.0.mac_stats.xoff_recvd: 0
                      dev.igc.0.mac_stats.xon_txd: 0
                      dev.igc.0.mac_stats.xon_recvd: 0
                      dev.igc.0.mac_stats.alignment_errs: 0
                      dev.igc.0.mac_stats.crc_errs: 0
                      dev.igc.0.mac_stats.recv_errs: 0
                      dev.igc.0.mac_stats.recv_jabber: 0
                      dev.igc.0.mac_stats.recv_oversize: 0
                      dev.igc.0.mac_stats.recv_fragmented: 0
                      dev.igc.0.mac_stats.recv_undersize: 0
                      dev.igc.0.mac_stats.recv_no_buff: 0
                      dev.igc.0.mac_stats.missed_packets: 206
                      dev.igc.0.mac_stats.defer_count: 0
                      dev.igc.0.mac_stats.sequence_errors: 0
                      dev.igc.0.mac_stats.symbol_errors: 0
                      dev.igc.0.mac_stats.collision_count: 0
                      dev.igc.0.mac_stats.late_coll: 0
                      dev.igc.0.mac_stats.multiple_coll: 0
                      dev.igc.0.mac_stats.single_coll: 0
                      dev.igc.0.mac_stats.excess_coll: 0
                      dev.igc.0.queue_rx_3.rx_irq: 0
                      dev.igc.0.queue_rx_3.rxd_tail: 128
                      dev.igc.0.queue_rx_3.rxd_head: 0
                      dev.igc.0.queue_rx_2.rx_irq: 0
                      dev.igc.0.queue_rx_2.rxd_tail: 128
                      dev.igc.0.queue_rx_2.rxd_head: 0
                      dev.igc.0.queue_rx_1.rx_irq: 0
                      dev.igc.0.queue_rx_1.rxd_tail: 128
                      dev.igc.0.queue_rx_1.rxd_head: 0
                      dev.igc.0.queue_rx_0.rx_irq: 0
                      dev.igc.0.queue_rx_0.rxd_tail: 128
                      dev.igc.0.queue_rx_0.rxd_head: 0
                      dev.igc.0.queue_tx_3.tx_irq: 0
                      dev.igc.0.queue_tx_3.txd_tail: 0
                      dev.igc.0.queue_tx_3.txd_head: 0
                      dev.igc.0.queue_tx_2.tx_irq: 0
                      dev.igc.0.queue_tx_2.txd_tail: 0
                      dev.igc.0.queue_tx_2.txd_head: 0
                      dev.igc.0.queue_tx_1.tx_irq: 0
                      dev.igc.0.queue_tx_1.txd_tail: 0
                      dev.igc.0.queue_tx_1.txd_head: 0
                      dev.igc.0.queue_tx_0.tx_irq: 0
                      dev.igc.0.queue_tx_0.txd_tail: 41
                      dev.igc.0.queue_tx_0.txd_head: 41
                      dev.igc.0.fc_low_water: 32752
                      dev.igc.0.fc_high_water: 32768
                      dev.igc.0.rx_control: 71335966
                      dev.igc.0.device_control: 404489793
                      dev.igc.0.watchdog_timeouts: 0
                      dev.igc.0.rx_overruns: 1
                      dev.igc.0.link_irq: 4
                      dev.igc.0.dropped: 0
                      dev.igc.0.eee_control: 1
                      dev.igc.0.itr: 488
                      dev.igc.0.tx_abs_int_delay: 66
                      dev.igc.0.rx_abs_int_delay: 66
                      dev.igc.0.tx_int_delay: 66
                      dev.igc.0.rx_int_delay: 0
                      dev.igc.0.rs_dump: 0
                      dev.igc.0.reg_dump: General Registers
                              CTRL     181c0641
                              STATUS   40380683
                              CTRL_EXIT        10000040
                      
                      Interrupt Registers
                              ICR      00000000
                      
                      RX Registers
                              RCTL     0440801e
                              RDLEN    00004000
                              RDH      00000000
                              RDT      00000080
                              RXDCTL   02040808
                              RDBAL    033a8000
                              RDBAH    00000001
                      
                      TX Registers
                              TCTL     a503f0fa
                              TDBAL    0336a000
                              TDBAH    00000001
                              TDLEN    00004000
                              TDH      00000029
                              TDT      00000029
                              TXDCTL   0201011f
                              TDFH     00000000
                              TDFT     00000000
                              TDFHS    00000000
                              TDFPC    00000000
                      
                      
                      dev.igc.0.fc: 3
                      dev.igc.0.debug: -1
                      dev.igc.0.nvm: -1
                      dev.igc.0.iflib.rxq3.rxq_fl0.buf_size: 2048
                      dev.igc.0.iflib.rxq3.rxq_fl0.credits: 128
                      dev.igc.0.iflib.rxq3.rxq_fl0.cidx: 0
                      dev.igc.0.iflib.rxq3.rxq_fl0.pidx: 128
                      dev.igc.0.iflib.rxq2.rxq_fl0.buf_size: 2048
                      dev.igc.0.iflib.rxq2.rxq_fl0.credits: 128
                      dev.igc.0.iflib.rxq2.rxq_fl0.cidx: 0
                      dev.igc.0.iflib.rxq2.rxq_fl0.pidx: 128
                      dev.igc.0.iflib.rxq1.rxq_fl0.buf_size: 2048
                      dev.igc.0.iflib.rxq1.rxq_fl0.credits: 128
                      dev.igc.0.iflib.rxq1.rxq_fl0.cidx: 0
                      dev.igc.0.iflib.rxq1.rxq_fl0.pidx: 128
                      dev.igc.0.iflib.rxq0.rxq_fl0.buf_size: 2048
                      dev.igc.0.iflib.rxq0.rxq_fl0.credits: 128
                      dev.igc.0.iflib.rxq0.rxq_fl0.cidx: 0
                      dev.igc.0.iflib.rxq0.rxq_fl0.pidx: 128
                      dev.igc.0.iflib.txq3.r_abdications: 0
                      dev.igc.0.iflib.txq3.r_restarts: 0
                      dev.igc.0.iflib.txq3.r_stalls: 0
                      dev.igc.0.iflib.txq3.r_starts: 0
                      dev.igc.0.iflib.txq3.r_drops: 0
                      dev.igc.0.iflib.txq3.r_enqueues: 0
                      dev.igc.0.iflib.txq3.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE
                      dev.igc.0.iflib.txq3.txq_cleaned: 0
                      dev.igc.0.iflib.txq3.txq_processed: 0
                      dev.igc.0.iflib.txq3.txq_in_use: 0
                      dev.igc.0.iflib.txq3.txq_cidx_processed: 0
                      dev.igc.0.iflib.txq3.txq_cidx: 0
                      dev.igc.0.iflib.txq3.txq_pidx: 0
                      dev.igc.0.iflib.txq3.no_tx_dma_setup: 0
                      dev.igc.0.iflib.txq3.txd_encap_efbig: 0
                      dev.igc.0.iflib.txq3.tx_map_failed: 0
                      dev.igc.0.iflib.txq3.no_desc_avail: 0
                      dev.igc.0.iflib.txq3.mbuf_defrag_failed: 0
                      dev.igc.0.iflib.txq3.m_pullups: 0
                      dev.igc.0.iflib.txq3.mbuf_defrag: 0
                      dev.igc.0.iflib.txq2.r_abdications: 0
                      dev.igc.0.iflib.txq2.r_restarts: 0
                      dev.igc.0.iflib.txq2.r_stalls: 0
                      dev.igc.0.iflib.txq2.r_starts: 0
                      dev.igc.0.iflib.txq2.r_drops: 0
                      dev.igc.0.iflib.txq2.r_enqueues: 0
                      dev.igc.0.iflib.txq2.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE
                      dev.igc.0.iflib.txq2.txq_cleaned: 0
                      dev.igc.0.iflib.txq2.txq_processed: 0
                      dev.igc.0.iflib.txq2.txq_in_use: 0
                      dev.igc.0.iflib.txq2.txq_cidx_processed: 0
                      dev.igc.0.iflib.txq2.txq_cidx: 0
                      dev.igc.0.iflib.txq2.txq_pidx: 0
                      dev.igc.0.iflib.txq2.no_tx_dma_setup: 0
                      dev.igc.0.iflib.txq2.txd_encap_efbig: 0
                      dev.igc.0.iflib.txq2.tx_map_failed: 0
                      dev.igc.0.iflib.txq2.no_desc_avail: 0
                      dev.igc.0.iflib.txq2.mbuf_defrag_failed: 0
                      dev.igc.0.iflib.txq2.m_pullups: 0
                      dev.igc.0.iflib.txq2.mbuf_defrag: 0
                      dev.igc.0.iflib.txq1.r_abdications: 0
                      dev.igc.0.iflib.txq1.r_restarts: 0
                      dev.igc.0.iflib.txq1.r_stalls: 0
                      dev.igc.0.iflib.txq1.r_starts: 0
                      dev.igc.0.iflib.txq1.r_drops: 0
                      dev.igc.0.iflib.txq1.r_enqueues: 0
                      dev.igc.0.iflib.txq1.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE
                      dev.igc.0.iflib.txq1.txq_cleaned: 0
                      dev.igc.0.iflib.txq1.txq_processed: 0
                      dev.igc.0.iflib.txq1.txq_in_use: 0
                      dev.igc.0.iflib.txq1.txq_cidx_processed: 0
                      dev.igc.0.iflib.txq1.txq_cidx: 0
                      dev.igc.0.iflib.txq1.txq_pidx: 0
                      dev.igc.0.iflib.txq1.no_tx_dma_setup: 0
                      dev.igc.0.iflib.txq1.txd_encap_efbig: 0
                      dev.igc.0.iflib.txq1.tx_map_failed: 0
                      dev.igc.0.iflib.txq1.no_desc_avail: 0
                      dev.igc.0.iflib.txq1.mbuf_defrag_failed: 0
                      dev.igc.0.iflib.txq1.m_pullups: 0
                      dev.igc.0.iflib.txq1.mbuf_defrag: 0
                      dev.igc.0.iflib.txq0.r_abdications: 0
                      dev.igc.0.iflib.txq0.r_restarts: 0
                      dev.igc.0.iflib.txq0.r_stalls: 0
                      dev.igc.0.iflib.txq0.r_starts: 41
                      dev.igc.0.iflib.txq0.r_drops: 0
                      dev.igc.0.iflib.txq0.r_enqueues: 41
                      dev.igc.0.iflib.txq0.ring_state: pidx_head: 0041 pidx_tail: 0041 cidx: 0041 state: IDLE
                      dev.igc.0.iflib.txq0.txq_cleaned: 0
                      dev.igc.0.iflib.txq0.txq_processed: 40
                      dev.igc.0.iflib.txq0.txq_in_use: 41
                      dev.igc.0.iflib.txq0.txq_cidx_processed: 40
                      dev.igc.0.iflib.txq0.txq_cidx: 0
                      dev.igc.0.iflib.txq0.txq_pidx: 41
                      dev.igc.0.iflib.txq0.no_tx_dma_setup: 0
                      dev.igc.0.iflib.txq0.txd_encap_efbig: 0
                      dev.igc.0.iflib.txq0.tx_map_failed: 0
                      dev.igc.0.iflib.txq0.no_desc_avail: 0
                      dev.igc.0.iflib.txq0.mbuf_defrag_failed: 0
                      dev.igc.0.iflib.txq0.m_pullups: 0
                      dev.igc.0.iflib.txq0.mbuf_defrag: 0
                      dev.igc.0.iflib.override_nrxds: 0
                      dev.igc.0.iflib.override_ntxds: 0
                      dev.igc.0.iflib.separate_txrx: 0
                      dev.igc.0.iflib.core_offset: 0
                      dev.igc.0.iflib.tx_abdicate: 0
                      dev.igc.0.iflib.rx_budget: 0
                      dev.igc.0.iflib.disable_msix: 0
                      dev.igc.0.iflib.override_qs_enable: 0
                      dev.igc.0.iflib.override_nrxqs: 0
                      dev.igc.0.iflib.override_ntxqs: 0
                      dev.igc.0.iflib.driver_version: 1
                      dev.igc.0.%parent: pci4
                      dev.igc.0.%pnpinfo: vendor=0x8086 device=0x15f2 subvendor=0x1baa subdevice=0xc002 class=0x020000
                      dev.igc.0.%location: slot=0 function=0 dbsf=pci0:4:0:0
                      dev.igc.0.%driver: igc
                      dev.igc.0.%desc: Intel(R) PRO/1000 PCI-Express Network Driver
                      
                      1 Reply Last reply Reply Quote 0
                      • stephenw10S
                        stephenw10 Netgate Administrator
                        last edited by

                        It shows that at all link rates?

                        SetarcosS 1 Reply Last reply Reply Quote 0
                        • SetarcosS
                          Setarcos @stephenw10
                          last edited by Setarcos

                          @stephenw10 said in Intel Ethernet Controller I225-LM Support?:

                          It shows that at all link rates?

                          Yes, at least for 10,100, and 1000 (both full and half duplex) it does. I don't have a 2500Base-T equipped device to test with yet. Note that ARPs transmitted from the I225-LM port to another device connected to the port are getting through to the device, but the responses back from the device do not appear to be making it back to the I225-LM as the ARP request (from the I225-LM) and reply (from the device) continuously repeat. Here is a sample from when attempting to ping the connected test device on 10.222.222.2 from pfSense:

                          test device capture

                          19:03:57.641021	1209	QNAP_64:ce:5b	Broadcast	ARP	60	Who has 10.222.222.2? Tell 10.222.222.1
                          19:03:57.641030	1210	SamsungE_9c:a0:8e	QNAP_64:ce:5b	ARP	42	10.222.222.2 is at 98:83:89:9c:a0:8e
                          19:03:58.651569	1211	QNAP_64:ce:5b	Broadcast	ARP	60	Who has 10.222.222.2? Tell 10.222.222.1
                          19:03:58.651594	1212	SamsungE_9c:a0:8e	QNAP_64:ce:5b	ARP	42	10.222.222.2 is at 98:83:89:9c:a0:8e
                          19:03:59.670915	1213	QNAP_64:ce:5b	Broadcast	ARP	60	Who has 10.222.222.2? Tell 10.222.222.1
                          19:03:59.670930	1214	SamsungE_9c:a0:8e	QNAP_64:ce:5b	ARP	42	10.222.222.2 is at 98:83:89:9c:a0:8e
                          

                          pfSense capture

                          19:03:57.313905 ARP, Request who-has 10.222.222.2 tell 10.222.222.1, length 28
                          19:03:58.324154 ARP, Request who-has 10.222.222.2 tell 10.222.222.1, length 28
                          19:03:59.343768 ARP, Request who-has 10.222.222.2 tell 10.222.222.1, length 28
                          
                          1 Reply Last reply Reply Quote 0
                          • SetarcosS
                            Setarcos @stephenw10
                            last edited by

                            @stephenw10 said in Intel Ethernet Controller I225-LM Support?:

                            You can see the driver supported devices here:
                            https://github.com/pfsense/FreeBSD-src/blob/devel-12/sys/dev/igc/igc_hw.h#L44

                            As far as I know though the only tested NIC is that in the 6100:

                            igc0@pci0:4:0:0:	class=0x020000 card=0x00008086 chip=0x15f38086 rev=0x01 hdr=0x00
                                vendor     = 'Intel Corporation'
                                device     = 'Ethernet Controller I225-V'
                                class      = network
                                subclass   = ethernet
                            

                            Steve

                            @stephenw10 can you share the options that are enabled for the I225-V with the 6100 for reference?

                            stephenw10S 1 Reply Last reply Reply Quote 0
                            • stephenw10S
                              stephenw10 Netgate Administrator @Setarcos
                              last edited by

                              Yup:

                              21.05-RELEASE][admin@6100-2.stevew.lan]/root: ifconfig -vvvm igc0 
                              igc0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              	description: LAN
                              	options=e120bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,WOL_MAGIC,VLAN_HWFILTER,RXCSUM_IPV6,TXCSUM_IPV6>
                              	capabilities=f53fbb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_UCAST,WOL_MCAST,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,NETMAP,RXCSUM_IPV6,TXCSUM_IPV6>
                              	ether 90:ec:77:0f:74:47
                              	inet6 fe80::92ec:77ff:fe0f:7447%igc0 prefixlen 64 scopeid 0x1
                              	inet6 fe80::1:1%igc0 prefixlen 64 scopeid 0x1
                              	inet 192.168.170.1 netmask 0xffffff00 broadcast 192.168.170.255
                              	inet 192.168.170.2 netmask 0xffffffff broadcast 192.168.170.2
                              	inet 192.168.170.3 netmask 0xffffffff broadcast 192.168.170.3
                              	inet 192.168.170.4 netmask 0xffffff00 broadcast 192.168.170.255
                              	media: Ethernet autoselect
                              	status: no carrier
                              	supported media:
                              		media autoselect
                              		media 2500Base-T
                              		media 1000baseT
                              		media 1000baseT mediaopt full-duplex
                              		media 100baseTX mediaopt full-duplex
                              		media 100baseTX
                              		media 10baseT/UTP mediaopt full-duplex
                              		media 10baseT/UTP
                              	nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              
                              SetarcosS 1 Reply Last reply Reply Quote 0
                              • SetarcosS
                                Setarcos @stephenw10
                                last edited by Setarcos

                                @stephenw10

                                Thanks, I tried turning hardware checksum offloading back on again and enabled IPv6 to match as much of the 6100 config as possible, but am still seeing the same issue with the in error count increasing and no packets being successfully received by the I225-LM port:

                                [21.05-RELEASE][root@cerberus.setarcos.lan]/root: sysctl -a dev.igc.0
                                dev.igc.0.interrupts.rx_desc_min_thresh: 0
                                dev.igc.0.interrupts.asserts: 17
                                dev.igc.0.mac_stats.tso_txd: 0
                                dev.igc.0.mac_stats.tx_frames_1024_1522: 0
                                dev.igc.0.mac_stats.tx_frames_512_1023: 0
                                dev.igc.0.mac_stats.tx_frames_256_511: 0
                                dev.igc.0.mac_stats.tx_frames_128_255: 9
                                dev.igc.0.mac_stats.tx_frames_65_127: 3
                                dev.igc.0.mac_stats.tx_frames_64: 0
                                dev.igc.0.mac_stats.mcast_pkts_txd: 12
                                dev.igc.0.mac_stats.bcast_pkts_txd: 0
                                dev.igc.0.mac_stats.good_pkts_txd: 12
                                dev.igc.0.mac_stats.total_pkts_txd: 1510
                                dev.igc.0.mac_stats.good_octets_txd: 2088
                                dev.igc.0.mac_stats.good_octets_recvd: 28085
                                dev.igc.0.mac_stats.rx_frames_1024_1522: 0
                                dev.igc.0.mac_stats.rx_frames_512_1023: 0
                                dev.igc.0.mac_stats.rx_frames_256_511: 5
                                dev.igc.0.mac_stats.rx_frames_128_255: 20
                                dev.igc.0.mac_stats.rx_frames_65_127: 255
                                dev.igc.0.mac_stats.rx_frames_64: 15
                                dev.igc.0.mac_stats.mcast_pkts_recvd: 281
                                dev.igc.0.mac_stats.bcast_pkts_recvd: 14
                                dev.igc.0.mac_stats.good_pkts_recvd: 295
                                dev.igc.0.mac_stats.total_pkts_recvd: 1792
                                dev.igc.0.mac_stats.xoff_txd: 1498
                                dev.igc.0.mac_stats.xoff_recvd: 0
                                dev.igc.0.mac_stats.xon_txd: 0
                                dev.igc.0.mac_stats.xon_recvd: 0
                                dev.igc.0.mac_stats.alignment_errs: 0
                                dev.igc.0.mac_stats.crc_errs: 0
                                dev.igc.0.mac_stats.recv_errs: 0
                                dev.igc.0.mac_stats.recv_jabber: 0
                                dev.igc.0.mac_stats.recv_oversize: 0
                                dev.igc.0.mac_stats.recv_fragmented: 0
                                dev.igc.0.mac_stats.recv_undersize: 0
                                dev.igc.0.mac_stats.recv_no_buff: 0
                                dev.igc.0.mac_stats.missed_packets: 1497
                                dev.igc.0.mac_stats.defer_count: 0
                                dev.igc.0.mac_stats.sequence_errors: 0
                                dev.igc.0.mac_stats.symbol_errors: 0
                                dev.igc.0.mac_stats.collision_count: 0
                                dev.igc.0.mac_stats.late_coll: 0
                                dev.igc.0.mac_stats.multiple_coll: 0
                                dev.igc.0.mac_stats.single_coll: 0
                                dev.igc.0.mac_stats.excess_coll: 0
                                dev.igc.0.queue_rx_3.rx_irq: 0
                                dev.igc.0.queue_rx_3.rxd_tail: 128
                                dev.igc.0.queue_rx_3.rxd_head: 0
                                dev.igc.0.queue_rx_2.rx_irq: 0
                                dev.igc.0.queue_rx_2.rxd_tail: 128
                                dev.igc.0.queue_rx_2.rxd_head: 0
                                dev.igc.0.queue_rx_1.rx_irq: 0
                                dev.igc.0.queue_rx_1.rxd_tail: 128
                                dev.igc.0.queue_rx_1.rxd_head: 0
                                dev.igc.0.queue_rx_0.rx_irq: 0
                                dev.igc.0.queue_rx_0.rxd_tail: 128
                                dev.igc.0.queue_rx_0.rxd_head: 0
                                dev.igc.0.queue_tx_3.tx_irq: 0
                                dev.igc.0.queue_tx_3.txd_tail: 0
                                dev.igc.0.queue_tx_3.txd_head: 0
                                dev.igc.0.queue_tx_2.tx_irq: 0
                                dev.igc.0.queue_tx_2.txd_tail: 0
                                dev.igc.0.queue_tx_2.txd_head: 0
                                dev.igc.0.queue_tx_1.tx_irq: 0
                                dev.igc.0.queue_tx_1.txd_tail: 0
                                dev.igc.0.queue_tx_1.txd_head: 0
                                dev.igc.0.queue_tx_0.tx_irq: 0
                                dev.igc.0.queue_tx_0.txd_tail: 885
                                dev.igc.0.queue_tx_0.txd_head: 19
                                dev.igc.0.fc_low_water: 32752
                                dev.igc.0.fc_high_water: 32768
                                dev.igc.0.rx_control: 71335966
                                dev.igc.0.device_control: 404489793
                                dev.igc.0.watchdog_timeouts: 0
                                dev.igc.0.rx_overruns: 0
                                dev.igc.0.link_irq: 2
                                dev.igc.0.dropped: 0
                                dev.igc.0.eee_control: 1
                                dev.igc.0.itr: 488
                                dev.igc.0.tx_abs_int_delay: 66
                                dev.igc.0.rx_abs_int_delay: 66
                                dev.igc.0.tx_int_delay: 66
                                dev.igc.0.rx_int_delay: 0
                                dev.igc.0.rs_dump: 0
                                dev.igc.0.reg_dump: General Registers
                                        CTRL     181c0641
                                        STATUS   40380683
                                        CTRL_EXIT        10000040
                                
                                Interrupt Registers
                                        ICR      00000000
                                
                                RX Registers
                                        RCTL     0440801e
                                        RDLEN    00004000
                                        RDH      00000000
                                        RDT      00000080
                                        RXDCTL   02040808
                                        RDBAL    033a8000
                                        RDBAH    00000001
                                
                                TX Registers
                                        TCTL     a503f0fa
                                        TDBAL    0336a000
                                        TDBAH    00000001
                                        TDLEN    00004000
                                        TDH      00000013
                                        TDT      00000375
                                        TXDCTL   0201011f
                                        TDFH     00000000
                                        TDFT     00000000
                                        TDFHS    00000000
                                        TDFPC    00000000
                                
                                
                                dev.igc.0.fc: 3
                                dev.igc.0.debug: -1
                                dev.igc.0.nvm: -1
                                dev.igc.0.iflib.rxq3.rxq_fl0.buf_size: 2048
                                dev.igc.0.iflib.rxq3.rxq_fl0.credits: 128
                                dev.igc.0.iflib.rxq3.rxq_fl0.cidx: 0
                                dev.igc.0.iflib.rxq3.rxq_fl0.pidx: 128
                                dev.igc.0.iflib.rxq2.rxq_fl0.buf_size: 2048
                                dev.igc.0.iflib.rxq2.rxq_fl0.credits: 128
                                dev.igc.0.iflib.rxq2.rxq_fl0.cidx: 0
                                dev.igc.0.iflib.rxq2.rxq_fl0.pidx: 128
                                dev.igc.0.iflib.rxq1.rxq_fl0.buf_size: 2048
                                dev.igc.0.iflib.rxq1.rxq_fl0.credits: 128
                                dev.igc.0.iflib.rxq1.rxq_fl0.cidx: 0
                                dev.igc.0.iflib.rxq1.rxq_fl0.pidx: 128
                                dev.igc.0.iflib.rxq0.rxq_fl0.buf_size: 2048
                                dev.igc.0.iflib.rxq0.rxq_fl0.credits: 128
                                dev.igc.0.iflib.rxq0.rxq_fl0.cidx: 0
                                dev.igc.0.iflib.rxq0.rxq_fl0.pidx: 128
                                dev.igc.0.iflib.txq3.r_abdications: 0
                                dev.igc.0.iflib.txq3.r_restarts: 0
                                dev.igc.0.iflib.txq3.r_stalls: 0
                                dev.igc.0.iflib.txq3.r_starts: 0
                                dev.igc.0.iflib.txq3.r_drops: 0
                                dev.igc.0.iflib.txq3.r_enqueues: 0
                                dev.igc.0.iflib.txq3.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE
                                dev.igc.0.iflib.txq3.txq_cleaned: 0
                                dev.igc.0.iflib.txq3.txq_processed: 0
                                dev.igc.0.iflib.txq3.txq_in_use: 0
                                dev.igc.0.iflib.txq3.txq_cidx_processed: 0
                                dev.igc.0.iflib.txq3.txq_cidx: 0
                                dev.igc.0.iflib.txq3.txq_pidx: 0
                                dev.igc.0.iflib.txq3.no_tx_dma_setup: 0
                                dev.igc.0.iflib.txq3.txd_encap_efbig: 0
                                dev.igc.0.iflib.txq3.tx_map_failed: 0
                                dev.igc.0.iflib.txq3.no_desc_avail: 0
                                dev.igc.0.iflib.txq3.mbuf_defrag_failed: 0
                                dev.igc.0.iflib.txq3.m_pullups: 0
                                dev.igc.0.iflib.txq3.mbuf_defrag: 0
                                dev.igc.0.iflib.txq2.r_abdications: 0
                                dev.igc.0.iflib.txq2.r_restarts: 0
                                dev.igc.0.iflib.txq2.r_stalls: 0
                                dev.igc.0.iflib.txq2.r_starts: 0
                                dev.igc.0.iflib.txq2.r_drops: 0
                                dev.igc.0.iflib.txq2.r_enqueues: 0
                                dev.igc.0.iflib.txq2.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE
                                dev.igc.0.iflib.txq2.txq_cleaned: 0
                                dev.igc.0.iflib.txq2.txq_processed: 0
                                dev.igc.0.iflib.txq2.txq_in_use: 0
                                dev.igc.0.iflib.txq2.txq_cidx_processed: 0
                                dev.igc.0.iflib.txq2.txq_cidx: 0
                                dev.igc.0.iflib.txq2.txq_pidx: 0
                                dev.igc.0.iflib.txq2.no_tx_dma_setup: 0
                                dev.igc.0.iflib.txq2.txd_encap_efbig: 0
                                dev.igc.0.iflib.txq2.tx_map_failed: 0
                                dev.igc.0.iflib.txq2.no_desc_avail: 0
                                dev.igc.0.iflib.txq2.mbuf_defrag_failed: 0
                                dev.igc.0.iflib.txq2.m_pullups: 0
                                dev.igc.0.iflib.txq2.mbuf_defrag: 0
                                dev.igc.0.iflib.txq1.r_abdications: 0
                                dev.igc.0.iflib.txq1.r_restarts: 0
                                dev.igc.0.iflib.txq1.r_stalls: 0
                                dev.igc.0.iflib.txq1.r_starts: 0
                                dev.igc.0.iflib.txq1.r_drops: 0
                                dev.igc.0.iflib.txq1.r_enqueues: 0
                                dev.igc.0.iflib.txq1.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE
                                dev.igc.0.iflib.txq1.txq_cleaned: 0
                                dev.igc.0.iflib.txq1.txq_processed: 0
                                dev.igc.0.iflib.txq1.txq_in_use: 0
                                dev.igc.0.iflib.txq1.txq_cidx_processed: 0
                                dev.igc.0.iflib.txq1.txq_cidx: 0
                                dev.igc.0.iflib.txq1.txq_pidx: 0
                                dev.igc.0.iflib.txq1.no_tx_dma_setup: 0
                                dev.igc.0.iflib.txq1.txd_encap_efbig: 0
                                dev.igc.0.iflib.txq1.tx_map_failed: 0
                                dev.igc.0.iflib.txq1.no_desc_avail: 0
                                dev.igc.0.iflib.txq1.mbuf_defrag_failed: 0
                                dev.igc.0.iflib.txq1.m_pullups: 0
                                dev.igc.0.iflib.txq1.mbuf_defrag: 0
                                dev.igc.0.iflib.txq0.r_abdications: 0
                                dev.igc.0.iflib.txq0.r_restarts: 0
                                dev.igc.0.iflib.txq0.r_stalls: 0
                                dev.igc.0.iflib.txq0.r_starts: 11853
                                dev.igc.0.iflib.txq0.r_drops: 0
                                dev.igc.0.iflib.txq0.r_enqueues: 11853
                                dev.igc.0.iflib.txq0.ring_state: pidx_head: 1613 pidx_tail: 1613 cidx: 1613 state: IDLE
                                dev.igc.0.iflib.txq0.txq_cleaned: 0
                                dev.igc.0.iflib.txq0.txq_processed: 17
                                dev.igc.0.iflib.txq0.txq_in_use: 902
                                dev.igc.0.iflib.txq0.txq_cidx_processed: 17
                                dev.igc.0.iflib.txq0.txq_cidx: 0
                                dev.igc.0.iflib.txq0.txq_pidx: 902
                                dev.igc.0.iflib.txq0.no_tx_dma_setup: 0
                                dev.igc.0.iflib.txq0.txd_encap_efbig: 0
                                dev.igc.0.iflib.txq0.tx_map_failed: 0
                                dev.igc.0.iflib.txq0.no_desc_avail: 0
                                dev.igc.0.iflib.txq0.mbuf_defrag_failed: 0
                                dev.igc.0.iflib.txq0.m_pullups: 232
                                dev.igc.0.iflib.txq0.mbuf_defrag: 0
                                dev.igc.0.iflib.override_nrxds: 0
                                dev.igc.0.iflib.override_ntxds: 0
                                dev.igc.0.iflib.separate_txrx: 0
                                dev.igc.0.iflib.core_offset: 0
                                dev.igc.0.iflib.tx_abdicate: 0
                                dev.igc.0.iflib.rx_budget: 0
                                dev.igc.0.iflib.disable_msix: 0
                                dev.igc.0.iflib.override_qs_enable: 0
                                dev.igc.0.iflib.override_nrxqs: 0
                                dev.igc.0.iflib.override_ntxqs: 0
                                dev.igc.0.iflib.driver_version: 1
                                dev.igc.0.%parent: pci4
                                dev.igc.0.%pnpinfo: vendor=0x8086 device=0x15f2 subvendor=0x1baa subdevice=0xc002 class=0x020000
                                dev.igc.0.%location: slot=0 function=0 dbsf=pci0:4:0:0
                                dev.igc.0.%driver: igc
                                dev.igc.0.%desc: Intel(R) PRO/1000 PCI-Express Network Driver
                                
                                
                                igc0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                                        description: Test
                                        options=e120bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,WOL_MAGIC,VLAN_HWFILTER,RXCSUM_IPV6,TXCSUM_IPV6>
                                        capabilities=f53fbb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_UCAST,WOL_MCAST,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,NETMAP,RXCSUM_IPV6,TXCSUM_IPV6>
                                        ether 24:5e:be:64:ce:5b
                                        inet6 fe80::265e:beff:fe64:ce5b%igc0 prefixlen 64 scopeid 0x1
                                        inet6 fe80::1:1%igc0 prefixlen 64 scopeid 0x1
                                        inet6 2601:646:8c00:a5b6:265e:beff:fe64:ce5b prefixlen 64
                                        inet 10.222.222.1 netmask 0xffffff00 broadcast 10.222.222.255
                                        media: Ethernet 1000baseT <full-duplex>
                                        status: active
                                        supported media:
                                                media autoselect
                                                media 2500Base-T
                                                media 1000baseT
                                                media 1000baseT mediaopt full-duplex
                                                media 100baseTX mediaopt full-duplex
                                                media 100baseTX
                                                media 10baseT/UTP mediaopt full-duplex
                                                media 10baseT/UTP
                                        nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                                
                                Status up 
                                MAC Address 24:5e:be:64:ce:5b - Qnap Systems 
                                IPv4 Address 10.222.222.1 
                                Subnet mask IPv4 255.255.255.0 
                                IPv6 Link Local fe80::1:1%igc0 
                                IPv6 Address 2601:646:8c00:a5b6:265e:beff:fe64:ce5b 
                                Subnet mask IPv6 64 
                                MTU 1500 
                                Media 1000baseT <full-duplex> 
                                In/out packets 0/444 (0 B/83 KiB) 
                                In/out packets (pass) 0/444 (0 B/83 KiB) 
                                In/out packets (block) 0/0 (0 B/0 B) 
                                In/out errors 1119/0 
                                Collisions 0
                                

                                Anything else you suggest I try?

                                1 Reply Last reply Reply Quote 0
                                • stephenw10S
                                  stephenw10 Netgate Administrator
                                  last edited by

                                  You are talking about?:

                                  dev.igc.0.mac_stats.missed_packets: 1497
                                  

                                  That does seem high, especially as a percentage of the total packets received!

                                  dev.igc.0.mac_stats.mcast_pkts_recvd: 281
                                  dev.igc.0.mac_stats.bcast_pkts_recvd: 14
                                  dev.igc.0.mac_stats.good_pkts_recvd: 295
                                  dev.igc.0.mac_stats.total_pkts_recvd: 1792
                                  

                                  For reference an active interface here looks like:

                                  [21.05-RELEASE][admin@6100-2.stevew.lan]/root: sysctl dev.igc.3
                                  dev.igc.3.wake: 0
                                  dev.igc.3.interrupts.rx_desc_min_thresh: 0
                                  dev.igc.3.interrupts.asserts: 1914725
                                  dev.igc.3.mac_stats.tso_txd: 0
                                  dev.igc.3.mac_stats.tx_frames_1024_1522: 0
                                  dev.igc.3.mac_stats.tx_frames_512_1023: 181
                                  dev.igc.3.mac_stats.tx_frames_256_511: 188
                                  dev.igc.3.mac_stats.tx_frames_128_255: 77324
                                  dev.igc.3.mac_stats.tx_frames_65_127: 1021428
                                  dev.igc.3.mac_stats.tx_frames_64: 2589
                                  dev.igc.3.mac_stats.mcast_pkts_txd: 23244
                                  dev.igc.3.mac_stats.bcast_pkts_txd: 677
                                  dev.igc.3.mac_stats.good_pkts_txd: 1101710
                                  dev.igc.3.mac_stats.total_pkts_txd: 1101710
                                  dev.igc.3.mac_stats.good_octets_txd: 118614362
                                  dev.igc.3.mac_stats.good_octets_recvd: 37322978
                                  dev.igc.3.mac_stats.rx_frames_1024_1522: 0
                                  dev.igc.3.mac_stats.rx_frames_512_1023: 72
                                  dev.igc.3.mac_stats.rx_frames_256_511: 2596
                                  dev.igc.3.mac_stats.rx_frames_128_255: 37339
                                  dev.igc.3.mac_stats.rx_frames_65_127: 3832
                                  dev.igc.3.mac_stats.rx_frames_64: 486809
                                  dev.igc.3.mac_stats.mcast_pkts_recvd: 18294
                                  dev.igc.3.mac_stats.bcast_pkts_recvd: 2665
                                  dev.igc.3.mac_stats.good_pkts_recvd: 530648
                                  dev.igc.3.mac_stats.total_pkts_recvd: 497877
                                  dev.igc.3.mac_stats.xoff_txd: 0
                                  dev.igc.3.mac_stats.xoff_recvd: 0
                                  dev.igc.3.mac_stats.xon_txd: 0
                                  dev.igc.3.mac_stats.xon_recvd: 0
                                  dev.igc.3.mac_stats.alignment_errs: 0
                                  dev.igc.3.mac_stats.crc_errs: 0
                                  dev.igc.3.mac_stats.recv_errs: 0
                                  dev.igc.3.mac_stats.recv_jabber: 0
                                  dev.igc.3.mac_stats.recv_oversize: 0
                                  dev.igc.3.mac_stats.recv_fragmented: 0
                                  dev.igc.3.mac_stats.recv_undersize: 0
                                  dev.igc.3.mac_stats.recv_no_buff: 0
                                  dev.igc.3.mac_stats.missed_packets: 0
                                  dev.igc.3.mac_stats.defer_count: 0
                                  dev.igc.3.mac_stats.sequence_errors: 0
                                  dev.igc.3.mac_stats.symbol_errors: 0
                                  dev.igc.3.mac_stats.collision_count: 0
                                  dev.igc.3.mac_stats.late_coll: 0
                                  dev.igc.3.mac_stats.multiple_coll: 0
                                  dev.igc.3.mac_stats.single_coll: 0
                                  dev.igc.3.mac_stats.excess_coll: 0
                                  dev.igc.3.queue_rx_3.rx_irq: 0
                                  dev.igc.3.queue_rx_3.rxd_tail: 226
                                  dev.igc.3.queue_rx_3.rxd_head: 227
                                  dev.igc.3.queue_rx_2.rx_irq: 0
                                  dev.igc.3.queue_rx_2.rxd_tail: 19
                                  dev.igc.3.queue_rx_2.rxd_head: 20
                                  dev.igc.3.queue_rx_1.rx_irq: 0
                                  dev.igc.3.queue_rx_1.rxd_tail: 978
                                  dev.igc.3.queue_rx_1.rxd_head: 979
                                  dev.igc.3.queue_rx_0.rx_irq: 0
                                  dev.igc.3.queue_rx_0.rxd_tail: 13
                                  dev.igc.3.queue_rx_0.rxd_head: 14
                                  dev.igc.3.queue_tx_3.tx_irq: 0
                                  dev.igc.3.queue_tx_3.txd_tail: 0
                                  dev.igc.3.queue_tx_3.txd_head: 0
                                  dev.igc.3.queue_tx_2.tx_irq: 0
                                  dev.igc.3.queue_tx_2.txd_tail: 0
                                  dev.igc.3.queue_tx_2.txd_head: 0
                                  dev.igc.3.queue_tx_1.tx_irq: 0
                                  dev.igc.3.queue_tx_1.txd_tail: 787
                                  dev.igc.3.queue_tx_1.txd_head: 787
                                  dev.igc.3.queue_tx_0.tx_irq: 0
                                  dev.igc.3.queue_tx_0.txd_tail: 464
                                  dev.igc.3.queue_tx_0.txd_head: 464
                                  dev.igc.3.fc_low_water: 32752
                                  dev.igc.3.fc_high_water: 32768
                                  dev.igc.3.rx_control: 71598110
                                  dev.igc.3.device_control: 1477707329
                                  dev.igc.3.watchdog_timeouts: 0
                                  dev.igc.3.rx_overruns: 0
                                  dev.igc.3.link_irq: 195
                                  dev.igc.3.dropped: 0
                                  dev.igc.3.eee_control: 1
                                  dev.igc.3.itr: 488
                                  dev.igc.3.tx_abs_int_delay: 66
                                  dev.igc.3.rx_abs_int_delay: 66
                                  dev.igc.3.tx_int_delay: 66
                                  dev.igc.3.rx_int_delay: 0
                                  dev.igc.3.rs_dump: 0
                                  dev.igc.3.reg_dump: General Registers
                                  	CTRL	 58140641
                                  	STATUS	 40780683
                                  	CTRL_EXIT	 10000040
                                  
                                  Interrupt Registers
                                  	ICR	 00000000
                                  
                                  RX Registers
                                  	RCTL	 0444801e
                                  	RDLEN	 00004000
                                  	RDH	 0000000e
                                  	RDT	 0000000d
                                  	RXDCTL	 02040808
                                  	RDBAL	 04a65000
                                  	RDBAH	 00000000
                                  
                                  TX Registers
                                  	TCTL	 a503f0fa
                                  	TDBAL	 04a27000
                                  	TDBAH	 00000000
                                  	TDLEN	 00004000
                                  	TDH	 000001d0
                                  	TDT	 000001d0
                                  	TXDCTL	 0201011f
                                  	TDFH	 00000000
                                  	TDFT	 00000000
                                  	TDFHS	 00000000
                                  	TDFPC	 00000000
                                  
                                  
                                  dev.igc.3.fc: 3
                                  dev.igc.3.debug: -1
                                  dev.igc.3.nvm: -1
                                  dev.igc.3.iflib.rxq3.rxq_fl0.buf_size: 2048
                                  dev.igc.3.iflib.rxq3.rxq_fl0.credits: 1023
                                  dev.igc.3.iflib.rxq3.rxq_fl0.cidx: 227
                                  dev.igc.3.iflib.rxq3.rxq_fl0.pidx: 226
                                  dev.igc.3.iflib.rxq2.rxq_fl0.buf_size: 2048
                                  dev.igc.3.iflib.rxq2.rxq_fl0.credits: 1023
                                  dev.igc.3.iflib.rxq2.rxq_fl0.cidx: 20
                                  dev.igc.3.iflib.rxq2.rxq_fl0.pidx: 19
                                  dev.igc.3.iflib.rxq1.rxq_fl0.buf_size: 2048
                                  dev.igc.3.iflib.rxq1.rxq_fl0.credits: 1023
                                  dev.igc.3.iflib.rxq1.rxq_fl0.cidx: 979
                                  dev.igc.3.iflib.rxq1.rxq_fl0.pidx: 978
                                  dev.igc.3.iflib.rxq0.rxq_fl0.buf_size: 2048
                                  dev.igc.3.iflib.rxq0.rxq_fl0.credits: 1023
                                  dev.igc.3.iflib.rxq0.rxq_fl0.cidx: 14
                                  dev.igc.3.iflib.rxq0.rxq_fl0.pidx: 13
                                  dev.igc.3.iflib.txq3.r_abdications: 0
                                  dev.igc.3.iflib.txq3.r_restarts: 0
                                  dev.igc.3.iflib.txq3.r_stalls: 0
                                  dev.igc.3.iflib.txq3.r_starts: 0
                                  dev.igc.3.iflib.txq3.r_drops: 0
                                  dev.igc.3.iflib.txq3.r_enqueues: 0
                                  dev.igc.3.iflib.txq3.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE
                                  dev.igc.3.iflib.txq3.txq_cleaned: 0
                                  dev.igc.3.iflib.txq3.txq_processed: 0
                                  dev.igc.3.iflib.txq3.txq_in_use: 0
                                  dev.igc.3.iflib.txq3.txq_cidx_processed: 0
                                  dev.igc.3.iflib.txq3.txq_cidx: 0
                                  dev.igc.3.iflib.txq3.txq_pidx: 0
                                  dev.igc.3.iflib.txq3.no_tx_dma_setup: 0
                                  dev.igc.3.iflib.txq3.txd_encap_efbig: 0
                                  dev.igc.3.iflib.txq3.tx_map_failed: 0
                                  dev.igc.3.iflib.txq3.no_desc_avail: 0
                                  dev.igc.3.iflib.txq3.mbuf_defrag_failed: 0
                                  dev.igc.3.iflib.txq3.m_pullups: 0
                                  dev.igc.3.iflib.txq3.mbuf_defrag: 0
                                  dev.igc.3.iflib.txq2.r_abdications: 0
                                  dev.igc.3.iflib.txq2.r_restarts: 0
                                  dev.igc.3.iflib.txq2.r_stalls: 0
                                  dev.igc.3.iflib.txq2.r_starts: 0
                                  dev.igc.3.iflib.txq2.r_drops: 0
                                  dev.igc.3.iflib.txq2.r_enqueues: 0
                                  dev.igc.3.iflib.txq2.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE
                                  dev.igc.3.iflib.txq2.txq_cleaned: 0
                                  dev.igc.3.iflib.txq2.txq_processed: 0
                                  dev.igc.3.iflib.txq2.txq_in_use: 0
                                  dev.igc.3.iflib.txq2.txq_cidx_processed: 0
                                  dev.igc.3.iflib.txq2.txq_cidx: 0
                                  dev.igc.3.iflib.txq2.txq_pidx: 0
                                  dev.igc.3.iflib.txq2.no_tx_dma_setup: 0
                                  dev.igc.3.iflib.txq2.txd_encap_efbig: 0
                                  dev.igc.3.iflib.txq2.tx_map_failed: 0
                                  dev.igc.3.iflib.txq2.no_desc_avail: 0
                                  dev.igc.3.iflib.txq2.mbuf_defrag_failed: 0
                                  dev.igc.3.iflib.txq2.m_pullups: 0
                                  dev.igc.3.iflib.txq2.mbuf_defrag: 0
                                  dev.igc.3.iflib.txq1.r_abdications: 0
                                  dev.igc.3.iflib.txq1.r_restarts: 0
                                  dev.igc.3.iflib.txq1.r_stalls: 0
                                  dev.igc.3.iflib.txq1.r_starts: 54154
                                  dev.igc.3.iflib.txq1.r_drops: 0
                                  dev.igc.3.iflib.txq1.r_enqueues: 54154
                                  dev.igc.3.iflib.txq1.ring_state: pidx_head: 0906 pidx_tail: 0906 cidx: 0906 state: IDLE
                                  dev.igc.3.iflib.txq1.txq_cleaned: 108263
                                  dev.igc.3.iflib.txq1.txq_processed: 108303
                                  dev.igc.3.iflib.txq1.txq_in_use: 44
                                  dev.igc.3.iflib.txq1.txq_cidx_processed: 783
                                  dev.igc.3.iflib.txq1.txq_cidx: 743
                                  dev.igc.3.iflib.txq1.txq_pidx: 787
                                  dev.igc.3.iflib.txq1.no_tx_dma_setup: 0
                                  dev.igc.3.iflib.txq1.txd_encap_efbig: 0
                                  dev.igc.3.iflib.txq1.tx_map_failed: 0
                                  dev.igc.3.iflib.txq1.no_desc_avail: 0
                                  dev.igc.3.iflib.txq1.mbuf_defrag_failed: 0
                                  dev.igc.3.iflib.txq1.m_pullups: 0
                                  dev.igc.3.iflib.txq1.mbuf_defrag: 0
                                  dev.igc.3.iflib.txq0.r_abdications: 0
                                  dev.igc.3.iflib.txq0.r_restarts: 0
                                  dev.igc.3.iflib.txq0.r_stalls: 0
                                  dev.igc.3.iflib.txq0.r_starts: 1047555
                                  dev.igc.3.iflib.txq0.r_drops: 0
                                  dev.igc.3.iflib.txq0.r_enqueues: 1047558
                                  dev.igc.3.iflib.txq0.ring_state: pidx_head: 1030 pidx_tail: 1030 cidx: 1030 state: IDLE
                                  dev.igc.3.iflib.txq0.txq_cleaned: 2069926
                                  dev.igc.3.iflib.txq0.txq_processed: 2069966
                                  dev.igc.3.iflib.txq0.txq_in_use: 42
                                  dev.igc.3.iflib.txq0.txq_cidx_processed: 462
                                  dev.igc.3.iflib.txq0.txq_cidx: 422
                                  dev.igc.3.iflib.txq0.txq_pidx: 464
                                  dev.igc.3.iflib.txq0.no_tx_dma_setup: 0
                                  dev.igc.3.iflib.txq0.txd_encap_efbig: 0
                                  dev.igc.3.iflib.txq0.tx_map_failed: 0
                                  dev.igc.3.iflib.txq0.no_desc_avail: 0
                                  dev.igc.3.iflib.txq0.mbuf_defrag_failed: 0
                                  dev.igc.3.iflib.txq0.m_pullups: 31
                                  dev.igc.3.iflib.txq0.mbuf_defrag: 0
                                  dev.igc.3.iflib.override_nrxds: 0
                                  dev.igc.3.iflib.override_ntxds: 0
                                  dev.igc.3.iflib.separate_txrx: 0
                                  dev.igc.3.iflib.core_offset: 12
                                  dev.igc.3.iflib.tx_abdicate: 0
                                  dev.igc.3.iflib.rx_budget: 0
                                  dev.igc.3.iflib.disable_msix: 0
                                  dev.igc.3.iflib.override_qs_enable: 0
                                  dev.igc.3.iflib.override_nrxqs: 0
                                  dev.igc.3.iflib.override_ntxqs: 0
                                  dev.igc.3.iflib.driver_version: 1
                                  dev.igc.3.%parent: pci7
                                  dev.igc.3.%pnpinfo: vendor=0x8086 device=0x15f3 subvendor=0x8086 subdevice=0x0000 class=0x020000
                                  dev.igc.3.%location: slot=0 function=0 dbsf=pci0:7:0:0 handle=\_SB_.PCI0.PEX6.PXSX
                                  dev.igc.3.%driver: igc
                                  dev.igc.3.%desc: Intel(R) PRO/1000 PCI-Express Network Driver
                                  

                                  So it's a different device ID. The registers are set differently.

                                  Steve

                                  SetarcosS 1 Reply Last reply Reply Quote 0
                                  • SetarcosS
                                    Setarcos @stephenw10
                                    last edited by Setarcos

                                    @stephenw10 said in Intel Ethernet Controller I225-LM Support?:

                                    You are talking about?:

                                    dev.igc.0.mac_stats.missed_packets: 1497
                                    

                                    That does seem high, especially as a percentage of the total packets received!

                                    dev.igc.0.mac_stats.mcast_pkts_recvd: 281
                                    dev.igc.0.mac_stats.bcast_pkts_recvd: 14
                                    dev.igc.0.mac_stats.good_pkts_recvd: 295
                                    dev.igc.0.mac_stats.total_pkts_recvd: 1792
                                    

                                    Yes, this is what I was referring to. The "in" packet count shows 0 on the UI though and I haven't managed to capture any inbound traffic on the I225-LM interface during testing. Note that the sysctl output and UI Status/Interfaces text capture for this interface (third text block from my previous reply) were taken a few minutes apart so the counters are not exactly the same.

                                    dev.igc.3.reg_dump: General Registers
                                    	CTRL	 58140641
                                    	STATUS	 40780683
                                    	CTRL_EXIT	 10000040
                                    
                                    Interrupt Registers
                                    	ICR	 00000000
                                    
                                    RX Registers
                                    	RCTL	 0444801e
                                    	RDLEN	 00004000
                                    	RDH	 0000000e
                                    	RDT	 0000000d
                                    	RXDCTL	 02040808
                                    	RDBAL	 04a65000
                                    	RDBAH	 00000000
                                    
                                    TX Registers
                                    	TCTL	 a503f0fa
                                    	TDBAL	 04a27000
                                    	TDBAH	 00000000
                                    	TDLEN	 00004000
                                    	TDH	 000001d0
                                    	TDT	 000001d0
                                    	TXDCTL	 0201011f
                                    	TDFH	 00000000
                                    	TDFT	 00000000
                                    	TDFHS	 00000000
                                    	TDFPC	 00000000
                                    
                                    
                                    dev.igc.3.%pnpinfo: vendor=0x8086 device=0x15f3 subvendor=0x8086 subdevice=0x0000 class=0x020000
                                    dev.igc.3.%location: slot=0 function=0 dbsf=pci0:7:0:0 handle=\_SB_.PCI0.PEX6.PXSX
                                    dev.igc.3.%driver: igc
                                    dev.igc.3.%desc: Intel(R) PRO/1000 PCI-Express Network Driver
                                    

                                    So it's a different device ID. The registers are set differently.

                                    Yes, but isn't the device ID difference to be expected? The I225-LM and I225-V have different IDs (0x15F2 and 0x15F3 respectively per https://github.com/pfsense/FreeBSD-src/blob/devel-12/sys/dev/igc/igc_hw.h#L44) Are there any pertinent differences in the registers between the two?

                                    dev.igc.0.reg_dump: General Registers
                                            CTRL     181c0641
                                            STATUS   40380683
                                            CTRL_EXIT        10000040
                                    
                                    Interrupt Registers
                                            ICR      00000000
                                    
                                    RX Registers
                                            RCTL     0440801e
                                            RDLEN    00004000
                                            RDH      00000000
                                            RDT      00000080
                                            RXDCTL   02040808
                                            RDBAL    033a8000
                                            RDBAH    00000001
                                    
                                    TX Registers
                                            TCTL     a503f0fa
                                            TDBAL    0336a000
                                            TDBAH    00000001
                                            TDLEN    00004000
                                            TDH      00000013
                                            TDT      00000375
                                            TXDCTL   0201011f
                                            TDFH     00000000
                                            TDFT     00000000
                                            TDFHS    00000000
                                            TDFPC    00000000
                                    
                                    
                                    dev.igc.0.%pnpinfo: vendor=0x8086 device=0x15f2 subvendor=0x1baa subdevice=0xc002 class=0x020000
                                    dev.igc.0.%location: slot=0 function=0 dbsf=pci0:4:0:0
                                    dev.igc.0.%driver: igc
                                    dev.igc.0.%desc: Intel(R) PRO/1000 PCI-Express Network Driver
                                    
                                    stephenw10S 1 Reply Last reply Reply Quote 0
                                    • stephenw10S
                                      stephenw10 Netgate Administrator @Setarcos
                                      last edited by

                                      @setarcos said in Intel Ethernet Controller I225-LM Support?:

                                      Yes, but isn't the device ID difference to be expected?

                                      Yes it is. I'm just saying it's different to the NIC in the 6100 so it may not have been tested.

                                      Are there any pertinent differences in the registers between the two?

                                      I don't know. The spec sheets don't look significantly different though.

                                      SetarcosS 1 Reply Last reply Reply Quote 0
                                      • SetarcosS
                                        Setarcos @stephenw10
                                        last edited by

                                        @stephenw10

                                        Does your 6100 have any igc driver tunables set? Here is what I am currently using (defaults):

                                        [21.05-RELEASE][root@cerberus.setarcos.lan]/root: sysctl -a hw.igc
                                        hw.igc.max_interrupt_rate: 8000
                                        hw.igc.eee_setting: 1
                                        hw.igc.rx_process_limit: 100
                                        hw.igc.sbp: 1
                                        hw.igc.smart_pwr_down: 0
                                        hw.igc.rx_abs_int_delay: 66
                                        hw.igc.tx_abs_int_delay: 66
                                        hw.igc.rx_int_delay: 0
                                        hw.igc.tx_int_delay: 66
                                        hw.igc.disable_crc_stripping: 0
                                        

                                        I have a 2.5Gbe device on the way and will be able to test with that shortly, but have otherwise run out of things to try.

                                        L 1 Reply Last reply Reply Quote 0
                                        • stephenw10S
                                          stephenw10 Netgate Administrator
                                          last edited by

                                          Just the same default values you're using:

                                          [21.05-RELEASE][admin@6100-2.stevew.lan]/root: sysctl hw.igc
                                          hw.igc.max_interrupt_rate: 8000
                                          hw.igc.eee_setting: 1
                                          hw.igc.rx_process_limit: 100
                                          hw.igc.sbp: 1
                                          hw.igc.smart_pwr_down: 0
                                          hw.igc.rx_abs_int_delay: 66
                                          hw.igc.tx_abs_int_delay: 66
                                          hw.igc.rx_int_delay: 0
                                          hw.igc.tx_int_delay: 66
                                          hw.igc.disable_crc_stripping: 0
                                          

                                          Steve

                                          SetarcosS 2 Replies Last reply Reply Quote 0
                                          • L
                                            lra @Setarcos
                                            last edited by

                                            @setarcos

                                            You may want to try the card in a Linux 5.10+ system just to prove it is functioning properly.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.