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 84.7k 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.
    • stephenw10S
      stephenw10 Netgate Administrator @whizatit
      last edited by

      Sorry, I was being facetious. (1000Gb = 1Tbps!) 😉

      I have not personally rested anything at 2.5Gb or 5Gb but there other reports here on the forum of Intel base-T cards supporting that currently.
      https://forum.netgate.com/post/955570

      I don't believe there are any that support fibre at those speeds currently. If you need that your options are the Broadcom card with hacked firmware or some Realtek cards.

      Steve

      W 2 Replies Last reply Reply Quote 1
      • 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
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.