ath10k bug in station mode with regard to TX-BEAMFORMER?
Ben Greear
greearb at candelatech.com
Thu Mar 2 15:34:09 PST 2017
On 03/02/2017 03:30 PM, Adrian Chadd wrote:
> On 2 March 2017 at 14:53, Sebastian Gottschall <s.gottschall at dd-wrt.com> wrote:
>
>>> Did you patch supplicant? If so, can you point me to the change(s) you
>>> made?
>>
>> nope. i just used its features. there is a config entry named "vht_capa" and
>> "vht_capa_mask" which allows to mask out / in vht capabilities
>
> RIght, but you just disabled the capabilities entirely, right? That
> didn't fix negotiation?
Either way, you shouldn't have to hack on vht_capa_mask in supplicant
to get stations to not advertise MU_BEAMFORMER feature, even if it is
a work-around for now.
Thanks,
Ben
>
>
>
> -adrian
>
>>>
>>> Thanks,
>>> Ben
>>>
>>>>>
>>>>> diff --git a/drivers/net/wireless/ath/ath10k/mac.c
>>>>> b/drivers/net/wireless/ath/ath10k/mac.c
>>>>> index 219daaee..5aefc8a 100644
>>>>> --- a/drivers/net/wireless/ath/ath10k/mac.c
>>>>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
>>>>> @@ -5372,6 +5372,7 @@ static int ath10k_mac_set_txbf_conf(struct
>>>>> ath10k_vif *arvif)
>>>>> {
>>>>> u32 value = 0;
>>>>> struct ath10k *ar = arvif->ar;
>>>>> + struct ieee80211_vif *vif = arvif->vif;
>>>>> int nsts;
>>>>> int sound_dim;
>>>>>
>>>>> @@ -5391,17 +5392,21 @@ static int ath10k_mac_set_txbf_conf(struct
>>>>> ath10k_vif *arvif)
>>>>> if (!value)
>>>>> return 0;
>>>>>
>>>>> - if (ar->vht_cap_info & IEEE80211_VHT_CAP_SU_BEAMFORMER_CAPABLE)
>>>>> + if ((ar->vht_cap_info & IEEE80211_VHT_CAP_SU_BEAMFORMER_CAPABLE)
>>>>> &&
>>>>> + (vif->type != NL80211_IFTYPE_STATION))
>>>>> value |= WMI_VDEV_PARAM_TXBF_SU_TX_BFER;
>>>>>
>>>>> - if (ar->vht_cap_info & IEEE80211_VHT_CAP_MU_BEAMFORMER_CAPABLE)
>>>>> + if ((ar->vht_cap_info & IEEE80211_VHT_CAP_MU_BEAMFORMER_CAPABLE)
>>>>> &&
>>>>> + (vif->type != NL80211_IFTYPE_STATION))
>>>>> value |= (WMI_VDEV_PARAM_TXBF_MU_TX_BFER |
>>>>> WMI_VDEV_PARAM_TXBF_SU_TX_BFER);
>>>>>
>>>>> - if (ar->vht_cap_info & IEEE80211_VHT_CAP_SU_BEAMFORMEE_CAPABLE)
>>>>> + if ((ar->vht_cap_info & IEEE80211_VHT_CAP_SU_BEAMFORMEE_CAPABLE)
>>>>> &&
>>>>> + (vif->type == NL80211_IFTYPE_STATION))
>>>>> value |= WMI_VDEV_PARAM_TXBF_SU_TX_BFEE;
>>>>>
>>>>> - if (ar->vht_cap_info & IEEE80211_VHT_CAP_MU_BEAMFORMEE_CAPABLE)
>>>>> + if ((ar->vht_cap_info & IEEE80211_VHT_CAP_MU_BEAMFORMEE_CAPABLE)
>>>>> &&
>>>>> + (vif->type == NL80211_IFTYPE_STATION))
>>>>> value |= (WMI_VDEV_PARAM_TXBF_MU_TX_BFEE |
>>>>> WMI_VDEV_PARAM_TXBF_SU_TX_BFEE);
>>>>>
>>>>>
>>>>> Thanks,
>>>>> Ben
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>> --
>> Mit freundlichen Grüssen / Regards
>>
>> Sebastian Gottschall / CTO
>>
>> NewMedia-NET GmbH - DD-WRT
>> Firmensitz: Berliner Ring 101, 64625 Bensheim
>> Registergericht: Amtsgericht Darmstadt, HRB 25473
>> Geschäftsführer: Peter Steinhäuser, Christian Scheele
>> http://www.dd-wrt.com
>> email: s.gottschall at dd-wrt.com
>> Tel.: +496251-582650 / Fax: +496251-5826565
>>
>>
>> _______________________________________________
>> ath10k mailing list
>> ath10k at lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/ath10k
>
--
Ben Greear <greearb at candelatech.com>
Candela Technologies Inc http://www.candelatech.com
More information about the ath10k
mailing list