aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rtlwifi/base.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/rtlwifi/base.c')
-rw-r--r--drivers/net/wireless/rtlwifi/base.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/drivers/net/wireless/rtlwifi/base.c b/drivers/net/wireless/rtlwifi/base.c
index 59381fe8ed06..4494d130b37c 100644
--- a/drivers/net/wireless/rtlwifi/base.c
+++ b/drivers/net/wireless/rtlwifi/base.c
@@ -826,6 +826,30 @@ int rtlwifi_rate_mapping(struct ieee80211_hw *hw,
826} 826}
827EXPORT_SYMBOL(rtlwifi_rate_mapping); 827EXPORT_SYMBOL(rtlwifi_rate_mapping);
828 828
829bool rtl_tx_mgmt_proc(struct ieee80211_hw *hw, struct sk_buff *skb)
830{
831 struct rtl_mac *mac = rtl_mac(rtl_priv(hw));
832 struct rtl_priv *rtlpriv = rtl_priv(hw);
833 __le16 fc = rtl_get_fc(skb);
834
835 if (rtlpriv->dm.supp_phymode_switch &&
836 mac->link_state < MAC80211_LINKED &&
837 (ieee80211_is_auth(fc) || ieee80211_is_probe_req(fc))) {
838 if (rtlpriv->cfg->ops->check_switch_to_dmdp)
839 rtlpriv->cfg->ops->check_switch_to_dmdp(hw);
840 }
841 if (ieee80211_is_auth(fc)) {
842 RT_TRACE(rtlpriv, COMP_SEND, DBG_DMESG, "MAC80211_LINKING\n");
843 rtl_ips_nic_on(hw);
844
845 mac->link_state = MAC80211_LINKING;
846 /* Dual mac */
847 rtlpriv->phy.need_iqk = true;
848 }
849
850 return true;
851}
852
829void rtl_get_tcb_desc(struct ieee80211_hw *hw, 853void rtl_get_tcb_desc(struct ieee80211_hw *hw,
830 struct ieee80211_tx_info *info, 854 struct ieee80211_tx_info *info,
831 struct ieee80211_sta *sta, 855 struct ieee80211_sta *sta,