Commit 87957081 authored by Jes Sorensen's avatar Jes Sorensen Committed by Kalle Valo

rtl8xxxu: Pass RX rate to rx_parse_phystats and enable phystats for rtl8723bu

rtl8xxxu_rx_parse_phystats() only needs the RX rate to determine
whether to handle the stats as CCK or not. Parsing in the rate rather
than the rx descriptor elimantes the need to handle multiple rx
descriptor formats in the function.
Signed-off-by: default avatarJes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
parent 55a18dd1
...@@ -7216,13 +7216,13 @@ static void rtl8xxxu_tx(struct ieee80211_hw *hw, ...@@ -7216,13 +7216,13 @@ static void rtl8xxxu_tx(struct ieee80211_hw *hw,
static void rtl8xxxu_rx_parse_phystats(struct rtl8xxxu_priv *priv, static void rtl8xxxu_rx_parse_phystats(struct rtl8xxxu_priv *priv,
struct ieee80211_rx_status *rx_status, struct ieee80211_rx_status *rx_status,
struct rtl8xxxu_rx_desc *rx_desc, struct rtl8723au_phy_stats *phy_stats,
struct rtl8723au_phy_stats *phy_stats) u32 rxmcs)
{ {
if (phy_stats->sgi_en) if (phy_stats->sgi_en)
rx_status->flag |= RX_FLAG_SHORT_GI; rx_status->flag |= RX_FLAG_SHORT_GI;
if (rx_desc->rxmcs < DESC_RATE_6M) { if (rxmcs < DESC_RATE_6M) {
/* /*
* Handle PHY stats for CCK rates * Handle PHY stats for CCK rates
*/ */
...@@ -7350,7 +7350,8 @@ static int rtl8723au_parse_rx_desc(struct rtl8xxxu_priv *priv, ...@@ -7350,7 +7350,8 @@ static int rtl8723au_parse_rx_desc(struct rtl8xxxu_priv *priv,
skb_pull(skb, drvinfo_sz + desc_shift); skb_pull(skb, drvinfo_sz + desc_shift);
if (rx_desc->phy_stats) if (rx_desc->phy_stats)
rtl8xxxu_rx_parse_phystats(priv, rx_status, rx_desc, phy_stats); rtl8xxxu_rx_parse_phystats(priv, rx_status, phy_stats,
rx_desc->rxmcs);
rx_status->mactime = le32_to_cpu(rx_desc->tsfl); rx_status->mactime = le32_to_cpu(rx_desc->tsfl);
rx_status->flag |= RX_FLAG_MACTIME_START; rx_status->flag |= RX_FLAG_MACTIME_START;
...@@ -7395,6 +7396,10 @@ static int rtl8723bu_parse_rx_desc(struct rtl8xxxu_priv *priv, ...@@ -7395,6 +7396,10 @@ static int rtl8723bu_parse_rx_desc(struct rtl8xxxu_priv *priv,
return RX_TYPE_C2H; return RX_TYPE_C2H;
} }
if (rx_desc->phy_stats)
rtl8xxxu_rx_parse_phystats(priv, rx_status, phy_stats,
rx_desc->rxmcs);
rx_status->mactime = le32_to_cpu(rx_desc->tsfl); rx_status->mactime = le32_to_cpu(rx_desc->tsfl);
rx_status->flag |= RX_FLAG_MACTIME_START; rx_status->flag |= RX_FLAG_MACTIME_START;
......
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