OpenWrt Forum Archive

Topic: current limits using ath9k driver...tranfert rate, options, help

The content of this topic has been archived on 29 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

hi all
I create this topics because I'm engaged about having ath9k driver working onto OpenWRT.

I lived a big part of my time in the last 2 months trying setting up a router with 11n capabilities and after some time needed for choising and then for buying the card I believed I would became a lucky owner of a hight speed wireless router... I believed it!!!
Ok, it is in developement but I had hard time looking for the right options for setting it up, Hard time understanding where  I could set it and so on.
In particular I setted up a BCM6358 AGPF-S0 (Alice Gate) router with a Atheros Ar5416 miniPCI card and OpenWRT_luci.
Finally I can connect to it at 300Mbps, 130Mbs, 54Mbps BUT the max transfert rate speed is limited up to 200Kbps. It is a very poor result and My only hopeness is that there are some options to pass to the kernel or to set in any configuration file to have it working faster.

Is there anyone having some skills about ath9k driver that can write down here or link here any interesting information?

I can start passing my little skills about it that I wasn't able to find anywhere.


#################################################################################
                                                                        UPDATED
#################################################################################

1) To pass 11n mode to the router you need to add this line to "/etc/config/wireless" file
"option 'hwmode_11n' 'g' "
or
"option 'hwmode_11n' 'a' "


you haven't to pass:  option 'hwmode' 'n' that you will find everywhere searching information on the web and forums  because it doesn't work.
Option 'hwmode_11n" simpli means to tells to apply 11n mode onto a "g" card or onto an "a" card. I really don't know if it works using value "ag" or "ga" too for 11bgan cards. If you know it, please add here you knowledge.

ieee80211n=1 will be setted automatically by the firmware if you will use the option 'hwmode_11n', so there isn't the need of setting it as you read surfing the net and forums.

2) After that You need only to chose ed add the capabilities of your card and you'll have the card setted up in 11n mode.

So always into the "/etc/config/wireless" file you should add something like this but refered about the capabilities supported by your hardware:

        option 'ht_capab' '[SHORT-GI-40][DSSS_CCK-40][HT40-][HT40+][HT20]'
   
       #other options to try alone or mixed togheter
       #option 'ht_capab' '[HT40+][HT40-][HT20][HT-GI-40][HT-GI-20]'
       #option 'ht_capab' '[TX-STBC]'
       #option 'ht_capab' '[RX-STBC12]'
       #option 'ht_capab' '[DELAYED-BA]'
       #option 'ht_capab' '[RX-STBC123]'
       #option 'ht_capab' '[SHORT-GI-40]'
       #option 'ht_capab' '[DSSS_CCK-40]'
       #option 'ht_capab' '[HT40-]'
       #option 'ht_capab' '[HT40+]'
       #option 'ht_capab' '[SHORT-GI-20]'
       #option 'ht_capab' '[HT20]'


You can find the capabilities of you card using the command: "iw list" at the command line prompt (via Terminal) but I'm not able to know exactly which are the right options. For example I get: HT40 cabable and others but who tells me how to pass HT40 option to the firmware? does it should be [HT40+] and [HT40-]? Where can I find a full list of working OPTIONS?

for example I get this iw list OUTPUT:
/$ iw list
Wiphy phy0
    Band 1:
        HT capabilities: 0x104e
            * 20/40 MHz operation
            * SM PS disabled
            * 40 MHz short GI
            * max A-MSDU len 3839
            * DSSS/CCK 40 MHz
        HT A-MPDU factor: 0x0003 (65535 bytes)
        HT A-MPDU density: 0x0006 (8 usec)
        HT MCS set: ff ff 00 00 00 00 00 00 00 00 00 00 01 00 00 00
        HT TX/RX MCS rate indexes supported:
            MCS index 0
            MCS index 1
            MCS index 2
            MCS index 3
            MCS index 4
            MCS index 5
            MCS index 6
            MCS index 7
            MCS index 8
            MCS index 9
            MCS index 10
            MCS index 11
            MCS index 12
            MCS index 13
            MCS index 14
            MCS index 15
        Frequencies:
            * 2412 MHz [1] (20.0 dBm)
            * 2417 MHz [2] (20.0 dBm)
            * 2422 MHz [3] (20.0 dBm)
            * 2427 MHz [4] (20.0 dBm)
            * 2432 MHz [5] (20.0 dBm)
            * 2437 MHz [6] (20.0 dBm)
            * 2442 MHz [7] (20.0 dBm)
            * 2447 MHz [8] (20.0 dBm)
            * 2452 MHz [9] (20.0 dBm)
            * 2457 MHz [10] (20.0 dBm)
            * 2462 MHz [11] (20.0 dBm)
            * 2467 MHz [12] (disabled)
            * 2472 MHz [13] (disabled)
            * 2484 MHz [14] (disabled)
        Bitrates:
            * 1.0 Mbps
            * 2.0 Mbps (short preamble supported)
            * 5.5 Mbps (short preamble supported)
            * 11.0 Mbps (short preamble supported)
            * 6.0 Mbps
            * 9.0 Mbps
            * 12.0 Mbps
            * 18.0 Mbps
            * 24.0 Mbps
            * 36.0 Mbps
            * 48.0 Mbps
            * 54.0 Mbps
    max # scan SSIDs: 4
    Supported interface modes:
         * IBSS
         * managed
         * AP
         * AP/VLAN
         * monitor
         * mesh point

WHO KNOWS WHICH OPTIONS CORRISPOND TO THESE CAPABILITIES?
COULD the "HT TX/RX MCS rate indexes supported" influences the tranfert rate speed? (remember that I can get up to 200kbps only), and if yes then which is the [???????] option to use for setting it?

so you need the:

3) iw package

installed into your system and:

4) hostapd_full package

you will read options succesfully setted reading /var/run/hostapd-wlan0.conf file  (about wlan0)

--------------------------------------------------------------------------------------------------------------------------------------------------------
28-05-2009:

Thanks to thalience and linuxb, we know that there are some issues onto ath9k driver. Those issues are known as it is known the solution:

If you use the last sources from ath9k trunk, then you'll have the driver working. If you are using the openwrt trunk, then you'll NOT have the driver working well until the ath9k of openwrt trunk will be updated.

FOR openwrt users using TRUNK thanks to "linuxb":

the ath9k 404 patch:
http://www.4shared.com/file/108392866/6 … 4-wmm.html
The patch goes in: trunk/package/mac80211/patches/   

the hostapd.sh modification:
Then edit the trunk/package/hostapd/files/hostapd.sh
include this into that file, you can put these lines in between debug=0 and wpa=$wpa

tx_queue_data3_aifs=7
tx_queue_data3_cwmin=15
tx_queue_data3_cwmax=1023
tx_queue_data3_burst=0
tx_queue_data2_aifs=3
tx_queue_data2_cwmin=15
tx_queue_data2_cwmax=63
tx_queue_data2_burst=0
tx_queue_data1_aifs=1
tx_queue_data1_cwmin=7
tx_queue_data1_cwmax=15
tx_queue_data1_burst=3.0
tx_queue_data0_aifs=1
tx_queue_data0_cwmin=3
tx_queue_data0_cwmax=7
tx_queue_data0_burst=1.5
wme_enabled=1
wme_ac_bk_cwmin=4
wme_ac_bk_cwmax=10
wme_ac_bk_aifs=7
wme_ac_bk_txop_limit=0
wme_ac_bk_acm=0
wme_ac_be_aifs=3
wme_ac_be_cwmin=4
wme_ac_be_cwmax=10
wme_ac_be_txop_limit=0
wme_ac_be_acm=0
wme_ac_vi_aifs=2
wme_ac_vi_cwmin=3
wme_ac_vi_cwmax=4
wme_ac_vi_txop_limit=94
wme_ac_vi_acm=0
wme_ac_vo_aifs=2
wme_ac_vo_cwmin=2
wme_ac_vo_cwmax=3
wme_ac_vo_txop_limit=47
wme_ac_vo_acm=0


Now compile and try it.

FOR openwrt users thanks to "thalience":

(it doesn't work for me olso if it seems to be the same patch reported by linuxb because the patch is made for GIT and I'm using SVN; and then he wrote about editing the hostapd.conf file that I can't find anywhere in my openwrt installation so I can't do the modification).
I don't report the thalience suggestions again, because you'll find them at the next post so you can read it easily.


03-06-2009
starting from 16301 trunk version there should be no problems working with ath9k driver;

1) there is no need of editing mac80211.sh (in the sources files for automatically setting up the options:

   option 'hwmode_11n' 'g'
   option 'ht_capab' '[SHORT-GI-40][DSSS_CCK-40][HT40-][HT40+][HT20]'

  (or anyother different value option) into the wireless config file.

2) there is no need to apply the 404 patch because it has already been patched into the new driver;

3) the hostapd.sh modification (trunk/package/hostapd/files/hostapd.sh) may not to be necesarly. You should test with or without and anyway it sholud be important to know what these options do and what we can change about them

6-06-2009
I found these two links with explanations about use of hostapd.conf options in order to modify the mac80211.sh source file for  first working wireless config after the flash.

http://hostap.epitest.fi/gitweb/gitweb. … nf;hb=HEAD
http://hostap.epitest.fi/gitweb/gitweb. … stapd.conf
##################################################################################
##################################################################################

PLEASE IF YOU KNOW SOMETHING MORE OR SOMETHING BETTER PLEASE HELP ME/US WRITING ABOUT IT HERE (I will try to keep updated the main POST).

(Last edited by desigabri on 6 Jun 2009, 16:45)

It would help if you could post a little more information about your testing setup. I'm assuming that you are testing wifi performance (and not routing between wired ports). Are you testing throughput from AP to Station, from Station to AP, or both?

Are you building trunk, using a snapshot, using 8.09, or what?

That said, I noticed a discussion on the ath9k mailing list about a recently-introduced bug that would really hurt AP -> Station transfers. It is present in trunk, and probably recent snapshots as well.

Fortunately, this bug can be worked around without recompiling (by putting settings into hostapd.conf):
http://osdir.com/ml/linux-wireless/2009 … 01156.html

And here is the patch to fix the bug, if you want to just build a fixed version:
http://osdir.com/ml/linux-wireless/2009 … 01189.html

Hi.
Im not an expert on ath9k,Openwrt og Linux, but as you I have tried to get it working lately (this is on a x86 with an mini-pci AR5416).

1)
I could not get option 'hwmode_11n'to work before I saw your post, but it works now, thanks.
I dont think it works with 'ag' or 'ga', but I dont think it matters, if you leave out hwmode_11n, you wont get HT speed,  and just use the channel number to determine a or g.

2)
Here is a link to hostapd.conf sample file, (git). Its some explanation there:
http://hostap.epitest.fi/gitweb/gitweb. … nf;hb=HEAD

Basically HT40 means that you will use 2 channels, a primary and a secondary channel. The primary channel is the channel you specify in your config.
HT40+ means that the secondary will be 40MHz above the primary channel.
Your iw list shows that you can use channel 1 to 11. That means that the highest HT40+ channel you can use is channel 7(1 to 7), since the secondary channel will be 11. Therefore Channel 8 would not work with HT40+, because the secondary channel would have been 12, and iw list shows that channel aint available.

From hostapd.conf:
#    freq        HT40-        HT40+
#    2.4 GHz        5-13        1-7 (1-9 in Europe/Japan)
#    5 GHz        40,48,56,64    36,44,52,60

For your iw list, try this settings:

option 'ht_capab' '[HT40-] or(only one of them) [HT40+] [SHORT-GI-40][DSSS_CCK-40]'

I dont know it is an option for setting the  HT TX/RX MCS rates, maybe via iw?, but there is no need the driver selects the rates automatically.

I think I have read on this forum about high cpu usage on routers with ath9k,  therfore some speed issues, but I dont know since im on x86.

Try this setting and I think you should see some improvements:

Set your wireless to channel 11   (for example)
add this to /etc/config/wireless

option 'hwmode_11n' 'g'
option 'ht_capab' '[HT40-][SHORT-GI-40][DSSS_CCK-40]'


If you are building openwrt from trunk use this patch to sort out a typo in a patch to wireless-testing git some weeks ago.
(you probably dont need it when next compat wireless comes)

http://www.4shared.com/file/108392866/6 … 4-wmm.html
The patch goes in: trunk/package/mac80211/patches/   

Then edit the trunk/package/hostapd/files/hostapd.sh
include this into that file, you can put these lines in between debug=0 and wpa=$wpa

tx_queue_data3_aifs=7
tx_queue_data3_cwmin=15
tx_queue_data3_cwmax=1023
tx_queue_data3_burst=0
tx_queue_data2_aifs=3
tx_queue_data2_cwmin=15
tx_queue_data2_cwmax=63
tx_queue_data2_burst=0
tx_queue_data1_aifs=1
tx_queue_data1_cwmin=7
tx_queue_data1_cwmax=15
tx_queue_data1_burst=3.0
tx_queue_data0_aifs=1
tx_queue_data0_cwmin=3
tx_queue_data0_cwmax=7
tx_queue_data0_burst=1.5
wme_enabled=1
wme_ac_bk_cwmin=4
wme_ac_bk_cwmax=10
wme_ac_bk_aifs=7
wme_ac_bk_txop_limit=0
wme_ac_bk_acm=0
wme_ac_be_aifs=3
wme_ac_be_cwmin=4
wme_ac_be_cwmax=10
wme_ac_be_txop_limit=0
wme_ac_be_acm=0
wme_ac_vi_aifs=2
wme_ac_vi_cwmin=3
wme_ac_vi_cwmax=4
wme_ac_vi_txop_limit=94
wme_ac_vi_acm=0
wme_ac_vo_aifs=2
wme_ac_vo_cwmin=2
wme_ac_vo_cwmax=3
wme_ac_vo_txop_limit=47
wme_ac_vo_acm=0


Now compile and try it.

thalience wrote:

It would help if you could post a little more information about your testing setup. I'm assuming that you are testing wifi performance (and not routing between wired ports). Are you testing throughput from AP to Station, from Station to AP, or both?

Are you building trunk, using a snapshot, using 8.09, or what?

That said, I noticed a discussion on the ath9k mailing list about a recently-introduced bug that would really hurt AP -> Station transfers. It is present in trunk, and probably recent snapshots as well.

Fortunately, this bug can be worked around without recompiling (by putting settings into hostapd.conf):
http://osdir.com/ml/linux-wireless/2009 … 01156.html

And here is the patch to fix the bug, if you want to just build a fixed version:
http://osdir.com/ml/linux-wireless/2009 … 01189.html

hi, thalience, thanks for your help

I'm trying the wireless transfer rate speed using the router as AP, my notebook as client and having the LAN of the AP connected directly to to the Internet. I could say that my notebook is in the same intranet of wired clients. wireless and LAN are bridged without any firewall, NAT or other rules.
at the client side I use both XP and Linux with a miniPCI card and a pcmcia cards.
The AP is using the same miniPCI card of the AP

(Last edited by desigabri on 29 May 2009, 09:50)

desigabri wrote:

hi, thalience, thanks for your help

I'm trying the wireless transfer rate speed using the router as AP, my notebook as client and having the LAN of the AP connected directly to to the Internet. I could say that my notebook is in the same intranet of wired clients. wireless and LAN are bridged without any firewall, NAT or other rules.
at the client side I use both XP and Linux with a miniPCI card and a pcmcia cards.
The AP is using the same miniPCI card of the AP

Glad to help!

I just did some testing with trunk (modified to use kernel 2.6.30-rc7) on an AP81-based router (mips cpu, atheros 3x3 wifi on AHB bus).

I streamed data from the router to a wifi client station (laptop with ipw2200 wifi, which is a G part, no N support).

Without the fix I described, the transfer was slow overall (about 250KBps) and bursty.

By editing /lib/wifi/hostapd.sh on the router to include the lines suggested by linuxb, I was able to get around 1.5MBps (the practical limit for the G card in my laptop).

Transfer rates were measured using GKrellm's network monitor on the laptop, so they are very approximate.

I did no testing of the laptop -> router transfers.

hi,
I'm writing only to report some results
my test aren't made with professional systems so results change I thing for varius environment condition:


In particular it seems to me that

options [HT40-] [HT40+][HT40-GI-40] get similar results.
I had better results using a Linux FTP server vs a Windows XP ftp server.
Better results using a Linux FTP client vs a Windows FTP client...

all two client side wireless card got similar tranfer rate speeds no matter the link speed.

at 54mbps all two cards got about 2,8MB/s tranfer rate Speed  (about 23Mbps for the same notebook, spatial position so for Linux as for XP in client side or server side)

at 11n  (no matter for linking at 108-130-216-243-270-300Mbps ) the tranfer rates were about:

TP-LINK TL-WN861N (miniPCI):
4,2MB/S for Server XP client XP           ---> about 33Mbps
5,2MB/s for Server Linux client XP        ---> about 42Mbps
5,8MB/s for Server Linux client Linux    ---> about 47Mbps

NETGEAR WN511B (pcmcia):
3,2MB/S for Server XP client XP           ---> about 25Mbps
4,8MB/s for Server Linux client XP        ---> about 38Mbps

NETGEAR WN511B (pcmcia) mounted onto another notebook:
6,2MB/s for Server Linux client XP        ---> about 50Mbps

The problem was that I got different results testing at different times. I think that environment situation (other wireless network working) condizionated the results.
So these are the results I was able to get as maximum rates. NOT VERY HIGH I THINK...but I think too that there were problems relates to the CPU utilization of the server and the client.
The server was connected to the LAN via ethernet and the client connected via WIFI. No firewall.
Server side with LOW CPU utilization, Client side with CPU utilizzation among 75%-80% during the tranfer

(Last edited by desigabri on 3 Jun 2009, 02:04)

Wow,

I saw a BIG jump in rates after today's latest svn update.

This must be what made the difference: https://dev.openwrt.org/changeset/16300 (Updates to compat-wireless-2009-06-02)

I presume it has to do with one of the ath9k updates from yesterday:

http://git.kernel.org/?p=linux/kernel/g … 2009-06-01

From my laptop running Vista w/ an Intel 3945abg chipset to the AP (Planex MZK-W04NU) I'm getting about 18Mbps.

(Last edited by tusc on 2 Jun 2009, 21:48)

hi,
18Mbps is less then the tranfert speed of a wireless G (22-24Mbps)
but If you got this tranfer rate without any other modification, it sounds very good!

I compiled and flashed the 16301 trunk version (with  today in the morning but I haven't had time to test it. I'll do it tonight and after that I'll report it.

thanks

sad(
yes, you are right about new drivers. With trunk version 16309 they work without modification of config files but they are poor in tranfer rate:

I got 1,9-2,2 MB/s  ----> about 16-18Mbps so for the TP-Link WN861N client as for Netgear WN511B client connected to my router. This is less then what you can get by a 54Mbps Link speed connection.

Anyway this is very better then previus results: 200kB ---> about 1,6Mbps......

Anyone knows anything about working settings to apply for new driver? It seemed to me NOT to be so fast as the previus using the same settings modifications.

Im seeing pretty good wifi speed on my x86 AP. (an old Aopen XCcube with Pentium M 1.7Ghz and 512MB ram)
My client is an Lenovo 3000 N200 with vista sp1, with an Atheros AR5418 wifi. My cards are dualband, this test is on A. (channel 40) 
This is from todays trunk: (my laptop was pretty close to the AP 4-5 feet)

login as: root
root@192.168.0.9's password:


BusyBox v1.13.4 (2009-06-04 12:09:03 CEST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

  _______                     ________        __
|       |.-----.-----.-----.|  |  |  |.----.|  |_
|   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
|_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
KAMIKAZE (bleeding edge, r16342) -------------------
  * 10 oz Vodka       Shake well with ice and strain
  * 10 oz Triple sec  mixture into 10 shot glasses.
  * 10 oz lime juice  Salute!
---------------------------------------------------
root@OpenWrt:~# iperf -c 192.168.0.10 -i10 -t60 -w80k
------------------------------------------------------------
Client connecting to 192.168.0.10, TCP port 5001
TCP window size:   160 KByte (WARNING: requested 80.0 KByte)
------------------------------------------------------------
[  3] local 192.168.0.9 port 47331 connected with 192.168.0.10 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec    156 MBytes    131 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 10.0-20.0 sec    157 MBytes    132 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 20.0-30.0 sec    158 MBytes    133 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 30.0-40.0 sec    158 MBytes    133 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 40.0-50.0 sec    158 MBytes    132 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 50.0-60.0 sec    159 MBytes    133 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-60.0 sec    946 MBytes    132 Mbits/sec
root@OpenWrt:~# iperf -s -w80k
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size:   160 KByte (WARNING: requested 80.0 KByte)
------------------------------------------------------------
[  4] local 192.168.0.9 port 5001 connected with 192.168.0.10 port 49208
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-60.0 sec    709 MBytes  99.1 Mbits/sec
^Croot@OpenWrt:~#

(Last edited by linuxb on 5 Jun 2009, 00:38)

Hi,

I have the problem, that when i add the hwmode_11n option  to the wireless config file, my card does not work anymore as an AP, do you know this problem and a solution for it??

Thx,

Thorsten

thorstenk wrote:

Hi,

I have the problem, that when i add the hwmode_11n option  to the wireless config file, my card does not work anymore as an AP, do you know this problem and a solution for it??

Thx,

Thorsten

I dont know what causes that problem. What channel/hwmode are you trying to use, and whats the ouput from iw list?
Im just thinking it could be because your trying to use hw_mode with channels that your cards regdomain dont allow.

Hi,

it works now, I had to set the encryption from psk to psk2.
However there is no increase in speed :-(. I have still around 20Mbit/sec!
Before using "option hwmode_11n g" it was not realy slower ...
Any other tips for increasing the speed?


Thorsten

This has been a great help, however should the output as seen on Windows actually say N? I put a R52N card in my windows machine with drivers and it says G, have no idea if it's my laptop or the router that is incorrect.

Yes vista should list your network as N after scanning. And you should connect at 300mbps.
If it say G, then you probably only can connect at 54mbps.
It could be your hostapd settings. Is you firmware from trunk, what revision?

Can you post your hostapd.conf: cat /var/run/hostapd-wlan0.conf

Ok. I asked for revision because it seems that the option 'hw_mode' has slightly changed in trunk.

To get 'N' you could try to apply the wme parameters in hostapd conf. So I suggest you paste this in to your /lib/wifi/hostapd.conf file (on your router), you could paste it after the $hostapd_cfg (before the EOF):

tx_queue_data3_aifs=7
tx_queue_data3_cwmin=15
tx_queue_data3_cwmax=1023
tx_queue_data3_burst=0
tx_queue_data2_aifs=3
tx_queue_data2_cwmin=15
tx_queue_data2_cwmax=63
tx_queue_data2_burst=0
tx_queue_data1_aifs=1
tx_queue_data1_cwmin=7
tx_queue_data1_cwmax=15
tx_queue_data1_burst=3.0
tx_queue_data0_aifs=1
tx_queue_data0_cwmin=3
tx_queue_data0_cwmax=7
tx_queue_data0_burst=1.5
wme_enabled=1
wme_ac_bk_cwmin=4
wme_ac_bk_cwmax=10
wme_ac_bk_aifs=7
wme_ac_bk_txop_limit=0
wme_ac_bk_acm=0
wme_ac_be_aifs=3
wme_ac_be_cwmin=4
wme_ac_be_cwmax=10
wme_ac_be_txop_limit=0
wme_ac_be_acm=0
wme_ac_vi_aifs=2
wme_ac_vi_cwmin=3
wme_ac_vi_cwmax=4
wme_ac_vi_txop_limit=94
wme_ac_vi_acm=0
wme_ac_vo_aifs=2
wme_ac_vo_cwmin=2
wme_ac_vo_cwmax=3
wme_ac_vo_txop_limit=47
wme_ac_vo_acm=0

Then edit your /etc/config/wireless and add this:

option 'hwmode_11n' 'g'
option 'ht_capab' '[HT40-][SHORT-GI-40][DSSS_CCK-40]'

Hello, I'm using two Ubiquiti RouterStation pro with SR71-A 3x3 mimo minipci cards.
My hostapd.conf:

root@OpenWrt:~# cat /var/run/hostapd-wlan0.conf 
ctrl_interface=/var/run/hostapd-wlan0
driver=nl80211
interface=wlan0
hw_mode=a
channel=64

ssid=testssid
wpa=0

country_code=no
ieee80211n=1
ht_capab=[HT40-][SHORT-GI-40][DSSS_CCK-40]




wme_enabled=1
wme_ac_bk_cwmin=4
wme_ac_bk_cwmax=10
wme_ac_bk_aifs=7
wme_ac_bk_txop_limit=0
wme_ac_bk_acm=0
wme_ac_be_aifs=3
wme_ac_be_cwmin=4
wme_ac_be_cwmax=10
wme_ac_be_txop_limit=0
wme_ac_be_acm=0
wme_ac_vi_aifs=2
wme_ac_vi_cwmin=3
wme_ac_vi_cwmax=4
wme_ac_vi_txop_limit=94
wme_ac_vi_acm=0
wme_ac_vo_aifs=2
wme_ac_vo_cwmin=2
wme_ac_vo_cwmax=3
wme_ac_vo_txop_limit=47
wme_ac_vo_acm=0
tx_queue_data3_aifs=7
tx_queue_data3_cwmin=15
tx_queue_data3_cwmax=1023
tx_queue_data3_burst=0
tx_queue_data2_aifs=3
tx_queue_data2_cwmin=15
tx_queue_data2_cwmax=63
tx_queue_data2_burst=0
tx_queue_data1_aifs=1
tx_queue_data1_cwmin=7
tx_queue_data1_cwmax=15
tx_queue_data1_burst=3.0
tx_queue_data0_aifs=1
tx_queue_data0_cwmin=3
tx_queue_data0_cwmax=7
tx_queue_data0_burst=1.5

On client i have:

root@OpenWrt:~# cat /etc/config/wireless 
config wifi-device  wlan0
    option type     mac80211
    option channel  64
    option macaddr    00:15:6d:84:15:15
    option hwmode_11n a
    option txpower    1
    list ht_capab    HT40-
    list ht_capab    SHORT-GI-40
    list ht_capab    DSSS_CCK-40

config wifi-iface
    option device   wlan0
    option network  wifi
    option mode     sta
    option ssid     testssid
    option encryption none

I successfully connect to AP bun have slight speed:

root@OpenWrt:~# iperf -c 192.168.168.2 -i10 -t60
------------------------------------------------------------
Client connecting to 192.168.168.2, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[  3] local 192.168.168.4 port 49818 connected with 192.168.168.2 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  18.8 MBytes  15.8 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 10.0-20.0 sec  19.4 MBytes  16.2 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 20.0-30.0 sec  18.5 MBytes  15.5 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 30.0-40.0 sec  21.2 MBytes  17.8 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 40.0-50.0 sec  20.1 MBytes  16.9 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 50.0-60.0 sec  17.9 MBytes  15.0 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-60.0 sec    116 MBytes  16.2 Mbits/sec

But in debug files i get:

root@OpenWrt:/sys/kernel/debug/ath9k/phy0# cat rcstat 
 Rate         Success  Retries  XRetries PER

  6.0:        0        0        0        0
  9.0:        0        0        0        0
 12.0:        0        0        0        0
 18.0:        0        0        0        0
 24.0:        0        0        0        0
 36.0:        0        0        0        0
 48.0:        0        0        0        0
 54.0:        0        0        0        0
  6.5:        0        0        0        0
 13.0:        0        0        0        0
 19.5:        0        0        0        0
 26.0:        0        0        0        0
 39.0:        0        0        0        0
 52.0:        0        0        0        0
 58.5:        0        0        0        0
 65.0:        0        0        0        0
 13.0:        0        0        0        0
 26.0:        0        0        0        0
 39.0:        0        0        0        0
 52.0:        0        0        0        0
 78.0:        0        0        0        0
104.0:        0        0        0        0
117.0:        0        0        0        0
130.0:        0        0        0        0
 13.5:        0        0        0        0
 27.5:        0        0        0        0
 40.5:        0        0        0        0
 54.0:        0        0        0        0
 81.5:      836       73        0        6
108.0:        0        0        0        0
121.5:        0        0        0        0
135.0:        0        0        0        0
150.0:        0        0        0        0
 27.0:        0        0        0        0
 54.0:        0        0        0        0
 81.0:        0        0        0        0
108.0:    33935     9436        0       20
162.0:    28216    32293     1322       27
216.0:    18483    42778     2796       76
243.0:     5820    15934     1108       35
270.0:     6722     5183      362       54
300.0:   630278    10812      114       57
root@OpenWrt:/sys/kernel/debug/ath9k/phy0# cat xmit 
                            BE         BK        VI        VO

MPDUs Queued:               22         12         0      1878
MPDUs Completed:            22         12         0      1878
Aggregates:             230113        382         0         1
AMPDUs Queued:         2003148       3657         0       691
AMPDUs Completed:      2002702       3657         0       691
AMPDUs Retried:         390881         50         0         0
AMPDUs XRetried:           446          0         0         0
FIFO Underrun:               0          0         0         0
TXOP Exceeded:               0          0         0         0
TXTIMER Expiry:              0          0         0         0
DESC CFG Error:              0          0         0         0
DATA Underrun:               0          0         0         0
DELIM Underrun:              0          0         0         0

And it is other info:

root@OpenWrt:/# iwconfig 
lo        no wireless extensions.

eth0      no wireless extensions.

eth1      no wireless extensions.

wlan0     IEEE 802.11abgn  ESSID:"stepa"  
          Mode:Managed  Frequency:5.32 GHz  Access Point: 00:15:6D:84:15:1C   
          Bit Rate=6 Mb/s   Tx-Power=1 dBm   
          RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality=66/70  Signal level=-44 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

root@OpenWrt:/# iw phy phy0 info
Wiphy phy0
    Band 1:
        HT capabilities: 0x104e
            * 20/40 MHz operation
            * SM PS disabled
            * 40 MHz short GI
            * max A-MSDU len 3839
            * DSSS/CCK 40 MHz
        HT A-MPDU factor: 0x0003 (65535 bytes)
        HT A-MPDU density: 0x0006 (8 usec)
        HT MCS set: ff ff 00 00 00 00 00 00 00 00 00 00 01 00 00 00
        HT TX/RX MCS rate indexes supported:
            MCS index 0
            MCS index 1
            MCS index 2
            MCS index 3
            MCS index 4
            MCS index 5
            MCS index 6
            MCS index 7
            MCS index 8
            MCS index 9
            MCS index 10
            MCS index 11
            MCS index 12
            MCS index 13
            MCS index 14
            MCS index 15
        Frequencies:
            * 2412 MHz [1] (20.0 dBm)
            * 2417 MHz [2] (20.0 dBm)
            * 2422 MHz [3] (20.0 dBm)
            * 2427 MHz [4] (20.0 dBm)
            * 2432 MHz [5] (20.0 dBm)
            * 2437 MHz [6] (20.0 dBm)
            * 2442 MHz [7] (20.0 dBm)
            * 2447 MHz [8] (20.0 dBm)
            * 2452 MHz [9] (20.0 dBm)
            * 2457 MHz [10] (20.0 dBm)
            * 2462 MHz [11] (20.0 dBm)
            * 2467 MHz [12] (disabled)
            * 2472 MHz [13] (disabled)
            * 2484 MHz [14] (disabled)
        Bitrates (non-HT):
            * 1.0 Mbps
            * 2.0 Mbps (short preamble supported)
            * 5.5 Mbps (short preamble supported)
            * 11.0 Mbps (short preamble supported)
            * 6.0 Mbps
            * 9.0 Mbps
            * 12.0 Mbps
            * 18.0 Mbps
            * 24.0 Mbps
            * 36.0 Mbps
            * 48.0 Mbps
            * 54.0 Mbps
    Band 2:
        HT capabilities: 0x104e
            * 20/40 MHz operation
            * SM PS disabled
            * 40 MHz short GI
            * max A-MSDU len 3839
            * DSSS/CCK 40 MHz
        HT A-MPDU factor: 0x0003 (65535 bytes)
        HT A-MPDU density: 0x0006 (8 usec)
        HT MCS set: ff ff 00 00 00 00 00 00 00 00 00 00 01 00 00 00
        HT TX/RX MCS rate indexes supported:
            MCS index 0
            MCS index 1
            MCS index 2
            MCS index 3
            MCS index 4
            MCS index 5
            MCS index 6
            MCS index 7
            MCS index 8
            MCS index 9
            MCS index 10
            MCS index 11
            MCS index 12
            MCS index 13
            MCS index 14
            MCS index 15
        Frequencies:
            * 5180 MHz [36] (20.0 dBm)
            * 5200 MHz [40] (20.0 dBm)
            * 5220 MHz [44] (20.0 dBm)
            * 5240 MHz [48] (20.0 dBm)
            * 5260 MHz [52] (20.0 dBm)
            * 5280 MHz [56] (20.0 dBm)
            * 5300 MHz [60] (20.0 dBm)
            * 5320 MHz [64] (20.0 dBm)
            * 5500 MHz [100] (disabled)
            * 5520 MHz [104] (disabled)
            * 5540 MHz [108] (disabled)
            * 5560 MHz [112] (disabled)
            * 5580 MHz [116] (disabled)
            * 5600 MHz [120] (disabled)
            * 5620 MHz [124] (disabled)
            * 5640 MHz [128] (disabled)
            * 5660 MHz [132] (disabled)
            * 5680 MHz [136] (disabled)
            * 5700 MHz [140] (disabled)
            * 5745 MHz [149] (20.0 dBm)
            * 5765 MHz [153] (20.0 dBm)
            * 5785 MHz [157] (20.0 dBm)
            * 5805 MHz [161] (20.0 dBm)
            * 5825 MHz [165] (20.0 dBm)
        Bitrates (non-HT):
            * 6.0 Mbps
            * 9.0 Mbps
            * 12.0 Mbps
            * 18.0 Mbps
            * 24.0 Mbps
            * 36.0 Mbps
            * 48.0 Mbps
            * 54.0 Mbps
    max # scan SSIDs: 4
    Supported interface modes:
         * IBSS
         * managed
         * AP
         * AP/VLAN
         * monitor
         * mesh point

root@OpenWrt:/# iwlist scan
lo        Interface doesn't support scanning.

eth0      Interface doesn't support scanning.

eth1      Interface doesn't support scanning.

wlan0     Scan completed :
          Cell 01 - Address: 00:15:6D:84:15:1C
                    Channel:64
                    Frequency:5.32 GHz (Channel 64)
                    Quality=63/70  Signal level=-47 dBm  
                    Encryption key:off
                    ESSID:"testssid"
                    Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
                              36 Mb/s; 48 Mb/s; 54 Mb/s
                    Mode:Master
                    Extra:tsf=000000007eaa17a4
                    Extra: Last beacon: 90ms ago
                    (Unknown Wireless Token 0x8C05)

root@OpenWrt:/# uname -a
Linux OpenWrt 2.6.30.9 #3 Sat Nov 21 02:40:31 OMST 2009 mips GNU/Linux

Can you tell me what i do wrong, and how can i get link with 300mbps bandwidth?

Thanks and excuses me for my bad english language.

The discussion might have continued from here.