aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2007-12-04 14:33:40 -0500
committerDavid S. Miller <davem@davemloft.net>2008-01-28 17:58:26 -0500
commit03bffc1341c757e4b15a5a6058ad624e28b4801e (patch)
tree769d5f7f4028ab57bc9d9ddae23415a9f19e1ef6 /drivers
parent374fdfbc67837c1f4369eedb0f371ce3e6cce832 (diff)
wireless: make drivers include the TSF RX flag where appropriate
These drivers pass full mactime information to the stack, make them indicate this via the new RX_FLAG_TSFT to get mac80211 to show this information in monitor mode. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/b43/xmit.c1
-rw-r--r--drivers/net/wireless/b43legacy/xmit.c1
-rw-r--r--drivers/net/wireless/p54common.c1
-rw-r--r--drivers/net/wireless/rtl8187_dev.c1
4 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/wireless/b43/xmit.c b/drivers/net/wireless/b43/xmit.c
index 3307ba1856b1..bcbb32872e85 100644
--- a/drivers/net/wireless/b43/xmit.c
+++ b/drivers/net/wireless/b43/xmit.c
@@ -526,6 +526,7 @@ void b43_rx(struct b43_wldev *dev, struct sk_buff *skb, const void *_rxhdr)
526 status.rate = b43_plcp_get_bitrate_cck(plcp); 526 status.rate = b43_plcp_get_bitrate_cck(plcp);
527 status.antenna = !!(phystat0 & B43_RX_PHYST0_ANT); 527 status.antenna = !!(phystat0 & B43_RX_PHYST0_ANT);
528 status.mactime = mactime; 528 status.mactime = mactime;
529 status.flag |= RX_FLAG_TSFT;
529 530
530 chanid = (chanstat & B43_RX_CHAN_ID) >> B43_RX_CHAN_ID_SHIFT; 531 chanid = (chanstat & B43_RX_CHAN_ID) >> B43_RX_CHAN_ID_SHIFT;
531 switch (chanstat & B43_RX_CHAN_PHYTYPE) { 532 switch (chanstat & B43_RX_CHAN_PHYTYPE) {
diff --git a/drivers/net/wireless/b43legacy/xmit.c b/drivers/net/wireless/b43legacy/xmit.c
index fa1e65687a63..b71cc949f7d4 100644
--- a/drivers/net/wireless/b43legacy/xmit.c
+++ b/drivers/net/wireless/b43legacy/xmit.c
@@ -532,6 +532,7 @@ void b43legacy_rx(struct b43legacy_wldev *dev,
532 status.rate = b43legacy_plcp_get_bitrate_cck(plcp); 532 status.rate = b43legacy_plcp_get_bitrate_cck(plcp);
533 status.antenna = !!(phystat0 & B43legacy_RX_PHYST0_ANT); 533 status.antenna = !!(phystat0 & B43legacy_RX_PHYST0_ANT);
534 status.mactime = mactime; 534 status.mactime = mactime;
535 status.flag |= RX_FLAG_TSFT;
535 536
536 chanid = (chanstat & B43legacy_RX_CHAN_ID) >> 537 chanid = (chanstat & B43legacy_RX_CHAN_ID) >>
537 B43legacy_RX_CHAN_ID_SHIFT; 538 B43legacy_RX_CHAN_ID_SHIFT;
diff --git a/drivers/net/wireless/p54common.c b/drivers/net/wireless/p54common.c
index 1437db0cf4b2..5f8d898502ae 100644
--- a/drivers/net/wireless/p54common.c
+++ b/drivers/net/wireless/p54common.c
@@ -314,6 +314,7 @@ static void p54_rx_data(struct ieee80211_hw *dev, struct sk_buff *skb)
314 rx_status.phymode = MODE_IEEE80211G; 314 rx_status.phymode = MODE_IEEE80211G;
315 rx_status.antenna = hdr->antenna; 315 rx_status.antenna = hdr->antenna;
316 rx_status.mactime = le64_to_cpu(hdr->timestamp); 316 rx_status.mactime = le64_to_cpu(hdr->timestamp);
317 rx_status.flag |= RX_FLAG_TSFT;
317 318
318 skb_pull(skb, sizeof(*hdr)); 319 skb_pull(skb, sizeof(*hdr));
319 skb_trim(skb, le16_to_cpu(hdr->len)); 320 skb_trim(skb, le16_to_cpu(hdr->len));
diff --git a/drivers/net/wireless/rtl8187_dev.c b/drivers/net/wireless/rtl8187_dev.c
index bd1ab3b3afc0..09e48d3bef36 100644
--- a/drivers/net/wireless/rtl8187_dev.c
+++ b/drivers/net/wireless/rtl8187_dev.c
@@ -227,6 +227,7 @@ static void rtl8187_rx_cb(struct urb *urb)
227 rx_status.channel = dev->conf.channel; 227 rx_status.channel = dev->conf.channel;
228 rx_status.phymode = dev->conf.phymode; 228 rx_status.phymode = dev->conf.phymode;
229 rx_status.mactime = le64_to_cpu(hdr->mac_time); 229 rx_status.mactime = le64_to_cpu(hdr->mac_time);
230 rx_status.flag |= RX_FLAG_TSFT;
230 if (flags & (1 << 13)) 231 if (flags & (1 << 13))
231 rx_status.flag |= RX_FLAG_FAILED_FCS_CRC; 232 rx_status.flag |= RX_FLAG_FAILED_FCS_CRC;
232 ieee80211_rx_irqsafe(dev, skb, &rx_status); 233 ieee80211_rx_irqsafe(dev, skb, &rx_status);