On Tue, 2006-01-10 at 14:43 -0600, Larry Finger wrote:
> switch (bcm->current_core->phy->type) {
> case BCM43xx_PHYTYPE_A:
> case BCM43xx_PHYTYPE_G:
> range->num_bitrates += 4;
> range->bitrate[i++] = IEEE80211_CCK_RATE_1MB;
> range->bitrate[i++] = IEEE80211_CCK_RATE_2MB;
> range->bitrate[i++] = IEEE80211_CCK_RATE_5MB;
> range->bitrate[i++] = IEEE80211_CCK_RATE_11MB;
> case BCM43xx_PHYTYPE_B:
> range->num_bitrates += 8;
> range->bitrate[i++] = IEEE80211_OFDM_RATE_6MB;
> range->bitrate[i++] = IEEE80211_OFDM_RATE_9MB;
> range->bitrate[i++] = IEEE80211_OFDM_RATE_12MB;
> range->bitrate[i++] = IEEE80211_OFDM_RATE_18MB;
> range->bitrate[i++] = IEEE80211_OFDM_RATE_24MB;
> range->bitrate[i++] = IEEE80211_OFDM_RATE_36MB;
> range->bitrate[i++] = IEEE80211_OFDM_RATE_48MB;
> range->bitrate[i++] = IEEE80211_OFDM_RATE_54MB;
> }
>
> The code is correct for a and g PHY's, but is it right for b-type PHY's? For
> them, I would have
> expected 1, 2, 5 and 11 MB rates, not 6, ..., 54 MB. I think the attached
> patch fixes the situation.It's neither correct for A nor for B. It is only correct for G. You need to exchange PHYTYPE_B and PHYTYPE_A in above code and add if (phytype == BCM43xx_PHY_TYPE_B) break; before "case BCM43xx_PHY_TYPE_A" after exchanging it with _B to make it correct. johannes
signature.asc
Description: This is a digitally signed message part
