diff options
Diffstat (limited to 'package/kernel/mac80211/patches/657-0002-rtl8xxxu-Fix-big-endian-problem-reporting-mactime.patch')
-rw-r--r-- | package/kernel/mac80211/patches/657-0002-rtl8xxxu-Fix-big-endian-problem-reporting-mactime.patch | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/657-0002-rtl8xxxu-Fix-big-endian-problem-reporting-mactime.patch b/package/kernel/mac80211/patches/657-0002-rtl8xxxu-Fix-big-endian-problem-reporting-mactime.patch new file mode 100644 index 0000000..7531d51 --- /dev/null +++ b/package/kernel/mac80211/patches/657-0002-rtl8xxxu-Fix-big-endian-problem-reporting-mactime.patch @@ -0,0 +1,54 @@ +From 8d829444c8a860ba69ca8c51b9b609e29eaa4596 Mon Sep 17 00:00:00 2001 +From: Jes Sorensen <Jes.Sorensen@redhat.com> +Date: Wed, 28 Sep 2016 15:43:42 -0400 +Subject: [PATCH] rtl8xxxu: Fix big-endian problem reporting mactime + +The full RX descriptor is converted so converting tsfl again would +return it to it's original endian value. + +Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com> +--- + drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.h | 4 ++-- + drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +--- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.h ++++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.h +@@ -238,7 +238,7 @@ struct rtl8xxxu_rxdesc16 { + u32 pattern1match:1; + u32 pattern0match:1; + #endif +- __le32 tsfl; ++ u32 tsfl; + #if 0 + u32 bassn:12; + u32 bavld:1; +@@ -368,7 +368,7 @@ struct rtl8xxxu_rxdesc24 { + u32 ldcp:1; + u32 splcp:1; + #endif +- __le32 tsfl; ++ u32 tsfl; + }; + + struct rtl8xxxu_txdesc32 { +--- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c ++++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c +@@ -5220,7 +5220,7 @@ int rtl8xxxu_parse_rxdesc16(struct rtl8x + rtl8xxxu_rx_parse_phystats(priv, rx_status, phy_stats, + rx_desc->rxmcs); + +- rx_status->mactime = le32_to_cpu(rx_desc->tsfl); ++ rx_status->mactime = rx_desc->tsfl; + rx_status->flag |= RX_FLAG_MACTIME_START; + + if (!rx_desc->swdec) +@@ -5290,7 +5290,7 @@ int rtl8xxxu_parse_rxdesc24(struct rtl8x + rtl8xxxu_rx_parse_phystats(priv, rx_status, phy_stats, + rx_desc->rxmcs); + +- rx_status->mactime = le32_to_cpu(rx_desc->tsfl); ++ rx_status->mactime = rx_desc->tsfl; + rx_status->flag |= RX_FLAG_MACTIME_START; + + if (!rx_desc->swdec) |