mirror of
https://github.com/torvalds/linux.git
synced 2026-05-28 00:53:34 +02:00
wifi: mwifiex: simplify mwifiex_setup_ht_caps()
In mwifiex_setup_ht_caps() first a local struct ieee80211_mcs_info is initialized and afterwards copied over &ht_info->mcs. Simplify this by initializing &ht_info->mcs directly. While at it call memset on the u8 rx_mask[] array instead of the struct which makes the intention clearer and we no longer have to assume the rx_mask array is the first member of struct ieee80211_mcs_info. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Brian Norris <briannorris@chromium.org> Reviewed-by: Jeff Chen <jeff.chen_1@nxp.com> Link: https://patch.msgid.link/20250410-mwifiex-cleanup-1-v6-6-a6bbd4ac4d37@pengutronix.de Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
450f5a05bd
commit
3612d72b47
|
|
@ -2906,16 +2906,12 @@ mwifiex_setup_ht_caps(struct ieee80211_sta_ht_cap *ht_info,
|
|||
struct mwifiex_private *priv)
|
||||
{
|
||||
int rx_mcs_supp;
|
||||
struct ieee80211_mcs_info mcs_set;
|
||||
u8 *mcs = (u8 *)&mcs_set;
|
||||
struct mwifiex_adapter *adapter = priv->adapter;
|
||||
|
||||
ht_info->ht_supported = true;
|
||||
ht_info->ampdu_factor = IEEE80211_HT_MAX_AMPDU_64K;
|
||||
ht_info->ampdu_density = IEEE80211_HT_MPDU_DENSITY_NONE;
|
||||
|
||||
memset(&ht_info->mcs, 0, sizeof(ht_info->mcs));
|
||||
|
||||
/* Fill HT capability information */
|
||||
if (ISSUPP_CHANWIDTH40(adapter->hw_dot_11n_dev_cap))
|
||||
ht_info->cap |= IEEE80211_HT_CAP_SUP_WIDTH_20_40;
|
||||
|
|
@ -2961,17 +2957,15 @@ mwifiex_setup_ht_caps(struct ieee80211_sta_ht_cap *ht_info,
|
|||
ht_info->cap |= IEEE80211_HT_CAP_SM_PS;
|
||||
|
||||
rx_mcs_supp = GET_RXMCSSUPP(adapter->user_dev_mcs_support);
|
||||
|
||||
memset(&ht_info->mcs, 0, sizeof(ht_info->mcs));
|
||||
/* Set MCS for 1x1/2x2 */
|
||||
memset(mcs, 0xff, rx_mcs_supp);
|
||||
/* Clear all the other values */
|
||||
memset(&mcs[rx_mcs_supp], 0,
|
||||
sizeof(struct ieee80211_mcs_info) - rx_mcs_supp);
|
||||
memset(ht_info->mcs.rx_mask, 0xff, rx_mcs_supp);
|
||||
|
||||
if (priv->bss_mode == NL80211_IFTYPE_STATION ||
|
||||
ISSUPP_CHANWIDTH40(adapter->hw_dot_11n_dev_cap))
|
||||
/* Set MCS32 for infra mode or ad-hoc mode with 40MHz support */
|
||||
SETHT_MCS32(mcs_set.rx_mask);
|
||||
|
||||
memcpy((u8 *) &ht_info->mcs, mcs, sizeof(struct ieee80211_mcs_info));
|
||||
SETHT_MCS32(ht_info->mcs.rx_mask);
|
||||
|
||||
ht_info->mcs.tx_params = IEEE80211_HT_MCS_TX_DEFINED;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user