summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/p54/txrx.c
diff options
context:
space:
mode:
authorChristian Lamparter <chunkeey@googlemail.com>2012-11-24 14:23:25 +0100
committerJohn W. Linville <linville@tuxdriver.com>2012-11-26 20:54:21 +0100
commit725d255e70a98fc5dc0f4ce7fa173c33c8515a07 (patch)
treede5920a8c6dd8a34c165fafbd83f07b61565cdc3 /drivers/net/wireless/p54/txrx.c
parentiwlwifi: initialize rx_status (diff)
downloadlinux-725d255e70a98fc5dc0f4ce7fa173c33c8515a07.tar.xz
linux-725d255e70a98fc5dc0f4ce7fa173c33c8515a07.zip
p54: improve TSF timestamp precision
The LMAC API states that the TSF clock value of every rx'ed frame is a "usec accurate timestamp of the hardware clock at the end of frame (before OFDM SIFS EOF padding)". Signed-off-by: Christian Lamparter <chunkeey@googlemail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/p54/txrx.c')
-rw-r--r--drivers/net/wireless/p54/txrx.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/net/wireless/p54/txrx.c b/drivers/net/wireless/p54/txrx.c
index 8ae982bd7cf3..12f0a34477f2 100644
--- a/drivers/net/wireless/p54/txrx.c
+++ b/drivers/net/wireless/p54/txrx.c
@@ -369,7 +369,11 @@ static int p54_rx_data(struct p54_common *priv, struct sk_buff *skb)
rx_status->mactime = ((u64)priv->tsf_high32) << 32 | tsf32;
priv->tsf_low32 = tsf32;
- rx_status->flag |= RX_FLAG_MACTIME_START;
+ /* LMAC API Page 10/29 - s_lm_data_in - clock
+ * "usec accurate timestamp of hardware clock
+ * at end of frame (before OFDM SIFS EOF padding"
+ */
+ rx_status->flag |= RX_FLAG_MACTIME_END;
if (hdr->flags & cpu_to_le16(P54_HDR_FLAG_DATA_ALIGN))
header_len += hdr->align[0];