ath10k bug in station mode with regard to TX-BEAMFORMER?

Sebastian Gottschall s.gottschall at dd-wrt.com
Thu Mar 2 14:53:08 PST 2017


Am 02.03.2017 um 22:26 schrieb Ben Greear:
> On 03/01/2017 05:43 PM, Sebastian Gottschall wrote:
>> Am 02.03.2017 um 01:56 schrieb Ben Greear:
>>> I have a user with an AP that advertises itself as a MU-BEAMFORMEE 
>>> (and not MU-BEAMFORMER).
>>> My station firmware on 9984 is crashing because it tries to set up 
>>> MU-MIMO tx logic as
>>> best as I can figure.
>>>
>>> Does the patch below look like a good idea?
>>>
>>> If so, I'll do it up official.  Unfortunately, I don't have a good 
>>> way to
>>> test this locally, so this is just based on my vague understanding 
>>> of this
>>> feature...
>> i dont know if your patch makes sense, its just looking logic (i 
>> handle this with vht_capa in wpa supplicant right now)
>> i also know the crash from older firmwares. with more recent official 
>> firmwares it does not occur anymore. or lets i havent seen
>> this issue for a while
>
> 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
>
> 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




More information about the ath10k mailing list