7531d510b86ba5c357bd865566c18c657ac1e50c
[librecmc/librecmc.git] / package / kernel / mac80211 / patches / 650-0002-rtl8xxxu-Fix-big-endian-problem-reporting-mactime.patch
1 From 8d829444c8a860ba69ca8c51b9b609e29eaa4596 Mon Sep 17 00:00:00 2001
2 From: Jes Sorensen <Jes.Sorensen@redhat.com>
3 Date: Wed, 28 Sep 2016 15:43:42 -0400
4 Subject: [PATCH] rtl8xxxu: Fix big-endian problem reporting mactime
5
6 The full RX descriptor is converted so converting tsfl again would
7 return it to it's original endian value.
8
9 Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
10 ---
11  drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.h      | 4 ++--
12  drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 4 ++--
13  2 files changed, 4 insertions(+), 4 deletions(-)
14
15 --- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.h
16 +++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.h
17 @@ -238,7 +238,7 @@ struct rtl8xxxu_rxdesc16 {
18         u32 pattern1match:1;
19         u32 pattern0match:1;
20  #endif
21 -       __le32 tsfl;
22 +       u32 tsfl;
23  #if 0
24         u32 bassn:12;
25         u32 bavld:1;
26 @@ -368,7 +368,7 @@ struct rtl8xxxu_rxdesc24 {
27         u32 ldcp:1;
28         u32 splcp:1;
29  #endif
30 -       __le32 tsfl;
31 +       u32 tsfl;
32  };
33  
34  struct rtl8xxxu_txdesc32 {
35 --- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c
36 +++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c
37 @@ -5220,7 +5220,7 @@ int rtl8xxxu_parse_rxdesc16(struct rtl8x
38                         rtl8xxxu_rx_parse_phystats(priv, rx_status, phy_stats,
39                                                    rx_desc->rxmcs);
40  
41 -               rx_status->mactime = le32_to_cpu(rx_desc->tsfl);
42 +               rx_status->mactime = rx_desc->tsfl;
43                 rx_status->flag |= RX_FLAG_MACTIME_START;
44  
45                 if (!rx_desc->swdec)
46 @@ -5290,7 +5290,7 @@ int rtl8xxxu_parse_rxdesc24(struct rtl8x
47                 rtl8xxxu_rx_parse_phystats(priv, rx_status, phy_stats,
48                                            rx_desc->rxmcs);
49  
50 -       rx_status->mactime = le32_to_cpu(rx_desc->tsfl);
51 +       rx_status->mactime = rx_desc->tsfl;
52         rx_status->flag |= RX_FLAG_MACTIME_START;
53  
54         if (!rx_desc->swdec)