ath10k bug in station mode with regard to TX-BEAMFORMER?
Sebastian Gottschall
s.gottschall at dd-wrt.com
Wed Mar 1 17:43:13 PST 2017
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
>
> 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