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

How do you add a driver to a pfSense install?

Hardware
2
18
3.4k
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.
  • F
    F4 0
    last edited by Mar 12, 2023, 2:41 AM

    I have a NIC that has recent support, but is not in the current 2.6 release.

    The card in question is this one, the driver is here.

    https://github.com/Aquantia/aqtion-freebsd

    Here is where I get lost. How do I get this driver over to my pfSense installation so that it gets recognized?

    I am COMPLETELY new to this, so stuff like "do a tx and then sr the bc file to gre -r" is a sink hole for me.

    I've repurposed a Dell desktop as a router, the NIC is in a PCIe slot. The local install of pfSense is on a 128Gb attached ssd.

    Reading around on how to do this is sending me in too many directions. What is a foolproof and straightforward way to get a driver from that git recognized by the system?

    F 1 Reply Last reply Mar 12, 2023, 2:45 AM Reply Quote 0
    • F
      F4 0 @F4 0
      last edited by Mar 12, 2023, 2:45 AM

      @f4-0

      https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=238324

      This also mentions the driver.

      I have no idea which files to bring over, or how to do it. If anyone can explain this, its quite hard to understand if you are not fluent in it.

      1 Reply Last reply Reply Quote 0
      • F
        F4 0
        last edited by F4 0 Mar 12, 2023, 8:56 AM Mar 12, 2023, 8:56 AM

        I have been digging further into the issue I am having, this thread details out a similar problem with the same chipset.

        https://forum.netgate.com/topic/155264/can-t-assign-nic-aquantia-corp-aqc107

        More specifically, it mentions the specifc card I am dealing with:

        https://forum.netgate.com/post/1041385

        ASUS XG-C100C

        If I am not mistake, this driver I'm dealing with now in the state that the person in the thread there was in. If I were to follow similar steps, should that get this driver recognized also?

        The XG-C100C is doing something similar to this:

        none5@pci0:1:0:0:       class=0x020000 card=0x88121043 chip=0x94c01d6a rev=0x03 hdr=0x00
            vendor     = 'Aquantia Corp.'
            class      = network
            subclass   = ethernet
            bar   [10] = type Memory, range 64, base 0xa1400000, size 524288, enabled
            bar   [18] = type Memory, range 64, base 0xa14a0000, size 4096, enabled
            bar   [20] = type Memory, range 64, base 0xa1000000, size 4194304, enabled
        
        1 Reply Last reply Reply Quote 0
        • F
          F4 0
          last edited by F4 0 Mar 13, 2023, 2:11 PM Mar 13, 2023, 2:02 PM

          I'm not sure I am using the correct terminology for this

          Here are the links, they were not active in the last post.

          [https://forum.netgate.com/topic/155264/can-t-assign-nic-aquantia-corp-aqc107](link url)

          [https://forum.netgate.com/post/1041385](link url)

          I cannot post in that other thread, but:

          @stephenw10 said in aquantia aqc107 can't recognised on pfsense2.5:

          Do this:

          [2.6.0-RELEASE][admin@cedev-6.stevew.lan]/root: pkg add http://pkg.freebsd.org/FreeBSD:12:amd64/latest/All/aquantia-atlantic-kmod-0.0.5_1.pkg
          Fetching aquantia-atlantic-kmod-0.0.5_1.pkg: 100%   22 KiB  22.7kB/s    00:01    
          Installing aquantia-atlantic-kmod-0.0.5_1...
          Extracting aquantia-atlantic-kmod-0.0.5_1: 100%
          [2.6.0-RELEASE][admin@cedev-6.stevew.lan]/root: kldload if_atlantic.ko
          [2.6.0-RELEASE][admin@cedev-6.stevew.lan]/root: kldstat
          Id Refs Address                Size Name
           1   26 0xffffffff80200000  3aed878 kernel
           2    1 0xffffffff83f19000     1000 cpuctl.ko
           3    1 0xffffffff83f1a000     2698 intpm.ko
           4    1 0xffffffff83f1d000      b40 smbus.ko
           5    1 0xffffffff83f1e000    11aa8 dummynet.ko
           6    1 0xffffffff83f30000    344f8 if_wg.ko
           7    1 0xffffffff83f65000     9fa0 if_atlantic.ko
          

          Then see if the interface appears and is usable.

          If it is do:

          [2.6.0-RELEASE][admin@cedev-6.stevew.lan]/root: echo 'if_atlantic_load="YES"' >> /boot/loader.conf.local
          

          That will load the module at boot every time.

          Steve

          I checked my machine with uname -a, it shows freeBSD 14 is installed.

          Shouldn't this driver be showing up ?

          S 1 Reply Last reply Mar 13, 2023, 3:19 PM Reply Quote 0
          • S
            stephenw10 Netgate Administrator @F4 0
            last edited by stephenw10 Mar 13, 2023, 3:37 PM Mar 13, 2023, 3:19 PM

            @f4-0 said in How do you add a driver to a pfSense install?:

            I checked my machine with uname -a, it shows freeBSD 14 is installed.

            Then it isn't running 2.6. What pfSense version are you running?

            The aquantia driver or kmod pkg is not included in any pfSense version yet though.

            You would need to load it from FreeBSD. Though it looks like there are no port builds for FreeBSD 14 yet.

            Steve

            F 2 Replies Last reply Mar 13, 2023, 3:26 PM Reply Quote 1
            • F
              F4 0 @stephenw10
              last edited by Mar 13, 2023, 3:26 PM

              @stephenw10

              I am running the latest dev branch 2.7.* hoping it might snag the driver, but it did not.

              Would you kindly help me "load it from FreeBSD" ? This is where being new to this, I quickly get stuck.

              Many thanks

              1 Reply Last reply Reply Quote 0
              • F
                F4 0 @stephenw10
                last edited by F4 0 Mar 13, 2023, 3:47 PM Mar 13, 2023, 3:46 PM

                @stephenw10 said in How do you add a driver to a pfSense install?:

                @f4-0 said in How do you add a driver to a pfSense install?:

                I checked my machine with uname -a, it shows freeBSD 14 is installed.

                Then it isn't running 2.6. What pfSense version are you running?

                The aquantia driver or kmod pkg is not included in any pfSense version yet though.

                You would need to load it from FreeBSD. Though it looks like there are no port builds for FreeBSD 14 yet.

                Steve

                [https://github.com/Aquantia/aqtion-freebsd](link url)

                People on the net are pointing me here, is this viable?

                1 Reply Last reply Reply Quote 0
                • S
                  stephenw10 Netgate Administrator
                  last edited by Mar 13, 2023, 3:55 PM

                  You can attempt to compile it yourself from the source, yes. However installing from the kmod port is much easier if it exists. Also the fact there is no port for FreeBSD 14 yet may mean there are issues compiling it currently.
                  If you just want to get that running I would reinstall 2.6 and install the kmod pkg.

                  Steve

                  F 1 Reply Last reply Mar 13, 2023, 4:00 PM Reply Quote 0
                  • F
                    F4 0 @stephenw10
                    last edited by F4 0 Mar 13, 2023, 4:02 PM Mar 13, 2023, 4:00 PM

                    @stephenw10 said in How do you add a driver to a pfSense install?:

                    You can attempt to compile it yourself from the source, yes. However installing from the kmod port is much easier if it exists. Also the fact there is no port for FreeBSD 14 yet may mean there are issues compiling it currently.
                    If you just want to get that running I would reinstall 2.6 and install the kmod pkg.

                    Steve

                    Would that be the :12: package noted above? I did this before posting here and it did not recognize the driver. It still shows as "none" in pciconf.

                    I am going to redo it in case something was off.

                    1 Reply Last reply Reply Quote 0
                    • S
                      stephenw10 Netgate Administrator
                      last edited by Mar 13, 2023, 4:19 PM

                      Yes, the kmod pkg for FreeBSD12.

                      That chip ID (0x94c0) is not listed in the driver though:
                      https://github.com/Aquantia/aqtion-freebsd/blob/master/aq_main.c#L91

                      So I would not expect it to work.

                      ...which is actually what I said in the other thread so nothing looks to have changed since then.

                      Steve

                      1 Reply Last reply Reply Quote 1
                      • F
                        F4 0
                        last edited by Mar 13, 2023, 6:55 PM

                        @stephenw10 said in How do you add a driver to a pfSense install?:

                        Yes, the kmod pkg for FreeBSD12.

                        That chip ID (0x94c0) is not listed in the driver though:
                        https://github.com/Aquantia/aqtion-freebsd/blob/master/aq_main.c#L91

                        So I would not expect it to work.

                        ...which is actually what I said in the other thread so nothing looks to have changed since then.

                        Steve

                        My card is the ASUS XG-C100C.

                        When I do a pciconf -lvb, I don't see the chip mentioned.

                        It shows AQC113CS

                        I did some more digging and found a pathway via the Linux download.

                        https://www.asus.com/networking-iot-servers/wired-networking/all-series/xg-c100c/helpdesk_download/?model2Name=XG-C100C

                        I have attached the readme file which specifies how to build the driver. Is it reasonable for me to try this?

                        To not trash the post, the read me snippet will be in the next post....

                        1 Reply Last reply Reply Quote 0
                        • S
                          stephenw10 Netgate Administrator
                          last edited by Mar 13, 2023, 7:02 PM

                          No, not unless it includes a FreeBSD driver. Which I very much doubt it does.

                          About the only thing you could try would be to add the device ID to the FreeBSD driver and try to compile it yourself with that. You'd have to hope that chip is sufficiently similar to one of the other supported chips that it can be used.
                          Otherwise it will require development work to the driver. There may be some discussion of that over in the FreeBSD forums. And if I was doing this I would first try to make it work in a standard FreeBSD install.

                          Steve

                          F 1 Reply Last reply Mar 13, 2023, 7:21 PM Reply Quote 1
                          • F
                            F4 0 @stephenw10
                            last edited by Mar 13, 2023, 7:21 PM

                            @stephenw10 said in How do you add a driver to a pfSense install?:

                            No, not unless it includes a FreeBSD driver. Which I very much doubt it does.

                            About the only thing you could try would be to add the device ID to the FreeBSD driver and try to compile it yourself with that. You'd have to hope that chip is sufficiently similar to one of the other supported chips that it can be used.
                            Otherwise it will require development work to the driver. There may be some discussion of that over in the FreeBSD forums. And if I was doing this I would first try to make it work in a standard FreeBSD install.

                            Steve

                            https://forums.freebsd.org/threads/is-there-going-to-be-support-for-the-asus-xg-c100c-baked-into-a-release-anytime-soon.76401/

                            It looks like someone has done it on freeBSD, and there is a link to this page:

                            https://www.freshports.org/net/aquantia-atlantic-kmod

                            I wish I knew more, but is this what is needed?

                            I am happy to try anything here, I am dead in the water unless I get this card to work so tell me what to do. I can blast this install anytime and start over. I just want to make an effort at getting this up and running.

                            F 1 Reply Last reply Mar 13, 2023, 8:20 PM Reply Quote 0
                            • F
                              F4 0 @F4 0
                              last edited by Mar 13, 2023, 8:20 PM

                              @f4-0

                              This looks active as of 2 days ago.

                              https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=267348#c6

                              1 Reply Last reply Reply Quote 0
                              • S
                                stephenw10 Netgate Administrator
                                last edited by Mar 13, 2023, 8:24 PM

                                Yup. But it looks like Asus changed the chipset on the NIC and helpfully didn't bother updating the model number. The card that thread referenced was an AQC107:
                                https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=238324

                                It is supported in Linux: https://github.com/Aquantia/AQtion/blob/master/aq_common.h#L54

                                F 2 Replies Last reply Mar 13, 2023, 9:07 PM Reply Quote 0
                                • F
                                  F4 0 @stephenw10
                                  last edited by Mar 13, 2023, 9:07 PM

                                  @stephenw10

                                  Reading into this, its not copy/paste :)

                                  I am going to shift this to a thread on FreeBSD, you have been tremendously helpful.

                                  1 Reply Last reply Reply Quote 0
                                  • F
                                    F4 0 @stephenw10
                                    last edited by F4 0 Mar 13, 2023, 9:57 PM Mar 13, 2023, 9:57 PM

                                    @stephenw10

                                    I tested the Ubuntu install via thumb drive, it works without an issue, and the NIC connects at 5G as expected.

                                    Indeed, linux works.

                                    I think I have a temporary solution, I am going to use KVM and virtualize the instance of pfSense. This should use the native Linux drivers, and give me the pfSense router.

                                    I'm running the install now and will report back if it works. I'm sure this is not ideal, but as a stop gap until the card is supported, I can live with it.

                                    F 1 Reply Last reply Mar 14, 2023, 8:47 AM Reply Quote 1
                                    • F
                                      F4 0 @F4 0
                                      last edited by Mar 14, 2023, 8:47 AM

                                      @f4-0
                                      @stephenw10

                                      A lot of interesting progress, I am going to start a new thread since I am facing a new set of issues, but in general the Ubuntu base install + KVM + pfSense works (partly so far).

                                      I learned a lot about KVM... great piece of kit for Linux, running natively that way.

                                      1 Reply Last reply Reply Quote 1
                                      • A Antibiotic referenced this topic on Jun 13, 2024, 11:55 AM
                                      10 out of 18
                                      • First post
                                        10/18
                                        Last post
                                      Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.