Issue while installing driver for Archer T4U AC1300 on Mint 17

Original question

I could not find any specific answer for my question, all driver installation issues I found for the T4U are related to the kernel version and work around can be proposed, mine is different I think …

I bought an Archer T4U AC1300 from TP Link and I tried to install the open source driver from here.

I use mint 17:

<a href="https://getridbug.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="f391969f9980b391969f9980deba9d80839a819c9ddec6cbc3">[email protected]</a> ~ $ cat /etc/*-release
DISTRIB_ID=LinuxMint
DISTRIB_RELEASE=17.3
DISTRIB_CODENAME=rosa
DISTRIB_DESCRIPTION="Linux Mint 17.3 Rosa"
NAME="Ubuntu"
VERSION="14.04.3 LTS, Trusty Tahr"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 14.04.3 LTS"
VERSION_ID="14.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
cat: /etc/upstream-release: est un dossier

<a href="https://getridbug.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="0e6c6b62647d4e6c6b62647d2347607d7e677c6160233b363e">[email protected]</a> ~ $ uname -a
Linux beljs-Inspiron-580 3.19.0-32-generic #37~14.04.1-Ubuntu SMP Thu Oct 22 09:37:25 UTC 2015 i686 i686 i686 GNU/Linux

but I believe the issue I have while installing the driver is more a compilation issue or a bug in the code itself (?).

I followed the basic driver installation procedure recommended on different websites:

git clone https://github.com/abperiasamy/rtl8812AU_8821AU_linux.git
cd rtl8812AU_8821AU_linux/
make
sudo make install

but I always get an error during the make process in ioctl_cfg80211.c (sorry for the French):

<a href="https://getridbug.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="2d4f4841475e6d4f4841475e0064435e5d445f42430018151d">[email protected]</a> ~ $ git clone https://github.com/abperiasamy/rtl8812AU_8821AU_linux.git
Clonage dans 'rtl8812AU_8821AU_linux'...
remote: Counting objects: 1498, done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 1498 (delta 1), reused 0 (delta 0), pack-reused 1492
Réception d'objets: 100% (1498/1498), 3.53 MiB | 692.00 KiB/s, done.
Résolution des deltas: 100% (909/909), done.
Vérification de la connectivité... fait.
<a href="https://getridbug.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="bad8dfd6d0c9fad8dfd6d0c997f3d4c9cad3c8d5d4978f828a">[email protected]</a> ~ $ cd rtl8812AU_8821AU_linux/
<a href="https://getridbug.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="afcdcac3c5dcefcdcac3c5dc82e6c1dcdfc6ddc0c1829a979f">[email protected]</a> ~/rtl8812AU_8821AU_linux $ make
make ARCH=i386 CROSS_COMPILE= -C /lib/modules/3.19.0-32-generic/build M=/home/beljs/rtl8812AU_8821AU_linux  modules
make[1]: entrant dans le répertoire « /usr/src/linux-headers-3.19.0-32-generic »
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_cmd.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_security.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_debug.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_io.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_ioctl_query.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_ioctl_set.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_ieee80211.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_mlme.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_mlme_ext.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_wlan_util.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_vht.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_pwrctrl.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_rf.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_recv.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_sta_mgt.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_ap.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_xmit.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_p2p.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_tdls.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_br_ext.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_iol.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_sreset.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_btcoex.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_beamforming.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/rtw_odm.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/core/efuse/rtw_efuse.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/osdep_service.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/os_intfs.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/usb_intf.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/usb_ops_linux.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_linux.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/xmit_linux.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/mlme_linux.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/recv_linux.o
  CC [M]  /home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.o
/home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5971:2: error: initialization from incompatible pointer type [-Werror]
  .del_station = cfg80211_rtw_del_station,
  ^
/home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5971:2: error: (near initialization for ‘rtw_cfg80211_ops.del_station’) [-Werror]
cc1: all warnings being treated as errors
make[2]: *** [/home/beljs/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.o] Erreur 1
make[1]: *** [_module_/home/beljs/rtl8812AU_8821AU_linux] Erreur 2
make[1]: quittant le répertoire « /usr/src/linux-headers-3.19.0-32-generic »
make: *** [modules] Erreur 2

I also tried to install the driver from:
github.com/Grief/archer-t4u
but also got similar errors (not exactly at the same location, but in the same file)

Answers:

Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

Solution

In short:

  1. git clone https://github.com/gnab/rtl8812au
  2. update /rtl8812au/os_dep/linux/usb_intf.c-> find the original bus id for the archer T4U AC1200 (2357:0101) and add a line with the bus id for the AC1300 (2357:010d) right after:
    {USB_DEVICE(0x2357, 0x0101),.driver_info = RTL8812},    
    **{USB_DEVICE(0x2357, 0x010d),.driver_info = RTL8812},**
  3. follow the instructions in the readme file provided in ./rtl8812au

Voilà!

More explanations:

The problem was two-folded:

  1. Driver

GAD3R gave me a link to a correct version of the driver for my kernel that would compile correctly (many thanks for that!).

  1. Archer T4U AC1200 vs T4U AC1300

The Archer T4U in 99% of the references I found refers to the T4U AC1200, the one I purchased is a T4U AC1300 (also -v2). I am not sure if it is only a regional product name or if it corresponds to an actual hardware change. Maybe the T4u AC1300 is very recent as well: the only reference I could find is on the official website of Tp-Link .

Anyway, what triggered me is the bus id given on wikidevi :

The stick supports USB 3.0 and has the USB ID: 2357:0101

a lsusb gave me 2357:010d

The solution was then obvious:
I added a line in /rtl8812au/os_dep/linux/usb_intf.c (see above in short solution)

NB: I checked and the AC1300 usb id is already available in

https://github.com/abperiasamy/rtl8812AU_8821AU_linux

Method 2

I can confirm the above solution worked for me:

Worked on:
Ubuntu: 16.04.2, 
Kernel: 4.8.0-36-generic, 
gcc   : gcc version 5.4.0 20160609

The only difference I had to do was when I ran the command ‘lsusb’. It showed a device named ‘2357:010e’. When I had to add a new ‘line in usb_intf.c’ I had to change the reference from ‘d’ to ‘e’ instead. 🙂


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x