Skip to content

Commit 819bda5

Browse files
Bitterblue SmithKalle Valo
authored andcommitted
wifi: rtlwifi: Ignore IEEE80211_CONF_CHANGE_RETRY_LIMITS
Since commit 0a44dfc ("wifi: mac80211: simplify non-chanctx drivers") ieee80211_hw_config() is no longer called with changed = ~0. rtlwifi relied on ~0 in order to ignore the default retry limits of 4/7, preferring 48/48 in station mode and 7/7 in AP/IBSS. RTL8192DU has a lot of packet loss with the default limits from mac80211. Fix it by ignoring IEEE80211_CONF_CHANGE_RETRY_LIMITS completely, because it's the simplest solution. Link: https://lore.kernel.org/linux-wireless/cedd13d7691f4692b2a2fa5a24d44a22@realtek.com/ Cc: stable@vger.kernel.org # 6.9.x Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com> Acked-by: Ping-Ke Shih <pkshih@realtek.com> Signed-off-by: Kalle Valo <kvalo@kernel.org> Link: https://msgid.link/1fabb8e4-adf3-47ae-8462-8aea963bc2a5@gmail.com
1 parent 40cecac commit 819bda5

1 file changed

Lines changed: 0 additions & 15 deletions

File tree

  • drivers/net/wireless/realtek/rtlwifi

drivers/net/wireless/realtek/rtlwifi/core.c

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -633,21 +633,6 @@ static int rtl_op_config(struct ieee80211_hw *hw, u32 changed)
633633
}
634634
}
635635

636-
if (changed & IEEE80211_CONF_CHANGE_RETRY_LIMITS) {
637-
rtl_dbg(rtlpriv, COMP_MAC80211, DBG_LOUD,
638-
"IEEE80211_CONF_CHANGE_RETRY_LIMITS %x\n",
639-
hw->conf.long_frame_max_tx_count);
640-
/* brought up everything changes (changed == ~0) indicates first
641-
* open, so use our default value instead of that of wiphy.
642-
*/
643-
if (changed != ~0) {
644-
mac->retry_long = hw->conf.long_frame_max_tx_count;
645-
mac->retry_short = hw->conf.long_frame_max_tx_count;
646-
rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_RETRY_LIMIT,
647-
(u8 *)(&hw->conf.long_frame_max_tx_count));
648-
}
649-
}
650-
651636
if (changed & IEEE80211_CONF_CHANGE_CHANNEL &&
652637
!rtlpriv->proximity.proxim_on) {
653638
struct ieee80211_channel *channel = hw->conf.chandef.chan;

0 commit comments

Comments
 (0)