# WLAN problem: "disabling HT as WMM/QoS is not supported"

## klugem

Hello,

I have a strange problem connecting to my wlan.

It works flawlessly in 11g-mode but does not work in 11n-mode at all.

The corresponding dmesg entries are:

```
[   12.421227] ath9k 0000:03:00.0 wlp3s0: disabling HT as WMM/QoS is not supported by the AP

[   12.421230] ath9k 0000:03:00.0 wlp3s0: disabling VHT as WMM/QoS is not supported by the AP
```

I have already checked these potential problems:

 Not a network quality problem and not an AP-problem (the AP is definitely configured correctly):

   A Raspberry Pi with an edimax usb wifi-adapter next to the computer connects in 11n mode and no dmesg output regarding WMM/QoS is shown.

   Also all other gadgets (Media players, mobile phone, Laptops, Raspberry Pis) connect at full speed.

 Not a hardware driver problem:

   I tried to use the edimax usb wifi-adapter, used successfully by the Raspberry Pi in the first test. But the result was just the same:

```
[   12.610413] rtl8192cu 1-2:1.0 wlp0s18f2u2: disabling HT as WMM/QoS is not supported by the AP

[   12.610414] rtl8192cu 1-2:1.0 wlp0s18f2u2: disabling VHT as WMM/QoS is not supported by the AP
```

 Also tried to deactivate hardware crypto without any success:

```
options ath9k nohwcrypt=1
```

 The wlan card is capable of 11n:

From lspci:

```
03:00.0 Network controller: Qualcomm Atheros AR9485 Wireless Network Adapter (rev 01)
```

 Checked in kernel config that the schedulers are included:

```
CONFIG_NET_SCHED=y

#

# Queueing/Scheduling

#

CONFIG_NET_SCH_CBQ=y

CONFIG_NET_SCH_HTB=y

CONFIG_NET_SCH_HFSC=y

CONFIG_NET_SCH_PRIO=y

CONFIG_NET_SCH_MULTIQ=y

CONFIG_NET_SCH_RED=y

CONFIG_NET_SCH_SFB=y

CONFIG_NET_SCH_SFQ=y

CONFIG_NET_SCH_TEQL=y

CONFIG_NET_SCH_TBF=y

CONFIG_NET_SCH_GRED=y

CONFIG_NET_SCH_DSMARK=y

CONFIG_NET_SCH_NETEM=y

CONFIG_NET_SCH_DRR=y

CONFIG_NET_SCH_MQPRIO=y

CONFIG_NET_SCH_CHOKE=y

CONFIG_NET_SCH_QFQ=y

CONFIG_NET_SCH_CODEL=y

CONFIG_NET_SCH_FQ_CODEL=y

CONFIG_NET_SCH_FQ=y

CONFIG_NET_SCH_HHF=y

CONFIG_NET_SCH_PIE=y

CONFIG_NET_SCH_INGRESS=y

CONFIG_NET_SCH_PLUG=y
```

Does anybody have another idea where the problem might be?

Here is some more information about the system:

```

# uname -rvoim

3.14.14-gentoo #2 SMP Sun Nov 9 10:59:22 CET 2014 x86_64 AuthenticAMD GNU/Linux

# 

# lspci

00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (external gfx0 port B) (rev 02)

00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD/ATI] RD990 I/O Memory Management Unit (IOMMU)

00:02.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (PCI express gpp port B)

00:04.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (PCI express gpp port D)

00:05.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (PCI express gpp port E)

00:09.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (PCI express gpp port H)

00:0a.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (external gfx1 port A)

00:11.0 SATA controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] (rev 40)

00:12.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller

00:12.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller

00:13.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller

00:13.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller

00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 SMBus Controller (rev 42)

00:14.1 IDE interface: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 IDE Controller (rev 40)

00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 Azalia (Intel HDA) (rev 40)

00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 LPC host controller (rev 40)

00:14.4 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 PCI to PCI Bridge (rev 40)

00:14.5 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI2 Controller

00:16.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller

00:16.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller

00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 0

00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 1

00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 2

00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 3

00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 4

00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 5

01:00.0 VGA compatible controller: NVIDIA Corporation GK104 [GeForce GTX 760] (rev a1)

01:00.1 Audio device: NVIDIA Corporation GK104 HDMI Audio Controller (rev a1)

02:00.0 USB controller: Etron Technology, Inc. EJ168 USB 3.0 Host Controller (rev 01)

03:00.0 Network controller: Qualcomm Atheros AR9485 Wireless Network Adapter (rev 01)

04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)

05:00.0 USB controller: Etron Technology, Inc. EJ168 USB 3.0 Host Controller (rev 01)

06:07.0 Serial controller: MosChip Semiconductor Technology Ltd. PCI 9865 Multi-I/O Controller

06:07.1 Serial controller: MosChip Semiconductor Technology Ltd. PCI 9865 Multi-I/O Controller

06:07.2 Parallel controller: MosChip Semiconductor Technology Ltd. PCI 9865 Multi-I/O Controller

06:0e.0 FireWire (IEEE 1394): VIA Technologies, Inc. VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (rev c0)

# 

# dmesg | grep -e 80211 -e ath9 -e wlp

[    4.814433] cfg80211: Calling CRDA to update world regulatory domain

[    5.497531] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'

[    5.497769] ieee80211 phy0: Atheros AR9485 Rev:1 mem=0xffffc90014880000, irq=46

[    5.533599] systemd-udevd[1442]: renamed network interface wlan0 to wlp3s0

[    6.140051] cfg80211: World regulatory domain updated:

[    6.140054] cfg80211:  DFS Master region: unset

[    6.140055] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)

[    6.140057] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)

[    6.140058] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)

[    6.140059] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)

[    6.140060] cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)

[    6.140061] cfg80211:   (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)

[    6.140120] cfg80211: Calling CRDA for country: DE

[    6.142511] cfg80211: Regulatory domain changed to country: DE

[    6.142512] cfg80211:  DFS Master region: unset

[    6.142513] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)

[    6.142515] cfg80211:   (2400000 KHz - 2483500 KHz @ 40000 KHz), (N/A, 2000 mBm)

[    6.142516] cfg80211:   (5150000 KHz - 5250000 KHz @ 40000 KHz), (N/A, 2000 mBm)

[    6.142517] cfg80211:   (5250000 KHz - 5350000 KHz @ 40000 KHz), (N/A, 2000 mBm)

[    6.142518] cfg80211:   (5470000 KHz - 5725000 KHz @ 40000 KHz), (N/A, 2698 mBm)

[    6.142519] cfg80211:   (57240000 KHz - 65880000 KHz @ 2160000 KHz), (N/A, 4000 mBm)

[    6.142525] cfg80211: Calling CRDA for country: AU

[    6.143808] cfg80211: Current regulatory domain intersected:

[    6.143810] cfg80211:  DFS Master region: unset

[    6.143811] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)

[    6.143812] cfg80211:   (2402000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm)

[    6.143813] cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (N/A, 2000 mBm)

[    6.143814] cfg80211:   (5250000 KHz - 5330000 KHz @ 40000 KHz), (N/A, 2000 mBm)

[    7.906545] Modules linked in: rc_dib0700_rc5 enhanceio_rand(O) enhanceio_lru(O) enhanceio_fifo(O) enhanceio(O) dvb_usb_dib0700(+) dib8000 dib7000m dib0090 dib0070 dib7000p dib3000mc dibx000_common dvb_usb dvb_core rc_core ath9k ath9k_common ath9k_hw nvidia(PO) ath mac80211 cfg80211 rfkill

[   11.413273] IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready

[   12.405479] wlp3s0: authenticate with 58:6d:8f:36:a7:38

[   12.419006] wlp3s0: send auth to 58:6d:8f:36:a7:38 (try 1/3)

[   12.421155] wlp3s0: authenticated

[   12.421227] ath9k 0000:03:00.0 wlp3s0: disabling HT as WMM/QoS is not supported by the AP

[   12.421230] ath9k 0000:03:00.0 wlp3s0: disabling VHT as WMM/QoS is not supported by the AP

[   12.422124] wlp3s0: associate with 58:6d:8f:36:a7:38 (try 1/3)

[   12.424699] wlp3s0: RX AssocResp from 58:6d:8f:36:a7:38 (capab=0x411 status=0 aid=3)

[   12.424730] wlp3s0: associated

[   12.424737] IPv6: ADDRCONF(NETDEV_CHANGE): wlp3s0: link becomes ready

# 

```

Thanks,

Michael

----------

## szatox

 *Quote:*   

> 
> 
> [   12.421227] ath9k 0000:03:00.0 wlp3s0: disabling HT as WMM/QoS is not supported by the AP
> 
> [   12.421230] ath9k 0000:03:00.0 wlp3s0: disabling VHT as WMM/QoS is not supported by the AP

 

This seems to answer your question. You can't use mode 'n' with AP that doesn't support it (or has it disabled). As simple as that, mode 'n' is disabled on the other device you're connecting to.

----------

## klugem

Thank you for your answer, but no, it's not that easy. Would be great if it was, but it isn't:

The AP is configured to do WMM/QoS and is capable of accepting n-connections.

Indeed it does so!

I have verified, that all other gadgets/computers can and do connect at n mode.

That was the first bullet point of my original post:

 *Quote:*   

> Not a network quality problem and not an AP-problem (the AP is definitely configured correctly): 
> 
> A Raspberry Pi with an edimax usb wifi-adapter next to the computer connects in 11n mode and no dmesg output regarding WMM/QoS is shown. 
> 
> Also all other gadgets (Media players, mobile phone, Laptops, Raspberry Pis) connect at full speed.

 

If the problem is the AP, then how can a Raspberry Pi running Raspbian and using an Edimax usb-wlan-stick connect to exactly this AP in n-mode?

Furthermore, I tried to use exactly the same Edimax usb-wlan-stick originally used in the Raspberry Pi in my computer. And there it just connects in g-mode and dmesg shows the same message as when using the Atheros-PCIe-card. Plugging it back into the Raspberry: The Raspberry connects at n-mode.

So it does not seem to be a hardware or AP problem...

Any other ideas?

----------

## szatox

Hmm.. yeah, that makes it more tricky.

Do you use WPA2? (N doesn't work with wep, not sure about wpa1) And it does not fall back to weaker stuff, right?

What about running it without encryption at all?

Oh, and what about

grep -i ath9 /usr/src/linux/.config

----------

## klugem

Well, I use WPA2 with AES as needed for n-networks. (I think WPA1 would not work. The router is configured to just do WPA2 and AES)

So here some information about the kernel:

```
# grep -i ath9 /usr/src/linux/.config

CONFIG_ATH9K_HW=m

CONFIG_ATH9K_COMMON=m

# CONFIG_ATH9K_BTCOEX_SUPPORT is not set

CONFIG_ATH9K=m

CONFIG_ATH9K_PCI=y

# CONFIG_ATH9K_AHB is not set

CONFIG_ATH9K_DEBUGFS=y

CONFIG_ATH9K_STATION_STATISTICS=y

# CONFIG_ATH9K_WOW is not set

# CONFIG_ATH9K_LEGACY_RATE_CONTROL is not set

CONFIG_ATH9K_RFKILL=y

# CONFIG_ATH9K_HTC is not set

# 

# grep 80211 /usr/src/linux/.config                                                                                                                                                                                

CONFIG_CFG80211=m

# CONFIG_NL80211_TESTMODE is not set

# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set

# CONFIG_CFG80211_REG_DEBUG is not set

CONFIG_CFG80211_DEFAULT_PS=y

CONFIG_CFG80211_DEBUGFS=y

# CONFIG_CFG80211_INTERNAL_REGDB is not set

CONFIG_CFG80211_WEXT=y

# CONFIG_LIB80211 is not set

CONFIG_MAC80211=m

CONFIG_MAC80211_HAS_RC=y

CONFIG_MAC80211_RC_MINSTREL=y

CONFIG_MAC80211_RC_MINSTREL_HT=y

CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y

CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"

# CONFIG_MAC80211_MESH is not set

CONFIG_MAC80211_LEDS=y

CONFIG_MAC80211_DEBUGFS=y

# CONFIG_MAC80211_MESSAGE_TRACING is not set

# CONFIG_MAC80211_DEBUG_MENU is not set

# CONFIG_MAC80211_HWSIM is not set

#                                            

# grep NET_SCH .config

CONFIG_NET_SCHED=y

CONFIG_NET_SCH_CBQ=y

CONFIG_NET_SCH_HTB=y

CONFIG_NET_SCH_HFSC=y

CONFIG_NET_SCH_PRIO=y

CONFIG_NET_SCH_MULTIQ=y

CONFIG_NET_SCH_RED=y

CONFIG_NET_SCH_SFB=y

CONFIG_NET_SCH_SFQ=y

CONFIG_NET_SCH_TEQL=y

CONFIG_NET_SCH_TBF=y

CONFIG_NET_SCH_GRED=y

CONFIG_NET_SCH_DSMARK=y

CONFIG_NET_SCH_NETEM=y

CONFIG_NET_SCH_DRR=y

CONFIG_NET_SCH_MQPRIO=y

CONFIG_NET_SCH_CHOKE=y

CONFIG_NET_SCH_QFQ=y

CONFIG_NET_SCH_CODEL=y

CONFIG_NET_SCH_FQ_CODEL=y

CONFIG_NET_SCH_FQ=y

CONFIG_NET_SCH_HHF=y

CONFIG_NET_SCH_PIE=y

CONFIG_NET_SCH_INGRESS=y

CONFIG_NET_SCH_PLUG=y

CONFIG_NET_SCH_FIFO=y

# 

```

The loaded modules:

```

# lsmod

Module                  Size  Used by

rc_dib0700_rc5          2244  0 

enhanceio_rand          1889  0 

enhanceio_lru           2675  1 

enhanceio_fifo          2209  0 

enhanceio             143370  3 enhanceio_fifo,enhanceio_rand,enhanceio_lru

dvb_usb_dib0700       132644  0 

dib8000                49704  1 dvb_usb_dib0700

dib7000m               14839  1 dvb_usb_dib0700

dib0090                24187  1 dvb_usb_dib0700

dib0070                 7898  1 dvb_usb_dib0700

dib7000p               26874  1 dvb_usb_dib0700

dib3000mc              12541  1 dvb_usb_dib0700

dibx000_common          6686  5 dib8000,dvb_usb_dib0700,dib3000mc,dib7000m,dib7000p

dvb_usb                16418  1 dvb_usb_dib0700

dvb_core               84323  3 dib8000,dvb_usb,dib7000p

rc_core                12475  3 dvb_usb,dvb_usb_dib0700,rc_dib0700_rc5

ath9k                 120310  0 

nvidia              11011635  39 

ath9k_common            1722  1 ath9k

ath9k_hw              381966  2 ath9k_common,ath9k

ath                    18587  3 ath9k_common,ath9k,ath9k_hw

mac80211              468313  1 ath9k

cfg80211              409701  3 ath,ath9k,mac80211

rfkill                 14723  2 cfg80211

# 
```

The WPA-Config:

```
# cat /etc/wpa_supplicant/wpa_supplicant.conf

#Generated by NetworkManager

###### Global Configuration ######

ctrl_interface_group=0

ctrl_interface=/var/run/wpa_supplicant

update_config=1

###### Security Configuration ######

network={

        proto=RSN

        ssid="xxxxxxxxxxx"

        pairwise=CCMP TKIP

        group=CCMP TKIP

        key_mgmt=WPA-PSK

        psk="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

}

# 
```

Maybe this helps too:

```
# iwconfig

wlp3s0    IEEE 802.11bgn  ESSID:"xxxxxxx"  

          Mode:Managed  Frequency:2.457 GHz  Access Point: 58:6D:8F:36:A7:38   

          Bit Rate=54 Mb/s   Tx-Power=20 dBm   

          Retry short limit:7   RTS thr:off   Fragment thr:off

          Encryption key:off

          Power Management:off

          Link Quality=38/70  Signal level=-72 dBm  

          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0

          Tx excessive retries:0  Invalid misc:16   Missed beacon:0

teql0     no wireless extensions.

lo        no wireless extensions.

enp4s0    no wireless extensions.

sit0      no wireless extensions.

# 
```

The dmesg output is already incuded in my first post.

For comparison, here is the working stuff of my Raspberry Pi (no kernel sources, so no .config greps...):

```
pi# cat /etc/wpa_supplicant/wpa_supplicant.conf 

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev

update_config=1

network={

        ssid="xxxxxxx"

        proto=RSN

        key_mgmt=WPA-PSK                                                                                                                                                                                              

        pairwise=CCMP TKIP                                                                                                                                                                                            

        group=CCMP TKIP                                                                                                                                                                                               

        psk="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"                                                                                                                                         

}

pi# 

pi# iwconfig                                                                                                                                                                                   

wlan0     IEEE 802.11bgn  ESSID:"xxxxxxx"  Nickname:"<WIFI@REALTEK>"                                                                                                                                                 

          Mode:Managed  Frequency:2.457 GHz  Access Point: 58:6D:8F:36:A7:38                                                                                                                                          

          Bit Rate:150 Mb/s   Sensitivity:0/0                                                                                                                                                                         

          Retry:off   RTS thr:off   Fragment thr:off                                                                                                                                                                  

          Encryption key:****-****-****-****-****-****-****-****   Security mode:open                                                                                                                                 

          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                                                                                                                                                    

                                                                                                                                                                                                                      

lo        no wireless extensions.                                                                                                                                                                                     

                                                                                                                                                                                                                      

eth0      no wireless extensions.   

pi#

# lsmod                                                                                                                                                                                      

Module                  Size  Used by                                                                                                                                                                                 

snd_bcm2835            19584  0                                                                                                                                                                                       

evdev                  10661  1                                                                                                                                                                                       

snd_usb_audio         117969  0                                                                                                                                                                                       

snd_usbmidi_lib        19299  1 snd_usb_audio                                                                                                                                                                         

snd_hwdep               5838  1 snd_usb_audio                                                                                                                                                                         

snd_seq_midi            4714  0                                                                                                                                                                                       

snd_seq_midi_event      6715  1 snd_seq_midi                                                                                                                                                                          

snd_soc_bcm2708_i2s     6202  0                                                                                                                                                                                       

regmap_mmio             2818  1 snd_soc_bcm2708_i2s                                                                                                                                                                   

snd_rawmidi            21968  2 snd_usbmidi_lib,snd_seq_midi                                                                                                                                                          

snd_soc_core          127841  1 snd_soc_bcm2708_i2s                                                                                                                                                                   

snd_compress            8259  1 snd_soc_core                                                                                                                                                                          

regmap_i2c              1661  1 snd_soc_core                                                                                                                                                                          

snd_pcm_dmaengine       5505  1 snd_soc_core

regmap_spi              1913  1 snd_soc_core

snd_seq                55484  2 snd_seq_midi_event,snd_seq_midi

8192cu                550797  0 

snd_seq_device          6469  3 snd_seq,snd_rawmidi,snd_seq_midi

leds_gpio               2079  0 

cm109                   9931  0 

led_class               4118  1 leds_gpio

snd_pcm                83845  4 snd_bcm2835,snd_usb_audio,snd_soc_core,snd_pcm_dmaengine

snd_page_alloc          5132  1 snd_pcm

snd_timer              20998  2 snd_pcm,snd_seq

snd                    62252  11 snd_bcm2835,snd_usb_audio,snd_soc_core,snd_hwdep,snd_timer,snd_pcm,snd_seq,snd_rawmidi,snd_usbmidi_lib,snd_seq_device,snd_compress

pi#
```

As you can see, the Pi connects at n-mode: "Bit Rate:150 Mb/s"

I somehow think, that there is something wrong with my kernel config but I can't find the flaw.

First I thought that the problem was the multiqueue net device scheduling, but as far as I can see, everything needed is turned on.

So I'm out of ideas...

Thanks, 

Michael

----------

## Ant P.

 *klugem wrote:*   

> 
> 
> ```
> 
> # dmesg | grep -e 80211 -e ath9 -e wlp
> ...

 

That doesn't look right... your driver's limiting itself to the set of radio frequencies valid in both DE and AU. The AP may be configured to send the wrong country code there. Try overriding it with `iw reg set [correct country]` and see if that helps. Might be interesting to compare it with the RPi's dmesg output too.

----------

## klugem

Thank you for the answeres! 

Well, the dmesg output of the Raspberry is not very helpful, I think.

This is the output (I cut it where the WLAN-stick was detected):

```
[    3.267936] usb 1-1.2: new high-speed USB device number 4 using dwc_otg

[    3.389697] usb 1-1.2: New USB device found, idVendor=7392, idProduct=7811

[    3.398545] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3

[    3.409692] usb 1-1.2: Product: 802.11n WLAN Adapter

[    3.418469] usb 1-1.2: Manufacturer: Realtek

[    3.426510] usb 1-1.2: SerialNumber: 00e04c000001

[    3.528057] usb 1-1.3: new full-speed USB device number 5 using dwc_otg

[    3.536496] EXT4-fs (mmcblk0p2): 1 orphan inode deleted

[    3.543400] EXT4-fs (mmcblk0p2): recovery complete

[    3.647326] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)

[    3.658673] VFS: Mounted root (ext4 filesystem) on device 179:2.

[    3.668272] devtmpfs: mounted

[    3.673041] usb 1-1.3: New USB device found, idVendor=0d8c, idProduct=000e

[    3.681869] Freeing unused kernel memory: 140K (c05bd000 - c05e0000)

[    3.689834] usb 1-1.3: New USB device strings: Mfr=0, Product=1, SerialNumber=0

[    3.699130] usb 1-1.3: Product: Generic USB Audio Device   

[    5.193600] udevd[156]: starting version 175

[    6.802442] cm109: Keymap for Komunikate KIP1000 phone loaded

[    6.930576] input: CM109 USB driver as /devices/platform/bcm2708_usb/usb1/1-1/1-1.3/1-1.3:1.3/input/input0

[    7.200415] usbcore: registered new interface driver cm109

[    7.207695] cm109: CM109 phone driver: 20080805 (C) Alfred E. Heggestad

[    7.352421] bcm2708-i2s bcm2708-i2s.0: Failed to create debugfs directory

[    8.171205] usbcore: registered new interface driver snd-usb-audio

[    8.865115] usbcore: registered new interface driver rtl8192cu

[   13.059603] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)

[   13.542544] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)

[   19.358379] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.

[   22.642939] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup

[   33.316843] Adding 102396k swap on /var/swap.  Priority:-1 extents:1 across:102396k SSFS

[ 1825.786072] bcm2708_fb_blank(1) returns=1 p[1]=0x80000000

/home/pi#
```

The syslog gives some more info:

```
Nov 12 20:17:21 raspberrypi wpa_supplicant[1709]: wlan0: CTRL-EVENT-DISCONNECTED bssid=58:6d:8f:36:a7:38 reason=0

Nov 12 20:17:21 raspberrypi wpa_action: WPA_IFACE=wlan0 WPA_ACTION=DISCONNECTED

Nov 12 20:17:21 raspberrypi wpa_action: WPA_ID=0 WPA_ID_STR= WPA_CTRL_DIR=/var/run/wpa_supplicant

Nov 12 20:17:21 raspberrypi wpa_action: ifdown wlan0

Nov 12 20:17:21 raspberrypi ifplugd(wlan0)[1620]: Link beat lost.

Nov 12 20:17:21 raspberrypi wpa_action: removing sendsigs omission pidfile: /run/sendsigs.omit.d/wpasupplicant.wpa_supplicant.wlan0.pid

Nov 12 20:17:22 raspberrypi wpa_supplicant[1709]: wlan0: Trying to associate with 58:6d:8f:36:a7:38 (SSID='xxxxxxx' freq=2457 MHz)

Nov 12 20:17:22 raspberrypi wpa_supplicant[1709]: wlan0: Association request to the driver failed

Nov 12 20:17:22 raspberrypi wpa_supplicant[1709]: wlan0: Associated with 58:6d:8f:36:a7:38

Nov 12 20:17:22 raspberrypi wpa_supplicant[1709]: wlan0: WPA: Key negotiation completed with 58:6d:8f:36:a7:38 [PTK=CCMP GTK=CCMP]

Nov 12 20:17:22 raspberrypi wpa_supplicant[1709]: wlan0: CTRL-EVENT-CONNECTED - Connection to 58:6d:8f:36:a7:38 completed (reauth) [id=0 id_str=]

Nov 12 20:17:22 raspberrypi wpa_action: WPA_IFACE=wlan0 WPA_ACTION=CONNECTED

Nov 12 20:17:22 raspberrypi wpa_action: WPA_ID=0 WPA_ID_STR= WPA_CTRL_DIR=/var/run/wpa_supplicant

Nov 12 20:17:22 raspberrypi ifplugd(wlan0)[1620]: Link beat detected.

Nov 12 20:17:22 raspberrypi wpa_action: ifup wlan0=default

Nov 12 20:17:31 raspberrypi wpa_action: creating sendsigs omission pidfile: /run/sendsigs.omit.d/wpasupplicant.wpa_supplicant.wlan0.pid

Nov 12 20:17:31 raspberrypi wpa_action: bssid=58:6d:8f:36:a7:38

Nov 12 20:17:31 raspberrypi wpa_action: ssid=xxxxxxxxxx

Nov 12 20:17:31 raspberrypi wpa_action: id=0

Nov 12 20:17:31 raspberrypi wpa_action: mode=station

Nov 12 20:17:31 raspberrypi wpa_action: pairwise_cipher=CCMP

Nov 12 20:17:31 raspberrypi wpa_action: group_cipher=CCMP

Nov 12 20:17:31 raspberrypi wpa_action: key_mgmt=WPA2-PSK

Nov 12 20:17:31 raspberrypi wpa_action: wpa_state=COMPLETED

Nov 12 20:17:31 raspberrypi wpa_action: ip_address=192.168.2.108

Nov 12 20:17:31 raspberrypi wpa_action: address=80:1f:02:82:2e:36
```

So it does not seem to set any regdom...

However, trying your hint with "iw reg" the computer running gentoo says directly after booting:

```

 ~ # iw reg get

country DE: DFS-UNSET

        (2400 - 2483 @ 40), (N/A, 20)

        (5150 - 5250 @ 40), (N/A, 20), NO-OUTDOOR

        (5250 - 5350 @ 40), (N/A, 20), NO-OUTDOOR, DFS

        (5470 - 5725 @ 40), (N/A, 26), DFS

        (57240 - 65880 @ 2160), (N/A, 40), NO-OUTDOOR

 ~ # 

 ~ # iw reg set DE

 ~ # iw reg get

country DE: DFS-UNSET

        (2400 - 2483 @ 40), (N/A, 20)

        (5150 - 5250 @ 40), (N/A, 20), NO-OUTDOOR

        (5250 - 5350 @ 40), (N/A, 20), NO-OUTDOOR, DFS

        (5470 - 5725 @ 40), (N/A, 26), DFS

        (57240 - 65880 @ 2160), (N/A, 40), NO-OUTDOOR

 ~ #

 ~ # iwconfig

wlp3s0    IEEE 802.11bgn  ESSID:"domurete"  

          Mode:Managed  Frequency:2.457 GHz  Access Point: 58:6D:8F:36:A7:38   

          Bit Rate=54 Mb/s   Tx-Power=20 dBm   

          Retry short limit:7   RTS thr:off   Fragment thr:off

          Encryption key:off

          Power Management:off

          Link Quality=36/70  Signal level=-74 dBm  

          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0

          Tx excessive retries:0  Invalid misc:115   Missed beacon:0

teql0     no wireless extensions.

lo        no wireless extensions.

enp4s0    no wireless extensions.

sit0      no wireless extensions.

```

So changing the reg domain does not seem to make any difference. iw reg shows "DE", which is correct and resetting it to DE does not seem to make any difference.

The dmesg output is a little bit strange though... It seems to set the reg domain to AU but "iw reg get" returns the correct "DE"-setting.

I also checked the router again but I was not able to find the setting. (The router (Linksys E3200) runs DD-WRT but the "WLAN->advanced settings" do not show a setting for the regulatory domain.

I'm not sure about that, but it might be, that the kernel "2.6.24" used by DD-WRT does not support the reg domain setting correctly...)

I also tried to omit the reg domain config I used in /etc/modprobe.d/cfg80211.conf:

Used to be:

```
options cfg80211 ieee80211_regdom=DE
```

I removed file, as this line was the only entry, and rebooted.

After that the dmesg is:

```
[    5.751072] cfg80211: World regulatory domain updated:

[    5.751074] cfg80211:  DFS Master region: unset

[    5.751074] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)

[    5.751075] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)

[    5.751076] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)

[    5.751076] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)

[    5.751077] cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)

[    5.751077] cfg80211:   (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)

[    5.751137] cfg80211: Calling CRDA for country: AU

[    5.821746] cfg80211: Regulatory domain changed to country: AU

[    5.821747] cfg80211:  DFS Master region: unset

[    5.821747] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)

[    5.821748] cfg80211:   (2402000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm)

[    5.821749] cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2300 mBm)

[    5.821749] cfg80211:   (5250000 KHz - 5330000 KHz @ 40000 KHz), (300 mBi, 2300 mBm)

[    5.821750] cfg80211:   (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 3000 mBm)

[    6.468609] nvidia-smi (1487) used greatest stack depth: 4280 bytes left
```

But still:

```
# iwconfig

wlp3s0    IEEE 802.11bgn  ESSID:"xxxxxxx"  

          Mode:Managed  Frequency:2.457 GHz  Access Point: 58:6D:8F:36:A7:38   

          Bit Rate=54 Mb/s   Tx-Power=20 dBm   

          Retry short limit:7   RTS thr:off   Fragment thr:off

          Encryption key:off

          Power Management:off

          Link Quality=48/70  Signal level=-62 dBm  

          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0

          Tx excessive retries:0  Invalid misc:12   Missed beacon:0

teql0     no wireless extensions.

lo        no wireless extensions.

enp4s0    no wireless extensions.

sit0      no wireless extensions.
```

On the other hand the frequency used is 2.457 GHz with 40MHz channel width.

The 2.457 GHz/40MHz setting seems to be allowed according to the dmesg output:

for "world" (unset):

[    5.751075] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)

for AU:

[    5.821748] cfg80211:   (2402000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm)

for DE:

[    6.142515] cfg80211:   (2400000 KHz - 2483500 KHz @ 40000 KHz), (N/A, 2000 mBm) 

Or am I missing something with these frequencies?

I somehow still think the problem is with the kernel config... Does anybody know which features have to be turned on to get n-speeds?

I mean those settings apart from the wlan driver and the ieee80211 stuff. Something like the multi-queue scheduling options or any multi queue device drivers?

I can remember, some time ago, the 2.6 kernel needed an option called something like "NETDEVICE_MULTIQUEUE" (not sure about the correctness of the spelling), but that option was abandoned later.

Do I have to enable something similiar in kernel 3.14?

----------

## Ant P.

Multiqueue should be used automatically if your card supports it. If it's working, `tc qdisc show` should print a "mq" line (not sure if it's always the case).

I'm out of ideas, unfortunately. You could try adding country=DE to wpa_supplicant.conf but I doubt it'll help if the other things didn't.

----------

