summaryrefslogtreecommitdiff
path: root/drivers/staging/vt6655/rxtx.c
diff options
context:
space:
mode:
authorMalcolm Priestley <tvboxspy@gmail.com>2014-08-30 22:25:33 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-08-30 15:19:16 -0700
commitd6b95c0659df46f20f947110fc0535e8faf6c1fc (patch)
treee562986ac59d32d6e1affe0cff45892c9326ebd2 /drivers/staging/vt6655/rxtx.c
parentc00a378bffaf48ef08366d7e84a536241fb187b5 (diff)
staging: vt6655: rxtx.c create function to return __le16 wTimeStampOff
wTimeStampOff always needs to be endian corrected. Create vnt_time_stamp_off to return this value. Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/vt6655/rxtx.c')
-rw-r--r--drivers/staging/vt6655/rxtx.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/drivers/staging/vt6655/rxtx.c b/drivers/staging/vt6655/rxtx.c
index afdf3ab2869e..9617701b509f 100644
--- a/drivers/staging/vt6655/rxtx.c
+++ b/drivers/staging/vt6655/rxtx.c
@@ -337,6 +337,12 @@ s_vSWencryption(
}
}
+static __le16 vnt_time_stamp_off(struct vnt_private *priv, u16 rate)
+{
+ return cpu_to_le16(wTimeStampOff[priv->byPreambleType % 2]
+ [rate % MAX_RATE]);
+}
+
/*byPktType : PK_TYPE_11A 0
PK_TYPE_11B 1
PK_TYPE_11GB 2
@@ -706,8 +712,8 @@ s_uFillDataHead(
bNeedAck, uFragIdx, cbLastFragmentSize,
uMACfragNum, byFBOption)); //1: 2.4
- pBuf->wTimeStampOff_a = cpu_to_le16(wTimeStampOff[pDevice->byPreambleType%2][wCurrentRate%MAX_RATE]);
- pBuf->wTimeStampOff_b = cpu_to_le16(wTimeStampOff[pDevice->byPreambleType%2][pDevice->byTopCCKBasicRate%MAX_RATE]);
+ pBuf->wTimeStampOff_a = vnt_time_stamp_off(pDevice, wCurrentRate);
+ pBuf->wTimeStampOff_b = vnt_time_stamp_off(pDevice, pDevice->byTopCCKBasicRate);
return pBuf->wDuration_a;
} else {
@@ -730,8 +736,8 @@ s_uFillDataHead(
pBuf->wDuration_a_f1 = cpu_to_le16((unsigned short)s_uGetDataDuration(pDevice, DATADUR_A_F1, cbFrameLength, byPktType,
wCurrentRate, bNeedAck, uFragIdx, cbLastFragmentSize, uMACfragNum, byFBOption)); //1: 2.4GHz
- pBuf->wTimeStampOff_a = cpu_to_le16(wTimeStampOff[pDevice->byPreambleType%2][wCurrentRate%MAX_RATE]);
- pBuf->wTimeStampOff_b = cpu_to_le16(wTimeStampOff[pDevice->byPreambleType%2][pDevice->byTopCCKBasicRate%MAX_RATE]);
+ pBuf->wTimeStampOff_a = vnt_time_stamp_off(pDevice, wCurrentRate);
+ pBuf->wTimeStampOff_b = vnt_time_stamp_off(pDevice, pDevice->byTopCCKBasicRate);
return pBuf->wDuration_a;
} //if (byFBOption == AUTO_FB_NONE)
@@ -751,7 +757,7 @@ s_uFillDataHead(
wCurrentRate, bNeedAck, uFragIdx, cbLastFragmentSize, uMACfragNum, byFBOption)); //0: 5GHz
pBuf->wDuration_f1 = cpu_to_le16((unsigned short)s_uGetDataDuration(pDevice, DATADUR_A_F1, cbFrameLength, byPktType,
wCurrentRate, bNeedAck, uFragIdx, cbLastFragmentSize, uMACfragNum, byFBOption)); //0: 5GHz
- pBuf->wTimeStampOff = cpu_to_le16(wTimeStampOff[pDevice->byPreambleType%2][wCurrentRate%MAX_RATE]);
+ pBuf->wTimeStampOff = vnt_time_stamp_off(pDevice, wCurrentRate);
return pBuf->wDuration;
} else {
PSTxDataHead_ab pBuf = (PSTxDataHead_ab)pTxDataHead;
@@ -765,7 +771,7 @@ s_uFillDataHead(
cbLastFragmentSize, uMACfragNum,
byFBOption));
- pBuf->wTimeStampOff = cpu_to_le16(wTimeStampOff[pDevice->byPreambleType%2][wCurrentRate%MAX_RATE]);
+ pBuf->wTimeStampOff = vnt_time_stamp_off(pDevice, wCurrentRate);
return pBuf->wDuration;
}
} else {
@@ -778,7 +784,7 @@ s_uFillDataHead(
wCurrentRate, bNeedAck, uFragIdx,
cbLastFragmentSize, uMACfragNum,
byFBOption));
- pBuf->wTimeStampOff = cpu_to_le16(wTimeStampOff[pDevice->byPreambleType%2][wCurrentRate%MAX_RATE]);
+ pBuf->wTimeStampOff = vnt_time_stamp_off(pDevice, wCurrentRate);
return pBuf->wDuration;
}
return 0;
@@ -2370,7 +2376,7 @@ CMD_STATUS csBeacon_xmit(struct vnt_private *pDevice, PSTxMgmtPacket pPacket)
wCurrentRate, byPktType, &short_head->ab);
/* Get TimeStampOff */
- short_head->time_stamp_off = cpu_to_le16(wTimeStampOff[pDevice->byPreambleType%2][wCurrentRate%MAX_RATE]);
+ short_head->time_stamp_off = vnt_time_stamp_off(pDevice, wCurrentRate);
cbHeaderSize = sizeof(struct vnt_tx_short_buf_head);
//Generate Beacon Header