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

    Unable to install NIC driver for Intel X710-DA2

    Scheduled Pinned Locked Moved Hardware
    19 Posts 3 Posters 3.9k 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
      last edited by

      Are you running 2.3.4 or 2.3.4_1?

      Try a 2.4 snapshot to get the newest available drivers. Or upgrade to that.

      You cannot build those drivers on pfSense, it has none of the build tools required. If you really needed to you must build the kernel modules in the equivalent FreeBSD version and copy them across. But you don't need to do that, just try 2.4.

      What actual error are you seeing though?

      Steve

      1 Reply Last reply Reply Quote 0
      • N
        N0m0fud
        last edited by

        What version of pfSense has the drivers for X710-DA2 built in? I have the same issue. Cannot get 2.3.4-RELEASE-p1 to recognize the cards.

        I did the following to cpmpile:

        1. Build a VM on FreeBSD
        2. Downloaded the source files to the VM
        3. Downloaded the Intel driver source files
        4. Compiled as directed
        5. Copied the if_ix.ko file over to pfSense /boot/kernel
        6. Added the load line to the loader.conf file

        When the machine reboots, I see it trying to load the driver. The NICs are never recognized.

        Any help would be appreciated.

        Thanks!

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

          It doesn't seem like an ix card, it should surely be ixl, or ixvl if it's virtualised.

          What does it report the PCI vendor and device IDs as? Try running:

          pciconf -lv
          

          Check for devices without a driver attached, noneX, that are class network. It's easy enough to check that against the driver.

          Steve

          1 Reply Last reply Reply Quote 0
          • K
            Krishna27
            last edited by

            Hi Steve,

            I see the following on pciconf -lv

            none2@pci0:11:0:0:      class=0x020000 card=0x00008086 chip=0x154c8086 rev=0x01 hdr=0x00
                vendor    = 'Intel Corporation'
                device    = 'XL710/X710 Virtual Function'
                class      = network
                subclass  = ethernet
            none3@pci0:19:0:0:      class=0x020000 card=0x00008086 chip=0x154c8086 rev=0x01 hdr=0x00
                vendor    = 'Intel Corporation'
                device    = 'XL710/X710 Virtual Function'
                class      = network
                subclass  = ethernet

            I can see that X710 is present here without a driver.

            I have also set the Compiler type in /etc/src.conf after which I did not get the previous error "Try setting COMPILER_TYPE".

            However, now I got a new error: "Unable to locate kernel source tree, Set SYSDIR to override"

            Please guide me in installing the necessary drivers for X710 on pfSense 2.3.4

            Thanks

            1 Reply Last reply Reply Quote 0
            • K
              Krishna27
              last edited by

              Update:

              I see the exact same issues in pfSense 2.4 version which I downloaded from here

              https://snapshots.pfsense.org/amd64/pfSense_RELENG_2_4_0/installer/

              The same error related to compiler crops up on doing make install of the driver:
              "make: "/usr/share/mk/bsd.compiler.mk" line 39: Unable to determine compiler type for cc.  Consider setting COMPILER_TYPE."

              I have seen in other threads in the forum that people have installed this driver before. Can someone please help me?

              1 Reply Last reply Reply Quote 0
              • K
                Krishna27
                last edited by

                I can see the if_ixv.ko binary file in /boot/kernel, but still I cannot get the interface to show up in ifconfig. Any help is deeply appreciated.

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

                  Krishna,

                  That device should be loaded by the ixlv driver that is included;
                  https://github.com/pfsense/FreeBSD-src/blob/devel/sys/dev/ixl/i40e_devids.h

                  Do you see it trying to load at boot? There is probably an error message if so.

                  If you're building a newer driver you MUST do it in FreeBSD, you cannot build modules in pfSense.

                  Steve

                  1 Reply Last reply Reply Quote 0
                  • K
                    Krishna27
                    last edited by

                    Steve,

                    I don't see it loading at the boot time (things move pretty fast there, still with my best effort, I couldn't see that). But as I said, I can see a ixv.ko module in /boot/kernel.

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

                      Please attach the boot log for us to review: /var/log/dmesg.boot

                      If it has just booted that will be in the system log which you can view anyway in Status > System logs.

                      Steve

                      1 Reply Last reply Reply Quote 0
                      • N
                        N0m0fud
                        last edited by

                        I have the latest 3.4 release. I installed the GBICs and rebooted. I still don't see the interfaces. I know the Interfaces work in these machines as I had them working with Vyos.

                        pciconf -lv
                        
                        

                        Does not show the device in the pci device listings. I even removed one of the Broadcom 4 ports NICs thinking that there was an IRQ Resource issue. Not the case.

                        I then moved the 10 GB card to the other PCI slot and rebooted. Once that was done, The card was recognized and both ports show up:

                        ixl0@pci0:8:0:0:        class=0x020000 card=0x00078086 chip=0x15728086 rev=0x01 hdr=0x00
                            vendor    = 'Intel Corporation'
                            device    = 'Ethernet Controller X710 for 10GbE SFP+'
                            class      = network
                            subclass  = ethernet
                        ixl1@pci0:8:0:1:        class=0x020000 card=0x00008086 chip=0x15728086 rev=0x01 hdr=0x00
                            vendor    = 'Intel Corporation'
                            device    = 'Ethernet Controller X710 for 10GbE SFP+'
                            class      = network
                            subclass  = ethernet

                        So the drivers work but there is something about one of the PCI slots that I don't understand.

                        1 Reply Last reply Reply Quote 0
                        • N
                          N0m0fud
                          last edited by

                          I also installed on another host with 2.3.4 and the card in the other slot. The card was immediately recognized.

                          Very strange.

                          1 Reply Last reply Reply Quote 0
                          • K
                            Krishna27
                            last edited by

                            Hi NoMofd,

                            Do you mean changing the device slot and rebooting solved your problem even in 2.3.4 release?

                            I have Intel X710-DA2 CNA 10G NIC, which I have configured for SR-IOV on ESXi 6.0 and have assigned it as a PCIe device to pfSense. The devices don't show up as interface because of missing drivers. How were you able to install the drivers in pfSense 2.3.4 given that they don't come by default in 2.3.4?

                            It would be of great help if you could let me know.

                            Thanks

                            1 Reply Last reply Reply Quote 0
                            • N
                              N0m0fud
                              last edited by

                              I cannot explain why but changing the slot in which the card was installed and installing the current version of 2.3 showed the card as working with both NICs visible.

                              That is all I know. Wish I had more insight.

                              Just reporting the facts

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

                                I think you're seeing different issues here.

                                @Krishna; we need to see a boot log to see any errors generated since your card is detected and had a PCIID that should be used by ixlv.

                                Steve

                                1 Reply Last reply Reply Quote 0
                                • K
                                  Krishna27
                                  last edited by

                                  Hi Steve..

                                  Attached is the dmesg.boot file. Please review.

                                  Thanks
                                  Krishna

                                  dmesg.txt

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

                                    Ok, so the correct driver is trying to load for the card and failing:

                                    ixlv0: <intel(r) ethernet="" connection="" xl710="" x722="" vf="" driver,="" version="" -="" 1.4.6-k=""> mem 0xebaf0000-0xebafffff,0xebaec000-0xebaeffff at device 0.0 on pci4
                                    ixlv0: PF API 1.1 / VF API 1.1
                                    ixlv0: VSIs 1, QPs 4, MSIX 5, RSS sizes: key 52 lut 64
                                    ixlv0: Unable to allocate bus resource: AQ interrupt
                                    device_attach: ixlv0 attach returned 6</intel(r)>
                                    

                                    It's unable to hook to the Admin Queue which is how it communicates with the host device for some reason.

                                    That doesn't appear to be a common error. Do you have an interface options in the hypervisor that might relate to that?

                                    Steve

                                    1 Reply Last reply Reply Quote 0
                                    • K
                                      Krishna27
                                      last edited by

                                      Hi Steve,

                                      I have assigned this device as a PCIe device after enabling SR-IOV at the hardware (globally, in boot menu) and also at the hypervisor (as in enabling the max_vfs for the device). Do you think this is the reason?

                                      Thanks,
                                      Krishna

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

                                        Hard to say what the reason is right now. That driver is not the newest but if there was a known issue with it I would expect to see bug reports….

                                        There is a slightly newer version available from Intel. Or a significantly newer version in FreeBSD 11.1.

                                        You can try importing 1.4.12 into pfSense.

                                        A better test might be to try loading a FreeBSD 11.1 iso which has 1.7.12.

                                        Steve

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