OPNsense Forum

English Forums => Hardware and Performance => Topic started by: Mr. Me on January 22, 2024, 04:33:43 pm

Title: How I installed AQC107 TP-Link TX401 10GbE Ethernet Adapter and driver
Post by: Mr. Me on January 22, 2024, 04:33:43 pm
Hello, I just installed OPNsense for the first time.  I didn't know anything about FreeBSD, but through research, I'll give step by step of how I installed the Marvell Aquantia AQtion AQC107 driver and made it persistently load after reboot.

My install is OPNsense 23.7 which has a FreeBSD kernel version 13.  AQN107 refers to the Network card and AQC107 refers to the controller chip.
This was installed on a Dell Optiplex 7060 i7.  The driver below works with FreeBSD v13.
The TP-Link TX401 NIC is currently working on my router.  It is setup as a LAN port and is linked at 10Gb to my Zyxel XS1930-12HP switch.



Log in through the local console.

Enter shell
(Select 8)

At the command prompt #
To download the driver
Code: [Select]
# fetch https://pkg.freebsd.org/FreeBSD:13:amd64/latest/All/aquantia-atlantic-kmod-0.0.5_2.pkg
To install the driver
Code: [Select]
# pkg install aquantia-atlantic-kmod-0.0.5_2.pkg
To have the driver always load after reboot, edit the file loader.conf.local
Code: [Select]
# ee /boot/loader.conf.local
Add 1 line by typing
Code: [Select]
if_atlantic_load="YES"
(PRESS ESC key)

Leave editor
(Press a)

Save changes
(Press a)

Exit shell
Code: [Select]
# exit
Reboot system
(Select 6)

After reboot, log in through the local console.

Enter shell
(Select 8)

To check if driver is loaded after reboot (see that if_atlantic.ko is included in the list)
Code: [Select]
# kldstat
Check available interfaces.  (The AQC107 ethernet interface should be available and will be listed as aq0)
Code: [Select]
# ifconfig

Title: Re: How I installed AQC107 TP-Link TX401 10GbE Ethernet Adapter and driver
Post by: Patrick M. Hausen on January 22, 2024, 04:43:23 pm
To have the driver always load after reboot, edit the file loader.conf.local
Code: [Select]
# ee /boot/loader.conf.local
Add 1 line by typing
Code: [Select]
if_atlantic_load="YES"

Thanks for the writeup. You can do this step in the UI so the setting becomes part of a configuration backup, just in case you ever need to reinstall.

System > Settings > Tunables.
Title: Re: How I installed AQC107 TP-Link TX401 10GbE Ethernet Adapter and driver
Post by: Mr. Me on January 23, 2024, 12:50:44 am
To have the driver always load after reboot, edit the file loader.conf.local
Code: [Select]
# ee /boot/loader.conf.local
Add 1 line by typing
Code: [Select]
if_atlantic_load="YES"

Thanks for the writeup. You can do this step in the UI so the setting becomes part of a configuration backup, just in case you ever need to reinstall.

System > Settings > Tunables.


I listed this step by step with quick explanations to help others like me who are new to this.  I compiled it from bits and pieces from many posts throughout the internet.  I was tired of answers that would say, "why not just use another approved card like Intel or You have to edit a specific file, without stating how to edit the file.

Actually I tried making the driver load at boot using GUI tunables fist.
When I rebooted, I would check to see if it was loaded in the console using # kldstat, but it never was.
I tried the value YES and "YES".  It didn't seem to work.  Therefore I then used the console method of editing the file.
Unless there is something i'm doing wrong with the tunables that I can try, let me know.  Having a configuration backup is a good point.  Thanx
Title: Re: How I installed AQC107 TP-Link TX401 10GbE Ethernet Adapter and driver
Post by: Patrick M. Hausen on January 23, 2024, 10:20:27 am
I created the tunable like shown in the screenshot, save & apply - it does show up correctly in /boot/loader.conf afterwards:
Code: [Select]
root@opnsense:~ # grep atlantic /boot/loader.conf
if_atlantic_load="YES"
root@opnsense:~ #

HTH,
Patrick