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

    Intel Ethernet Controller I225-LM Support?

    Hardware
    19
    189
    69.2k
    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
      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
                                          • SetarcosS
                                            Setarcos @stephenw10
                                            last edited by

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