Setting HT capabilities in net80211

Alexander Egorenkov egorenar at googlemail.com
Thu Mar 11 07:32:34 UTC 2010


There are already constants defined in iee80211.h.
E.g. IEEE80211_HTCAP_MCSFBACK_UNSOL.

But the problem is that e.g. IEEE80211_HTCAP_MCSFBACK_UNSOL is equal to
0x0200
and the capabilty constant IEEE80211_HTCAP_RXSTBC_2STREAM has the same
value.
So we cannot use ic_htcap field for both capabilities because they will
overwrite each other.

But  we can add a new field to ieee80211com struct like ic_htextcaps where
all the extended
HT capabilities can be set. And this new field can be checked in function
ieee80211_add_htcap_body.

Another option is to change the value of IEEE80211_HTCAP_MCSFBACK_UNSOL and
all other extended capability constant which conflict with normal HT
capability constants.

Or do you have any other ideas ?

On Thu, Mar 11, 2010 at 7:59 AM, Rui Paulo <rpaulo at gmail.com> wrote:

> On 7 Mar 2010, at 17:04, Alexander Egorenkov wrote:
>
>  OK, here is an example.
>>
>> There is no way to set MCS feedback capability in the filed hc_extcap of
>> the
>> struct ieee80211_ie_htcap
>> because the function ieee80211_add_htcap_body always sets it to 0. And my
>> Ralink device supports MCS feedback
>> according to Linux device driver code. The same problem is with HTC+ and
>> RDR
>> capabilities.
>>
>
> Just add another driver HT bit flag and patch the function to honor that
> flag. Then send us the patch. :-)
>
> --
> Rui Paulo
>
>


More information about the freebsd-net mailing list