How can I install the driver of TX401 on Linux?
TX401( V1 V1.60 V1.80 V2 V2.6 )
Recent updates may have expanded access to feature(s) discussed in this FAQ. Visit your product's support page, select the correct hardware version for your device and check either the Datasheet or the firmware section for the latest improvements added to your product.
This article will show you how to install and uninstall the driver of TX401 on Linux.
IMPORTANT NOTE
WARNING:
- The AQtion driver compiles by default with the LRO (Large Receive Offload) feature enabled.
- This option offers the lowest CPU utilization for receives, but is completely incompatible with *routing/ip forwarding* and *bridging*.
- If enabling ip forwarding or bridging is a requirement, it is necessary to disable LRO using compile time options as noted in the LRO section later in this document.
- The result of not disabling LRO when combined with ip forwarding or bridging can be low throughput or even a kernel panic.
- This driver supports the linux kernels >= 3.10, and includes support for x86_64 and ARM Linux system.
Identifying Your Adapter
The driver of TX401 1.0 is compatible with Ethernet adapters based on: AQC100, AQC107, AQC108.
The driver of TX401 2.0 is compatible with Ethernet adapters based on: AQC100, AQC108, AQC113.
Note: Can’t find the hardware version of the adapter? Please refer to: How to find the hardware version on a TP-Link device?
SFP+ Devices (for AQC-100 based adapters)
----------------------------------
This FAQ tested with passive Direct Attach Cables (DAC) and SFP+/LC Optical Transceiver.
Building and Installation
To manually build this driver:
1. Make sure you have all the environment to build standalone kernel module.
On Debian-based systems you may do the following:
sudo apt install linux-headers build-essential
2. Move the base driver tar file to the directory of your choice.
For example, use /home/username/aquantia.
Untar/unzip archive:
cd ~/aquantia
tar zxf Aquantia-AQtion-x.y.z.tar.gz
3. Change to the driver src directory:
cd Aquantia-AQtion-x.y.z/
4. Compile the driver module:
make
5. Unload the driver, if an older version is in use:
sudo rmmod atlantic
6. Load the dependencies and the module itself:
sudo make load
7. Install the driver in the system:
make && make install
driver will be in:
/lib/modules/`uname -r`/aquantia/atlantic.ko
Alternatively build and install driver with dkms
1. Make sure you have all the environment to build standalone kernel module.
On Debian-based systems you may use the following command:
sudo apt-get install linux-headers-`uname -r` build-essential gawk dkms
On redhat-based systems you may use the following command:
sudo yum install kernel-devel-`uname -r` gcc gcc-c++ make gawk dkms
2. Move the base driver tar file to the directory of your choice.
For example, use /home/username/aquantia.
Untar/unzip archive:
cd ~/aquantia
tar zxf Aquantia-AQtion-x.y.z.tar.gz
3. Change to the driver source directory:
cd Aquantia-AQtion-x.y.z/
4. Build and install driver:
sudo ./dkms.sh install
driver will be in:
/lib/modules/`uname -r`/updates/dkms/atlantic.ko
Install driver on Debian\Ubuntu using atlantic-x.y.z.deb
1. Make sure you have all the environment to build standalone kernel module.
Execute the commands:
sudo apt-get install linux-headers-`uname -r`
2. Move the atlantic-x.y.z.deb file to the directory of your choice.
For example, use /home/username/aquantia.
3. Execute the commands:
cd /home/username/aquantia
sudo apt-get install ./atlantic-x.y.z.deb
After this driver will be installed.
(You can check this via "dpkg -l | grep -i atlantic")
Alternatively you can use atlantic-x.y.z.noarch.rpm
1. Make sure you have all the environment to build standalone kernel module.
Execute the commands:
sudo yum install kernel-devel-`uname -r`
2. Move the atlantic-x.y.z.noarch.rpm file to the directory of your choice.
For example, use /home/username/aquantia.
3. Execute the commands:
cd /home/username/aquantia
sudo yum install ./atlantic-x.y.z.noarch.rpm
After this driver will be installed. (You can check this via "rpm -qa | grep -i atlantic")
Check that the driver is working
1. Verify that ethernet interface appears:
ifconfig
or
ip addr show
If there's no new interface in the output, then check the dmesg output.
If you see a "Bad firmware detected" message there, please update the firmware on your ethernet card.
2. Assign an IP address to the interface
(replace 'ethX' with an actual interface name):
ifconfig ethX <IP_address> netmask <netmask>
or
ip addr add <IP_address> dev ethX
3. Verify that the interface works
(replace '<IP_address>' with an actual IP address of another machine on
the same subnet with the interface under test):
ping <IP_address>
or (for IPv6)
ping6 <IPv6_address>
4. Make sure you are using the correct version of the driver (replace 'ethX' with an actual interface name):
ethtool -i ethX
Uninstall the Driver
To manually uninstall this driver:
Run the following command:
make uninstall
or:
sudo rmmod atlantic
sudo rm -f /lib/modules/`uname -r`/aquantia/atlantic.ko
depmod -a `uname -r`
Uninstall driver with dkms
Run the following command:
sudo ./dkms.sh uninstall
Uninstall driver on Debian\Ubuntu using atlantic-x.y.z.deb
Run the following command:
sudo dpkg -P atlantic
Uninstall driver using atlantic-x.y.z.noarch.rpm
Run the following command:
sudo rpm -e atlantic-x.y.z.noarch
Is this faq useful?
Your feedback helps improve this site.
What’s your concern with this article?
- Dissatisfied with product
- Too Complicated
- Confusing Title
- Does not apply to me
- Too Vague
- Other
Thank you
We appreciate your feedback.
Click here to contact TP-Link technical support.
Recommended Products
TP-Link Community
Still need help? Search for answers, ask questions, and get help from TP-Link experts and other users around the world.
This website uses cookies to improve website navigation, analyze online activities and have the best possible user experience on our website. You can object to the use of cookies at any time. You can find more information in our privacy policy . Don’t show again
This website uses cookies to improve website navigation, analyze online activities and have the best possible user experience on our website. You can object to the use of cookies at any time. You can find more information in our privacy policy . Don’t show again
Basic Cookies
These cookies are necessary for the website to function and cannot be deactivated in your systems.
TP-Link
accepted_local_switcher, tp_privacy_base, tp_privacy_marketing, tp_smb-select-product_scence, tp_smb-select-product_scenceSimple, tp_smb-select-product_userChoice, tp_smb-select-product_userChoiceSimple, tp_smb-select-product_userInfo, tp_smb-select-product_userInfoSimple, tp_top-banner, tp_popup-bottom, tp_popup-center, tp_popup-right-middle, tp_popup-right-bottom, tp_productCategoryType
Livechat
__livechat, __lc2_cid, __lc2_cst, __lc_cid, __lc_cst, CASID
Youtube
id, VISITOR_INFO1_LIVE, LOGIN_INFO, SIDCC, SAPISID, APISID, SSID, SID, YSC, __Secure-1PSID, __Secure-1PAPISID, __Secure-1PSIDCC, __Secure-3PSID, __Secure-3PAPISID, __Secure-3PSIDCC, 1P_JAR, AEC, NID, OTZ
Analysis and Marketing Cookies
Analysis cookies enable us to analyze your activities on our website in order to improve and adapt the functionality of our website.
The marketing cookies can be set through our website by our advertising partners in order to create a profile of your interests and to show you relevant advertisements on other websites.
Google Analytics & Google Tag Manager
_gid, _ga_<container-id>, _ga, _gat_gtag_<container-id>
Google Ads & DoubleClick
test_cookie, _gcl_au
Meta Pixel
_fbp
Crazy Egg
cebsp_, _ce.s, _ce.clock_data, _ce.clock_event, cebs
lidc, AnalyticsSyncHistory, UserMatchHistory, bcookie, li_sugr, ln_or