CFT: 11n support for iwn(4)

Bernhard Schmidt bschmidt at freebsd.org
Mon May 2 07:54:17 UTC 2011


On Monday, May 02, 2011 09:34:31 Brandon Gooch wrote:
> 2011/5/2 Bernhard Schmidt <bschmidt at freebsd.org>:
> > On Sunday, May 01, 2011 23:36:56 Brandon Gooch wrote:
> >> On Sun, May 1, 2011 at 8:24 AM, Bernhard Schmidt <bschmidt at freebsd.org> wrote:
> >> > On Sunday 01 May 2011 13:19:30 Bernhard Schmidt wrote:
> >> >> Hi,
> >> >>
> >> >> I finally managed to get the 11n bits for iwn(4) sorted out. Well,
> >> >> there is still an issue somewhere with HT40 frame protection or
> >> >> TX chain setup on 5000 adapters, resulting in throughput not being
> >> >> that stable. But overall it seems to work pretty decently
> >> >>
> >> >> This is for HEAD only right now, net80211 in stable/8 does not yet
> >> >> contain the latest 11n related fixes. So, if you run HEAD and have
> >> >> some iwn(4) hardware, I'd appreciate feedback.
> >> >> ..
> >> >
> >> > Updated version, I've missed a locking issue.
> >> >
> >> > --
> >> > Bernhard
> >>
> >> Thanks for working on this Bernhard!
> >>
> >> Unfortunately, I'm having trouble achieving HT rates.
> >>
> >> After 'wlandebug 0xffffffff', lots of:
> >> ...
> >> May  1 14:38:15 x300 kernel: wlan0: received beacon from
> >> 00:1d:0f:d3:fb:cc rssi 47
> >> May  1 14:38:15 x300 kernel: wlan0: [00:1d:0f:d3:fb:cc] discard beacon
> >> frame, ie too short, got 26, expected 30
> >> ...
> >>
> >> I've attached relevant debugging information, but let me know if there
> >> may be anything else that could help. I need to work on DTracing
> >> net80211, any tips on relevant function traces?
> >
> > Attachment seems to be missing?
> 
> I'll send the attachment again, directly to you, bypassing the list...
> 
> > I'd start of with enabling bootverbose to figure out if your adapter
> > supports 11n at all.
> 
> ..
> iwn0: 11na MCS 20MHz
> iwn0: MCS 0-7: 6.5Mbps - 65Mbps
> iwn0: MCS 8-15: 13Mbps - 130Mbps
> ..

That indicates 11n support.
 
> >There are some where the 11n bits have been
> > disabled. Next thing would be to check with
> > % ifconfig -v wlan0 list chan
> 
> I think you may be right about this, despite the dmesg output, as I
> see no 11n listed in the output:
> 
> # ifconfig -v wlan0 list chan
> 
> Channel   1 : 2412  MHz 11g ht/20    Channel  40 : 5200* MHz 11a ht/40-

HT channels are available.

> > if the HT channel setup works, if so it should list several HT20/HT40
> > channels. With
> > % wlanconfig +11n
> 
> # wlandebug +11n
> 
> May  2 02:22:24 x300 kernel: wlan0: [00:1d:0f:d3:fb:cc] discard MPDU
> frame, BA win <268:331> (0 frames) rxseq 267 tid 0 (retransmit)
> May  2 02:22:28 x300 kernel: wlan0: [00:1d:0f:d3:fb:cc] discard MPDU
> frame, BA win <336:399> (0 frames) rxseq 335 tid 0 (retransmit)
> May  2 02:22:28 x300 kernel: wlan0: [00:1d:0f:d3:fb:cc] discard MPDU
> frame, BA win <393:456> (0 frames) rxseq 392 tid 0 (retransmit)
> May  2 02:22:28 x300 kernel: wlan0: [00:1d:0f:d3:fb:cc] discard MPDU
> frame, BA win <406:469> (0 frames) rxseq 405 tid 0 (retransmit)

That is probably the reason why you're seeing low performance.
I remember seeing this with ath9k but didn't dig any deeper. Well,
time to do so now.
 
> > you should at least see something like "Switching channel to HT20"
> > right before moving into RUN state. Also, does
> > % ifconfig wlan0 list scan
> > show HTCAP for the AP you're associating too?
> 
> # ifconfig -v wlan0 list scan
> 
> bingo                            00:1d:0f:d3:fb:cc   11   54M -71:-95
> ..
> txop 47]> VEN<dd1e00904c334e101bffff000000000000-> HTCAP<cap 0x104e

AP announces being 11n capable                       ^^^^^

-- 
Bernhard


More information about the freebsd-net mailing list