|
@@ -6816,6 +6816,8 @@ void lim_update_usr_he_cap(struct mac_context *mac_ctx, struct pe_session *sessi
|
|
uint8_t extracted_buff[DOT11F_IE_HE_CAP_MAX_LEN + 2];
|
|
uint8_t extracted_buff[DOT11F_IE_HE_CAP_MAX_LEN + 2];
|
|
QDF_STATUS status;
|
|
QDF_STATUS status;
|
|
struct wlan_vht_config *vht_cfg = &session->vht_config;
|
|
struct wlan_vht_config *vht_cfg = &session->vht_config;
|
|
|
|
+ struct mlme_legacy_priv *mlme_priv;
|
|
|
|
+
|
|
qdf_mem_zero(extracted_buff, sizeof(extracted_buff));
|
|
qdf_mem_zero(extracted_buff, sizeof(extracted_buff));
|
|
status = lim_strip_ie(mac_ctx, add_ie->probeRespBCNData_buff,
|
|
status = lim_strip_ie(mac_ctx, add_ie->probeRespBCNData_buff,
|
|
&add_ie->probeRespBCNDataLen,
|
|
&add_ie->probeRespBCNDataLen,
|
|
@@ -6857,6 +6859,19 @@ void lim_update_usr_he_cap(struct mac_context *mac_ctx, struct pe_session *sessi
|
|
vht_cfg->mu_beam_formee = 0;
|
|
vht_cfg->mu_beam_formee = 0;
|
|
vht_cfg->csnof_beamformer_antSup = 0;
|
|
vht_cfg->csnof_beamformer_antSup = 0;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ mlme_priv = wlan_vdev_mlme_get_ext_hdl(session->vdev);
|
|
|
|
+ if (mlme_priv) {
|
|
|
|
+ mlme_priv->he_config.mu_beamformer = he_cap->mu_beamformer;
|
|
|
|
+ mlme_priv->he_config.su_beamformer = he_cap->su_beamformer;
|
|
|
|
+ mlme_priv->he_config.su_beamformee = he_cap->su_beamformee;
|
|
|
|
+ mlme_priv->he_config.bfee_sts_lt_80 = he_cap->bfee_sts_lt_80;
|
|
|
|
+ mlme_priv->he_config.bfee_sts_gt_80 = he_cap->bfee_sts_gt_80;
|
|
|
|
+ mlme_priv->he_config.num_sounding_lt_80 =
|
|
|
|
+ he_cap->num_sounding_lt_80;
|
|
|
|
+ mlme_priv->he_config.num_sounding_gt_80 =
|
|
|
|
+ he_cap->num_sounding_gt_80;
|
|
|
|
+ }
|
|
wma_set_he_txbf_params(session->vdev_id, he_cap->su_beamformer,
|
|
wma_set_he_txbf_params(session->vdev_id, he_cap->su_beamformer,
|
|
he_cap->su_beamformee, he_cap->mu_beamformer);
|
|
he_cap->su_beamformee, he_cap->mu_beamformer);
|
|
}
|
|
}
|