staging: vt6656: desc.h: remove typedef struct tagSTxDataHead_g to new structure in rxtx.h

To new structure.
typedef struct tagSTxDataHead_g -> struct vnt_tx_datahead_g

This is only needed by rxtc.c so moved to rxtx.h visible to
vnt_rts*/vnt_cts* structures which it will eventually form part of
their structure.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Malcolm Priestley 2013-08-16 23:48:03 +01:00 committed by Greg Kroah-Hartman
parent 57107d4364
commit 7e60a3de27
3 changed files with 41 additions and 38 deletions

View File

@ -166,22 +166,6 @@ typedef const STxShortBufHead *PCSTxShortBufHead;
/* /*
* TX data header * TX data header
*/ */
typedef struct tagSTxDataHead_g {
u8 bySignalField_b;
u8 byServiceField_b;
u16 wTransmitLength_b;
u8 bySignalField_a;
u8 byServiceField_a;
u16 wTransmitLength_a;
u16 wDuration_b;
u16 wDuration_a;
u16 wTimeStampOff_b;
u16 wTimeStampOff_a;
} __attribute__ ((__packed__))
STxDataHead_g, *PSTxDataHead_g;
typedef const STxDataHead_g *PCSTxDataHead_g;
typedef struct tagSTxDataHead_g_FB { typedef struct tagSTxDataHead_g_FB {
u8 bySignalField_b; u8 bySignalField_b;
u8 byServiceField_b; u8 byServiceField_b;

View File

@ -515,7 +515,8 @@ static u32 s_uFillDataHead(struct vnt_private *pDevice,
} }
else { // DATA & MANAGE Frame else { // DATA & MANAGE Frame
if (byFBOption == AUTO_FB_NONE) { if (byFBOption == AUTO_FB_NONE) {
PSTxDataHead_g pBuf = (PSTxDataHead_g)pTxDataHead; struct vnt_tx_datahead_g *pBuf =
(struct vnt_tx_datahead_g *)pTxDataHead;
//Get SignalField,ServiceField,Length //Get SignalField,ServiceField,Length
BBvCalculateParameter(pDevice, cbFrameLength, wCurrentRate, byPktType, BBvCalculateParameter(pDevice, cbFrameLength, wCurrentRate, byPktType,
(u16 *)&(pBuf->wTransmitLength_a), (u8 *)&(pBuf->byServiceField_a), (u8 *)&(pBuf->bySignalField_a) (u16 *)&(pBuf->wTransmitLength_a), (u8 *)&(pBuf->byServiceField_a), (u8 *)&(pBuf->bySignalField_a)
@ -1162,12 +1163,12 @@ static int s_bPacketToWirelessUsb(struct vnt_private *pDevice, u8 byPktType,
pvRTS = (struct vnt_rts_g *) (pbyTxBufferAddr + wTxBufSize + pvRTS = (struct vnt_rts_g *) (pbyTxBufferAddr + wTxBufSize +
sizeof(struct vnt_rrv_time_rts) + cbMICHDR); sizeof(struct vnt_rrv_time_rts) + cbMICHDR);
pvCTS = NULL; pvCTS = NULL;
pvTxDataHd = (PSTxDataHead_g) (pbyTxBufferAddr + wTxBufSize + pvTxDataHd = (struct vnt_tx_datahead_g *) (pbyTxBufferAddr +
sizeof(struct vnt_rrv_time_rts) + cbMICHDR + wTxBufSize + sizeof(struct vnt_rrv_time_rts) +
sizeof(struct vnt_rts_g)); cbMICHDR + sizeof(struct vnt_rts_g));
cbHeaderLength = wTxBufSize + sizeof(struct vnt_rrv_time_rts) + cbHeaderLength = wTxBufSize + sizeof(struct vnt_rrv_time_rts) +
cbMICHDR + sizeof(struct vnt_rts_g) + cbMICHDR + sizeof(struct vnt_rts_g) +
sizeof(STxDataHead_g); sizeof(struct vnt_tx_datahead_g);
} }
else { //RTS_needless else { //RTS_needless
pvRrvTime = (struct vnt_rrv_time_cts *) pvRrvTime = (struct vnt_rrv_time_cts *)
@ -1177,12 +1178,12 @@ static int s_bPacketToWirelessUsb(struct vnt_private *pDevice, u8 byPktType,
pvRTS = NULL; pvRTS = NULL;
pvCTS = (struct vnt_cts *) (pbyTxBufferAddr + wTxBufSize + pvCTS = (struct vnt_cts *) (pbyTxBufferAddr + wTxBufSize +
sizeof(struct vnt_rrv_time_cts) + cbMICHDR); sizeof(struct vnt_rrv_time_cts) + cbMICHDR);
pvTxDataHd = (PSTxDataHead_g) (pbyTxBufferAddr + wTxBufSize + pvTxDataHd = (struct vnt_tx_datahead_g *)(pbyTxBufferAddr +
sizeof(struct vnt_rrv_time_cts) + cbMICHDR + wTxBufSize + sizeof(struct vnt_rrv_time_cts) +
sizeof(struct vnt_cts)); cbMICHDR + sizeof(struct vnt_cts));
cbHeaderLength = wTxBufSize + sizeof(struct vnt_rrv_time_cts) + cbHeaderLength = wTxBufSize + sizeof(struct vnt_rrv_time_cts) +
cbMICHDR + sizeof(struct vnt_cts) + cbMICHDR + sizeof(struct vnt_cts) +
sizeof(STxDataHead_g); sizeof(struct vnt_tx_datahead_g);
} }
} else { } else {
// Auto Fall Back // Auto Fall Back
@ -1688,10 +1689,10 @@ CMD_STATUS csMgmt_xmit(struct vnt_private *pDevice,
pvRTS = NULL; pvRTS = NULL;
pCTS = (struct vnt_cts *) (pbyTxBufferAddr + wTxBufSize + pCTS = (struct vnt_cts *) (pbyTxBufferAddr + wTxBufSize +
sizeof(struct vnt_rrv_time_cts)); sizeof(struct vnt_rrv_time_cts));
pvTxDataHd = (PSTxDataHead_g) (pbyTxBufferAddr + wTxBufSize + pvTxDataHd = (struct vnt_tx_datahead_g *)(pbyTxBufferAddr + wTxBufSize +
sizeof(struct vnt_rrv_time_cts) + sizeof(struct vnt_cts)); sizeof(struct vnt_rrv_time_cts) + sizeof(struct vnt_cts));
cbHeaderSize = wTxBufSize + sizeof(struct vnt_rrv_time_cts) + cbHeaderSize = wTxBufSize + sizeof(struct vnt_rrv_time_cts) +
sizeof(struct vnt_cts) + sizeof(STxDataHead_g); sizeof(struct vnt_cts) + sizeof(struct vnt_tx_datahead_g);
} }
else { // 802.11a/b packet else { // 802.11a/b packet
pvRrvTime = (struct vnt_rrv_time_ab *) (pbyTxBufferAddr + wTxBufSize); pvRrvTime = (struct vnt_rrv_time_ab *) (pbyTxBufferAddr + wTxBufSize);
@ -1784,10 +1785,12 @@ CMD_STATUS csMgmt_xmit(struct vnt_private *pDevice,
// This will cause AID-field of PS-POLL packet be incorrect (Because PS-POLL's AID field is // This will cause AID-field of PS-POLL packet be incorrect (Because PS-POLL's AID field is
// in the same place of other packet's Duration-field). // in the same place of other packet's Duration-field).
// And it will cause Cisco-AP to issue Disassociation-packet // And it will cause Cisco-AP to issue Disassociation-packet
if (byPktType == PK_TYPE_11GB || byPktType == PK_TYPE_11GA) { if (byPktType == PK_TYPE_11GB || byPktType == PK_TYPE_11GA) {
((PSTxDataHead_g)pvTxDataHd)->wDuration_a = cpu_to_le16(pPacket->p80211Header->sA2.wDurationID); ((struct vnt_tx_datahead_g *)pvTxDataHd)->wDuration_a =
((PSTxDataHead_g)pvTxDataHd)->wDuration_b = cpu_to_le16(pPacket->p80211Header->sA2.wDurationID); cpu_to_le16(pPacket->p80211Header->sA2.wDurationID);
} else { ((struct vnt_tx_datahead_g *)pvTxDataHd)->wDuration_b =
cpu_to_le16(pPacket->p80211Header->sA2.wDurationID);
} else {
((PSTxDataHead_ab)pvTxDataHd)->wDuration = cpu_to_le16(pPacket->p80211Header->sA2.wDurationID); ((PSTxDataHead_ab)pvTxDataHd)->wDuration = cpu_to_le16(pPacket->p80211Header->sA2.wDurationID);
} }
} }
@ -2093,11 +2096,11 @@ void vDMA0_tx_80211(struct vnt_private *pDevice, struct sk_buff *skb)
pvRTS = NULL; pvRTS = NULL;
pvCTS = (struct vnt_cts *) (pbyTxBufferAddr + wTxBufSize + pvCTS = (struct vnt_cts *) (pbyTxBufferAddr + wTxBufSize +
sizeof(struct vnt_rrv_time_cts) + cbMICHDR); sizeof(struct vnt_rrv_time_cts) + cbMICHDR);
pvTxDataHd = (PSTxDataHead_g) (pbyTxBufferAddr + wTxBufSize + pvTxDataHd = (struct vnt_tx_datahead_g *) (pbyTxBufferAddr +
sizeof(struct vnt_rrv_time_cts) + cbMICHDR + wTxBufSize + sizeof(struct vnt_rrv_time_cts) + cbMICHDR +
sizeof(struct vnt_cts)); sizeof(struct vnt_cts));
cbHeaderSize = wTxBufSize + sizeof(struct vnt_rrv_time_cts) + cbMICHDR + cbHeaderSize = wTxBufSize + sizeof(struct vnt_rrv_time_cts) + cbMICHDR +
sizeof(struct vnt_cts) + sizeof(STxDataHead_g); sizeof(struct vnt_cts) + sizeof(struct vnt_tx_datahead_g);
} }
else {//802.11a/b packet else {//802.11a/b packet
@ -2238,10 +2241,12 @@ void vDMA0_tx_80211(struct vnt_private *pDevice, struct sk_buff *skb)
// This will cause AID-field of PS-POLL packet be incorrect (Because PS-POLL's AID field is // This will cause AID-field of PS-POLL packet be incorrect (Because PS-POLL's AID field is
// in the same place of other packet's Duration-field). // in the same place of other packet's Duration-field).
// And it will cause Cisco-AP to issue Disassociation-packet // And it will cause Cisco-AP to issue Disassociation-packet
if (byPktType == PK_TYPE_11GB || byPktType == PK_TYPE_11GA) { if (byPktType == PK_TYPE_11GB || byPktType == PK_TYPE_11GA) {
((PSTxDataHead_g)pvTxDataHd)->wDuration_a = cpu_to_le16(p80211Header->sA2.wDurationID); ((struct vnt_tx_datahead_g *)pvTxDataHd)->wDuration_a =
((PSTxDataHead_g)pvTxDataHd)->wDuration_b = cpu_to_le16(p80211Header->sA2.wDurationID); cpu_to_le16(p80211Header->sA2.wDurationID);
} else { ((struct vnt_tx_datahead_g *)pvTxDataHd)->wDuration_b =
cpu_to_le16(p80211Header->sA2.wDurationID);
} else {
((PSTxDataHead_ab)pvTxDataHd)->wDuration = cpu_to_le16(p80211Header->sA2.wDurationID); ((PSTxDataHead_ab)pvTxDataHd)->wDuration = cpu_to_le16(p80211Header->sA2.wDurationID);
} }
} }

View File

@ -54,6 +54,20 @@ struct vnt_rrv_time_ab {
u16 wTxRrvTime; u16 wTxRrvTime;
} __packed; } __packed;
/* TX data header */
struct vnt_tx_datahead_g {
u8 bySignalField_b;
u8 byServiceField_b;
u16 wTransmitLength_b;
u8 bySignalField_a;
u8 byServiceField_a;
u16 wTransmitLength_a;
u16 wDuration_b;
u16 wDuration_a;
u16 wTimeStampOff_b;
u16 wTimeStampOff_a;
} __packed;
/* RTS buffer header */ /* RTS buffer header */
struct vnt_rts_g { struct vnt_rts_g {
u8 bySignalField_b; u8 bySignalField_b;