Message ID | 20190125201305.5616-12-luca@coelho.fi (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Luca Coelho |
Headers | show |
Series | iwlwifi: updates intended for v5.1 2019-01-25 | expand |
Hi if I am not mistaken this patch changes the behaviour, but the commit message does not mention it. dvm/mac80211.c:iwl_enable_tx_ampdu() returned false by default, while mvm/mac80211.c:iwl_enable_tx_ampdu() returned true by default. After the change, however, the default return value is true, so this change essentially undoes what 205e2210daa975d92ace485a65a31ccc4077fe1a ("iwlwifi: disable TX AMPDU by default for iwldvm") did. Regards, Barnabás Pőcze 2019. január 25., péntek 21:12 keltezéssel, Luca Coelho <luca@coelho.fi> írta: > From: Johannes Berg <johannes.berg@intel.com> > > These inlines just check the module parameters, so they don't > need a configuration parameter and can move to a better place. > > Signed-off-by: Johannes Berg <johannes.berg@intel.com> > Signed-off-by: Luca Coelho <luciano.coelho@intel.com> > --- > .../net/wireless/intel/iwlwifi/dvm/mac80211.c | 23 +++---------------- > .../wireless/intel/iwlwifi/iwl-modparams.h | 18 +++++++++++++++ > .../net/wireless/intel/iwlwifi/mvm/mac80211.c | 22 ++---------------- > 3 files changed, 23 insertions(+), 40 deletions(-) > > diff --git a/drivers/net/wireless/intel/iwlwifi/dvm/mac80211.c b/drivers/net/wireless/intel/iwlwifi/dvm/mac80211.c > index 49b71dbf8490..54b759cec8b3 100644 > --- a/drivers/net/wireless/intel/iwlwifi/dvm/mac80211.c > +++ b/drivers/net/wireless/intel/iwlwifi/dvm/mac80211.c > @@ -1,6 +1,7 @@ > /****************************************************************************** > * > * Copyright(c) 2003 - 2014 Intel Corporation. All rights reserved. > + * Copyright (C) 2018 Intel Corporation > * > * Portions of this file are derived from the ipw3945 project, as well > * as portions of the ieee80211 subsystem header files. > @@ -710,24 +711,6 @@ static int iwlagn_mac_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd, > return ret; > } > > -static inline bool iwl_enable_rx_ampdu(const struct iwl_cfg *cfg) > -{ > - if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_RXAGG) > - return false; > - return true; > -} > - > -static inline bool iwl_enable_tx_ampdu(const struct iwl_cfg *cfg) > -{ > - if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_TXAGG) > - return false; > - if (iwlwifi_mod_params.disable_11n & IWL_ENABLE_HT_TXAGG) > - return true; > - > - /* disabled by default */ > - return false; > -} > - > static int iwlagn_mac_ampdu_action(struct ieee80211_hw *hw, > struct ieee80211_vif *vif, > struct ieee80211_ampdu_params *params) > @@ -752,7 +735,7 @@ static int iwlagn_mac_ampdu_action(struct ieee80211_hw *hw, > > switch (action) { > case IEEE80211_AMPDU_RX_START: > - if (!iwl_enable_rx_ampdu(priv->cfg)) > + if (!iwl_enable_rx_ampdu()) > break; > IWL_DEBUG_HT(priv, "start Rx\n"); > ret = iwl_sta_rx_agg_start(priv, sta, tid, *ssn); > @@ -764,7 +747,7 @@ static int iwlagn_mac_ampdu_action(struct ieee80211_hw *hw, > case IEEE80211_AMPDU_TX_START: > if (!priv->trans->ops->txq_enable) > break; > - if (!iwl_enable_tx_ampdu(priv->cfg)) > + if (!iwl_enable_tx_ampdu()) > break; > IWL_DEBUG_HT(priv, "start Tx\n"); > ret = iwlagn_tx_agg_start(priv, vif, sta, tid, ssn); > diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-modparams.h b/drivers/net/wireless/intel/iwlwifi/iwl-modparams.h > index 73b1c46f1158..0cae2ef9b9df 100644 > --- a/drivers/net/wireless/intel/iwlwifi/iwl-modparams.h > +++ b/drivers/net/wireless/intel/iwlwifi/iwl-modparams.h > @@ -152,4 +152,22 @@ struct iwl_mod_params { > bool enable_ini; > }; > > +static inline bool iwl_enable_rx_ampdu(void) > +{ > + if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_RXAGG) > + return false; > + return true; > +} > + > +static inline bool iwl_enable_tx_ampdu(void) > +{ > + if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_TXAGG) > + return false; > + if (iwlwifi_mod_params.disable_11n & IWL_ENABLE_HT_TXAGG) > + return true; > + > + /* enabled by default */ > + return true; > +} > + > #endif /* #__iwl_modparams_h__ */ > diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c > index ebb3814dd922..78b35c9595a3 100644 > --- a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c > +++ b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c > @@ -943,24 +943,6 @@ static void iwl_mvm_mac_wake_tx_queue(struct ieee80211_hw *hw, > schedule_work(&mvm->add_stream_wk); > } > > -static inline bool iwl_enable_rx_ampdu(const struct iwl_cfg *cfg) > -{ > - if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_RXAGG) > - return false; > - return true; > -} > - > -static inline bool iwl_enable_tx_ampdu(const struct iwl_cfg *cfg) > -{ > - if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_TXAGG) > - return false; > - if (iwlwifi_mod_params.disable_11n & IWL_ENABLE_HT_TXAGG) > - return true; > - > - /* enabled by default */ > - return true; > -} > - > #define CHECK_BA_TRIGGER(_mvm, _trig, _tid_bm, _tid, _fmt...) \ > do { \ > if (!(le16_to_cpu(_tid_bm) & BIT(_tid))) \ > @@ -1073,7 +1055,7 @@ static int iwl_mvm_mac_ampdu_action(struct ieee80211_hw *hw, > mvmvif = iwl_mvm_vif_from_mac80211(vif); > cancel_delayed_work(&mvmvif->uapsd_nonagg_detected_wk); > } > - if (!iwl_enable_rx_ampdu(mvm->cfg)) { > + if (!iwl_enable_rx_ampdu()) { > ret = -EINVAL; > break; > } > @@ -1085,7 +1067,7 @@ static int iwl_mvm_mac_ampdu_action(struct ieee80211_hw *hw, > timeout); > break; > case IEEE80211_AMPDU_TX_START: > - if (!iwl_enable_tx_ampdu(mvm->cfg)) { > + if (!iwl_enable_tx_ampdu()) { > ret = -EINVAL; > break; > } > -- > 2.20.1 >
diff --git a/drivers/net/wireless/intel/iwlwifi/dvm/mac80211.c b/drivers/net/wireless/intel/iwlwifi/dvm/mac80211.c index 49b71dbf8490..54b759cec8b3 100644 --- a/drivers/net/wireless/intel/iwlwifi/dvm/mac80211.c +++ b/drivers/net/wireless/intel/iwlwifi/dvm/mac80211.c @@ -1,6 +1,7 @@ /****************************************************************************** * * Copyright(c) 2003 - 2014 Intel Corporation. All rights reserved. + * Copyright (C) 2018 Intel Corporation * * Portions of this file are derived from the ipw3945 project, as well * as portions of the ieee80211 subsystem header files. @@ -710,24 +711,6 @@ static int iwlagn_mac_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd, return ret; } -static inline bool iwl_enable_rx_ampdu(const struct iwl_cfg *cfg) -{ - if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_RXAGG) - return false; - return true; -} - -static inline bool iwl_enable_tx_ampdu(const struct iwl_cfg *cfg) -{ - if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_TXAGG) - return false; - if (iwlwifi_mod_params.disable_11n & IWL_ENABLE_HT_TXAGG) - return true; - - /* disabled by default */ - return false; -} - static int iwlagn_mac_ampdu_action(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_ampdu_params *params) @@ -752,7 +735,7 @@ static int iwlagn_mac_ampdu_action(struct ieee80211_hw *hw, switch (action) { case IEEE80211_AMPDU_RX_START: - if (!iwl_enable_rx_ampdu(priv->cfg)) + if (!iwl_enable_rx_ampdu()) break; IWL_DEBUG_HT(priv, "start Rx\n"); ret = iwl_sta_rx_agg_start(priv, sta, tid, *ssn); @@ -764,7 +747,7 @@ static int iwlagn_mac_ampdu_action(struct ieee80211_hw *hw, case IEEE80211_AMPDU_TX_START: if (!priv->trans->ops->txq_enable) break; - if (!iwl_enable_tx_ampdu(priv->cfg)) + if (!iwl_enable_tx_ampdu()) break; IWL_DEBUG_HT(priv, "start Tx\n"); ret = iwlagn_tx_agg_start(priv, vif, sta, tid, ssn); diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-modparams.h b/drivers/net/wireless/intel/iwlwifi/iwl-modparams.h index 73b1c46f1158..0cae2ef9b9df 100644 --- a/drivers/net/wireless/intel/iwlwifi/iwl-modparams.h +++ b/drivers/net/wireless/intel/iwlwifi/iwl-modparams.h @@ -152,4 +152,22 @@ struct iwl_mod_params { bool enable_ini; }; +static inline bool iwl_enable_rx_ampdu(void) +{ + if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_RXAGG) + return false; + return true; +} + +static inline bool iwl_enable_tx_ampdu(void) +{ + if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_TXAGG) + return false; + if (iwlwifi_mod_params.disable_11n & IWL_ENABLE_HT_TXAGG) + return true; + + /* enabled by default */ + return true; +} + #endif /* #__iwl_modparams_h__ */ diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c index ebb3814dd922..78b35c9595a3 100644 --- a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c +++ b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c @@ -943,24 +943,6 @@ static void iwl_mvm_mac_wake_tx_queue(struct ieee80211_hw *hw, schedule_work(&mvm->add_stream_wk); } -static inline bool iwl_enable_rx_ampdu(const struct iwl_cfg *cfg) -{ - if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_RXAGG) - return false; - return true; -} - -static inline bool iwl_enable_tx_ampdu(const struct iwl_cfg *cfg) -{ - if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_TXAGG) - return false; - if (iwlwifi_mod_params.disable_11n & IWL_ENABLE_HT_TXAGG) - return true; - - /* enabled by default */ - return true; -} - #define CHECK_BA_TRIGGER(_mvm, _trig, _tid_bm, _tid, _fmt...) \ do { \ if (!(le16_to_cpu(_tid_bm) & BIT(_tid))) \ @@ -1073,7 +1055,7 @@ static int iwl_mvm_mac_ampdu_action(struct ieee80211_hw *hw, mvmvif = iwl_mvm_vif_from_mac80211(vif); cancel_delayed_work(&mvmvif->uapsd_nonagg_detected_wk); } - if (!iwl_enable_rx_ampdu(mvm->cfg)) { + if (!iwl_enable_rx_ampdu()) { ret = -EINVAL; break; } @@ -1085,7 +1067,7 @@ static int iwl_mvm_mac_ampdu_action(struct ieee80211_hw *hw, timeout); break; case IEEE80211_AMPDU_TX_START: - if (!iwl_enable_tx_ampdu(mvm->cfg)) { + if (!iwl_enable_tx_ampdu()) { ret = -EINVAL; break; }