public inbox for linux-wireless@vger.kernel.org
 help / color / mirror / Atom feed
From: Larry Finger <Larry.Finger@lwfinger.net>
To: Johannes Berg <johannes@sipsolutions.net>
Cc: wireless <linux-wireless@vger.kernel.org>
Subject: Re: Regression in b43 with BCM4311/2
Date: Sat, 30 Jan 2010 15:55:55 -0600	[thread overview]
Message-ID: <4B64AAEB.9020806@lwfinger.net> (raw)
In-Reply-To: <1264887027.3546.207.camel@johannes.local>

On 01/30/2010 03:30 PM, Johannes Berg wrote:
> Larry,
> 
>> commit c7ab5ef9bcd281135c21b4732c9be779585181be
>> Author: Johannes Berg <johannes@sipsolutions.net>
>> Date:   Wed Oct 29 20:02:12 2008 +0100
>>
>>     b43: implement short slot and basic rate handling
> 
>> It seemed unlikely that the short slot handling was the cause, thus I have
>> concentrated on the basic rate handling. I found that the returns from
>> ieee80211_get_response_rate() were not what I expected. I'm not sure the routine
>> is correct; however, the value for "brates" at entry to b43_update_basic_rates()
>> is 0xF, thus only the CCK rates are enabled, but sband->n_bitrates is 12, which
>> includes all the 802.11g rates.
> 
> It doesn't really depend on your supported rates, if your AP says that
> only CCK rates are basic rates (you can see that in iw scan output, they
> are marked with a *) then they need to be used for response frames, as
> per 802.11-2007 9.6 paragraph 7:
> 
>         To allow the transmitting STA to calculate the contents of the
>         Duration/ID field, a STA responding to a received frame shall
>         transmit its Control Response frame (either CTS or ACK), other
>         than the BlockAck control frame, at the highest rate in the
>         BSSBasicRateSet parameter that is less than or equal to the rate
>         of the immediately previous frame in the frame exchange sequence
>         (as defined in 9.12) and that is of the same modulation class
>         (see 9.6.1) as the received frame. If no rate contained in the
>         BSSBasicRateSet parameter meets these conditions, then the
>         control frame sent in response to a received frame shall be
>         transmitted at the highest mandatory rate of the PHY that is
>         less than or equal to the rate of the received frame, and that
>         is of the same modulation class as the received frame. In
>         addition, the Control Response frame shall be sent using the
>         same PHY options as the received frame, unless they conflict
>         with the requirement to use the BSSBasicRateSet parameter.
>         
> 
> Then again, if I read that correctly, we should be checking the
> modulation classes, will have to take a closer look at 9.6.1.

My AP returns the following in the scan output:

Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
          24 Mb/s; 36 Mb/s; 54 Mb/s
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 48 Mb/s

I don't see any * markings.

>> Is b43 missing something needed to set the basic_rates member of struct
>> ieee80211_bxx_conf to a more reasonable value when b43_op_bss_info_changed() is
>> entered? I think it should be 0xFFF, not 0xF. I have tested with the larger
>> value and found that this change did not improve transmit rates.
> 
> So you're saying it doesn't help anyway?

Yes, it does not help. Since my previous message, I have also tested the short
slot logic. Inverting the test made no difference.

Larry

  reply	other threads:[~2010-01-30 21:55 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-30 21:21 Regression in b43 with BCM4311/2 Larry Finger
2010-01-30 21:30 ` Johannes Berg
2010-01-30 21:55   ` Larry Finger [this message]
2010-01-30 21:58     ` Johannes Berg
2010-01-30 22:39       ` Larry Finger
2010-01-31 19:08       ` Larry Finger
2010-01-31 19:53         ` Johannes Berg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4B64AAEB.9020806@lwfinger.net \
    --to=larry.finger@lwfinger.net \
    --cc=johannes@sipsolutions.net \
    --cc=linux-wireless@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox