Search Linux Wireless

Re: [RFC v2 4/6] mac80211: add utility function for tx_rate - rate_info conversion

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> On 19. Jan 2023, at 12:35, Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote:
> 
> On Thu, 2023-01-19 at 12:31 +0100, Jonas Jelonek wrote:
>>> On 12. Jan 2023, at 11:26, Johannes Berg <johannes@xxxxxxxxxxxxxxxx>
>>> wrote:
>>> 
>>>> +void ieee80211_rate_get_rate_info(const struct ieee80211_tx_rate *rate,
>>>> + 							struct wiphy *wiphy, u8 band,
>>>> +  							struct rate_info *rate_info)
>>>> +{
>>>> +  	memset(rate_info, 0, sizeof(struct rate_info));
>>>> +
>>>> +  	if (rate->flags & IEEE80211_TX_RC_MCS) { /* 802.11n */
>>>> +  		rate_info->flags |= RATE_INFO_FLAGS_MCS;
>>>> +  		rate_info->mcs = rate->idx;
>>>> +  	} else if (rate->flags & IEEE80211_TX_RC_VHT_MCS) { /* 802.11ac */
>>>> +  		rate_info->flags |= RATE_INFO_FLAGS_VHT_MCS;
>>>> +  		rate_info->mcs = ieee80211_rate_get_vht_mcs(rate);
>>>> +  		rate_info->nss = ieee80211_rate_get_vht_nss(rate);
>>>> +  } else { /* 802.11a/b/g */
>>> 
>>> what about HE/EHT?
>> 
>> ieee80211_tx_rate uses an s8 for rate/MCS index, so only up to VHT
>> rates fit in there.
>> For rates above VHT, rate_info is needed, thus are are no HE/EHT rates
>> occuring in
>> ieee80211_tx_rate. Same applies to your comment on the hwsim
>> conversion.
> 
> I guess I should've read the commit message more closely ;-)
> 
> But please add kernel-doc to the function; both in general it'd be good
> to have, and in particular explaining that this is more for older
> drivers I guess?

I will add that in my next RFC version to make sure this is clear.

Jonas



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux