Coder Social home page Coder Social logo

abperiasamy / rtl8812au_8821au_linux Goto Github PK

View Code? Open in Web Editor NEW
1.2K 71.0 435.0 3.77 MB

rtl8812AU_8821AU linux kernel driver for AC1200 (801.11ac) Wireless Dual-Band USB Adapter

License: GNU General Public License v2.0

Shell 0.04% C 94.17% Objective-C 0.25% C++ 5.06% Makefile 0.48%

rtl8812au_8821au_linux's Introduction

rtl8812au

Realtek 8812AU/8821AU USB WiFi driver.

for AC1200 (801.11ac) Wireless Dual-Band USB Adapter

This code is base on version 4.3.14 from https://github.com/diederikdehaas/rtl8812AU

Update for NVidia Jestson Nano support

This code was forked from https://github.com/abperiasamy/rtl8812AU_8821AU_linux

Known Supported Devices:

* COMFAST 1200Mbps USB Wireless Adapter(Model: CF-912AC)
* TP-LINK AC1200 Wireless Dual Band USB Adapter(Model: Archer-T4U)
* TP-LINK AC600 Wireless Dual Band USB Adapter(Model: Archer-T2U Nano)

Compiling with DKMS

# sudo make -f Makefile.dkms install

Compiling for NVidia Jeston Nano

# CONFIG_PLATFORM_ARM_JET_NANO = y

Compiling for Raspberry Pi (3)

Install kernel headers and other dependencies.

# sudo apt-get install linux-image-rpi-rpfv linux-headers-rpi-rpfv raspberrypi-kernel-headers dkms build-essential bc

Install kernel headers: https://github.com/notro/rpi-source/wiki

sudo wget https://raw.githubusercontent.com/notro/rpi-source/master/rpi-source -O /usr/local/bin/rpi-source && sudo chmod +x /usr/local/bin/rpi-source && /usr/local/bin/rpi-source -q --tag-update
rpi-source

Edit Makefile and turn on CONFIG_PLATFORM_ARM_RPI, turn off CONFIG_PLATFORM_I386_PC

CONFIG_PLATFORM_I386_PC = n
CONFIG_PLATFORM_ARM_RPI = y
# cd /usr/src/rtl8812au
# sudo make clean
# sudo make -j4
# sudo make install
# sudo modprobe -a rtl8812au

Compiling for Ubuntu (16.04) and Debian (9)

Download archive into temp directory

# mkdir -p /tmp/t4u
# cd /tmp/t4u
# wget https://github.com/abperiasamy/rtl8812AU_8821AU_linux/archive/master.zip

Unzip

# unzip master.zip
# cd rtl8812AU_8821AU_linux-master

Install kernel headers

# sudo apt install linux-headers-$(uname -r)

Compile and install from source

# make
# sudo make install

Load module

# sudo modprobe -a rtl8812au

Cross-compiling. You can now specify variables on the command line w/out editing

makefile. For instance, this builds against recent OpenWRT neo2 platform. Your

Cross-compile binaries should be in your PATH.

KSRC=/home/greearb/git/openwrt-neo2-dev/build_dir/target-aarch64_cortex-a53_musl/linux-sunxi_cortexa53/linux-4.14.78 EXT_EXTRA_CFLAGS=-DCONFIG_LITTLE_ENDIAN ARCH=arm64 CROSS_COMPILE=aarch64-openwrt-linux- MODDESTDIR=/tmp make V=1

Setup DKMS

# sudo apt-get update
# sudo apt-get install dkms
# cd /tmp/t4u/rtl8812AU_8821AU_linux-master/
# sudo cp -R . /usr/src/rtl8812AU_8821AU_linux-1.0
# sudo dkms add -m rtl8812AU_8821AU_linux -v 1.0
# sudo dkms build -m rtl8812AU_8821AU_linux -v 1.0
# sudo dkms install -m rtl8812AU_8821AU_linux -v 1.0

Contributors

  • Anand Babu (AB) Periasamy
  • Andreas Hofmann
  • Andrew Mann
  • AndyPi
  • Anton
  • archshift
  • bits3rpent
  • Chen Minqiang
  • Daiki Tamada
  • Fjodor42
  • gremsto
  • HackDefendr
  • Harshavardhana
  • jjones-jr
  • Joe
  • Joe Acosta
  • John Lenz
  • Jos Dehaes
  • Karl-Philipp Richter
  • Marco Milanesi
  • Mauro Ribeiro
  • Maximilian Schwerin
  • mpoly
  • Nick Bartos
  • Peter H. Li
  • pgroenbech
  • scrivy
  • Taehan Stott
  • Vicent Llongo
  • Victor Azizi
  • 赵迤晨 (Zhao, Yichen)

rtl8812au_8821au_linux's People

Contributors

abperiasamy avatar alberto1a avatar andreas-hofmann avatar andypi avatar archshift avatar bits3rpent avatar ch0ks avatar cybersn-tdeyarmin avatar divvyandrew avatar fjodor42 avatar harshavardhana avatar hschletz avatar jasonalexander avatar joseph-jja avatar madscientist159 avatar masa23 avatar mdrjr avatar mpoly avatar nbartos avatar pgroenbech avatar ptpt52 avatar rafaelpierri avatar rmxhaha avatar saiarcot895 avatar sarlacii avatar scrivy avatar sirrujak avatar stigtsp avatar testott avatar villosil avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rtl8812au_8821au_linux's Issues

Bad connection quality

Using Ubuntu kernel 3.19.0-16-generic, I can compile and install without any issue. However, signal quality is very bad:

wlan1 Scan completed :
Protocol:IEEE 802.11bgn
Mode:Master
Frequency:2.452 GHz (Channel 9)
Encryption key:on
Bit Rates:144 Mb/s
IE: WPA Version 1
Group Cipher : TKIP
Pairwise Ciphers (1) : TKIP
Authentication Suites (1) : PSK
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : TKIP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
Quality=0/100 Signal level=23/100

On a different linux machine (Mint kernel 3.13.0-24) I can use the standard driver from Alfa web site, and I get very good connection quality.

No background scanning

First of all, thanks for porting the driver to newer kernels :-)

There seems to be a major issue (Ubuntu 14.04, linux 3.13) where every 2mins NetworkManager scans the network. Each time this happens, packets are delayed - I don't see drops but ping time skyrocket to 3000ms for about 3secs.

I've contacted Edimax twice and they've not bothered to reply so there's now a warning on https://wikidevi.com/wiki/Edimax_EW-7822UAC

Connected to Wifi, but no ping to router - Netgear AC6100

Hi,

I already explained the problem at askubuntu.com.

But here is the problem in short:
Ubuntu on 3.13.0-46. Compiled, and loaded the driver. iwconfig shows the right ESSID, ifconfig shows the right IP, route shows that wlan0 is used, but there is no answer to ping 192.168.1.1 (router).
I can add lsusb, etc. if you need it, but perhaps this is a very easy issue.

TIA

Cyoux

Low range performance

I am using an Asus US-AC56 which also uses the Realtek driver
However I discovered that the 4.2.2 has very limited range: if I am in direct line of sight of the router, it will work with high transfer rate - however if slightly removed (to adjacent room), it goes down considerably.
i.e. with the device in the same physical location I can achieve ~ 45 Mbps (Internet Speed Test) in Windows vs 1-2 Mbps in Linux. But if I move to a closer proximity, the performance in Linux is comparable.
Similarly, with the notebook in the same physical location, I get high transfer rate with the internal adapter in Linux, vs limited with the USB-AC56.

Now - I notice on the Asus web-site, they have newer driver rev 4.2.5 available here:
http://support.asus.com/Download.aspx?SLanguage=en&m=USB-AC56&p=11&s=1
In the application notes is says

Update MAC/BB/RF parameters and mechanism to improve overall performance

so I believe this will address the range issue.

However the 4.2.5 will not load - the release says for Kernel support 2.6.18 ~ 3.10 - I am running 3.11.

When tested in a kernel <3.10, the 4.2.5 driver definitely works MUCH better - has considerably improved speed when operated at a remote distance (the issue I was seeing with the 4.2.2)

However will not work into 3.11 kernel. It appears to build and install however the USB adapter does not work and additionally it causes system errors once the driver is loaded (when the USB is plugged in) - the Terminal will not accept commands, the software manager nor driver updater will open, nor the file system and the system will not shut down - just hangs.
So it definitely does not like to be used in 3.11 Kernel!
However in 3.08 it installed and operates flawlessly and indeed also resolves the range issue.

I can confirm I tested in Linux Mint 15 just using internet speed test as a quick reference:
Close line of sight proximity to router - 48 Mbps (55 peak)
In another room (through walls etc) - 39 Mbps (44 peak)

With 4.2.2 build, in the same remote location as above, was only 1-2 Mbps (but same as 4.2.5 when close proximity)

Summary - 4.22 has a range issue - 4.2.5 definitely resolves the range/transfer rate issue however will not work in 3.11 kernel.

So - if you can work some magic on 4.2.5 to enable it run on the 3.11 kernel, that would be fantastic!

5Ghz Issues

Hey guys, it seems that 5Ghz does not work. I am using an Alfa's AWUS036AC adapter and an ASUS AC56 to test this driver. In clarification, I can see my 5Ghz network, but cannot seem to connect to it about 80% of the time. When I do, the connection is not that stable.

For example, my ASUS RT-AC66U Router has two networks
NetworkTheta - 2.4Ghz (this works all the time)
NetworkTheta5Ghz- 5Ghz (can always view as stated above, rarely connect)

I am actually using gnab's repo right now, and the issue I posted is right here
gnab/rtl8812au#2

I am using Fedora 21 Workstation x86_64 with the latest kernel (at the time of this post 3.19.3-200.fc21.x86_64)

the dmesg of a successful 5Ghz connection: https://mega.co.nz/#!rVUiAYiJ!6vpJra9s8LnexQ92i5NF0YsgCKPM4C4-Z195f46btMk

the dmesg of a failed 5Ghz connection: https://mega.co.nz/#!PM9y2AxI!8oxhR19pmJvk2TAjyunmcT6Npi1NoMiTwRU8AgtWXEk

Thanks in advance!

Failed in compiling.

I was compiling the driver under ArchLinux on Raspberry Pi 2
uname -a

Linux meow-archarm 3.18.13-2-ARCH #1 SMP PREEMPT Mon May 18 20:19:37 MDT 2015 armv7l GNU/Linux

Error:

/home/meow/rtl8812AU_8821AU_linux/include/ioctl_cfg80211.h:113:71: error: too many arguments to function 'cfg80211_rx_mgmt'

hostapd low performance

I used the hostapd to create 11n AP mode with this rtl8812au driver. but the bitrate is desperately low (20mbps) .Do you any idea about what I should do to have better rate.

Following hostapd configuration is used:
ctrl_interface=/var/run/hostapd
bridge=br-lan
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=11111111
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
driver=nl80211
interface=wlan0
hw_mode=a
channel=44
ieee80211n=1
country_code=US
ssid=weiwei-5

and (iwlist scan) output:
Cell 01 - Address: 00:E0:4C:88:12:03
ESSID:"weiwei-5"
Protocol:IEEE 802.11an
Mode:Master
Frequency:5.22 GHz (Channel 44)
Encryption key:on
Bit Rates:130 Mb/s
Extra:rsn_ie=30140100000fac040100000fac040100000fac020c00
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
Quality=100/100 Signal level=97/100

Do you any idea about what I should do to have better rate?

Compilation fails in 3.18.5 and .6

Looks like the parameters to cfg80211_rx_mgmt have changed again again :-)

The flags parameter added in 3.12 is still there, but the gfp parameter has been removed:

[root@hagrid kernels]# grep -A 1 "bool cfg80211_rx_mgmt" */include/net/cfg80211.h
3.17.8-200.fc20.x86_64/include/net/cfg80211.h:bool cfg80211_rx_mgmt(struct wireless_dev *wdev, int freq, int sig_dbm,

3.17.8-200.fc20.x86_64/include/net/cfg80211.h- const u8 *buf, size_t len, u32 flags, gfp_t gfp);

3.18.5-101.fc20.x86_64/include/net/cfg80211.h:bool cfg80211_rx_mgmt(struct wireless_dev *wdev, int freq, int sig_dbm,

3.18.5-101.fc20.x86_64/include/net/cfg80211.h- const u8 *buf, size_t len, u32 flags);

3.18.6-100.fc20.x86_64/include/net/cfg80211.h:bool cfg80211_rx_mgmt(struct wireless_dev *wdev, int freq, int sig_dbm,
3.18.6-100.fc20.x86_64/include/net/cfg80211.h- const u8 *buf, size_t len, u32 flags);

This will thus need a fix for include/ioctl_cfg80211.h for the #define

bcdUSB 2.00

The device misreports, under Ubuntu 14.04 x64, as bcdUSB 2.xx, rather than bcdUSB 3.xx. This can be observed in the output of lsusb -vv post-driver compilation. I assume the respective Windows drivers do something to coerce the device into behaving as a proper USB 3.0 device. Can the same thing be achieved as part of this driver?

Edit 1: This user seems to be having the same issue: https://bbs.archlinux.org/viewtopic.php?pid=1398049#p1398049

Edit 2: This user also has the same issue: http://askubuntu.com/questions/389477/edimax-ew-7822uac-not-operating-at-superspeed

Stacke trace on kernel 3.13 wheb unplugging wifi dongle

Hi,

I'm using kernel 3.13. When I unplug my wifi dongle a stack trace is produced.
Here it is

[ 4247.778321] ------------[ cut here ]------------
[ 4247.778346] WARNING: CPU: 0 PID: 81 at /build/linux-ncyRvS/linux-3.13.5/net/wireless/core.c:961 cfg80211_netdev_notifier_call+0x2bf/0x5a0 cfg80211
[ 4247.778351] Modules linked in: usb_storage 8812au(O) cfg80211 pci_stub vboxpci(O) vboxnetadp(O) vboxnetflt(O) snd_hrtimer cpufreq_powersave cpufreq_userspace cpufreq_stats cpufreq_conservative rfcomm bnep binfmt_misc vboxdrv(O) synaptics_i2c firewire_sbp2 loop fuse parport_pc ppdev lp parport btusb gspca_m5602 gspca_main videodev bluetooth joydev media hid_generic usbhid hid pcspkr psmouse serio_raw evdev pcmcia snd_hda_codec_realtek r592 r852 sm_common nand nand_ecc i915 yenta_socket pcmcia_rsrc pcmcia_core lpc_ich mfd_core rng_core nand_ids memstick mtd drm_kms_helper drm i2c_algo_bit i2c_core acpi_cpufreq asus_laptop video ac battery snd_hda_intel snd_hda_codec snd_hwdep snd_pcm sparse_keymap snd_page_alloc rfkill processor button snd_seq snd_seq_device snd_timer input_polldev snd soundcore ext4 crc16 mbcache jbd2 sd_mod sg sr_mod crc_t10dif cdrom crct10dif_common ata_generic firewire_ohci sdhci_pci sdhci ata_piix 8139too firewire_core crc_itu_t 8139cp mii mmc_core libata scsi_mod thermal ehci_pci fan thermal_sys uhci_hcd ehci_hcd usbcore usb_common
[ 4247.778556] CPU: 0 PID: 81 Comm: khubd Tainted: G W O 3.13-1-686-pae #1 Debian 3.13.5-1
[ 4247.778563] Hardware name: ASUSTeK Computer Inc. W5A /W5A , BIOS 0209 11/17/2005
[ 4247.778569] 00000009 c140b038 00000000 c104d41e c14d7898 00000000 00000051 f8dbac14
[ 4247.778586] 000003c1 f8d7e95f f8d7e95f d9f36c00 e36d4920 d9f36c08 e36d5800 c104d4db
[ 4247.778603] 00000009 00000000 f8d7e95f d9f36000 c15a97dc e36d5800 e36d4800 c1657480
[ 4247.778620] Call Trace:
[ 4247.778631] [] ? dump_stack+0x3e/0x4e
[ 4247.778641] [] ? warn_slowpath_common+0x7e/0xa0
[ 4247.778665] [] ? cfg80211_netdev_notifier_call+0x2bf/0x5a0 [cfg80211]
[ 4247.778687] [] ? cfg80211_netdev_notifier_call+0x2bf/0x5a0 [cfg80211]
[ 4247.778698] [] ? warn_slowpath_null+0x1b/0x20
[ 4247.778720] [] ? cfg80211_netdev_notifier_call+0x2bf/0x5a0 [cfg80211]
[ 4247.778732] [] ? skb_dequeue+0x3d/0x50
[ 4247.778743] [] ? pneigh_queue_purge+0x20/0x30
[ 4247.778755] [] ? ip6mr_device_event+0x8a/0xb0
[ 4247.778767] [] ? packet_notifier+0x5c/0x170
[ 4247.778778] [] ? notifier_call_chain+0x46/0x60
[ 4247.778790] [] ? raw_notifier_call_chain+0x17/0x20
[ 4247.778802] [] ? rollback_registered_many+0x12f/0x220
[ 4247.778820] [] ? rollback_registered+0x1a/0x30
[ 4247.778831] [] ? unregister_netdevice_queue+0x3f/0xa0
[ 4247.778852] [] ? unregister_netdev+0x11/0x20
[ 4247.778924] [] ? rtw_usb_if1_deinit+0x36/0x7f [8812au]
[ 4247.778997] [] ? rtw_dev_remove+0x47/0x51 [8812au]
[ 4247.779031] [] ? usb_unbind_interface+0x43/0x180 [usbcore]
[ 4247.779048] [] ? __device_release_driver+0x59/0xb0
[ 4247.779059] [] ? device_release_driver+0x15/0x20
[ 4247.779070] [] ? bus_remove_device+0xaa/0xe0
[ 4247.779081] [] ? device_del+0xe3/0x170
[ 4247.779112] [] ? usb_disable_device+0x81/0x1c0 [usbcore]
[ 4247.779142] [] ? usb_disconnect+0x80/0x150 [usbcore]
[ 4247.779176] [] ? hub_thread+0x483/0x10d0 [usbcore]
[ 4247.779195] [] ? prepare_to_wait_event+0xc0/0xc0
[ 4247.779224] [] ? usb_reset_device+0x140/0x140 [usbcore]
[ 4247.779235] [] ? kthread+0x9e/0xc0
[ 4247.779247] [] ? ret_from_kernel_thread+0x1b/0x28
[ 4247.779258] [] ? kthread_create_on_node+0x110/0x110
[ 4247.779266] ---[ end trace ff41ae88874c3db5 ]---

Same happens with 3.14-rc6.
Let me know if I can help solving this issue.

Regards

nb

Crash on module inserting Edimax EW-7811UTC

Using Odroid C1 with kernel 3.10.72-76 and Edimax EW-7811UTC
insmod 8812ac:

[  153.446509@3] Unable to handle kernel paging request at virtual address 40000004
[  153.448417@3] pgd = e9910000
[  153.451444@3] [40000004] *pgd=00000000
[  153.455024@3] Internal error: Oops: 5 [#1] PREEMPT SMP ARM
[  153.460484@3] Modules linked in: 8812au(O+) uinput ir_rc6_decoder ir_lirc_codec ir_jvc_decoder ir_sanyo_decoder ir_mce_kbd_decoder ir_sony_decoder lirc_dev ir_rc5_decoder ir_nec_decoder meson_ir fuse w1_therm w1_gpio wire bmp085_i2c aml_i2c nls_cp437
[  153.482634@3] CPU: 3 PID: 1508 Comm: insmod Tainted: G           O 3.10.72-76 #1
[  153.490012@3] task: e98c4d00 ti: e9746000 task.ti: e9746000
[  153.495654@3] PC is at usb_dvobj_init+0xa4/0x294 [8812au]
[  153.501020@3] LR is at usb_dvobj_init+0x90/0x294 [8812au]
[  153.506332@3] pc : [<bf09da84>]    lr : [<bf09da70>]    psr: a00f0113
[  153.506332@3] sp : e9747d58  ip : 00000000  fp : 00000000
[  153.518139@3] r10: bf0e1ac0  r9 : eeb1d600  r8 : ee3bb408
[  153.523524@3] r7 : eeb30000  r6 : eeb30068  r5 : eeb1d620  r4 : ee3bb400
[  153.530210@3] r3 : 40000000  r2 : ee3bb4b4  r1 : ee3bb400  r0 : eeafc548
[  153.536898@3] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
[  153.544192@3] Control: 10c5387d  Table: 29b1004a  DAC: 00000015
[  153.550096@3]
[  153.550096@3] SP: 0xe9747cd8:
[  153.554698@3] 7cd8  c09ca7c0 e9747d1c c09ca7c0 00000000 00000000 00000000 00000001 c0a6a9a0
[  153.563034@3] 7cf8  bf09da84 a00f0113 ffffffff e9747d44 ee3bb408 c000db18 eeafc548 ee3bb400
[  153.571370@3] 7d18  ee3bb4b4 40000000 ee3bb400 eeb1d620 eeb30068 eeb30000 ee3bb408 eeb1d600
[  153.579707@3] 7d38  bf0e1ac0 00000000 00000000 e9747d58 bf09da70 bf09da84 a00f0113 ffffffff
[  153.588043@3] 7d58  ee3bb488 ee3bb494 ee3bb4a0 ee3bb4ac 00000000 eeb1d600 bf0e1ac0 eeb30068
[  153.596380@3] 7d78  eeb30000 bf0e17f0 eeb1d600 bf0e1ac0 00000000 bf09dfac eeb1d620 00000000
[  153.604716@3] 7d98  eeb30068 c02fbb94 c02fba28 eeb1d620 bf0e17f0 c0a7b4dc c0a7b4e8 bf0dba74
[  153.613053@3] 7db8  0000000d e9747f04 00000000 c02a38f4 eeb1d620 bf0e17f0 eeb1d654 00000000
[  153.621390@3]
[  153.621390@3] R0: 0xeeafc4c8:
[  153.625992@3] c4c8  30303643 42535520 00000000 00000003 eeafc440 eeaea180 eeaea188 eeaea188
[  153.634329@3] c4e8  00000001 00000000 00000000 00000000 00000000 00000000 0000002d 00000000
[  153.642665@3] c508  eeaeb340 eeafc600 eeaeb750 00000000 00000000 00000000 00000000 0840c89f
[  153.651002@3] c528  eeb30070 00000003 eeafc750 41ed0001 00003a44 00000000 00000001 00000002
[  153.659338@3] c548  00000409 ffffff06 00000002 00000000 eeafc452 eeb1d400 eeb1fa80 00000000
[  153.667675@3] c568  00000000 00000000 00000000 00000000 00000000 00000000 6c616552 006b6574
[  153.676011@3] c588  00000000 00000000 00000000 00000003 eeafc500 eeaea180 eeaea188 eeaea188
[  153.684348@3] c5a8  00000001 00000000 00000000 00000000 00000000 00000000 30653030 30306334
[  153.692686@3]
[  153.692686@3] R1: 0xee3bb380:
[  153.697287@3] b380  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.705624@3] b3a0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.713960@3] b3c0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.722297@3] b3e0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.730633@3] b400  00000000 00000000 00000000 00000001 00000000 00000000 00000000 00000000
[  153.738970@3] b420  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.747306@3] b440  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.755643@3] b460  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.763980@3]
[  153.763980@3] R2: 0xee3bb434:
[  153.768582@3] b434  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.776919@3] b454  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.785255@3] b474  00000000 00000000 00000000 00000000 00000000 00000001 00000000 ee3bb490
[  153.793592@3] b494  00000001 00000000 ee3bb49c 00000001 00000000 ee3bb4a8 00000001 00000000
[  153.801928@3] b4b4  ee3bb4b4 ee3bb4b4 00000000 00000000 00000000 00000000 00000000 00000000
[  153.810265@3] b4d4  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.818601@3] b4f4  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.826938@3] b514  00000000 00000000 00000000 00000000 00000000 00000000 00000000 eeb1d600
[  153.835276@3]
[  153.835276@3] R4: 0xee3bb380:
[  153.839878@3] b380  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.848214@3] b3a0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.856550@3] b3c0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.864887@3] b3e0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.873223@3] b400  00000000 00000000 00000000 00000001 00000000 00000000 00000000 00000000
[  153.886188@3] b420  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.894479@3] b440  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.902781@3] b460  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.911001@3]
[  153.911001@3] R5: 0xeeb1d5a0:
[  153.920235@3] d5a0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.931952@3] d5c0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.939991@3] d5e0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  153.948018@3] d600  eeafc548 eeafc548 00000001 00000000 ffffffff 00000001 00000003 00000000
[  153.956311@3] d620  eeb30068 ef2de800 eeb1f400 eeb1d814 eeb30074 eeb30070 ef255880 c0982b90
[  153.964653@3] d640  eeb1f680 0000000f 00000007 00000000 c0987c74 00000000 00000000 eeb1d65c
[  153.973012@3] d660  eeb1d65c e98c4d00 00000000 c0987c8c bf0e17f0 00000000 00000000 00000022
[  153.981394@3] d680  00040004 eeb1d86c eeb300cc 7fffffff 00010001 eeb1d694 eeb1d694 00000000
[  153.989742@3]
[  153.989742@3] R6: 0xeeb2ffe8:
[  153.997956@3] ffe8  00000000 00000000 00000000 00000000 00000000 00000000 00000003 00312e31
[  154.009164@3] 0008  00000000 00000000 00000000 00000001 00000007 00000003 00000000 00000000
[  154.017487@3] 0028  00000000 00000000 ef2fc400 eea98200 00000507 00000040 00000000 00000000
[  154.025764@3] 0048  eeb30048 eeb30048 eeaea180 eead8400 00000000 00000000 00000001 00000000
[  154.034058@3] 0068  ef2fc468 ef2de880 eeafc340 eeb1d62c eeae0814 ef2fc470 ef255880 c0982b90
[  154.042415@3] 0088  eeafc500 00000007 00000007 00000000 c0987b34 00000000 00000000 eeb300a4
[  154.050826@3] 00a8  eeb300a4 e98c4d00 00000000 c0987c8c c0988304 00000000 00000000 00000023
[  154.059112@3] 00c8  000b000b eeb1d684 eeae086c 7fffffff 00010001 eeb300dc eeb300dc 00000000
[  154.067436@3]
[  154.067436@3] R7: 0xeeb2ff80:
[  154.075528@3] ff80  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.086617@3] ffa0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.094881@3] ffc0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.103134@3] ffe0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.111384@3] 0000  00000003 00312e31 00000000 00000000 00000000 00000001 00000007 00000003
[  154.119640@3] 0020  00000000 00000000 00000000 00000000 ef2fc400 eea98200 00000507 00000040
[  154.128002@3] 0040  00000000 00000000 eeb30048 eeb30048 eeaea180 eead8400 00000000 00000000
[  154.136278@3] 0060  00000001 00000000 ef2fc468 ef2de880 eeafc340 eeb1d62c eeae0814 ef2fc470
[  154.144608@3]
[  154.144608@3] R8: 0xee3bb388:
[  154.151987@3] b388  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.162748@3] b3a8  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.171024@3] b3c8  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.179316@3] b3e8  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.187603@3] b408  00000000 00000001 00000000 00000000 00000000 00000000 00000000 00000000
[  154.195844@3] b428  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.204171@3] b448  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.212410@3] b468  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.220747@3]
[  154.220747@3] R9: 0xeeb1d580:
[  154.227631@3] d580  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.238241@3] d5a0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.246576@3] d5c0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.254911@3] d5e0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.263247@3] d600  eeafc548 eeafc548 00000001 00000000 ffffffff 00000001 00000003 00000000
[  154.271529@3] d620  eeb30068 ef2de800 eeb1f400 eeb1d814 eeb30074 eeb30070 ef255880 c0982b90
[  154.279940@3] d640  eeb1f680 0000000f 00000007 00000000 c0987c74 00000000 00000000 eeb1d65c
[  154.288257@3] d660  eeb1d65c e98c4d00 00000000 c0987c8c bf0e17f0 00000000 00000000 00000022
[  154.296652@3] Process insmod (pid: 1508, stack limit = 0xe9746238)
[  154.300929@3] Stack: (0xe9747d58 to 0xe9748000)
[  154.305446@3] 7d40:                                                       ee3bb488 ee3bb494
[  154.313785@3] 7d60: ee3bb4a0 ee3bb4ac 00000000 eeb1d600 bf0e1ac0 eeb30068 eeb30000 bf0e17f0
[  154.322121@3] 7d80: eeb1d600 bf0e1ac0 00000000 bf09dfac eeb1d620 00000000 eeb30068 c02fbb94
[  154.330458@3] 7da0: c02fba28 eeb1d620 bf0e17f0 c0a7b4dc c0a7b4e8 bf0dba74 0000000d e9747f04
[  154.338794@3] 7dc0: 00000000 c02a38f4 eeb1d620 bf0e17f0 eeb1d654 00000000 bf0dba74 bf12c054
[  154.347131@3] 7de0: e9747f04 c02a3ae8 00000000 bf0e17f0 c02a3a80 c02a1da0 ef35ec5c ef2de834
[  154.355467@3] 7e00: ee38bc80 bf0e17f0 c0987c8c c02a2fe0 bf0dba7c 00000000 c0987c8c bf0e17f0
[  154.363804@3] 7e20: 00000000 c0987c8c bf0e17f0 c02a4104 bf0e17bc 00000000 c0987c8c bf0e17f0
[  154.372140@3] 7e40: bf0dba74 c02fa884 c09ca880 e9746030 e9747f58 00000000 bf14e000 00000001
[  154.380477@3] 7e60: e9747f04 bf14e02c c09ca880 c0008544 00000001 8040003d 000216cf 00000000
[  154.388813@3] 7e80: 00000001 c0080dc0 00000001 bf12c060 bf12c054 e9747f58 00000000 00000000
[  154.397150@3] 7ea0: 00000001 e9747f04 00000000 c0080df8 ffff8000 00007fff c007dd70 e9747f58
[  154.405487@3] 7ec0: e9746030 bf14c7c1 bf130b28 00000000 ffffffff c004c644 00000000 b6f9f398
[  154.413823@3] 7ee0: f2b01000 0107455f 00042c6d 00000000 0b300002 00000000 00000000 00000000
[  154.422159@3] 7f00: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  154.430496@3] 7f20: 00000000 00000000 00000000 00000000 000083a8 00000000 00000003 b6f9f398
[  154.438833@3] 7f40: 0000017b c000e168 e9746000 00000000 00000000 c00812f8 f2b01000 0107455f
[  154.447169@3] 7f60: f379adf4 f379ac24 f3b6680c 000c0b28 000ce0e8 00000000 00000000 00000000
[  154.455506@3] 7f80: 0000002e 0000002f 00000016 00000000 0000000a 00000000 beb075c4 beb07744
[  154.463842@3] 7fa0: 8c47fb00 c000dfc0 beb075c4 beb07744 00000003 b6f9f398 00000000 00000000
[  154.472179@3] 7fc0: beb075c4 beb07744 8c47fb00 0000017b b6fabd80 00000000 b6f9bb60 00000000
[  154.480516@3] 7fe0: beb07570 beb07560 b6f96177 b6ef0982 80010030 00000003 00000000 00000000
[  154.489034@3] [<bf09da84>] (usb_dvobj_init+0xa4/0x294 [8812au]) from [<bf09dfac>] (rtw_drv_init+0x1c/0x8c [8812au])
[  154.499386@3] [<bf09dfac>] (rtw_drv_init+0x1c/0x8c [8812au]) from [<c02fbb94>] (usb_probe_interface+0x16c/0x244)
[  154.509472@3] [<c02fbb94>] (usb_probe_interface+0x16c/0x244) from [<c02a38f4>] (driver_probe_device+0xd4/0x21c)
[  154.519539@3] [<c02a38f4>] (driver_probe_device+0xd4/0x21c) from [<c02a3ae8>] (__driver_attach+0x68/0x8c)
[  154.529083@3] [<c02a3ae8>] (__driver_attach+0x68/0x8c) from [<c02a1da0>] (bus_for_each_dev+0x4c/0xa4)
[  154.538294@3] [<c02a1da0>] (bus_for_each_dev+0x4c/0xa4) from [<c02a2fe0>] (bus_add_driver+0xd0/0x258)
[  154.547491@3] [<c02a2fe0>] (bus_add_driver+0xd0/0x258) from [<c02a4104>] (driver_register+0xa8/0x140)
[  154.556708@3] [<c02a4104>] (driver_register+0xa8/0x140) from [<c02fa884>] (usb_register_driver+0x70/0x128)
[  154.566427@3] [<c02fa884>] (usb_register_driver+0x70/0x128) from [<bf14e02c>] (rtw_drv_entry+0x2c/0x30 [8812au])
[  154.576575@3] [<bf14e02c>] (rtw_drv_entry+0x2c/0x30 [8812au]) from [<c0008544>] (do_one_initcall+0xa0/0x148)
[  154.586295@3] [<c0008544>] (do_one_initcall+0xa0/0x148) from [<c0080df8>] (load_module+0xc04/0xfc0)
[  154.595322@3] [<c0080df8>] (load_module+0xc04/0xfc0) from [<c00812f8>] (SyS_finit_module+0x60/0x70)
[  154.604355@3] [<c00812f8>] (SyS_finit_module+0x60/0x70) from [<c000dfc0>] (ret_fast_syscall+0x0/0x30)
[  154.613554@3] Code: e5c430ef e5c430f0 e5990000 e5963174 (e5d33004)
[  154.619966@3] ---[ end trace 55d9d40173413954 ]---

Error in compiling

Just tried to build this for 3.18.2, from a fresh git-pull, and am receiving this error:

  CC [M]  /usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.o
In file included from /usr/src/rtl8812AU_8821AU_linux/include/drv_types.h:141:0,
                 from /usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_cfg80211_rx_action_p2p’:
/usr/src/rtl8812AU_8821AU_linux/include/ioctl_cfg80211.h:114:71: error: too many arguments to function ‘cfg80211_rx_mgmt’
   #define rtw_cfg80211_rx_mgmt(adapter, freq, sig_dbm, buf, len, gfp) cfg80211_rx_mgmt((adapter)->rtw_wdev, freq, sig_dbm, buf, len, 0, gfp)
                                                                       ^
/usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:3883:2: note: in expansion of macro ‘rtw_cfg80211_rx_mgmt’
  rtw_cfg80211_rx_mgmt(padapter, freq, 0, pmgmt_frame, frame_len, GFP_ATOMIC);
  ^
In file included from /usr/src/rtl8812AU_8821AU_linux/include/osdep_service_linux.h:76:0,
                 from /usr/src/rtl8812AU_8821AU_linux/include/osdep_service.h:41,
                 from /usr/src/rtl8812AU_8821AU_linux/include/drv_types.h:32,
                 from /usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
include/net/cfg80211.h:4470:6: note: declared here
 bool cfg80211_rx_mgmt(struct wireless_dev *wdev, int freq, int sig_dbm,
      ^
In file included from /usr/src/rtl8812AU_8821AU_linux/include/drv_types.h:141:0,
                 from /usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_cfg80211_rx_p2p_action_public’:
/usr/src/rtl8812AU_8821AU_linux/include/ioctl_cfg80211.h:114:71: error: too many arguments to function ‘cfg80211_rx_mgmt’
   #define rtw_cfg80211_rx_mgmt(adapter, freq, sig_dbm, buf, len, gfp) cfg80211_rx_mgmt((adapter)->rtw_wdev, freq, sig_dbm, buf, len, 0, gfp)
                                                                       ^
/usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:3921:2: note: in expansion of macro ‘rtw_cfg80211_rx_mgmt’
  rtw_cfg80211_rx_mgmt(padapter, freq, 0, pmgmt_frame, frame_len, GFP_ATOMIC);
  ^
In file included from /usr/src/rtl8812AU_8821AU_linux/include/osdep_service_linux.h:76:0,
                 from /usr/src/rtl8812AU_8821AU_linux/include/osdep_service.h:41,
                 from /usr/src/rtl8812AU_8821AU_linux/include/drv_types.h:32,
                 from /usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
include/net/cfg80211.h:4470:6: note: declared here
 bool cfg80211_rx_mgmt(struct wireless_dev *wdev, int freq, int sig_dbm,
      ^
In file included from /usr/src/rtl8812AU_8821AU_linux/include/drv_types.h:141:0,
                 from /usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_cfg80211_rx_action’:
/usr/src/rtl8812AU_8821AU_linux/include/ioctl_cfg80211.h:114:71: error: too many arguments to function ‘cfg80211_rx_mgmt’
   #define rtw_cfg80211_rx_mgmt(adapter, freq, sig_dbm, buf, len, gfp) cfg80211_rx_mgmt((adapter)->rtw_wdev, freq, sig_dbm, buf, len, 0, gfp)
                                                                       ^
/usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:3951:2: note: in expansion of macro ‘rtw_cfg80211_rx_mgmt’
  rtw_cfg80211_rx_mgmt(adapter, freq, 0, frame, frame_len, GFP_ATOMIC);
  ^
In file included from /usr/src/rtl8812AU_8821AU_linux/include/osdep_service_linux.h:76:0,
                 from /usr/src/rtl8812AU_8821AU_linux/include/osdep_service.h:41,
                 from /usr/src/rtl8812AU_8821AU_linux/include/drv_types.h:32,
                 from /usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
include/net/cfg80211.h:4470:6: note: declared here
 bool cfg80211_rx_mgmt(struct wireless_dev *wdev, int freq, int sig_dbm,
      ^
scripts/Makefile.build:257: recipe for target '/usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.o' failed
make[2]: *** [/usr/src/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.o] Error 1
Makefile:1381: recipe for target '_module_/usr/src/rtl8812AU_8821AU_linux' failed

Cannot compile using Ubuntu 15.04

I am not terribly technical when it comes to this sort of thing but here is the last bit of output before make fails:

/home/matthew/Downloads/rtl8812AU_8821AU_linux-master/os_dep/linux/ioctl_cfg80211.c:5087:2: warning: (near initialization for ‘rtw_cfg80211_ops.mgmt_tx’)
scripts/Makefile.build:257: recipe for target '/home/matthew/Downloads/rtl8812AU_8821AU_linux-master/os_dep/linux/ioctl_cfg80211.o' failed
make[2]: *** [/home/matthew/Downloads/rtl8812AU_8821AU_linux-master/os_dep/linux/ioctl_cfg80211.o] Error 1
Makefile:1394: recipe for target '_module_/home/matthew/Downloads/rtl8812AU_8821AU_linux-master' failed
make[1]: *** [_module_/home/matthew/Downloads/rtl8812AU_8821AU_linux-master] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-3.19.0-15-generic'
Makefile:1040: recipe for target 'modules' failed
make: *** [modules] Error 2

New device support

I found these cheap usb ac devices on ebay. They are from a company called Outlink. It's basically like an Edimax A811 but with a different vendor id. WIth this line it does not work, with the line it looks like it works.

diff --git a/os_dep/linux/usb_intf.c b/os_dep/linux/usb_intf.c
index 2eeadff..9a64cc7 100644
--- a/os_dep/linux/usb_intf.c
+++ b/os_dep/linux/usb_intf.c
@@ -289,6 +289,7 @@ static struct usb_device_id rtw_usb_id_tbl[] ={
{USB_DEVICE_AND_INTERFACE_INFO(USB_VENDER_ID_REALTEK, 0x0820,0xff,0xff,0xff),.driver_info = RTL8821}, /* 8821AU /
/
=== Customer ID ===/
{USB_DEVICE(0x7392, 0xA811),.driver_info = RTL8821}, /
Edimax - Edimax */

  •   {USB_DEVICE(0x0BDA, 0xA811),.driver_info = RTL8821}, /\* OUTLINK - Edimax _/
    {USB_DEVICE(0x7392, 0xA812),.driver_info = RTL8821}, /_ Edimax - Edimax _/
    {USB_DEVICE(0x2001, 0x3314),.driver_info = RTL8821}, /_ D-Link - Cameo _/
    {USB_DEVICE(0x0846, 0x9052),.driver_info = RTL8821}, /_ Netgear - A6100 */
    

see pull request #72

Errors on "cfg80211_rx_mgmt"

During the compilation I get some Errors related to the function cfg80211_rx_mgmt:

make[1]: Entering directory `/usr/src/linux-headers-3.13.0-52-generic'

rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:3897:2: error: too few arguments to function ‘cfg80211_rx_mgmt’
rtw_cfg80211_rx_mgmt(padapter, freq, 0, pmgmt_frame, frame_len, GFP_ATOMIC);

rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
include/net/cfg80211.h:4102:6: note: declared here
bool cfg80211_rx_mgmt(struct wireless_dev *wdev, int freq, int sig_dbm,

rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_cfg80211_rx_action’:
rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:3965:2: error: too few arguments to function ‘cfg80211_rx_mgmt’

include/net/cfg80211.h:4102:6: note: declared here
bool cfg80211_rx_mgmt(struct wireless_dev *wdev, int freq, int sig_dbm,

Build for OpenWRT

Hello,

i tried to build this driver for OpenWRT, the module builds and i'm able to load it; however, i get this error in dmesg

[10428.560000] ------------[ cut here ]------------
[10428.560000] WARNING: at /mnt/dl/slave/ar71xx/build/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2014-05-22/net/wireless/core.c:549 wiphy_register+0x150/0x5c4 [cfg80211]()
[10428.560000] Modules linked in: 8821au(+) ath9k ath9k_common pppoe ppp_async iptable_nat ath9k_hw ath pppox ppp_generic nf_nat_ipv4 nf_conntrack_ipv4 mac80211 ipt_MASQUERADE cfg80211 xt_time xt_tcpudp xt_state xt_nat xt_multiport xt_mark xt_mac xt_limit xt_conntrack xt_comment xt_TCPMSS xt_REDIRECT xt_LOG xt_CT slhc nf_nat_irc nf_nat_ftp nf_nat nf_defrag_ipv4 nf_conntrack_irc nf_conntrack_ftp lib80211_crypt_wep lib80211_crypt_tkip lib80211_crypt_ccmp lib80211 iptable_raw iptable_mangle iptable_filter ipt_REJECT ip_tables crc_ccitt compat uhci_hcd ledtrig_usbdev ip6t_REJECT ip6table_raw ip6table_mangle ip6table_filter ip6_tables x_tables nf_conntrack_ipv6 nf_conntrack nf_defrag_ipv6 bcma ipv6 eeprom_93cx6 ssb arc4 crypto_blkcipher ohci_hcd ehci_platform ehci_hcd gpio_button_hotplug usbcore nls_base usb_common [last unloaded: b43]
[10428.560000] CPU: 0 PID: 1433 Comm: insmod Tainted: G        W    3.10.44 #1
[10428.560000] Stack : 00000000 00000000 00000000 00000000 80392eba 0000003f 8188a328 80ae8494
[10428.560000]    802e7a9c 803393db 00000599 80392664 8188a328 80ae8494 80ae8488 80ae8408
[10428.560000]    81947c20 80078fb8 00000003 800769c4 80d6ace8 80ae8494 802e935c 80a65b1c
[10428.560000]    00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[10428.560000]    00000000 00000000 00000000 00000000 00000000 00000000 00000000 80a65aa8
[10428.560000]    ...
[10428.560000] Call Trace:
[10428.560000] [<8006e278>] show_stack+0x48/0x70
[10428.560000] [<80076b34>] warn_slowpath_common+0x78/0xa8
[10428.560000] [<80076bec>] warn_slowpath_null+0x18/0x24
[10428.560000] [<80d40898>] wiphy_register+0x150/0x5c4 [cfg80211]
[10428.560000] [<80645c5c>] rtw_wdev_alloc+0xfc/0x1d8 [8821au]
[10428.560000] [<806332dc>] rtw_usb_if1_init+0xd0/0x7b8 [8821au]
[10428.560000] [<80633668>] rtw_usb_if1_init+0x45c/0x7b8 [8821au]
[10428.560000] 
[10428.560000] ---[ end trace 2f9e217b8128a086 ]---
[10428.560000] ------------[ cut here ]------------
[10428.560000] WARNING: at /mnt/dl/slave/ar71xx/build/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2014-05-22/net/wireless/core.c:608 wiphy_register+0x580/0x5c4 [cfg80211]()
[10428.560000] Modules linked in: 8821au(+) ath9k ath9k_common pppoe ppp_async iptable_nat ath9k_hw ath pppox ppp_generic nf_nat_ipv4 nf_conntrack_ipv4 mac80211 ipt_MASQUERADE cfg80211 xt_time xt_tcpudp xt_state xt_nat xt_multiport xt_mark xt_mac xt_limit xt_conntrack xt_comment xt_TCPMSS xt_REDIRECT xt_LOG xt_CT slhc nf_nat_irc nf_nat_ftp nf_nat nf_defrag_ipv4 nf_conntrack_irc nf_conntrack_ftp lib80211_crypt_wep lib80211_crypt_tkip lib80211_crypt_ccmp lib80211 iptable_raw iptable_mangle iptable_filter ipt_REJECT ip_tables crc_ccitt compat uhci_hcd ledtrig_usbdev ip6t_REJECT ip6table_raw ip6table_mangle ip6table_filter ip6_tables x_tables nf_conntrack_ipv6 nf_conntrack nf_defrag_ipv6 bcma ipv6 eeprom_93cx6 ssb arc4 crypto_blkcipher ohci_hcd ehci_platform ehci_hcd gpio_button_hotplug usbcore nls_base usb_common [last unloaded: b43]
[10428.560000] CPU: 0 PID: 1433 Comm: insmod Tainted: G        W    3.10.44 #1
[10428.560000] Stack : 00000000 00000000 00000000 00000000 80392eba 0000003f 8188a328 80ae8494
[10428.560000]    802e7a9c 803393db 00000599 80392664 8188a328 80ae8494 80ae8488 80ae8408
[10428.560000]    81947c20 80078fb8 00000003 800769c4 80d6ace8 80ae8494 802e935c 80a65b1c
[10428.560000]    00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[10428.560000]    00000000 00000000 00000000 00000000 00000000 00000000 00000000 80a65aa8
[10428.560000]    ...
[10428.560000] Call Trace:
[10428.560000] [<8006e278>] show_stack+0x48/0x70
[10428.560000] [<80076b34>] warn_slowpath_common+0x78/0xa8
[10428.560000] [<80076bec>] warn_slowpath_null+0x18/0x24
[10428.560000] [<80d40cc8>] wiphy_register+0x580/0x5c4 [cfg80211]
[10428.560000] [<80645c5c>] rtw_wdev_alloc+0xfc/0x1d8 [8821au]
[10428.560000] [<806332dc>] rtw_usb_if1_init+0xd0/0x7b8 [8821au]
[10428.560000] [<80633668>] rtw_usb_if1_init+0x45c/0x7b8 [8821au]
[10428.560000] 
[10428.560000] ---[ end trace 2f9e217b8128a087 ]---

the warnings in question seems to be emitted from the following parts of core.c

u16 ifmodes = wiphy->interface_modes;
....
WARN_ON(!ifmodes);    // <<<< THE FIRST WARNING
    ifmodes &= ((1 << NUM_NL80211_IFTYPES) - 1) & ~1;
    if (WARN_ON(ifmodes != wiphy->interface_modes))
        wiphy->interface_modes = ifmodes;

and

    /* sanity check supported bands/channels */
    for (band = 0; band < IEEE80211_NUM_BANDS; band++) {
        sband = wiphy->bands[band];
        if (!sband)
            continue;

        sband->band = band;
        if (WARN_ON(!sband->n_channels))
            return -EINVAL;
        /*
         * on 60gHz band, there are no legacy rates, so
         * n_bitrates is 0
         */
        if (WARN_ON(band != IEEE80211_BAND_60GHZ &&
                !sband->n_bitrates))
            return -EINVAL;

        /*
         * Since cfg80211_disable_40mhz_24ghz is global, we can
         * modify the sband's ht data even if the driver uses a
         * global structure for that.
         */
        if (cfg80211_disable_40mhz_24ghz &&
            band == IEEE80211_BAND_2GHZ &&
            sband->ht_cap.ht_supported) {
            sband->ht_cap.cap &= ~IEEE80211_HT_CAP_SUP_WIDTH_20_40;
            sband->ht_cap.cap &= ~IEEE80211_HT_CAP_SGI_40;
        }

        /*
         * Since we use a u32 for rate bitmaps in
         * ieee80211_get_response_rate, we cannot
         * have more than 32 legacy rates.
         */
        if (WARN_ON(sband->n_bitrates > 32))
            return -EINVAL;

        for (i = 0; i < sband->n_channels; i++) {
            sband->channels[i].orig_flags =
                sband->channels[i].flags;
            sband->channels[i].orig_mag = INT_MAX;
            sband->channels[i].orig_mpwr =
                sband->channels[i].max_power;
            sband->channels[i].band = band;
        }

        have_band = true;
    }

    if (!have_band) {
        WARN_ON(1);  //<<<<< the second warning, have_band must be false then.
        return -EINVAL;
    }

the call ret = wiphy_register(wiphy); from ioctl_cfg80211.c returns an error and bails out.

uname -a:
Linux OpenWrt 3.10.44 #1 Wed Jul 9 19:59:15 UTC 2014 mips GNU/Linux

Makefile error on Raspbian

the make command returns the following error on Raspbian:

make[1]: Entering directory /lib/modules/3.10.24/build' make[1]: *** No rule to make targetmodules'. Stop.
make[1]: Leaving directory `/lib/modules/3.10.24/build'
make: *** [modules] Error 2

installed and loaded the module but adapter is not found in iwconfig

I successfully compiled and installed the driver but my adapter doesn't show up in iwconfig :

eth0 no wireless extensions.

ppp0 no wireless extensions.

lo no wireless extensions.

dmesg shows:

[ 3562.933587] usbcore: registered new interface driver rtl8812au
[ 3679.345829] usb 2-1.3: USB disconnect, device number 9
[ 3695.437672] usb 2-1.2: new high-speed USB device number 10 using ehci-pci
[ 3695.530517] usb 2-1.2: New USB device found, idVendor=0411, idProduct=025d
[ 3695.530520] usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3695.530522] usb 2-1.2: Product: WI-U3-866D
[ 3695.530523] usb 2-1.2: Manufacturer: Buffalo
[ 3695.530524] usb 2-1.2: SerialNumber: 123456

when i insert the dongle

but

modinfo 8812au

doesn't list my Product ID, my system is debian jessie with latest patches. Can you help me?

Unknown symbol cfg80211_*

Hi guys,

After compiling the code on RPi with Raspbian 3.10.36+ for a Netgear A6100 (8811AU) I got the errors below in my syslog. Did I miss something or is this expected? (Note: I got my device working with similar driver code in GitHub, such as https://github.com/gnab/rtl8812au and https://github.com/sblommers/rtl8812au) but I would like to get your version working as it seem to be the solution to get the hostapd thingy working, right?

In any case, thanks for your effort.
Cheers
Gossie

[ 3.230302] usb 1-1.2: new high-speed USB device number 4 using dwc_otg
[ 3.361751] usb 1-1.2: New USB device found, idVendor=0846, idProduct=9052
[ 3.380126] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3.389099] usb 1-1.2: Product: 802.11ac WLAN Adapter
[ 3.408940] usb 1-1.2: Manufacturer: Realtek
[ 3.421572] usb 1-1.2: SerialNumber: 00e04c000001
[ 3.847573] udevd[156]: starting version 175
[ 5.746987] 8812au: Unknown symbol cfg80211_scan_done (err 0)
[ 5.967679] 8812au: Unknown symbol cfg80211_remain_on_channel_expired (err 0)
[ 6.204667] 8812au: Unknown symbol cfg80211_new_sta (err 0)
[ 6.283778] 8812au: Unknown symbol cfg80211_disconnected (err 0)
[ 6.386528] 8812au: Unknown symbol cfg80211_ready_on_channel (err 0)
[ 6.530153] 8812au: Unknown symbol wiphy_register (err 0)
[ 6.537070] 8812au: Unknown symbol wiphy_new (err 0)
[ 6.670050] 8812au: Unknown symbol cfg80211_put_bss (err 0)
[ 6.677012] 8812au: Unknown symbol cfg80211_roamed (err 0)
[ 6.796278] 8812au: Unknown symbol cfg80211_michael_mic_failure (err 0)
[ 6.856751] 8812au: Unknown symbol cfg80211_connect_result (err 0)
[ 6.901070] 8812au: Unknown symbol wiphy_unregister (err 0)
[ 6.940121] 8812au: Unknown symbol __ieee80211_get_channel (err 0)
[ 6.947733] 8812au: Unknown symbol cfg80211_mgmt_tx_status (err 0)
[ 6.974929] 8812au: Unknown symbol cfg80211_del_sta (err 0)
[ 6.981935] 8812au: Unknown symbol cfg80211_rx_mgmt (err 0)
[ 6.988760] 8812au: Unknown symbol cfg80211_inform_bss_frame (err 0)
[ 6.996452] 8812au: Unknown symbol ieee80211_frequency_to_channel (err 0)
[ 7.004545] 8812au: Unknown symbol wiphy_free (err 0)

sporadic performance

I am not sure if this is a driver issue but I have not seen anyone else with the problem so I am noteing it here.
I have been using the Edimax EW-7822ua with the rtl8813AU driver and it will at times work amazingly, stream hd movies etc, then randomly drop to bites per second. All other computers on the network are not suffering from this. It occurs on both the 5ghz and 2.4ghz ranges.

I am happy to supply any info required

iwconfig

wlan0 IEEE 802.11bgn ESSID:"(/) (;,,;) (/) " Nickname:"WIFI@REALTEK"
Mode:Managed Frequency:2.412 GHz Access Point: 74:D0:2B:42:89:20
Bit Rate:300 Mb/s Sensitivity:0/0
Retry:off RTS thr:off Fragment thr:off
Power Management:off
Link Quality=100/100 Signal level=77/100 Noise level=0/100
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

compile warnings on 3.13

In os_dep/linux/os_intfs.c

if you change

static u16 rtw_select_queue(struct net_device *dev, struct sk_buff *skb)

static u16 rtw_select_queue(struct net_device *dev, struct sk_buff *skb, void *accel_priv, select_queue_fallback_t fallback)

It gets rid of a few compiler warnings. It's been a while since I did C so I forget what happens when you call a function with wrong number of arguments.

I'm also wondering why it compiles os_dep/linux/rtw_android.c ? on x86?

RPI2: Error during make

Hi,
I got the follwing error during make on my rpi2, could someone give me a hint?

sudo make
make ARCH=arm CROSS_COMPILE= -C /lib/modules/4.0.9-v7+/build M=/home/pi/rtl8812AU_8821AU_linux  modules
make[1]: Entering directory '/home/pi/linux-4d317a835a7b6354e41c2678507f2a894fdceb26'
  CC [M]  /home/pi/rtl8812AU_8821AU_linux/core/rtw_cmd.o
/bin/sh: 1: ./scripts/recordmcount: not found
scripts/Makefile.build:258: recipe for target '/home/pi/rtl8812AU_8821AU_linux/core/rtw_cmd.o' failed
make[2]: *** [/home/pi/rtl8812AU_8821AU_linux/core/rtw_cmd.o] Error 127
Makefile:1390: recipe for target '_module_/home/pi/rtl8812AU_8821AU_linux' failed
make[1]: *** [_module_/home/pi/rtl8812AU_8821AU_linux] Error 2
make[1]: Leaving directory '/home/pi/linux-4d317a835a7b6354e41c2678507f2a894fdceb26'
Makefile:1049: recipe for target 'modules' failed
make: *** [modules] Error 2

Stack Trace generated when inserting adapter

Trace:
[ 1033.489817] usb 2-1.3: new high-speed USB device number 4 using ehci-pci
[ 1033.582896] usb 2-1.3: New USB device found, idVendor=2001, idProduct=3314
[ 1033.582907] usb 2-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1033.582913] usb 2-1.3: Product: 802.11n WLAN Adapter
[ 1033.582917] usb 2-1.3: Manufacturer: Realtek
[ 1033.582921] usb 2-1.3: SerialNumber: 00e04c000001
[ 1033.666648] RTL871X: module init start
[ 1033.666654] RTL871X: rtl8821au v4.3.0_10674.20140321
[ 1033.666656] RTL871X: build time: Apr 19 2015 14:06:03
[ 1033.666704] RTL871X:
[ 1033.666704] usb_endpoint_descriptor(0):
[ 1033.666707] RTL871X: bLength=7
[ 1033.666708] RTL871X: bDescriptorType=5
[ 1033.666710] RTL871X: bEndpointAddress=84
[ 1033.666711] RTL871X: wMaxPacketSize=512
[ 1033.666712] RTL871X: bInterval=0
[ 1033.666714] RTL871X: RT_usb_endpoint_is_bulk_in = 4
[ 1033.666715] RTL871X:
[ 1033.666715] usb_endpoint_descriptor(1):
[ 1033.666717] RTL871X: bLength=7
[ 1033.666719] RTL871X: bDescriptorType=5
[ 1033.666720] RTL871X: bEndpointAddress=5
[ 1033.666721] RTL871X: wMaxPacketSize=512
[ 1033.666722] RTL871X: bInterval=0
[ 1033.666724] RTL871X: RT_usb_endpoint_is_bulk_out = 5
[ 1033.666725] RTL871X:
[ 1033.666725] usb_endpoint_descriptor(2):
[ 1033.666727] RTL871X: bLength=7
[ 1033.666728] RTL871X: bDescriptorType=5
[ 1033.666730] RTL871X: bEndpointAddress=6
[ 1033.666731] RTL871X: wMaxPacketSize=512
[ 1033.666732] RTL871X: bInterval=0
[ 1033.666733] RTL871X: RT_usb_endpoint_is_bulk_out = 6
[ 1033.666735] RTL871X:
[ 1033.666735] usb_endpoint_descriptor(3):
[ 1033.666737] RTL871X: bLength=7
[ 1033.666738] RTL871X: bDescriptorType=5
[ 1033.666739] RTL871X: bEndpointAddress=87
[ 1033.666741] RTL871X: wMaxPacketSize=64
[ 1033.666742] RTL871X: bInterval=3
[ 1033.666744] RTL871X: RT_usb_endpoint_is_int_in = 7, Interval = 3
[ 1033.666745] RTL871X:
[ 1033.666745] usb_endpoint_descriptor(4):
[ 1033.666747] RTL871X: bLength=7
[ 1033.666748] RTL871X: bDescriptorType=5
[ 1033.666749] RTL871X: bEndpointAddress=8
[ 1033.666751] RTL871X: wMaxPacketSize=512
[ 1033.666752] RTL871X: bInterval=0
[ 1033.666753] RTL871X: RT_usb_endpoint_is_bulk_out = 8
[ 1033.666755] RTL871X:
[ 1033.666755] usb_endpoint_descriptor(5):
[ 1033.666756] RTL871X: bLength=7
[ 1033.666758] RTL871X: bDescriptorType=5
[ 1033.666759] RTL871X: bEndpointAddress=9
[ 1033.666760] RTL871X: wMaxPacketSize=512
[ 1033.666761] RTL871X: bInterval=0
[ 1033.666763] RTL871X: RT_usb_endpoint_is_bulk_out = 9
[ 1033.666764] RTL871X: nr_endpoint=6, in_num=2, out_num=4
[ 1033.666764]
[ 1033.666766] RTL871X: USB_SPEED_HIGH
[ 1033.666776] RTL871X: CHIP TYPE: RTL8811AU or RTL8821U
[ 1033.666784] RTL871X: register rtw_netdev_ops to netdev_ops
[ 1033.666875] RTL871X: ReadChipVersion8812A SYS_CFG(0xF0)=0x04412535
[ 1033.666987] RTL871X: Chip Version Info: CHIP_8821_Normal_Chip_TSMC_C_CUT_1T1R_RomVer(0)
[ 1033.666989] RTL871X: RF_Type is 3!!
[ 1033.666992] RTL871X: _ConfigChipOutEP_8812 OutEpQueueSel(0x07), OutEpNumber(4)
[ 1033.666994] RTL871X: ====> ReadAdapterInfo8812AU
[ 1033.667116] RTL871X: Boot from EFUSE, Autoload OK !
[ 1033.856757] RTL871X: EEPROM ID=0x8129
[ 1033.856766] RTL871X: VID = 0x2001, PID = 0x3314
[ 1033.856769] RTL871X: Customer ID: 0x00, SubCustomer ID: 0xCD
[ 1033.856775] RTL871X: hal_ReadMACAddress_8812AU MAC Address from EFUSE = 48:ee:0c:87:d0:3c
[ 1033.856786] RTL871X: ==>mpt_GetChnlGroup8812A in 5G, but Channel 163 in Group not found
[ 1033.856793] RTL871X: ==>mpt_GetChnlGroup8812A in 5G, but Channel 163 in Group not found
[ 1033.856799] RTL871X: ==>mpt_GetChnlGroup8812A in 5G, but Channel 163 in Group not found
[ 1033.856804] RTL871X: ==>mpt_GetChnlGroup8812A in 5G, but Channel 163 in Group not found
[ 1033.856808] RTL871X: EEPROMRegulatory = 0x0 TxPwrCalibrateRate=0x0
[ 1033.856811] RTL871X: Board Type: 0x 0
[ 1033.856879] RTL871X: mlmepriv.ChannelPlan = 0x25
[ 1033.856882] RTL871X: CrystalCap: 0x1e
[ 1033.856884] RTL871X: ThermalMeter = 0x25
[ 1033.856888] RTL871X: Hal_ReadRemoteWakeup_8812A...bSupportRemoteWakeup(1)
[ 1033.856891] RTL871X: SWAS: bHwAntDiv = 0, TRxAntDivType = 3
[ 1033.856895] RTL871X: pHalData->PAType_2G is 0x0, pHalData->ExternalPA_2G = 0
[ 1033.856898] RTL871X: pHalData->PAType_5G is 0x0, pHalData->ExternalPA_5G = 0
[ 1033.856901] RTL871X: pHalData->LNAType_2G is 0x0, pHalData->ExternalLNA_2G = 0
[ 1033.856903] RTL871X: pHalData->LNAType_5G is 0x0, pHalData->ExternalLNA_5G = 0
[ 1033.856907] RTL871X: PID= 0x3314, VID= 2001
[ 1033.856910] RTL871X: PID= 0x3314, VID= 2001
[ 1033.856912] RTL871X: Customer ID: 0x c
[ 1033.860378] RTL871X: ReadAdapterInfo8812AU <====
[ 1033.860460] RTL871X: init_channel_set ChannelPlan ID 25 Chan num:35
[ 1033.860833] RTL871X: pwrctrlpriv.bSupportRemoteWakeup~~~~~~
[ 1033.860837] RTL871X: pwrctrlpriv.bSupportRemoteWakeup~~~[1]~~~
[ 1033.860842] RTL871X: can't get autopm:
[ 1033.860846] RTL871X: rtw_macaddr_cfg MAC Address = 48:ee:0c:87:d0:3c
[ 1033.860850] RTL871X: bDriverStopped:1, bSurpriseRemoved:0, bup:0, hw_init_completed:0
[ 1033.860869] RTL871X: rtw_ndev_init(wlan2)
[ 1033.861399] RTL871X: _rtw_drv_register_netdev, MAC Address (if1) = 48:ee:0c:87:d0:3c
[ 1033.861461] usbcore: registered new interface driver rtl8821au
[ 1033.861467] RTL871X: module init ret=0
[ 1033.889770] usbcore: registered new interface driver rtl8812au
[ 1033.893136] RTL871X: LeaveAllPowerSaveMode(wlan2): bup=0 Skip!
[ 1033.893139] RTL871X: rtw_wx_set_scan: bDriverStopped=1, bup=0, hw_init_completed=0
[ 1033.894193] BUG: unable to handle kernel NULL pointer dereference at 0000000000000050
[ 1033.894293] IP: [] rtw_ndev_notifier_call+0x16/0x5f [8821au]
[ 1033.894420] PGD 1b22e0067 PUD 1b22e1067 PMD 0
[ 1033.894482] Oops: 0000 [#1] SMP
[ 1033.894527] Modules linked in: 8812au(OX) 8821au(OX) rt2800usb rt2x00usb rt2800lib rt2x00lib crc_ccitt pci_stub vboxpci(OX) vboxnetadp(OX) vboxnetflt(OX) vboxdrv(OX) ctr ccm rfcomm bnep binfmt_misc arc4 iwldvm mac80211 dell_wmi sparse_keymap dell_laptop dcdbas btusb bluetooth uvcvideo intel_rapl videobuf2_vmalloc x86_pkg_temp_thermal dm_multipath intel_powerclamp videobuf2_memops snd_hda_codec_hdmi scsi_dh coretemp videobuf2_core kvm_intel videodev kvm snd_hda_codec_realtek crct10dif_pclmul crc32_pclmul ghash_clmulni_intel aesni_intel aes_x86_64 snd_hda_intel lrw gf128mul glue_helper ablk_helper snd_hda_codec cryptd iwlwifi snd_hwdep snd_pcm cfg80211 joydev snd_page_alloc serio_raw snd_seq_midi snd_seq_midi_event snd_rawmidi snd_seq snd_seq_device lpc_ich snd_timer snd shpchp mei_me mei soundcore mac_hid parport_pc ppdev lp parport dm_mirror dm_region_hash dm_log ums_realtek usb_storage i915 i2c_algo_bit drm_kms_helper drm ahci psmouse r8169 libahci mii wmi video
[ 1033.895558] CPU: 4 PID: 1018 Comm: NetworkManager Tainted: G OX 3.13.0-37-generic #64-Ubuntu
[ 1033.895618] Hardware name: Dell Inc. Dell System Inspiron N7110/05VJ58, BIOS A12 02/22/2012
[ 1033.895677] task: ffff8801af8e8000 ti: ffff8801b22e6000 task.ti: ffff8801b22e6000
[ 1033.895726] RIP: 0010:[] [] rtw_ndev_notifier_call+0x16/0x5f [8821au]
[ 1033.895786] RSP: 0018:ffff8801b22e7758 EFLAGS: 00010282
[ 1033.895804] RAX: 0000000000000000 RBX: ffff8801b22e77e8 RCX: 0000000000000000
[ 1033.895827] RDX: ffff8801b22e77e8 RSI: 000000000000000d RDI: ffffffffa07d8fe0
[ 1033.895850] RBP: ffff8801b22e7768 R08: 0000000000000000 R09: 0000000000000000
[ 1033.895873] R10: 00000000ffffffa1 R11: 0000000000000293 R12: ffffffff81cdbd40
[ 1033.895896] R13: 000000000000000d R14: ffff8801b22e77e8 R15: 0000000000000000
[ 1033.895919] FS: 00007f016343c880(0000) GS:ffff8801be500000(0000) knlGS:0000000000000000
[ 1033.895945] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 1033.895964] CR2: 0000000000000050 CR3: 00000001b06af000 CR4: 00000000000407e0
[ 1033.895987] Stack:
[ 1033.895995] 00000000ffffffef ffffffff81cdbd40 ffff8801b22e77a0 ffffffff8172b33c
[ 1033.896025] ffff8801b22e77e8 000000000000000d ffff8800a886c000 0000000000000000
[ 1033.896053] 0000000000000001 ffff8801b22e77b0 ffffffff8108fc86 ffff8801b22e77d8
[ 1033.896082] Call Trace:
[ 1033.896096] [] notifier_call_chain+0x4c/0x70
[ 1033.896118] [] raw_notifier_call_chain+0x16/0x20
[ 1033.896141] [] call_netdevice_notifiers_info+0x35/0x60
[ 1033.896165] [] __dev_open+0x50/0x140
[ 1033.896185] [] __dev_change_flags+0x9d/0x170
[ 1033.896205] [] dev_change_flags+0x29/0x60
[ 1033.896226] [] do_setlink+0x321/0x9a0
[ 1033.896246] [] ? nla_parse+0x32/0x120
[ 1033.896265] [] rtnl_newlink+0x3c0/0x5e0
[ 1033.896286] [] ? security_capable+0x18/0x20
[ 1033.896307] [] ? ns_capable+0x29/0x50
[ 1033.896327] [] rtnetlink_rcv_msg+0x95/0x250
[ 1033.896349] [] ? __alloc_skb+0x7e/0x2b0
[ 1033.896368] [] ? rtnetlink_rcv+0x30/0x30
[ 1033.896389] [] netlink_rcv_skb+0xa9/0xc0
[ 1033.896409] [] rtnetlink_rcv+0x28/0x30
[ 1033.896428] [] netlink_unicast+0xd5/0x1b0
[ 1033.896448] [] netlink_sendmsg+0x320/0x760
[ 1033.896484] [] ? netlink_rcv_wake+0x44/0x60
[ 1033.896524] [] ? netlink_recvmsg+0x1a2/0x3a0
[ 1033.896564] [] sock_sendmsg+0x8b/0xc0
[ 1033.896601] [] ? move_addr_to_kernel.part.16+0x1e/0x60
[ 1033.896646] [] ? move_addr_to_kernel+0x21/0x30
[ 1033.896686] [] ___sys_sendmsg+0x3c3/0x3d0
[ 1033.896725] [] ? __do_page_fault+0x204/0x560
[ 1033.896765] [] ? SYSC_sendto+0x17e/0x1c0
[ 1033.896803] [] __sys_sendmsg+0x42/0x80
[ 1033.896840] [] SyS_sendmsg+0x12/0x20
[ 1033.896876] [] system_call_fastpath+0x1a/0x1f
[ 1033.898308] Code: 00 00 00 e8 52 f4 ff ff b8 00 00 00 00 5d c3 b8 00 00 00 00 c3 66 66 66 66 90 55 48 89 e5 41 54 53 48 89 d3 48 8b 82 d8 01 00 00 <48> 81 78 50 43 fb 76 a0 75 35 49 89 f4 83 3d a7 9d 07 00 07 76
[ 1033.903167] RIP [] rtw_ndev_notifier_call+0x16/0x5f [8821au]
[ 1033.905753] RSP
[ 1033.907796] CR2: 0000000000000050
[ 1033.920152] ---[ end trace 4f50623b34193f2b ]---

Ubuntu Mint release..
jeff@Mint17 ~ $ uname -a
Linux Mint17 3.13.0-37-generic #64-Ubuntu SMP Mon Sep 22 21:28:38 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
jeff@Mint17 ~ $ lsusb
Bus 002 Device 003: ID 8086:0189 Intel Corp.
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 148f:3072 Ralink Technology, Corp. RT3072 Wireless Adapter
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 1bcf:2881 Sunplus Innovation Technology Inc.
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
jeff@Mint17 ~ $ inxi -FSz
System: Host: Mint17 Kernel: 3.13.0-37-generic x86_64 (64 bit) Desktop: Gnome Distro: Linux Mint 17.1 Rebecca
Machine: System: Dell (portable) product: Dell System Inspiron N7110
Mobo: Dell model: 05VJ58 version: A00 Bios: Dell version: A12 date: 02/22/2012
CPU: Quad core Intel Core i7-2670QM CPU (-HT-MCP-) cache: 6144 KB flags: (lm nx sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx)
Clock Speeds: 1: 800.00 MHz 2: 800.00 MHz 3: 800.00 MHz 4: 2201.00 MHz 5: 800.00 MHz 6: 800.00 MHz 7: 800.00 MHz 8: 1500.00 MHz
Graphics: Card: Intel 2nd Generation Core Processor Family Integrated Graphics Controller
X.Org: 1.15.1 drivers: intel (unloaded: fbdev,vesa) Resolution: [email protected]
GLX Renderer: Mesa DRI Intel Sandybridge Mobile GLX Version: 3.0 Mesa 10.1.3
Audio: Card: Intel 6 Series/C200 Series Chipset Family High Definition Audio Controller driver: snd_hda_intel
Sound: Advanced Linux Sound Architecture ver: k3.13.0-37-generic
Network: Card-1: Realtek RTL8101E/RTL8102E PCI Express Fast Ethernet controller driver: r8169
IF: eth0 state: down mac:
Card-2: Intel Centrino Wireless-N 1030 [Rainbow Peak] driver: iwlwifi
IF: wlan0 state: down mac:
Card-3: Ralink RT3072 Wireless Adapter
IF: N/A state: N/A mac: N/A
Drives: HDD Total Size: 500.1GB (64.9% used) 1: id: /dev/sda model: WDC_WD5000BPVT size: 500.1GB
Partition: ID: / size: 453G used: 303G (71%) fs: ext4 ID: swap-1 size: 6.33GB used: 0.00GB (0%) fs: swap
RAID: No RAID devices detected - /proc/mdstat and md_mod kernel raid module present
Sensors: System Temperatures: cpu: 44.0C mobo: 44.0C
Fan Speeds (in rpm): cpu: N/A
Info: Processes: 221 Uptime: 15 min Memory: 999.8/5862.7MB Client: Shell inxi: 1.8.4

TP-LINK Archer T4U on Ubuntu 14.04. ping time spikes exactly every 120 seconds

I'm using TP-LINK Archer T4U wireless adapter on ubuntu 64 bit with rtl8812AU_8821AU_linux. I cloned the latest source from the repository as of yesterday (6 Sep). I notice that every 120 seconds exactly, I'll experience a spike in the ping time, as high as 4000 ms (normal ping time is about 8ms). I don't know what's going on here. The same machine running Windows 7 with the same wireless adapter using the stock driver for Windows does not have this problem.

$ lsb_release -a
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.1 LTS
Release:    14.04
Codename:   trusty

$ uname -a
Linux ubuntu 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux


Log from /var/log/syslog
...
Sep  7 16:00:05 ubuntu kernel: [15084.605532]    ==> rssi_level:2, rate_bitmap:0x0f8ff000
Sep  7 16:01:01 ubuntu kernel: [15140.766059] UpdateHalRAMask8812A => mac_id:0, networkType:0x0b, mask:0x0fffffff
Sep  7 16:01:01 ubuntu kernel: [15140.766059]    ==> rssi_level:1, rate_bitmap:0x0f8f0000
Sep  7 16:03:59 ubuntu kernel: [15319.276129] UpdateHalRAMask8812A => mac_id:0, networkType:0x0b, mask:0x0fffffff
Sep  7 16:03:59 ubuntu kernel: [15319.276129]    ==> rssi_level:2, rate_bitmap:0x0f8ff000
Sep  7 16:04:07 ubuntu kernel: [15327.298639] UpdateHalRAMask8812A => mac_id:0, networkType:0x0b, mask:0x0fffffff
Sep  7 16:04:07 ubuntu kernel: [15327.298639]    ==> rssi_level:1, rate_bitmap:0x0f8f0000
...

plotresults

VHT Support not advertized to cfg80211

Even though the driver supports VHT, it is not being advertized to the cfg80211 hence we see wrong VHT capabilities in the beacon.

Have a patch ready, but not sure how to submit.

rdesktop is not connecting or freezes after login

Hi,

I'm using your driver on kernel 4.0.x and I have trouble with rdesktop when using 5GHz (802.11ac). rdesktop is not connecting at all or if it's connecting it freezes most of the times
after login.
Any idea on how to fix it ?

thanks

Compilation in Arch Linux Kernel Version 3.4.103

I am trying to cross-compile the Edimax EW7811UTC driver for Arch Linux-3.4.103 in Ubuntu. But I am always getting the following OUTPUT without any error and 8812au.ko file.

OUTPUT:
make: Entering directory /home/nagarjun/linux-sunxi/cubie/sunx7i_22'
LD /home/nagarjun/Desktop/EW7811UTC/built-in.o
Building modules, stage 2.
MODPOST 0 modules
make: Leaving directory/home/nagarjun/linux-sunxi/cubie/sunx7i_22'

COMMAND:
make ARCH=arm CROSS_COMPILE=${CC201310} -C /home/nagarjun/linux-sunxi/cubie/sunx7i_22/ M=$PWD

Where,
${CC201310} : is the cross compiler path, which was set properly
$PWD : is the driver directory
/home/nagarjun/linux-sunxi/cubie/sunx7i_22 : My Arch Linux Kernel Source

I tried the native Arch Linux compilation as well and the output is same as I mentioned above. Any help regarding the above is much appreciated.

8812au: disagrees about version of symbol module_layout

I'm getting the following error message when trying to load the module for this edimax adapter:

https://wikidevi.com/wiki/Edimax_EW-7822UAC

Compiling inside a Raspberry Pi (no cross-compiling).

root@rpi:/usr/src/rtl8812AU-git# modprobe 8812au
ERROR: could not insert '8812au': Exec format error

In dmesg:

[ 2593.836183] 8812au: disagrees about version of symbol module_layout
[ 2616.580796] 8812au: disagrees about version of symbol module_layout

I've followed the following blog post:

https://www.debinux.de/2014/06/sitecom-wifi-usb-adapter-ac1200-treiber-dkms-einrichtung-unter-ubuntu/

But I had to do a:

# ln -sf /usr/src/linux-headers-3.12-1-rpi /lib/modules/3.12.22+/build

Which I guess it's the root of the problem, but since the exact linux-headers for my running kernel version (3.12.22+) are not available, I thought that 3.12.x linux-headers would be enough.

Any pointers on how can I circumvent this issue?

Truncated IP packets '4 bytes missing!'

I have purchased D-Link DWA-171. I pulled down the sources from master branch and found that my card DWA-171 (13d3:3394) was not represented in os_dep/linux/usb_intf.c. I added an entry just above DWA-172 corresponding to the USB vendor and device ids of my card, built, installed and restarted to get a wireless interface corresponding to DWA-171.

wlxec22446688AA  IEEE 802.11AC  ESSID:"AbcWiFi"  Nickname:"<WIFI@REALTEK>"
          Mode:Managed  Frequency:5.18 GHz  Access Point: 00:11:33:55:77:99   
          Bit Rate:87 Mb/s   Sensitivity:0/0  
          Retry:off   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=100/100  Signal level=100/100  Noise level=0/100
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

My issue is that 802.11n works just fine, but 802.11 ac has issues when accessing some websites (i am writing this ticket using 802.11ac). The following is what I observed in tcpdump:

  • 802.11n (tcp traffic captured for command: curl 'https://accounts.google.com/ServiceLogin')
23:02:55.749480 IP 192.168.254.196.47797 > 216.58.216.173.443: Flags [S], seq 1355553534, win 29200, options [mss 1460,sackOK,TS val 1802390 ecr 0,nop,wscale 7], length 0
23:02:55.770408 IP 216.58.216.173.443 > 192.168.254.196.47797: Flags [S.], seq 857123418, ack 1355553535, win 42540, options [mss 1430,sackOK,TS val 922849898 ecr 1802390,nop,wscale 7], length 0
23:02:55.770510 IP 192.168.254.196.47797 > 216.58.216.173.443: Flags [.], ack 1, win 229, options [nop,nop,TS val 1802396 ecr 922849898], length 0
23:02:55.939580 IP 192.168.254.196.47797 > 216.58.216.173.443: Flags [P.], seq 1:288, ack 1, win 229, options [nop,nop,TS val 1802438 ecr 922849898], length 287
23:02:55.951147 IP 216.58.216.173.443 > 192.168.254.196.47797: Flags [.], ack 288, win 341, options [nop,nop,TS val 922850088 ecr 1802438], length 0
23:02:55.957441 IP 216.58.216.173.443 > 192.168.254.196.47797: Flags [.], seq 1:1419, ack 288, win 341, options [nop,nop,TS val 922850089 ecr 1802438], length 1418
23:02:55.957518 IP 192.168.254.196.47797 > 216.58.216.173.443: Flags [.], ack 1419, win 251, options [nop,nop,TS val 1802442 ecr 922850089], length 0
23:02:55.957442 IP 216.58.216.173.443 > 192.168.254.196.47797: Flags [.], seq 1419:2837, ack 288, win 341, options [nop,nop,TS val 922850089 ecr 1802438], length 1418
23:02:55.957587 IP 192.168.254.196.47797 > 216.58.216.173.443: Flags [.], ack 2837, win 274, options [nop,nop,TS val 1802442 ecr 922850089], length 0
23:02:55.957443 IP 216.58.216.173.443 > 192.168.254.196.47797: Flags [P.], seq 2837:3542, ack 288, win 341, options [nop,nop,TS val 922850089 ecr 1802438], length 705
23:02:55.957609 IP 192.168.254.196.47797 > 216.58.216.173.443: Flags [.], ack 3542, win 296, options [nop,nop,TS val 1802442 ecr 922850089], length 0
23:02:55.961625 IP 192.168.254.196.47797 > 216.58.216.173.443: Flags [P.], seq 288:363, ack 3542, win 296, options [nop,nop,TS val 1802443 ecr 922850089], length 75
23:02:56.013087 IP 216.58.216.173.443 > 192.168.254.196.47797: Flags [.], ack 363, win 341, options [nop,nop,TS val 922850150 ecr 1802443], length 0
23:02:56.013157 IP 192.168.254.196.47797 > 216.58.216.173.443: Flags [P.], seq 363:414, ack 3542, win 296, options [nop,nop,TS val 1802456 ecr 922850150], length 51
23:02:56.025003 IP 216.58.216.173.443 > 192.168.254.196.47797: Flags [.], ack 414, win 341, options [nop,nop,TS val 922850161 ecr 1802456], length 0
23:02:56.025009 IP 216.58.216.173.443 > 192.168.254.196.47797: Flags [P.], seq 3542:3788, ack 414, win 341, options [nop,nop,TS val 922850161 ecr 1802456], length 246
23:02:56.028251 IP 192.168.254.196.47797 > 216.58.216.173.443: Flags [P.], seq 414:526, ack 3788, win 318, options [nop,nop,TS val 1802460 ecr 922850161], length 112
23:02:56.050160 IP 216.58.216.173.443 > 192.168.254.196.47797: Flags [P.], seq 3788:4500, ack 526, win 341, options [nop,nop,TS val 922850187 ecr 1802460], length 712
23:02:56.050975 IP 192.168.254.196.47797 > 216.58.216.173.443: Flags [P.], seq 526:557, ack 4500, win 340, options [nop,nop,TS val 1802466 ecr 922850187], length 31
23:02:56.061021 IP 216.58.216.173.443 > 192.168.254.196.47797: Flags [F.], seq 4500, ack 557, win 341, options [nop,nop,TS val 922850199 ecr 1802466], length 0
23:02:56.077640 IP 192.168.254.196.47797 > 216.58.216.173.443: Flags [F.], seq 557, ack 4501, win 340, options [nop,nop,TS val 1802472 ecr 922850199], length 0
23:02:56.089389 IP 216.58.216.173.443 > 192.168.254.196.47797: Flags [.], ack 558, win 341, options [nop,nop,TS val 922850226 ecr 1802472], length 0
^C
22 packets captured
22 packets received by filter
0 packets dropped by kernel
  • 802.11ac (tcp traffic captured for command: curl 'https://accounts.google.com/ServiceLogin')
23:03:43.491502 IP 192.168.254.196.47798 > 216.58.216.173.443: Flags [S], seq 690414722, win 29200, options [mss 1460,sackOK,TS val 1814326 ecr 0,nop,wscale 7], length 0
23:03:43.498775 IP 216.58.216.173.443 > 192.168.254.196.47798: Flags [S.], seq 2486729204, ack 690414723, win 42540, options [mss 1430,sackOK,TS val 922887422 ecr 1814326,nop,wscale 7], length 0
23:03:43.498878 IP 192.168.254.196.47798 > 216.58.216.173.443: Flags [.], ack 1, win 229, options [nop,nop,TS val 1814328 ecr 922887422], length 0
23:03:43.664859 IP 192.168.254.196.47798 > 216.58.216.173.443: Flags [P.], seq 1:288, ack 1, win 229, options [nop,nop,TS val 1814369 ecr 922887422], length 287
23:03:43.673688 IP 216.58.216.173.443 > 192.168.254.196.47798: Flags [.], ack 288, win 341, options [nop,nop,TS val 922887595 ecr 1814369], length 0
23:03:43.673696 IP 216.58.216.173.443 > 192.168.254.196.47798: Flags [.], seq 1:1419, ack 288, win 341, options [nop,nop,TS val 922887596 ecr 1814369], length 1418
23:03:43.673794 IP 192.168.254.196.47798 > 216.58.216.173.443: Flags [.], ack 1419, win 251, options [nop,nop,TS val 1814371 ecr 922887596], length 0
23:03:43.673704 IP 216.58.216.173.443 > 192.168.254.196.47798: Flags [.], seq 1419:2837, ack 288, win 341, options [nop,nop,TS val 922887596 ecr 1814369], length 1418
23:03:43.673855 IP 192.168.254.196.47798 > 216.58.216.173.443: Flags [.], ack 2837, win 274, options [nop,nop,TS val 1814371 ecr 922887596], length 0
23:03:43.673710 IP 216.58.216.173.443 > 192.168.254.196.47798: Flags [P.], seq 2837:3542, ack 288, win 341, options [nop,nop,TS val 922887596 ecr 1814369], length 705
23:03:43.673880 IP 192.168.254.196.47798 > 216.58.216.173.443: Flags [.], ack 3542, win 296, options [nop,nop,TS val 1814371 ecr 922887596], length 0
23:03:43.677563 IP 192.168.254.196.47798 > 216.58.216.173.443: Flags [P.], seq 288:363, ack 3542, win 296, options [nop,nop,TS val 1814372 ecr 922887596], length 75
23:03:43.752635 IP 216.58.216.173.443 > 192.168.254.196.47798: Flags [.], ack 363, win 341, options [nop,nop,TS val 922887676 ecr 1814372], length 0
23:03:43.752708 IP 192.168.254.196.47798 > 216.58.216.173.443: Flags [P.], seq 363:414, ack 3542, win 296, options [nop,nop,TS val 1814391 ecr 922887676], length 51
23:03:43.759164 IP 216.58.216.173.443 > 192.168.254.196.47798: Flags [.], ack 414, win 341, options [nop,nop,TS val 922887683 ecr 1814391], length 0
23:03:43.759182 IP truncated-ip - 4 bytes missing! 216.58.216.173.443 > 192.168.254.196.47798: Flags [P.], seq 3542:3788, ack 414, win 341, options [nop,nop,TS val 922887683 ecr 1814391], length 246
23:03:43.975616 IP truncated-ip - 4 bytes missing! 216.58.216.173.443 > 192.168.254.196.47798: Flags [P.], seq 3542:3788, ack 414, win 341, options [nop,nop,TS val 922887900 ecr 1814391], length 246
23:03:44.195875 IP truncated-ip - 4 bytes missing! 216.58.216.173.443 > 192.168.254.196.47798: Flags [P.], seq 3542:3788, ack 414, win 341, options [nop,nop,TS val 922888117 ecr 1814391], length 246
23:03:44.633093 IP truncated-ip - 4 bytes missing! 216.58.216.173.443 > 192.168.254.196.47798: Flags [P.], seq 3542:3788, ack 414, win 341, options [nop,nop,TS val 922888551 ecr 1814391], length 246
23:03:45.500508 IP truncated-ip - 4 bytes missing! 216.58.216.173.443 > 192.168.254.196.47798: Flags [P.], seq 3542:3788, ack 414, win 341, options [nop,nop,TS val 922889419 ecr 1814391], length 246
23:03:47.235087 IP truncated-ip - 4 bytes missing! 216.58.216.173.443 > 192.168.254.196.47798: Flags [P.], seq 3542:3788, ack 414, win 341, options [nop,nop,TS val 922891155 ecr 1814391], length 246
23:03:50.711077 IP truncated-ip - 4 bytes missing! 216.58.216.173.443 > 192.168.254.196.47798: Flags [P.], seq 3542:3788, ack 414, win 341, options [nop,nop,TS val 922894627 ecr 1814391], length 246
23:03:57.646681 IP truncated-ip - 4 bytes missing! 216.58.216.173.443 > 192.168.254.196.47798: Flags [P.], seq 3542:3788, ack 414, win 341, options [nop,nop,TS val 922901571 ecr 1814391], length 246
23:04:07.651878 IP truncated-ip - 4 bytes missing! 216.58.216.173.443 > 192.168.254.196.47798: Flags [P.], seq 3542:3788, ack 414, win 341, options [nop,nop,TS val 922911571 ecr 1814391], length 246
23:04:17.660693 IP truncated-ip - 4 bytes missing! 216.58.216.173.443 > 192.168.254.196.47798: Flags [P.], seq 3542:3788, ack 414, win 341, options [nop,nop,TS val 922921571 ecr 1814391], length 246
23:04:27.647558 IP truncated-ip - 4 bytes missing! 216.58.216.173.443 > 192.168.254.196.47798: Flags [P.], seq 3542:3788, ack 414, win 341, options [nop,nop,TS val 922931571 ecr 1814391], length 246
23:04:37.645772 IP truncated-ip - 4 bytes missing! 216.58.216.173.443 > 192.168.254.196.47798: Flags [P.], seq 3542:3788, ack 414, win 341, options [nop,nop,TS val 922941571 ecr 1814391], length 246
23:04:43.758596 IP 192.168.254.196.47798 > 216.58.216.173.443: Flags [.], ack 3542, win 296, options [nop,nop,TS val 1829393 ecr 922887683], length 0
23:04:43.810554 IP 216.58.216.173.443 > 192.168.254.196.47798: Flags [.], ack 414, win 341, options [nop,nop,TS val 922947689 ecr 1814391], length 0
23:05:43.850647 IP 192.168.254.196.47798 > 216.58.216.173.443: Flags [.], ack 3542, win 296, options [nop,nop,TS val 1844416 ecr 922887683], length 0
23:05:43.858085 IP 216.58.216.173.443 > 192.168.254.196.47798: Flags [R], seq 2486732746, win 0, length 0
^C
31 packets captured
31 packets received by filter
0 packets dropped by kernel

Sometimes (strangely I can reproduce this consistently when accessing the above mentioned url), the packets in case of 802.11ac are shown are corrupt 'IP truncated-ip - 4 bytes missing!' and this causes a failure to load some websites, while other websites seem to work fine.

I have seen this problem with both Ubuntu 14.12 kernel and now with 3.19.0-22-generic as well. How do I debug this further?

Additonal Information

The output of lsusb -v is as follows:

Bus 007 Device 002: ID 13d3:3394 IMC Networks
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          224 Wireless
  bDeviceSubClass         1 Radio Frequency
  bDeviceProtocol         1 Bluetooth
  bMaxPacketSize0        64
  idVendor           0x13d3 IMC Networks
  idProduct          0x3394
  bcdDevice            2.00
  iManufacturer           1
  iProduct                2
  iSerial                 3
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          177
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower              500mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              4
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0010  1x 16 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              4
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       1
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              4
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       2
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              4
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       3
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              4
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       4
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              4
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       5
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              4
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1

Question: AP support in 5ghz?

I ask because I recently bought the Intel 7260 which has a firmware restriction on using the adapter in AP mode. Has anyone tried using hostapd with this one with 802.11AC?

fail to compile: error: assignment of member ‘free_hal_data’ in read-only object

The problem seems related to hardened kernel:
https://forums.grsecurity.net/viewtopic.php?f=3&t=3890

  CC [M]  /var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.o
  CC [M]  /var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_phycfg.o
  CC [M]  /var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_rf6052.o
  CC [M]  /var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_dm.o
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c: In function ‘rtl8812_set_hal_ops’:
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:5984:2: error: assignment of member ‘free_hal_data’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:5986:2: error: assignment of member ‘dm_init’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:5987:2: error: assignment of member ‘dm_deinit’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:5989:2: error: assignment of member ‘UpdateRAMaskHandler’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:5991:2: error: assignment of member ‘read_chip_version’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:5993:2: error: assignment of member ‘set_bwmode_handler’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:5994:2: error: assignment of member ‘set_channel_handler’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:5995:2: error: assignment of member ‘set_chnl_bw_handler’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:5997:2: error: assignment of member ‘hal_dm_watchdog’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:5999:2: error: assignment of member ‘Add_RateATid’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6003:2: error: assignment of member ‘run_thread’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6004:2: error: assignment of member ‘cancel_thread’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6011:2: error: assignment of member ‘read_bbreg’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6012:2: error: assignment of member ‘write_bbreg’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6013:2: error: assignment of member ‘read_rfreg’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6014:2: error: assignment of member ‘write_rfreg’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6018:2: error: assignment of member ‘EfusePowerSwitch’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6019:2: error: assignment of member ‘ReadEFuse’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6020:2: error: assignment of member ‘EFUSEGetEfuseDefinition’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6021:2: error: assignment of member ‘EfuseGetCurrentSize’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6022:2: error: assignment of member ‘Efuse_PgPacketRead’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6023:2: error: assignment of member ‘Efuse_PgPacketWrite’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6024:2: error: assignment of member ‘Efuse_WordEnableDataWrite’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6036:2: error: assignment of member ‘GetHalODMVarHandler’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6037:2: error: assignment of member ‘SetHalODMVarHandler’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6038:2: error: assignment of member ‘hal_notch_filter’ in read-only object
/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.c:6040:2: error: assignment of member ‘SetBeaconRelatedRegistersHandler’ in read-only object
make[2]: *** [/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999/hal/rtl8812a/rtl8812a_hal_init.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [_module_/var/tmp/portage/sys-kernel/rtl8812AU_8821AU-9999/work/rtl8812AU_8821AU-9999] Error 2
make[1]: Leaving directory `/usr/src/linux-3.13.10-hardened'
make: *** [modules] Error 2
 * ERROR: sys-kernel/rtl8812AU_8821AU-9999::pentoo failed (compile phase):
 *   emake failed

Linux kernel 4.0.5 regression

Both rtl8187 drivers from here and from [0] don't work with the D-Link wifi adapter 2001:3314. The devices are registered with xhci and mtp tests (which fail in 4.0.4 too), but no device will appear. It does work in linux 4.0.4 but I don't know the codebase enough to investigate myself.

My distro usually ships vanilla packages, please let me know whether you can reproduce the issue.

[0] https://github.com/csssuf/rtl8812au

ioctl_cfg80211.c-kernel_4.0.4.patch

Minor patch to os_dep/linux/ioctl_cfg80211.c allowing module to compile under Kernel 4.0.4 (technically this should work with >= 4.0.0.

Test on Kali Linux w custom Kernel v4.0.4 using 'make oldconfig'.

DMESG:

[ 5830.174485] usbcore: registered new interface driver rtl8812au

PATCH:

--- os_dep/linux/ioctl_cfg80211.c.orig  2015-05-21 00:37:26.477166369 -0500
+++ os_dep/linux/ioctl_cfg80211.c   2015-05-21 00:44:07.677154960 -0500
@@ -1422,31 +1422,33 @@
            goto exit;
        }

-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,0,0)
-       sinfo->filled |= BIT(NL80211_STA_INFO_SIGNAL);
-       sinfo->signal = translate_percentage_to_dbm(padapter->recvpriv.signal_strength);
-
-       sinfo->filled |= BIT(NL80211_STA_INFO_TX_BITRATE);
-       sinfo->txrate.legacy = rtw_get_cur_max_rate(padapter);
-
-       sinfo->filled |= BIT(NL80211_STA_INFO_RX_PACKETS);
-       sinfo->rx_packets = sta_rx_data_pkts(psta);
-
-       sinfo->filled |= BIT(NL80211_STA_INFO_TX_PACKETS);
-       sinfo->tx_packets = psta->sta_stats.tx_pkts;
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,0,0))
+       sinfo->filled |= BIT(NL80211_STA_INFO_SIGNAL);
 #else
-                sinfo->filled |= STATION_INFO_SIGNAL;
-       sinfo->signal = translate_percentage_to_dbm(padapter->recvpriv.signal_strength);
+        sinfo->filled |= STATION_INFO_SIGNAL;
+#endif
+        sinfo->signal = translate_percentage_to_dbm(padapter->recvpriv.signal_strength);

-       sinfo->filled |= STATION_INFO_TX_BITRATE;
-       sinfo->txrate.legacy = rtw_get_cur_max_rate(padapter);
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,0,0))
+       sinfo->filled |= BIT(NL80211_STA_INFO_TX_BITRATE);
+#else
+        sinfo->filled |= STATION_INFO_TX_BITRATE;
+#endif
+        sinfo->txrate.legacy = rtw_get_cur_max_rate(padapter);

-       sinfo->filled |= STATION_INFO_RX_PACKETS;
-       sinfo->rx_packets = sta_rx_data_pkts(psta);
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,0,0))
+       sinfo->filled |= BIT(NL80211_STA_INFO_RX_PACKETS);
+#else
+        sinfo->filled |= STATION_INFO_RX_PACKETS;
+#endif
+        sinfo->rx_packets = sta_rx_data_pkts(psta);

-       sinfo->filled |= STATION_INFO_TX_PACKETS;
-       sinfo->tx_packets = psta->sta_stats.tx_pkts;
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,0,0))
+       sinfo->filled |= BIT(NL80211_STA_INFO_TX_PACKETS);
+#else
+        sinfo->filled |= STATION_INFO_TX_PACKETS;
 #endif
+        sinfo->tx_packets = psta->sta_stats.tx_pkts;

    }

@@ -3032,6 +3034,10 @@
        else // WIFI_REASSOCREQ
            ie_offset = _REASOCREQ_IE_OFFSET_;

+        sinfo.filled = 0;
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,0,0))
+        sinfo.filled = STATION_INFO_ASSOC_REQ_IES;
+#endif
        sinfo.assoc_req_ies = pmgmt_frame + WLAN_HDR_A3_LEN + ie_offset;
        sinfo.assoc_req_ies_len = frame_len - WLAN_HDR_A3_LEN - ie_offset;
        cfg80211_new_sta(ndev, GetAddr2Ptr(pmgmt_frame), &sinfo, GFP_ATOMIC);

Build failed on 3.19.3-200 kernel

/home/jiv/Downloads/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_cfg80211_rx_action’:
/home/jiv/Downloads/rtl8812AU_8821AU_linux/include/ioctl_cfg80211.h:114:71: error: too many arguments to function ‘cfg80211_rx_mgmt’
#define rtw_cfg80211_rx_mgmt(adapter, freq, sig_dbm, buf, len, gfp) cfg80211_rx_mgmt((adapter)->rtw_wdev, freq, sig_dbm, buf, len, 0, gfp)
^
seems to be another issue in cfg80211_rx_mgmt

rtw_android.c-kernel_4.0.4.patch

Minor patch to os_dep/linux/ioctl_cfg80211.c allowing module to compile under Kernel 4.0.4.

Tested on Kali Linux with customer Kernel v4.0.4 using 'make oldconfig'.

NOTE: Should be used with ioctl_cfg80211.c-kernel_4.0.4.patch Issue #53

PATCH:

--- os_dep/linux/rtw_android.c.orig 2015-05-21 00:44:41.001154012 -0500
+++ os_dep/linux/rtw_android.c  2015-05-21 00:48:18.933147814 -0500
@@ -224,10 +224,14 @@
 {
    int cmd_num;
    for(cmd_num=0 ; cmd_num<ANDROID_WIFI_CMD_MAX; cmd_num++)
-       if(0 == strnicmp(cmdstr , android_wifi_cmd_str[cmd_num], strlen(android_wifi_cmd_str[cmd_num])) )
-           break;
-       
-   return cmd_num;
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,0,0))
+        if(0 == strncasecmp(cmdstr , android_wifi_cmd_str[cmd_num], strlen(android_wifi_cmd_str[cmd_num])) )
+#else
+        if(0 == strnicmp(cmdstr , android_wifi_cmd_str[cmd_num], strlen(android_wifi_cmd_str[cmd_num])) )
+#endif
+            break;
+
+    return cmd_num;
 }

 int rtw_android_get_rssi(struct net_device *net, char *command, int total_len)

Compiling for 3.10.72 results in "Unknown symbol"

Kernel 3.10.72
Using latest master, insmod 8812ac gives error:

[69856.895908@0] 8812au: Unknown symbol wiphy_new (err 0)
[69856.896040@0] 8812au: Unknown symbol cfg80211_del_sta (err 0)
[69856.896092@0] 8812au: Unknown symbol cfg80211_inform_bss_frame (err 0)

Checking out previous tree, like f1008f6 resolves this

Linux 4

Hi,

I was wondering if you are going to update the drivers so that they are able to build on linux kernel version 4.

Tried building on both of my linux boxes got the following error:

make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/4.0.2-gentoo/build M=/root/wireless_drv/k4/rtl8812AU_8821AU_linux-master modules make[1]: Entering directory '/usr/src/linux-4.0.2-gentoo' CC [M] /root/wireless_drv/k4/rtl8812AU_8821AU_linux-master/os_dep/linux/ioctl_cfg80211.o scripts/Makefile.build:258: recipe for target '/root/wireless_drv/k4/rtl8812AU_8821AU_linux-master/os_dep/linux/ioctl_cfg80211.o' failed Makefile:1390: recipe for target 'module/root/wireless_drv/k4/rtl8812AU_8821AU_linux-master' failed make[1]: Leaving directory '/usr/src/linux-4.0.2-gentoo' Makefile:1040: recipe for target 'modules' failed

bridging does not work

Driver comes back with an error:

sudo brctl addif br0 wlan0 eth0
can't add wlan0 to bridge br0: Operation not supported

Rasp 2 B w/ 4.0.7 works - iw station dump doesn't work

Hi,

on my Rasp 2 with linux-headers 4.0.7, I compile and running with TP-Link T4U
It works!!!!
Very quick!
ac Mode!

:-)

But .... when I use the 8812au.ko, the "iw dev wlan0 station dump" gives me nothing :-(
No information with this command - when I change the Stick / Realtek or so, it works.

I forget to turn on some parameters in Makefile ????

Best regards

Markus

Support Linux 4.0.0, change enum NL82011 flags to match upstream chan

Hi,
I am not able to determine what changes have been made to what files with the patch titled "Support Linux 4.0.0, change enum NL82011 flags to match upstream chan.."

For example, for rtw_ap.c it shows "3,179 additions, 3,179 deletions" which looks like the patch is "delete the old file entirely and replace with new one". I would like to know which lines have been changed.

I am using a driver that I got from Edimax at the back end of 2014 called rtl8811AU_linux_v4.3.7_11618.20141029. I was sent by email from edimax support as there latest driver. I have made some very minor changes to run on Rpi and it works well, even at 5G although there are issues.

Find it here https://www.dropbox.com/l/ZG4Zrxgr6cwYOrfhbm4YOp

It is possible that it is a better base than the older one you are using. I would like to apply the patches for Linux 4.0.0 and NL82011 to my version to see if it works better but cant determine what the line by line changes were. Can you help ?
regards

Andy

Raspberry Pi2 Installation problems (Raspbian)

Hi,

I just want to ask if somebody can support me.
I tried to install the driver under Raspbian 3.18.11-v7+ #781, I followed the steps discribed here:
sudo apt-get install linux-image-rpi-rpfv linux-headers-rpi-rpfv dkms build-essential bc
ends up with the message:
ln: failed to create hard link /boot/initrd.img-3.18.0-trunk-rpi.dpkg-bak' => /boot/initrd.img-3.18.0-trunk-rpi': Operation not permitted update-initramfs: Generating /boot/initrd.img-3.18.0-trunk-rpi
if I ignore this and go further entering

kernel=vmlinuz-3.10-3-rpi
initramfs initrd.img-3.10-3-rpi followkernel

to /boot/config.txt, my Pi2 doesn´t boot anymore. 😥
Can anyone help me on this?
rgs
Jan

Help with installing on Arch ARM

Hi, I'm trying to install this driver first using pkms (following the guide on the readme page), then using make (following this guide), however I keep getting the following error:

make ARCH=armv6l CROSS_COMPILE= -C /lib/modules/4.0.8-3-ARCH/build >M=/root/rtl8812AU_8821AU_linux-master modules
make[1]: Entering directory '/usr/lib/modules/4.0.8-3-ARCH/build'
Makefile:612: arch/armv6l/Makefile: No such file or directory
make[1]: *** No rule to make target 'arch/armv6l/Makefile'. Stop.
make[1]: Leaving directory '/usr/lib/modules/4.0.8-3-ARCH/build'
Makefile:1049: recipe for target 'modules' failed
make: *** [modules] Error 2

Any help with this would be great.

Thanks
Aaron

Stack trace when trying to connect my home network

I tried to connect my home network and it didn't work. Dmesg listing below. This happens every time. Used Netgear A6100 (0846:9052) stick on Linux 3.15.1 (Arch Linux) and TP-Link TL-WA801ND access point. If I can't get this working I must return the wlan stick to the store.

[ 1142.564198] RTL871X: set ssid [my_ssid_replaced] fw_state=0x00000008
[ 1142.781431] RTL871X: start auth
[ 1142.786539] RTL871X: auth success, start assoc
[ 1142.791310] RTL871X: assoc success
[ 1142.791349] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready
[ 1142.793442] UpdateHalRAMask8812A => mac_id:0, networkType:0x0b, mask:0x000fffff
==> rssi_level:0, rate_bitmap:0x000ff015
[ 1142.795043] RTL871X: send eapol packet
[ 1142.800527] RTL871X: send eapol packet
[ 1142.803917] RTL871X: set pairwise key to hw: alg:4(WEP40-1 WEP104-5 TKIP-2 AES-4) camid:4
[ 1142.803924] RTL871X: set group key to hw: alg:2(WEP40-1 WEP104-5 TKIP-2 AES-4) keyid:1
[ 1142.805922] RTL871X: set ssid [my_ssid_replaced] fw_state=0x00000009
[ 1143.088691] RTL871X: start auth
[ 1143.091922] RTL871X: auth success, start assoc
[ 1143.096454] RTL871X: assoc success
[ 1143.096520] ------------[ cut here ]------------
[ 1143.096562] WARNING: CPU: 0 PID: 72 at net/wireless/sme.c:654 __cfg80211_connect_result+0x421/0x480 cfg80211
[ 1143.096584] Modules linked in: ecb 8812au(O) fuse ctr ccm bnep btusb bluetooth 6lowpan_iphc joydev mousedev iTCO_wdt iTCO_vendor_support ppdev coretemp kvm_intel nvidia(PO) snd_hda_codec_analog snd_hda_codec_generic kvm microcode evdev mac_hid serio_raw psmouse i2c_i801 pcmcia arc4 lpc_ich iwl4965 drm iwlegacy snd_hda_intel mac80211 snd_hda_controller i2c_core snd_hda_codec yenta_socket pcmcia_rsrc pcmcia_core snd_hwdep cfg80211 thinkpad_acpi snd_pcm thermal nvram snd_timer snd wmi acpi_cpufreq button processor rfkill battery ac hwmon parport_pc parport e1000e shpchp tpm_tis tpm video soundcore intel_agp ptp pps_core intel_gtt nfs lockd sunrpc fscache cpufreq_powersave cpufreq_conservative ext4 crc16 mbcache jbd2 hid_generic usbhid hid sd_mod crc_t10dif crct10dif_common sr_mod cdrom ata_generic pata_acpi
[ 1143.096748] atkbd libps2 ahci libahci ata_piix firewire_ohci libata firewire_core crc_itu_t scsi_mod sdhci_pci sdhci led_class mmc_core ehci_pci uhci_hcd ehci_hcd usbcore usb_common i8042 serio
[ 1143.096791] CPU: 0 PID: 72 Comm: kworker/u4:3 Tainted: P W O 3.15.1-1-ARCH #1
[ 1143.096796] Hardware name: LENOVO / , BIOS 7LETC5WW (2.25 ) 11/14/2008
[ 1143.096815] Workqueue: cfg80211 cfg80211_event_work [cfg80211]
[ 1143.096821] 0000000000000000 0000000022cad39e ffff880037ef3ca0 ffffffff81507c61
[ 1143.096830] 0000000000000000 ffff880037ef3cd8 ffffffff81069acd ffff8800a9b4f000
[ 1143.096838] 0000000000000000 0000000000000000 ffff8800b8c87000 ffff88006e9cbc18
[ 1143.096847] Call Trace:
[ 1143.096861] [] dump_stack+0x4d/0x6f
[ 1143.096871] [] warn_slowpath_common+0x7d/0xa0
[ 1143.096879] [] warn_slowpath_null+0x1a/0x20
[ 1143.096898] [] __cfg80211_connect_result+0x421/0x480 [cfg80211]
[ 1143.096917] [] cfg80211_process_wdev_events+0x18c/0x1c0 [cfg80211]
[ 1143.096935] [] cfg80211_process_rdev_events+0x38/0x70 [cfg80211]
[ 1143.096955] [] cfg80211_event_work+0x1e/0x30 [cfg80211]
[ 1143.096965] [] process_one_work+0x168/0x450
[ 1143.096973] [] worker_thread+0x132/0x3e0
[ 1143.096982] [] ? manage_workers.isra.23+0x2d0/0x2d0
[ 1143.096990] [] kthread+0xea/0x100
[ 1143.096998] [] ? kthread_create_on_node+0x1a0/0x1a0
[ 1143.097008] [] ret_from_fork+0x7c/0xb0
[ 1143.097015] [] ? kthread_create_on_node+0x1a0/0x1a0
[ 1143.097021] ---[ end trace 57b7872f9261c640 ]---

Compilation failure with DBG=1

$ make
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/3.5.0-47-generic/build M=/home/harsha/repos/rtl8812AU_8821AU_linux modules
make[1]: Entering directory /usr/src/linux-headers-3.5.0-47-generic' CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_cmd.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_security.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_debug.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_io.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_ioctl_query.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_ioctl_set.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_ieee80211.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_mlme.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_mlme_ext.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_wlan_util.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_vht.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_pwrctrl.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_rf.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_recv.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_sta_mgt.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_ap.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_xmit.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_p2p.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_tdls.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_br_ext.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_iol.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/rtw_sreset.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/core/efuse/rtw_efuse.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/os_dep/osdep_service.o CC [M] /home/harsha/repos/rtl8812AU_8821AU_linux/os_dep/linux/os_intfs.o /home/harsha/repos/rtl8812AU_8821AU_linux/os_dep/linux/os_intfs.c: In function ‘rtw_proc_init_one’: /home/harsha/repos/rtl8812AU_8821AU_linux/os_dep/linux/os_intfs.c:1301:22: error: ‘proc_set_btcoex_dbg’ undeclared (first use in this function) /home/harsha/repos/rtl8812AU_8821AU_linux/os_dep/linux/os_intfs.c:1301:22: note: each undeclared identifier is reported only once for each function it appears in make[2]: *** [/home/harsha/repos/rtl8812AU_8821AU_linux/os_dep/linux/os_intfs.o] Error 1 make[1]: *** [_module_/home/harsha/repos/rtl8812AU_8821AU_linux] Error 2 make[1]: Leaving directory/usr/src/linux-headers-3.5.0-47-generic'
make: *** [modules] Error 2

Compile warning in ioctl_linux.c:8887:67: warning: iteration 16u invokes undefined behavior

I compiled the driver on arch linux raspberry pi. It compiles but issues various warning messages. It seems to work well, even at 5G connecting to my router at 434Mbps and achieving bandwidth (measured by iperf of > 200Mbps). The later version I received from Edimax rtl8811AU_linux_v4.3.7_11618.20141029 doesnt work at 5G and isnt set to use CFG80211 and doesnt even compile if it is switched on. So I decided to go with your (and others) work, which seems to be active.

The first compile warning is
os_dep/linux/ioctl_linux.c: In function ‘rtw_mp_efuse_get’:
os_dep/linux/ioctl_linux.c:8887:67: warning: iteration 16u invokes undefined behavior [-Waggressive-loop-optimizations]
sprintf(extra, "%s%02X ", extra, (pEfuseHal->fakeEfuseInitMap)[i+j]);
os_dep/linux/ioctl_linux.c:8875:3: note: containing loop
for (i = 0; i < EFUSE_MAP_SIZE; i += 16)

Because EFUSE_MAP_SIZE = 512 and array limit is EFUSE_MAX_MAP_LEN = 256 this looked wrong!

Array fakeEfuseInitMap[] has EFUSE_MAX_MAP_LEN elements. This is set in include/rtw_efuse.h. In your version v4.2.2_7502.20130517 this is set to 256 but in v4.3.7_11618.20141029 its set to 512

Changing removes warning message.

I am new to GIT and want to contribute and have created a pull request. Hope you can accept it, others will follow.

regards

Andy

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.