Search Linux Wireless

Re: [PATCH v2] mac80211: VHT peer STA caps

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

 



On Tue, 2012-09-25 at 10:56 +0530, Mahesh Palivela wrote:

> > Well I think it'd be better to actually restrict/copy/update the feature
> > bits correctly, this would simplify drivers.
> 
> I am not sure on what bits to be masked. wanted to keep it as future item.
> Anyways I attempted few bits below. Let me know if they are ok...
> 
>          vht_cap->cap = le16_to_cpu(vht_cap_ie->vht_cap_info) &
>                  (sband->ht_cap.cap |

err, vht_cap

>                   ~(IEEE80211_VHT_CAP_RXLDPC |
>                     IEEE80211_VHT_CAP_SU_BEAMFORMER_CAPABLE |
>                     IEEE80211_VHT_CAP_MU_BEAMFORMER_CAPABLE |
>                     IEEE80211_VHT_CAP_HTC_VHT));

I don't think that can be right. It seems to me it should be something
like

cap = cap_info & sband->vht_cap.cap &
	(MAX_MPDU_LENGTH_... |
	 SHORT_GI_... | HTC_VHT | ... ? )

if (cap_info & SU_BEAMFORMEE_CAPABLE &&
    sband->vht_cap.cap & SU_BEAMFORMER_CAPABLE)
	cap |= SU_BEAMFORMEE_CAPABLE;

etc.?

OTOH, this would only matter to drivers that actually support all these
features, and those drivers could take care of not enabling the features
if their hardware doesn't support them. However, think of a driver that
is for different hardware, some that supports beamforming and some that
doesn't. Then if we mask out the beamforming capability of a station if
it's not locally supported, that driver could be simpler? Then again, if
we don't the driver just has to check if the hardware supports it, which
seems reasonable as well.

Do you understand the issue?

So maybe if you document it right, your original v2 patch is sufficient.
Convince me :)

johannes

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


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

  Powered by Linux