mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-10-01 12:37:36 +03:00
ath9k: fix passing MAC time to mac80211
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30869 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
698b2e38ba
commit
e690881d07
@ -1498,7 +1498,16 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -1011,6 +1010,8 @@ static int ath9k_rx_skb_preprocess(struc
|
@@ -988,8 +987,6 @@ static int ath9k_rx_skb_preprocess(struc
|
||||||
|
{
|
||||||
|
struct ath_hw *ah = common->ah;
|
||||||
|
|
||||||
|
- memset(rx_status, 0, sizeof(struct ieee80211_rx_status));
|
||||||
|
-
|
||||||
|
/*
|
||||||
|
* everything but the rate is checked here, the rate check is done
|
||||||
|
* separately to avoid doing two lookups for a rate for each frame.
|
||||||
|
@@ -1011,6 +1008,8 @@ static int ath9k_rx_skb_preprocess(struc
|
||||||
rx_status->signal = ah->noise + rx_stats->rs_rssi;
|
rx_status->signal = ah->noise + rx_stats->rs_rssi;
|
||||||
rx_status->antenna = rx_stats->rs_antenna;
|
rx_status->antenna = rx_stats->rs_antenna;
|
||||||
rx_status->flag |= RX_FLAG_MACTIME_MPDU;
|
rx_status->flag |= RX_FLAG_MACTIME_MPDU;
|
||||||
@ -1507,6 +1516,15 @@
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@@ -1845,6 +1844,8 @@ int ath_rx_tasklet(struct ath_softc *sc,
|
||||||
|
if (sc->sc_flags & SC_OP_RXFLUSH)
|
||||||
|
goto requeue_drop_frag;
|
||||||
|
|
||||||
|
+ memset(rxs, 0, sizeof(struct ieee80211_rx_status));
|
||||||
|
+
|
||||||
|
rxs->mactime = (tsf & ~0xffffffffULL) | rs.rs_tstamp;
|
||||||
|
if (rs.rs_tstamp > tsf_lower &&
|
||||||
|
unlikely(rs.rs_tstamp - tsf_lower > 0x10000000))
|
||||||
--- a/drivers/net/wireless/ath/ath9k/beacon.c
|
--- a/drivers/net/wireless/ath/ath9k/beacon.c
|
||||||
+++ b/drivers/net/wireless/ath/ath9k/beacon.c
|
+++ b/drivers/net/wireless/ath/ath9k/beacon.c
|
||||||
@@ -91,7 +91,7 @@ static void ath_beacon_setup(struct ath_
|
@@ -91,7 +91,7 @@ static void ath_beacon_setup(struct ath_
|
||||||
|
@ -145,9 +145,9 @@
|
|||||||
struct ath_hw *ah = common->ah;
|
struct ath_hw *ah = common->ah;
|
||||||
+ int i, j;
|
+ int i, j;
|
||||||
|
|
||||||
memset(rx_status, 0, sizeof(struct ieee80211_rx_status));
|
/*
|
||||||
|
* everything but the rate is checked here, the rate check is done
|
||||||
@@ -1013,6 +1014,20 @@ static int ath9k_rx_skb_preprocess(struc
|
@@ -1011,6 +1012,20 @@ static int ath9k_rx_skb_preprocess(struc
|
||||||
if (rx_stats->rs_moreaggr)
|
if (rx_stats->rs_moreaggr)
|
||||||
rx_status->flag |= RX_FLAG_NO_SIGNAL_VAL;
|
rx_status->flag |= RX_FLAG_NO_SIGNAL_VAL;
|
||||||
|
|
||||||
@ -168,7 +168,7 @@
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1543,14 +1558,14 @@ static void ath_ant_comb_scan(struct ath
|
@@ -1541,14 +1556,14 @@ static void ath_ant_comb_scan(struct ath
|
||||||
struct ath_ant_comb *antcomb = &sc->ant_comb;
|
struct ath_ant_comb *antcomb = &sc->ant_comb;
|
||||||
int alt_ratio = 0, alt_rssi_avg = 0, main_rssi_avg = 0, curr_alt_set;
|
int alt_ratio = 0, alt_rssi_avg = 0, main_rssi_avg = 0, curr_alt_set;
|
||||||
int curr_main_set;
|
int curr_main_set;
|
||||||
|
Loading…
Reference in New Issue
Block a user