Commit 5b757ba7 authored by Ping-Ke Shih's avatar Ping-Ke Shih Committed by Kalle Valo

rtlwifi: Revise special packet notification to be readable format.

We extend types of special packets to a enumeration from boolean value.
Signed-off-by: default avatarPing-Ke Shih <pkshih@realtek.com>
Signed-off-by: default avatarLarry Finger <Larry.Finger@lwfinger.net>
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com>
Cc: Birming Chiu <birming@realtek.com>
Cc: Shaofu <shaofu@realtek.com>
Cc: Steven Ting <steventing@realtek.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
parent 8479580b
...@@ -1313,14 +1313,15 @@ bool rtl_action_proc(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx) ...@@ -1313,14 +1313,15 @@ bool rtl_action_proc(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx)
} }
EXPORT_SYMBOL_GPL(rtl_action_proc); EXPORT_SYMBOL_GPL(rtl_action_proc);
static void setup_arp_tx(struct rtl_priv *rtlpriv, struct rtl_ps_ctl *ppsc) static void setup_special_tx(struct rtl_priv *rtlpriv, struct rtl_ps_ctl *ppsc,
int type)
{ {
struct ieee80211_hw *hw = rtlpriv->hw; struct ieee80211_hw *hw = rtlpriv->hw;
rtlpriv->ra.is_special_data = true; rtlpriv->ra.is_special_data = true;
if (rtlpriv->cfg->ops->get_btc_status()) if (rtlpriv->cfg->ops->get_btc_status())
rtlpriv->btcoexist.btc_ops->btc_special_packet_notify( rtlpriv->btcoexist.btc_ops->btc_special_packet_notify(
rtlpriv, 1); rtlpriv, type);
rtl_lps_leave(hw); rtl_lps_leave(hw);
ppsc->last_delaylps_stamp_jiffies = jiffies; ppsc->last_delaylps_stamp_jiffies = jiffies;
} }
...@@ -1390,13 +1391,15 @@ u8 rtl_is_special_data(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx, ...@@ -1390,13 +1391,15 @@ u8 rtl_is_special_data(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx,
(is_tx) ? "Tx" : "Rx"); (is_tx) ? "Tx" : "Rx");
if (is_tx) if (is_tx)
setup_arp_tx(rtlpriv, ppsc); setup_special_tx(rtlpriv, ppsc,
PACKET_DHCP);
return true; return true;
} }
} }
} else if (ETH_P_ARP == ether_type) { } else if (ETH_P_ARP == ether_type) {
if (is_tx) if (is_tx)
setup_arp_tx(rtlpriv, ppsc); setup_special_tx(rtlpriv, ppsc, PACKET_ARP);
return true; return true;
} else if (ETH_P_PAE == ether_type) { } else if (ETH_P_PAE == ether_type) {
...@@ -1407,6 +1410,8 @@ u8 rtl_is_special_data(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx, ...@@ -1407,6 +1410,8 @@ u8 rtl_is_special_data(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx,
rtlpriv->ra.is_special_data = true; rtlpriv->ra.is_special_data = true;
rtl_lps_leave(hw); rtl_lps_leave(hw);
ppsc->last_delaylps_stamp_jiffies = jiffies; ppsc->last_delaylps_stamp_jiffies = jiffies;
setup_special_tx(rtlpriv, ppsc, PACKET_EAPOL);
} }
return true; return true;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment