From: Chris Chiu <chris.chiu@xxxxxxxxxxxxx> Since AMPDU_AGGREGATION is set so packets will be handed to the driver with a flag indicating A-MPDU aggregation and device should be responsible for setting up and starting the TX aggregation with the AMPDU_TX_START action. The TX aggregation is usually started by the rate control algorithm so the HAS_RATE_CONTROL has to be unset for the mac80211 to start BA session by ieee80211_start_tx_ba_session. The realtek chips tx rate will still be handled by the rate adaptive mechanism in the underlying firmware which is controlled by the rate mask H2C command in the driver. Unset HAS_RATE_CONTROL cause no change for the tx rate control and the TX BA session can be started by the mac80211 default rate control mechanism. Signed-off-by: Chris Chiu <chris.chiu@xxxxxxxxxxxxx> --- Changelog: v2: - Revise the commit message to desribe the purpose of the change in detail. drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c index 9ff09cf7eb62..4cf13d2f86b1 100644 --- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c +++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c @@ -6678,7 +6678,6 @@ static int rtl8xxxu_probe(struct usb_interface *interface, /* * The firmware handles rate control */ - ieee80211_hw_set(hw, HAS_RATE_CONTROL); ieee80211_hw_set(hw, AMPDU_AGGREGATION); wiphy_ext_feature_set(hw->wiphy, NL80211_EXT_FEATURE_CQM_RSSI_LIST); -- 2.20.1