mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-20 18:54:09 +08:00
Staging: rt28x0: run *.h files through Lindent
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
0f65bec15b
commit
52b81c89e5
@ -41,40 +41,26 @@
|
||||
#define __AP_H__
|
||||
|
||||
// ap_wpa.c
|
||||
VOID WpaStateMachineInit(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN STATE_MACHINE *Sm,
|
||||
OUT STATE_MACHINE_FUNC Trans[]);
|
||||
VOID WpaStateMachineInit(IN PRTMP_ADAPTER pAd,
|
||||
IN STATE_MACHINE * Sm, OUT STATE_MACHINE_FUNC Trans[]);
|
||||
|
||||
#ifdef RTMP_MAC_USB
|
||||
VOID BeaconUpdateExec(
|
||||
IN PVOID SystemSpecific1,
|
||||
IN PVOID FunctionContext,
|
||||
IN PVOID SystemSpecific2,
|
||||
IN PVOID SystemSpecific3);
|
||||
VOID BeaconUpdateExec(IN PVOID SystemSpecific1,
|
||||
IN PVOID FunctionContext,
|
||||
IN PVOID SystemSpecific2, IN PVOID SystemSpecific3);
|
||||
#endif // RTMP_MAC_USB //
|
||||
|
||||
VOID RTMPSetPiggyBack(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN BOOLEAN bPiggyBack);
|
||||
VOID RTMPSetPiggyBack(IN PRTMP_ADAPTER pAd, IN BOOLEAN bPiggyBack);
|
||||
|
||||
VOID MacTableReset(
|
||||
IN PRTMP_ADAPTER pAd);
|
||||
VOID MacTableReset(IN PRTMP_ADAPTER pAd);
|
||||
|
||||
MAC_TABLE_ENTRY *MacTableInsertEntry(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN PUCHAR pAddr,
|
||||
IN UCHAR apidx,
|
||||
IN BOOLEAN CleanAll);
|
||||
MAC_TABLE_ENTRY *MacTableInsertEntry(IN PRTMP_ADAPTER pAd,
|
||||
IN PUCHAR pAddr,
|
||||
IN UCHAR apidx, IN BOOLEAN CleanAll);
|
||||
|
||||
BOOLEAN MacTableDeleteEntry(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN USHORT wcid,
|
||||
IN PUCHAR pAddr);
|
||||
BOOLEAN MacTableDeleteEntry(IN PRTMP_ADAPTER pAd,
|
||||
IN USHORT wcid, IN PUCHAR pAddr);
|
||||
|
||||
MAC_TABLE_ENTRY *MacTableLookup(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN PUCHAR pAddr);
|
||||
|
||||
#endif // __AP_H__
|
||||
MAC_TABLE_ENTRY *MacTableLookup(IN PRTMP_ADAPTER pAd, IN PUCHAR pAddr);
|
||||
|
||||
#endif // __AP_H__
|
||||
|
@ -43,7 +43,6 @@
|
||||
#include "../rtmp_iface.h"
|
||||
#include "../rtmp_dot11.h"
|
||||
|
||||
|
||||
//
|
||||
// Device ID & Vendor ID related definitions,
|
||||
// NOTE: you should not add the new VendorID/DeviceID here unless you not sure it belongs to what chip.
|
||||
@ -61,10 +60,6 @@
|
||||
#define PCI_CLASS_BRIDGE_PCI 0x0604
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#define TXINFO_SIZE 0
|
||||
#define RTMP_PKT_TAIL_PADDING 0
|
||||
#define fRTMP_ADAPTER_NEED_STOP_TX 0
|
||||
@ -72,86 +67,83 @@
|
||||
#define AUX_CTRL 0x10c
|
||||
|
||||
//
|
||||
// TX descriptor format, Tx ring, Mgmt Ring
|
||||
// TX descriptor format, Tx ring, Mgmt Ring
|
||||
//
|
||||
typedef struct PACKED _TXD_STRUC {
|
||||
// Word 0
|
||||
UINT32 SDPtr0;
|
||||
// Word 1
|
||||
UINT32 SDLen1:14;
|
||||
UINT32 LastSec1:1;
|
||||
UINT32 Burst:1;
|
||||
UINT32 SDLen0:14;
|
||||
UINT32 LastSec0:1;
|
||||
UINT32 DMADONE:1;
|
||||
typedef struct PACKED _TXD_STRUC {
|
||||
// Word 0
|
||||
UINT32 SDPtr0;
|
||||
// Word 1
|
||||
UINT32 SDLen1:14;
|
||||
UINT32 LastSec1:1;
|
||||
UINT32 Burst:1;
|
||||
UINT32 SDLen0:14;
|
||||
UINT32 LastSec0:1;
|
||||
UINT32 DMADONE:1;
|
||||
//Word2
|
||||
UINT32 SDPtr1;
|
||||
UINT32 SDPtr1;
|
||||
//Word3
|
||||
UINT32 rsv2:24;
|
||||
UINT32 WIV:1; // Wireless Info Valid. 1 if Driver already fill WI, o if DMA needs to copy WI to correctposition
|
||||
UINT32 QSEL:2; // select on-chip FIFO ID for 2nd-stage output scheduler.0:MGMT, 1:HCCA 2:EDCA
|
||||
UINT32 rsv:2;
|
||||
UINT32 TCO:1; //
|
||||
UINT32 UCO:1; //
|
||||
UINT32 ICO:1; //
|
||||
} TXD_STRUC, *PTXD_STRUC;
|
||||
|
||||
UINT32 rsv2:24;
|
||||
UINT32 WIV:1; // Wireless Info Valid. 1 if Driver already fill WI, o if DMA needs to copy WI to correctposition
|
||||
UINT32 QSEL:2; // select on-chip FIFO ID for 2nd-stage output scheduler.0:MGMT, 1:HCCA 2:EDCA
|
||||
UINT32 rsv:2;
|
||||
UINT32 TCO:1; //
|
||||
UINT32 UCO:1; //
|
||||
UINT32 ICO:1; //
|
||||
} TXD_STRUC, *PTXD_STRUC;
|
||||
|
||||
//
|
||||
// Rx descriptor format, Rx Ring
|
||||
//
|
||||
typedef struct PACKED _RXD_STRUC{
|
||||
// Word 0
|
||||
UINT32 SDP0;
|
||||
// Word 1
|
||||
UINT32 SDL1:14;
|
||||
UINT32 Rsv:2;
|
||||
UINT32 SDL0:14;
|
||||
UINT32 LS0:1;
|
||||
UINT32 DDONE:1;
|
||||
// Word 2
|
||||
UINT32 SDP1;
|
||||
// Word 3
|
||||
UINT32 BA:1;
|
||||
UINT32 DATA:1;
|
||||
UINT32 NULLDATA:1;
|
||||
UINT32 FRAG:1;
|
||||
UINT32 U2M:1; // 1: this RX frame is unicast to me
|
||||
UINT32 Mcast:1; // 1: this is a multicast frame
|
||||
UINT32 Bcast:1; // 1: this is a broadcast frame
|
||||
UINT32 MyBss:1; // 1: this frame belongs to the same BSSID
|
||||
UINT32 Crc:1; // 1: CRC error
|
||||
UINT32 CipherErr:2; // 0: decryption okay, 1:ICV error, 2:MIC error, 3:KEY not valid
|
||||
UINT32 AMSDU:1; // rx with 802.3 header, not 802.11 header.
|
||||
UINT32 HTC:1;
|
||||
UINT32 RSSI:1;
|
||||
UINT32 L2PAD:1;
|
||||
UINT32 AMPDU:1;
|
||||
UINT32 Decrypted:1; // this frame is being decrypted.
|
||||
UINT32 PlcpSignal:1; // To be moved
|
||||
UINT32 PlcpRssil:1;// To be moved
|
||||
UINT32 Rsv1:13;
|
||||
} RXD_STRUC, *PRXD_STRUC, RT28XX_RXD_STRUC, *PRT28XX_RXD_STRUC;
|
||||
typedef struct PACKED _RXD_STRUC {
|
||||
// Word 0
|
||||
UINT32 SDP0;
|
||||
// Word 1
|
||||
UINT32 SDL1:14;
|
||||
UINT32 Rsv:2;
|
||||
UINT32 SDL0:14;
|
||||
UINT32 LS0:1;
|
||||
UINT32 DDONE:1;
|
||||
// Word 2
|
||||
UINT32 SDP1;
|
||||
// Word 3
|
||||
UINT32 BA:1;
|
||||
UINT32 DATA:1;
|
||||
UINT32 NULLDATA:1;
|
||||
UINT32 FRAG:1;
|
||||
UINT32 U2M:1; // 1: this RX frame is unicast to me
|
||||
UINT32 Mcast:1; // 1: this is a multicast frame
|
||||
UINT32 Bcast:1; // 1: this is a broadcast frame
|
||||
UINT32 MyBss:1; // 1: this frame belongs to the same BSSID
|
||||
UINT32 Crc:1; // 1: CRC error
|
||||
UINT32 CipherErr:2; // 0: decryption okay, 1:ICV error, 2:MIC error, 3:KEY not valid
|
||||
UINT32 AMSDU:1; // rx with 802.3 header, not 802.11 header.
|
||||
UINT32 HTC:1;
|
||||
UINT32 RSSI:1;
|
||||
UINT32 L2PAD:1;
|
||||
UINT32 AMPDU:1;
|
||||
UINT32 Decrypted:1; // this frame is being decrypted.
|
||||
UINT32 PlcpSignal:1; // To be moved
|
||||
UINT32 PlcpRssil:1; // To be moved
|
||||
UINT32 Rsv1:13;
|
||||
} RXD_STRUC, *PRXD_STRUC, RT28XX_RXD_STRUC, *PRT28XX_RXD_STRUC;
|
||||
|
||||
typedef union _TX_ATTENUATION_CTRL_STRUC {
|
||||
struct
|
||||
{
|
||||
ULONG RF_ISOLATION_ENABLE:1;
|
||||
ULONG Reserve2:7;
|
||||
ULONG PCIE_PHY_TX_ATTEN_VALUE:3;
|
||||
ULONG PCIE_PHY_TX_ATTEN_EN:1;
|
||||
ULONG Reserve1:20;
|
||||
struct {
|
||||
ULONG RF_ISOLATION_ENABLE:1;
|
||||
ULONG Reserve2:7;
|
||||
ULONG PCIE_PHY_TX_ATTEN_VALUE:3;
|
||||
ULONG PCIE_PHY_TX_ATTEN_EN:1;
|
||||
ULONG Reserve1:20;
|
||||
} field;
|
||||
|
||||
ULONG word;
|
||||
ULONG word;
|
||||
} TX_ATTENUATION_CTRL_STRUC, *PTX_ATTENUATION_CTRL_STRUC;
|
||||
|
||||
/* ----------------- EEPROM Related MACRO ----------------- */
|
||||
|
||||
// 8051 firmware image for RT2860 - base address = 0x4000
|
||||
#define FIRMWARE_IMAGE_BASE 0x2000
|
||||
#define MAX_FIRMWARE_IMAGE_SIZE 0x2000 // 8kbyte
|
||||
|
||||
#define MAX_FIRMWARE_IMAGE_SIZE 0x2000 // 8kbyte
|
||||
|
||||
/* ----------------- Frimware Related MACRO ----------------- */
|
||||
#define RTMP_WRITE_FIRMWARE(_pAd, _pFwImage, _FwLen) \
|
||||
@ -175,14 +167,12 @@ typedef union _TX_ATTENUATION_CTRL_STRUC {
|
||||
RTMP_IO_WRITE32(_pAd, H2M_MAILBOX_CSR, 0); \
|
||||
}while(0)
|
||||
|
||||
|
||||
/* ----------------- TX Related MACRO ----------------- */
|
||||
#define RTMP_START_DEQUEUE(pAd, QueIdx, irqFlags) do{}while(0)
|
||||
#define RTMP_STOP_DEQUEUE(pAd, QueIdx, irqFlags) do{}while(0)
|
||||
|
||||
|
||||
#define RTMP_HAS_ENOUGH_FREE_DESC(pAd, pTxBlk, freeNum, pPacket) \
|
||||
((freeNum) >= (ULONG)(pTxBlk->TotalFragNum + RTMP_GET_PACKET_FRAGMENTS(pPacket) + 3)) /* rough estimate we will use 3 more descriptor. */
|
||||
((freeNum) >= (ULONG)(pTxBlk->TotalFragNum + RTMP_GET_PACKET_FRAGMENTS(pPacket) + 3)) /* rough estimate we will use 3 more descriptor. */
|
||||
#define RTMP_RELEASE_DESC_RESOURCE(pAd, QueIdx) \
|
||||
do{}while(0)
|
||||
|
||||
@ -190,12 +180,11 @@ typedef union _TX_ATTENUATION_CTRL_STRUC {
|
||||
(((freeNum != (TX_RING_SIZE-1)) && (pAd->TxSwQueue[QueIdx].Number == 0)) || (freeNum<3))
|
||||
//(((freeNum) != (TX_RING_SIZE-1)) && (pAd->TxSwQueue[QueIdx].Number == 1 /*0*/))
|
||||
|
||||
|
||||
#define HAL_KickOutMgmtTx(_pAd, _QueIdx, _pPacket, _pSrcBufVA, _SrcBufLen) \
|
||||
RtmpPCIMgmtKickOut(_pAd, _QueIdx, _pPacket, _pSrcBufVA, _SrcBufLen)
|
||||
|
||||
#define HAL_WriteSubTxResource(pAd, pTxBlk, bIsLast, pFreeNumber) \
|
||||
/* RtmpPCI_WriteSubTxResource(pAd, pTxBlk, bIsLast, pFreeNumber)*/
|
||||
/* RtmpPCI_WriteSubTxResource(pAd, pTxBlk, bIsLast, pFreeNumber) */
|
||||
|
||||
#define HAL_WriteTxResource(pAd, pTxBlk,bIsLast, pFreeNumber) \
|
||||
RtmpPCI_WriteSingleTxResource(pAd, pTxBlk, bIsLast, pFreeNumber)
|
||||
@ -210,7 +199,7 @@ typedef union _TX_ATTENUATION_CTRL_STRUC {
|
||||
RtmpPCI_FinalWriteTxResource(_pAd, _pTxBlk, _TotalMPDUSize, _FirstTxIdx)
|
||||
|
||||
#define HAL_LastTxIdx(_pAd, _QueIdx,_LastTxIdx) \
|
||||
/*RtmpPCIDataLastTxIdx(_pAd, _QueIdx,_LastTxIdx)*/
|
||||
/*RtmpPCIDataLastTxIdx(_pAd, _QueIdx,_LastTxIdx) */
|
||||
|
||||
#define HAL_KickOutTx(_pAd, _pTxBlk, _QueIdx) \
|
||||
RTMP_IO_WRITE32((_pAd), TX_CTX_IDX0+((_QueIdx)*0x10), (_pAd)->TxRing[(_QueIdx)].TxCpuIdx)
|
||||
@ -225,17 +214,14 @@ typedef union _TX_ATTENUATION_CTRL_STRUC {
|
||||
: \
|
||||
(_pAd->TxRing[_QueIdx].TxSwFreeIdx + TX_RING_SIZE - _pAd->TxRing[_QueIdx].TxCpuIdx - 1);
|
||||
|
||||
|
||||
#define GET_MGMTRING_FREENO(_pAd) \
|
||||
(_pAd->MgmtRing.TxSwFreeIdx > _pAd->MgmtRing.TxCpuIdx) ? \
|
||||
(_pAd->MgmtRing.TxSwFreeIdx - _pAd->MgmtRing.TxCpuIdx - 1) \
|
||||
: \
|
||||
(_pAd->MgmtRing.TxSwFreeIdx + MGMT_RING_SIZE - _pAd->MgmtRing.TxCpuIdx - 1);
|
||||
|
||||
|
||||
/* ----------------- RX Related MACRO ----------------- */
|
||||
|
||||
|
||||
/* ----------------- ASIC Related MACRO ----------------- */
|
||||
// reset MAC of a station entry to 0x000000000000
|
||||
#define RTMP_STA_ENTRY_MAC_RESET(pAd, Wcid) \
|
||||
@ -272,7 +258,6 @@ typedef union _TX_ATTENUATION_CTRL_STRUC {
|
||||
pAd->SharedKey[apidx][KeyID].CipherAlg, \
|
||||
pEntry); }
|
||||
|
||||
|
||||
// Insert the BA bitmap to ASIC for the Wcid entry
|
||||
#define RTMP_ADD_BA_SESSION_TO_ASIC(_pAd, _Aid, _TID) \
|
||||
do{ \
|
||||
@ -283,9 +268,8 @@ typedef union _TX_ATTENUATION_CTRL_STRUC {
|
||||
RTMP_IO_WRITE32((_pAd), _Offset, _Value);\
|
||||
}while(0)
|
||||
|
||||
|
||||
// Remove the BA bitmap from ASIC for the Wcid entry
|
||||
// bitmap field starts at 0x10000 in ASIC WCID table
|
||||
// bitmap field starts at 0x10000 in ASIC WCID table
|
||||
#define RTMP_DEL_BA_SESSION_FROM_ASIC(_pAd, _Wcid, _TID) \
|
||||
do{ \
|
||||
UINT32 _Value = 0, _Offset; \
|
||||
@ -295,7 +279,6 @@ typedef union _TX_ATTENUATION_CTRL_STRUC {
|
||||
RTMP_IO_WRITE32((_pAd), _Offset, _Value); \
|
||||
}while(0)
|
||||
|
||||
|
||||
/* ----------------- Interface Related MACRO ----------------- */
|
||||
|
||||
//
|
||||
@ -314,7 +297,6 @@ typedef union _TX_ATTENUATION_CTRL_STRUC {
|
||||
RTMP_SET_FLAG((_pAd), fRTMP_ADAPTER_INTERRUPT_ACTIVE); \
|
||||
}while(0)
|
||||
|
||||
|
||||
#define RTMP_IRQ_INIT(pAd) \
|
||||
{ pAd->int_enable_reg = ((DELAYINTMASK) | \
|
||||
(RxINT|TxDataInt|TxMgmtInt)) & ~(0x03); \
|
||||
@ -326,7 +308,6 @@ typedef union _TX_ATTENUATION_CTRL_STRUC {
|
||||
RTMP_IO_WRITE32(pAd, INT_SOURCE_CSR, 0xffffffff);\
|
||||
RTMP_ASIC_INTERRUPT_ENABLE(pAd); }
|
||||
|
||||
|
||||
/* ----------------- MLME Related MACRO ----------------- */
|
||||
#define RTMP_MLME_HANDLER(pAd) MlmeHandler(pAd)
|
||||
|
||||
@ -344,7 +325,6 @@ typedef union _TX_ATTENUATION_CTRL_STRUC {
|
||||
/* ----------------- Power Save Related MACRO ----------------- */
|
||||
#define RTMP_PS_POLL_ENQUEUE(pAd) EnqueuePsPoll(pAd)
|
||||
|
||||
|
||||
// For RTMPPCIePowerLinkCtrlRestore () function
|
||||
#define RESTORE_HALT 1
|
||||
#define RESTORE_WAKEUP 2
|
||||
@ -358,7 +338,6 @@ typedef union _TX_ATTENUATION_CTRL_STRUC {
|
||||
#define CID2MASK 0x00ff0000
|
||||
#define CID3MASK 0xff000000
|
||||
|
||||
|
||||
#define RTMP_STA_FORCE_WAKEUP(pAd, bFromTx) \
|
||||
RT28xxPciStaAsicForceWakeup(pAd, bFromTx);
|
||||
|
||||
|
@ -43,13 +43,12 @@
|
||||
#include "../rtmp_iface.h"
|
||||
#include "../rtmp_dot11.h"
|
||||
|
||||
|
||||
#define USB_CYC_CFG 0x02a4
|
||||
|
||||
#define BEACON_RING_SIZE 2
|
||||
#define MGMTPIPEIDX 0 // EP6 is highest priority
|
||||
|
||||
#define RTMP_PKT_TAIL_PADDING 11 // 3(max 4 byte padding) + 4 (last packet padding) + 4 (MaxBulkOutsize align padding)
|
||||
#define RTMP_PKT_TAIL_PADDING 11 // 3(max 4 byte padding) + 4 (last packet padding) + 4 (MaxBulkOutsize align padding)
|
||||
|
||||
#define fRTMP_ADAPTER_NEED_STOP_TX \
|
||||
(fRTMP_ADAPTER_NIC_NOT_EXIST | fRTMP_ADAPTER_HALT_IN_PROGRESS | \
|
||||
@ -62,157 +61,146 @@
|
||||
#define RXINFO_SIZE 4
|
||||
#define RT2870_RXDMALEN_FIELD_SIZE 4
|
||||
|
||||
typedef struct PACKED _RXINFO_STRUC {
|
||||
UINT32 BA:1;
|
||||
UINT32 DATA:1;
|
||||
UINT32 NULLDATA:1;
|
||||
UINT32 FRAG:1;
|
||||
UINT32 U2M:1; // 1: this RX frame is unicast to me
|
||||
UINT32 Mcast:1; // 1: this is a multicast frame
|
||||
UINT32 Bcast:1; // 1: this is a broadcast frame
|
||||
UINT32 MyBss:1; // 1: this frame belongs to the same BSSID
|
||||
UINT32 Crc:1; // 1: CRC error
|
||||
UINT32 CipherErr:2; // 0: decryption okay, 1:ICV error, 2:MIC error, 3:KEY not valid
|
||||
UINT32 AMSDU:1; // rx with 802.3 header, not 802.11 header.
|
||||
UINT32 HTC:1;
|
||||
UINT32 RSSI:1;
|
||||
UINT32 L2PAD:1;
|
||||
UINT32 AMPDU:1; // To be moved
|
||||
UINT32 Decrypted:1;
|
||||
UINT32 PlcpRssil:1;
|
||||
UINT32 CipherAlg:1;
|
||||
UINT32 LastAMSDU:1;
|
||||
UINT32 PlcpSignal:12;
|
||||
} RXINFO_STRUC, *PRXINFO_STRUC, RT28XX_RXD_STRUC, *PRT28XX_RXD_STRUC;
|
||||
|
||||
typedef struct PACKED _RXINFO_STRUC {
|
||||
UINT32 BA:1;
|
||||
UINT32 DATA:1;
|
||||
UINT32 NULLDATA:1;
|
||||
UINT32 FRAG:1;
|
||||
UINT32 U2M:1; // 1: this RX frame is unicast to me
|
||||
UINT32 Mcast:1; // 1: this is a multicast frame
|
||||
UINT32 Bcast:1; // 1: this is a broadcast frame
|
||||
UINT32 MyBss:1; // 1: this frame belongs to the same BSSID
|
||||
UINT32 Crc:1; // 1: CRC error
|
||||
UINT32 CipherErr:2; // 0: decryption okay, 1:ICV error, 2:MIC error, 3:KEY not valid
|
||||
UINT32 AMSDU:1; // rx with 802.3 header, not 802.11 header.
|
||||
UINT32 HTC:1;
|
||||
UINT32 RSSI:1;
|
||||
UINT32 L2PAD:1;
|
||||
UINT32 AMPDU:1; // To be moved
|
||||
UINT32 Decrypted:1;
|
||||
UINT32 PlcpRssil:1;
|
||||
UINT32 CipherAlg:1;
|
||||
UINT32 LastAMSDU:1;
|
||||
UINT32 PlcpSignal:12;
|
||||
} RXINFO_STRUC, *PRXINFO_STRUC, RT28XX_RXD_STRUC, *PRT28XX_RXD_STRUC;
|
||||
|
||||
//
|
||||
// TXINFO
|
||||
//
|
||||
#define TXINFO_SIZE 4
|
||||
|
||||
typedef struct _TXINFO_STRUC {
|
||||
// Word 0
|
||||
UINT32 USBDMATxPktLen:16; //used ONLY in USB bulk Aggregation, Total byte counts of all sub-frame.
|
||||
UINT32 rsv:8;
|
||||
UINT32 WIV:1; // Wireless Info Valid. 1 if Driver already fill WI, o if DMA needs to copy WI to correctposition
|
||||
UINT32 QSEL:2; // select on-chip FIFO ID for 2nd-stage output scheduler.0:MGMT, 1:HCCA 2:EDCA
|
||||
UINT32 SwUseLastRound:1; // Software use.
|
||||
UINT32 rsv2:2; // Software use.
|
||||
UINT32 USBDMANextVLD:1; //used ONLY in USB bulk Aggregation, NextValid
|
||||
UINT32 USBDMATxburst:1;//used ONLY in USB bulk Aggre. Force USB DMA transmit frame from current selected endpoint
|
||||
} TXINFO_STRUC, *PTXINFO_STRUC;
|
||||
|
||||
typedef struct _TXINFO_STRUC {
|
||||
// Word 0
|
||||
UINT32 USBDMATxPktLen:16; //used ONLY in USB bulk Aggregation, Total byte counts of all sub-frame.
|
||||
UINT32 rsv:8;
|
||||
UINT32 WIV:1; // Wireless Info Valid. 1 if Driver already fill WI, o if DMA needs to copy WI to correctposition
|
||||
UINT32 QSEL:2; // select on-chip FIFO ID for 2nd-stage output scheduler.0:MGMT, 1:HCCA 2:EDCA
|
||||
UINT32 SwUseLastRound:1; // Software use.
|
||||
UINT32 rsv2:2; // Software use.
|
||||
UINT32 USBDMANextVLD:1; //used ONLY in USB bulk Aggregation, NextValid
|
||||
UINT32 USBDMATxburst:1; //used ONLY in USB bulk Aggre. Force USB DMA transmit frame from current selected endpoint
|
||||
} TXINFO_STRUC, *PTXINFO_STRUC;
|
||||
|
||||
//
|
||||
// Management ring buffer format
|
||||
//
|
||||
typedef struct _MGMT_STRUC {
|
||||
BOOLEAN Valid;
|
||||
PUCHAR pBuffer;
|
||||
ULONG Length;
|
||||
} MGMT_STRUC, *PMGMT_STRUC;
|
||||
|
||||
typedef struct _MGMT_STRUC {
|
||||
BOOLEAN Valid;
|
||||
PUCHAR pBuffer;
|
||||
ULONG Length;
|
||||
} MGMT_STRUC, *PMGMT_STRUC;
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
// The TX_BUFFER structure forms the transmitted USB packet to the device
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct __TX_BUFFER{
|
||||
union{
|
||||
UCHAR WirelessPacket[TX_BUFFER_NORMSIZE];
|
||||
HEADER_802_11 NullFrame;
|
||||
PSPOLL_FRAME PsPollPacket;
|
||||
RTS_FRAME RTSFrame;
|
||||
}field;
|
||||
UCHAR Aggregation[4]; //Buffer for save Aggregation size.
|
||||
typedef struct __TX_BUFFER {
|
||||
union {
|
||||
UCHAR WirelessPacket[TX_BUFFER_NORMSIZE];
|
||||
HEADER_802_11 NullFrame;
|
||||
PSPOLL_FRAME PsPollPacket;
|
||||
RTS_FRAME RTSFrame;
|
||||
} field;
|
||||
UCHAR Aggregation[4]; //Buffer for save Aggregation size.
|
||||
} TX_BUFFER, *PTX_BUFFER;
|
||||
|
||||
typedef struct __HTTX_BUFFER{
|
||||
union{
|
||||
UCHAR WirelessPacket[MAX_TXBULK_SIZE];
|
||||
HEADER_802_11 NullFrame;
|
||||
PSPOLL_FRAME PsPollPacket;
|
||||
RTS_FRAME RTSFrame;
|
||||
}field;
|
||||
UCHAR Aggregation[4]; //Buffer for save Aggregation size.
|
||||
typedef struct __HTTX_BUFFER {
|
||||
union {
|
||||
UCHAR WirelessPacket[MAX_TXBULK_SIZE];
|
||||
HEADER_802_11 NullFrame;
|
||||
PSPOLL_FRAME PsPollPacket;
|
||||
RTS_FRAME RTSFrame;
|
||||
} field;
|
||||
UCHAR Aggregation[4]; //Buffer for save Aggregation size.
|
||||
} HTTX_BUFFER, *PHTTX_BUFFER;
|
||||
|
||||
// used to track driver-generated write irps
|
||||
typedef struct _TX_CONTEXT {
|
||||
PVOID pAd; //Initialized in MiniportInitialize
|
||||
PURB pUrb; //Initialized in MiniportInitialize
|
||||
PIRP pIrp; //used to cancel pending bulk out.
|
||||
//Initialized in MiniportInitialize
|
||||
PTX_BUFFER TransferBuffer; //Initialized in MiniportInitialize
|
||||
ULONG BulkOutSize;
|
||||
UCHAR BulkOutPipeId;
|
||||
UCHAR SelfIdx;
|
||||
BOOLEAN InUse;
|
||||
BOOLEAN bWaitingBulkOut; // at least one packet is in this TxContext, ready for making IRP anytime.
|
||||
BOOLEAN bFullForBulkOut; // all tx buffer are full , so waiting for tx bulkout.
|
||||
BOOLEAN IRPPending;
|
||||
BOOLEAN LastOne;
|
||||
BOOLEAN bAggregatible;
|
||||
UCHAR Header_802_3[LENGTH_802_3];
|
||||
UCHAR Rsv[2];
|
||||
ULONG DataOffset;
|
||||
UINT TxRate;
|
||||
dma_addr_t data_dma; // urb dma on linux
|
||||
|
||||
} TX_CONTEXT, *PTX_CONTEXT, **PPTX_CONTEXT;
|
||||
|
||||
// used to track driver-generated write irps
|
||||
typedef struct _TX_CONTEXT
|
||||
{
|
||||
PVOID pAd; //Initialized in MiniportInitialize
|
||||
PURB pUrb; //Initialized in MiniportInitialize
|
||||
PIRP pIrp; //used to cancel pending bulk out.
|
||||
//Initialized in MiniportInitialize
|
||||
PTX_BUFFER TransferBuffer; //Initialized in MiniportInitialize
|
||||
ULONG BulkOutSize;
|
||||
UCHAR BulkOutPipeId;
|
||||
UCHAR SelfIdx;
|
||||
BOOLEAN InUse;
|
||||
BOOLEAN bWaitingBulkOut; // at least one packet is in this TxContext, ready for making IRP anytime.
|
||||
BOOLEAN bFullForBulkOut; // all tx buffer are full , so waiting for tx bulkout.
|
||||
BOOLEAN IRPPending;
|
||||
BOOLEAN LastOne;
|
||||
BOOLEAN bAggregatible;
|
||||
UCHAR Header_802_3[LENGTH_802_3];
|
||||
UCHAR Rsv[2];
|
||||
ULONG DataOffset;
|
||||
UINT TxRate;
|
||||
dma_addr_t data_dma; // urb dma on linux
|
||||
|
||||
} TX_CONTEXT, *PTX_CONTEXT, **PPTX_CONTEXT;
|
||||
|
||||
|
||||
// used to track driver-generated write irps
|
||||
typedef struct _HT_TX_CONTEXT
|
||||
{
|
||||
PVOID pAd; //Initialized in MiniportInitialize
|
||||
PURB pUrb; //Initialized in MiniportInitialize
|
||||
PIRP pIrp; //used to cancel pending bulk out.
|
||||
//Initialized in MiniportInitialize
|
||||
PHTTX_BUFFER TransferBuffer; //Initialized in MiniportInitialize
|
||||
ULONG BulkOutSize; // Indicate the total bulk-out size in bytes in one bulk-transmission
|
||||
UCHAR BulkOutPipeId;
|
||||
BOOLEAN IRPPending;
|
||||
BOOLEAN LastOne;
|
||||
BOOLEAN bCurWriting;
|
||||
BOOLEAN bRingEmpty;
|
||||
BOOLEAN bCopySavePad;
|
||||
UCHAR SavedPad[8];
|
||||
UCHAR Header_802_3[LENGTH_802_3];
|
||||
ULONG CurWritePosition; // Indicate the buffer offset which packet will be inserted start from.
|
||||
ULONG CurWriteRealPos; // Indicate the buffer offset which packet now are writing to.
|
||||
ULONG NextBulkOutPosition; // Indicate the buffer start offset of a bulk-transmission
|
||||
ULONG ENextBulkOutPosition; // Indicate the buffer end offset of a bulk-transmission
|
||||
UINT TxRate;
|
||||
dma_addr_t data_dma; // urb dma on linux
|
||||
} HT_TX_CONTEXT, *PHT_TX_CONTEXT, **PPHT_TX_CONTEXT;
|
||||
|
||||
typedef struct _HT_TX_CONTEXT {
|
||||
PVOID pAd; //Initialized in MiniportInitialize
|
||||
PURB pUrb; //Initialized in MiniportInitialize
|
||||
PIRP pIrp; //used to cancel pending bulk out.
|
||||
//Initialized in MiniportInitialize
|
||||
PHTTX_BUFFER TransferBuffer; //Initialized in MiniportInitialize
|
||||
ULONG BulkOutSize; // Indicate the total bulk-out size in bytes in one bulk-transmission
|
||||
UCHAR BulkOutPipeId;
|
||||
BOOLEAN IRPPending;
|
||||
BOOLEAN LastOne;
|
||||
BOOLEAN bCurWriting;
|
||||
BOOLEAN bRingEmpty;
|
||||
BOOLEAN bCopySavePad;
|
||||
UCHAR SavedPad[8];
|
||||
UCHAR Header_802_3[LENGTH_802_3];
|
||||
ULONG CurWritePosition; // Indicate the buffer offset which packet will be inserted start from.
|
||||
ULONG CurWriteRealPos; // Indicate the buffer offset which packet now are writing to.
|
||||
ULONG NextBulkOutPosition; // Indicate the buffer start offset of a bulk-transmission
|
||||
ULONG ENextBulkOutPosition; // Indicate the buffer end offset of a bulk-transmission
|
||||
UINT TxRate;
|
||||
dma_addr_t data_dma; // urb dma on linux
|
||||
} HT_TX_CONTEXT, *PHT_TX_CONTEXT, **PPHT_TX_CONTEXT;
|
||||
|
||||
//
|
||||
// Structure to keep track of receive packets and buffers to indicate
|
||||
// receive data to the protocol.
|
||||
//
|
||||
typedef struct _RX_CONTEXT
|
||||
{
|
||||
PUCHAR TransferBuffer;
|
||||
PVOID pAd;
|
||||
PIRP pIrp;//used to cancel pending bulk in.
|
||||
PURB pUrb;
|
||||
typedef struct _RX_CONTEXT {
|
||||
PUCHAR TransferBuffer;
|
||||
PVOID pAd;
|
||||
PIRP pIrp; //used to cancel pending bulk in.
|
||||
PURB pUrb;
|
||||
//These 2 Boolean shouldn't both be 1 at the same time.
|
||||
ULONG BulkInOffset; // number of packets waiting for reordering .
|
||||
// BOOLEAN ReorderInUse; // At least one packet in this buffer are in reordering buffer and wait for receive indication
|
||||
BOOLEAN bRxHandling; // Notify this packet is being process now.
|
||||
BOOLEAN InUse; // USB Hardware Occupied. Wait for USB HW to put packet.
|
||||
BOOLEAN Readable; // Receive Complete back. OK for driver to indicate receiving packet.
|
||||
BOOLEAN IRPPending; // TODO: To be removed
|
||||
atomic_t IrpLock;
|
||||
NDIS_SPIN_LOCK RxContextLock;
|
||||
dma_addr_t data_dma; // urb dma on linux
|
||||
} RX_CONTEXT, *PRX_CONTEXT;
|
||||
|
||||
|
||||
ULONG BulkInOffset; // number of packets waiting for reordering .
|
||||
// BOOLEAN ReorderInUse; // At least one packet in this buffer are in reordering buffer and wait for receive indication
|
||||
BOOLEAN bRxHandling; // Notify this packet is being process now.
|
||||
BOOLEAN InUse; // USB Hardware Occupied. Wait for USB HW to put packet.
|
||||
BOOLEAN Readable; // Receive Complete back. OK for driver to indicate receiving packet.
|
||||
BOOLEAN IRPPending; // TODO: To be removed
|
||||
atomic_t IrpLock;
|
||||
NDIS_SPIN_LOCK RxContextLock;
|
||||
dma_addr_t data_dma; // urb dma on linux
|
||||
} RX_CONTEXT, *PRX_CONTEXT;
|
||||
|
||||
/******************************************************************************
|
||||
|
||||
@ -221,13 +209,11 @@ typedef struct _RX_CONTEXT
|
||||
******************************************************************************/
|
||||
// 8051 firmware image for usb - use last-half base address = 0x3000
|
||||
#define FIRMWARE_IMAGE_BASE 0x3000
|
||||
#define MAX_FIRMWARE_IMAGE_SIZE 0x1000 // 4kbyte
|
||||
#define MAX_FIRMWARE_IMAGE_SIZE 0x1000 // 4kbyte
|
||||
|
||||
#define RTMP_WRITE_FIRMWARE(_pAd, _pFwImage, _FwLen) \
|
||||
RTUSBFirmwareWrite(_pAd, _pFwImage, _FwLen)
|
||||
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
|
||||
USB TX Related MACRO
|
||||
@ -281,7 +267,7 @@ typedef struct _RX_CONTEXT
|
||||
RtmpUSB_FinalWriteTxResource(pAd, pTxBlk, totalMPDUSize, TxIdx)
|
||||
|
||||
#define HAL_LastTxIdx(pAd, QueIdx,TxIdx) \
|
||||
/*RtmpUSBDataLastTxIdx(pAd, QueIdx,TxIdx)*/
|
||||
/*RtmpUSBDataLastTxIdx(pAd, QueIdx,TxIdx) */
|
||||
|
||||
#define HAL_KickOutTx(pAd, pTxBlk, QueIdx) \
|
||||
RtmpUSBDataKickOut(pAd, pTxBlk, QueIdx)
|
||||
@ -292,20 +278,17 @@ typedef struct _RX_CONTEXT
|
||||
#define HAL_KickOutNullFrameTx(_pAd, _QueIdx, _pNullFrame, _frameLen) \
|
||||
RtmpUSBNullFrameKickOut(_pAd, _QueIdx, _pNullFrame, _frameLen)
|
||||
|
||||
#define GET_TXRING_FREENO(_pAd, _QueIdx) (_QueIdx) //(_pAd->TxRing[_QueIdx].TxSwFreeIdx)
|
||||
#define GET_TXRING_FREENO(_pAd, _QueIdx) (_QueIdx) //(_pAd->TxRing[_QueIdx].TxSwFreeIdx)
|
||||
#define GET_MGMTRING_FREENO(_pAd) (_pAd->MgmtRing.TxSwFreeIdx)
|
||||
|
||||
|
||||
/* ----------------- RX Related MACRO ----------------- */
|
||||
|
||||
|
||||
/*
|
||||
* Device Hardware Interface Related MACRO
|
||||
*/
|
||||
#define RTMP_IRQ_INIT(pAd) do{}while(0)
|
||||
#define RTMP_IRQ_ENABLE(pAd) do{}while(0)
|
||||
|
||||
|
||||
/*
|
||||
* MLME Related MACRO
|
||||
*/
|
||||
@ -330,7 +313,6 @@ typedef struct _RX_CONTEXT
|
||||
RTUSBMlmeUp(_pAd); \
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Power Save Related MACRO
|
||||
*/
|
||||
|
@ -43,14 +43,12 @@
|
||||
//
|
||||
#define NIC2860_PCI_DEVICE_ID 0x0601
|
||||
#define NIC2860_PCIe_DEVICE_ID 0x0681
|
||||
#define NIC2760_PCI_DEVICE_ID 0x0701 // 1T/2R Cardbus ???
|
||||
#define NIC2790_PCIe_DEVICE_ID 0x0781 // 1T/2R miniCard
|
||||
|
||||
#define NIC2760_PCI_DEVICE_ID 0x0701 // 1T/2R Cardbus ???
|
||||
#define NIC2790_PCIe_DEVICE_ID 0x0781 // 1T/2R miniCard
|
||||
|
||||
#define VEN_AWT_PCIe_DEVICE_ID 0x1059
|
||||
#define VEN_AWT_PCI_VENDOR_ID 0x1A3B
|
||||
|
||||
#define EDIMAX_PCI_VENDOR_ID 0x1432
|
||||
|
||||
|
||||
#endif //__RT2860_H__ //
|
||||
|
@ -40,8 +40,7 @@
|
||||
#include "../rtmp_type.h"
|
||||
#include "mac_usb.h"
|
||||
|
||||
|
||||
//#define RTMP_CHIP_NAME "RT2870"
|
||||
//#define RTMP_CHIP_NAME "RT2870"
|
||||
|
||||
#endif // RT2870 //
|
||||
#endif //__RT2870_H__ //
|
||||
|
@ -39,7 +39,6 @@
|
||||
|
||||
#ifdef RT3070
|
||||
|
||||
|
||||
#ifndef RTMP_USB_SUPPORT
|
||||
#error "For RT3070, you should define the compile flag -DRTMP_USB_SUPPORT"
|
||||
#endif
|
||||
|
@ -63,9 +63,9 @@
|
||||
//
|
||||
// Device ID & Vendor ID, these values should match EEPROM value
|
||||
//
|
||||
#define NIC3090_PCIe_DEVICE_ID 0x3090 // 1T/1R miniCard
|
||||
#define NIC3091_PCIe_DEVICE_ID 0x3091 // 1T/2R miniCard
|
||||
#define NIC3092_PCIe_DEVICE_ID 0x3092 // 2T/2R miniCard
|
||||
#define NIC3090_PCIe_DEVICE_ID 0x3090 // 1T/1R miniCard
|
||||
#define NIC3091_PCIe_DEVICE_ID 0x3091 // 1T/2R miniCard
|
||||
#define NIC3092_PCIe_DEVICE_ID 0x3092 // 2T/2R miniCard
|
||||
|
||||
#endif // RT3090 //
|
||||
|
||||
|
@ -39,7 +39,6 @@
|
||||
|
||||
#ifdef RT30xx
|
||||
|
||||
|
||||
extern REG_PAIR RT30xx_RFRegTable[];
|
||||
extern UCHAR NUM_RF_REG_PARMS;
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -38,7 +38,6 @@
|
||||
#ifndef __RTMP_PHY_H__
|
||||
#define __RTMP_PHY_H__
|
||||
|
||||
|
||||
/*
|
||||
RF sections
|
||||
*/
|
||||
@ -75,31 +74,30 @@
|
||||
#define RF_R30 30
|
||||
#define RF_R31 31
|
||||
|
||||
|
||||
// value domain of pAd->RfIcType
|
||||
#define RFIC_2820 1 // 2.4G 2T3R
|
||||
#define RFIC_2850 2 // 2.4G/5G 2T3R
|
||||
#define RFIC_2720 3 // 2.4G 1T2R
|
||||
#define RFIC_2750 4 // 2.4G/5G 1T2R
|
||||
#define RFIC_3020 5 // 2.4G 1T1R
|
||||
#define RFIC_2020 6 // 2.4G B/G
|
||||
#define RFIC_3021 7 // 2.4G 1T2R
|
||||
#define RFIC_3022 8 // 2.4G 2T2R
|
||||
#define RFIC_3052 9 // 2.4G/5G 2T2R
|
||||
#define RFIC_2820 1 // 2.4G 2T3R
|
||||
#define RFIC_2850 2 // 2.4G/5G 2T3R
|
||||
#define RFIC_2720 3 // 2.4G 1T2R
|
||||
#define RFIC_2750 4 // 2.4G/5G 1T2R
|
||||
#define RFIC_3020 5 // 2.4G 1T1R
|
||||
#define RFIC_2020 6 // 2.4G B/G
|
||||
#define RFIC_3021 7 // 2.4G 1T2R
|
||||
#define RFIC_3022 8 // 2.4G 2T2R
|
||||
#define RFIC_3052 9 // 2.4G/5G 2T2R
|
||||
|
||||
/*
|
||||
BBP sections
|
||||
*/
|
||||
#define BBP_R0 0 // version
|
||||
#define BBP_R1 1 // TSSI
|
||||
#define BBP_R2 2 // TX configure
|
||||
#define BBP_R0 0 // version
|
||||
#define BBP_R1 1 // TSSI
|
||||
#define BBP_R2 2 // TX configure
|
||||
#define BBP_R3 3
|
||||
#define BBP_R4 4
|
||||
#define BBP_R5 5
|
||||
#define BBP_R6 6
|
||||
#define BBP_R14 14 // RX configure
|
||||
#define BBP_R14 14 // RX configure
|
||||
#define BBP_R16 16
|
||||
#define BBP_R17 17 // RX sensibility
|
||||
#define BBP_R17 17 // RX sensibility
|
||||
#define BBP_R18 18
|
||||
#define BBP_R21 21
|
||||
#define BBP_R22 22
|
||||
@ -108,12 +106,12 @@
|
||||
#define BBP_R26 26
|
||||
#define BBP_R27 27
|
||||
#define BBP_R31 31
|
||||
#define BBP_R49 49 //TSSI
|
||||
#define BBP_R49 49 //TSSI
|
||||
#define BBP_R50 50
|
||||
#define BBP_R51 51
|
||||
#define BBP_R52 52
|
||||
#define BBP_R55 55
|
||||
#define BBP_R62 62 // Rx SQ0 Threshold HIGH
|
||||
#define BBP_R62 62 // Rx SQ0 Threshold HIGH
|
||||
#define BBP_R63 63
|
||||
#define BBP_R64 64
|
||||
#define BBP_R65 65
|
||||
@ -121,7 +119,7 @@
|
||||
#define BBP_R67 67
|
||||
#define BBP_R68 68
|
||||
#define BBP_R69 69
|
||||
#define BBP_R70 70 // Rx AGC SQ CCK Xcorr threshold
|
||||
#define BBP_R70 70 // Rx AGC SQ CCK Xcorr threshold
|
||||
#define BBP_R73 73
|
||||
#define BBP_R75 75
|
||||
#define BBP_R77 77
|
||||
@ -135,7 +133,7 @@
|
||||
#define BBP_R86 86
|
||||
#define BBP_R91 91
|
||||
#define BBP_R92 92
|
||||
#define BBP_R94 94 // Tx Gain Control
|
||||
#define BBP_R94 94 // Tx Gain Control
|
||||
#define BBP_R103 103
|
||||
#define BBP_R105 105
|
||||
#define BBP_R106 106
|
||||
@ -151,16 +149,16 @@
|
||||
#define BBP_R122 122
|
||||
#define BBP_R123 123
|
||||
#ifdef RT30xx
|
||||
#define BBP_R138 138 // add by johnli, RF power sequence setup, ADC dynamic on/off control
|
||||
#define BBP_R138 138 // add by johnli, RF power sequence setup, ADC dynamic on/off control
|
||||
#endif // RT30xx //
|
||||
|
||||
#define BBPR94_DEFAULT 0x06 // Add 1 value will gain 1db
|
||||
#define BBPR94_DEFAULT 0x06 // Add 1 value will gain 1db
|
||||
|
||||
//
|
||||
// BBP & RF are using indirect access. Before write any value into it.
|
||||
// We have to make sure there is no outstanding command pending via checking busy bit.
|
||||
//
|
||||
#define MAX_BUSY_COUNT 100 // Number of retry before failing access BBP & RF indirect register
|
||||
#define MAX_BUSY_COUNT 100 // Number of retry before failing access BBP & RF indirect register
|
||||
|
||||
//#define PHY_TR_SWITCH_TIME 5 // usec
|
||||
|
||||
@ -416,7 +414,6 @@
|
||||
} \
|
||||
}while(0)
|
||||
|
||||
|
||||
/*
|
||||
This marco used for the BBP write operation which didn't need via MCU.
|
||||
*/
|
||||
@ -539,7 +536,6 @@
|
||||
RTMP_IO_WRITE32(_pAd, 0x1210, _macData); \
|
||||
}while(0)
|
||||
|
||||
|
||||
#define RTMP_ASIC_MMPS_ENABLE(_pAd) \
|
||||
do{ \
|
||||
UINT32 _macData; \
|
||||
|
@ -41,7 +41,6 @@
|
||||
#include "rtmp_type.h"
|
||||
#include "rtmp_def.h"
|
||||
|
||||
|
||||
#define ODOR 0
|
||||
#define IDOR 1
|
||||
#define BOTH 2
|
||||
@ -53,28 +52,27 @@
|
||||
typedef struct _CH_DESP {
|
||||
UCHAR FirstChannel;
|
||||
UCHAR NumOfCh;
|
||||
CHAR MaxTxPwr; // dBm
|
||||
UCHAR Geography; // 0:out door, 1:in door, 2:both
|
||||
BOOLEAN DfsReq; // Dfs require, 0: No, 1: yes.
|
||||
CHAR MaxTxPwr; // dBm
|
||||
UCHAR Geography; // 0:out door, 1:in door, 2:both
|
||||
BOOLEAN DfsReq; // Dfs require, 0: No, 1: yes.
|
||||
} CH_DESP, *PCH_DESP;
|
||||
|
||||
typedef struct _CH_REGION {
|
||||
UCHAR CountReg[3];
|
||||
UCHAR DfsType; // 0: CE, 1: FCC, 2: JAP, 3:JAP_W53, JAP_W56
|
||||
UCHAR DfsType; // 0: CE, 1: FCC, 2: JAP, 3:JAP_W53, JAP_W56
|
||||
CH_DESP ChDesp[10];
|
||||
} CH_REGION, *PCH_REGION;
|
||||
|
||||
extern CH_REGION ChRegion[];
|
||||
|
||||
typedef struct _CH_FREQ_MAP_{
|
||||
UINT16 channel;
|
||||
UINT16 freqKHz;
|
||||
}CH_FREQ_MAP;
|
||||
typedef struct _CH_FREQ_MAP_ {
|
||||
UINT16 channel;
|
||||
UINT16 freqKHz;
|
||||
} CH_FREQ_MAP;
|
||||
|
||||
extern CH_FREQ_MAP CH_HZ_ID_MAP[];
|
||||
extern int CH_HZ_ID_MAP_NUM;
|
||||
|
||||
|
||||
#define MAP_CHANNEL_ID_TO_KHZ(_ch, _khz) \
|
||||
do{ \
|
||||
int _chIdx; \
|
||||
@ -105,24 +103,15 @@ extern int CH_HZ_ID_MAP_NUM;
|
||||
(_ch) = 1; \
|
||||
}while(0)
|
||||
|
||||
VOID BuildChannelListEx(IN PRTMP_ADAPTER pAd);
|
||||
|
||||
VOID BuildChannelListEx(
|
||||
IN PRTMP_ADAPTER pAd);
|
||||
VOID BuildBeaconChList(IN PRTMP_ADAPTER pAd,
|
||||
OUT PUCHAR pBuf, OUT PULONG pBufLen);
|
||||
|
||||
VOID BuildBeaconChList(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
OUT PUCHAR pBuf,
|
||||
OUT PULONG pBufLen);
|
||||
VOID N_ChannelCheck(IN PRTMP_ADAPTER pAd);
|
||||
|
||||
VOID N_ChannelCheck(
|
||||
IN PRTMP_ADAPTER pAd);
|
||||
VOID N_SetCenCh(IN PRTMP_ADAPTER pAd);
|
||||
|
||||
VOID N_SetCenCh(
|
||||
IN PRTMP_ADAPTER pAd);
|
||||
|
||||
UINT8 GetCuntryMaxTxPwr(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN UINT8 channel);
|
||||
UINT8 GetCuntryMaxTxPwr(IN PRTMP_ADAPTER pAd, IN UINT8 channel);
|
||||
|
||||
#endif // __CHLIST_H__
|
||||
|
||||
|
@ -39,23 +39,18 @@
|
||||
#ifndef __ACTION_H__
|
||||
#define __ACTION_H__
|
||||
|
||||
typedef struct PACKED __HT_INFO_OCTET
|
||||
{
|
||||
UCHAR Request:1;
|
||||
UCHAR Forty_MHz_Intolerant:1;
|
||||
UCHAR STA_Channel_Width:1;
|
||||
UCHAR Reserved:5;
|
||||
typedef struct PACKED __HT_INFO_OCTET {
|
||||
UCHAR Request:1;
|
||||
UCHAR Forty_MHz_Intolerant:1;
|
||||
UCHAR STA_Channel_Width:1;
|
||||
UCHAR Reserved:5;
|
||||
} HT_INFORMATION_OCTET;
|
||||
|
||||
|
||||
typedef struct PACKED __FRAME_HT_INFO
|
||||
{
|
||||
HEADER_802_11 Hdr;
|
||||
UCHAR Category;
|
||||
UCHAR Action;
|
||||
HT_INFORMATION_OCTET HT_Info;
|
||||
} FRAME_HT_INFO, *PFRAME_HT_INFO;
|
||||
typedef struct PACKED __FRAME_HT_INFO {
|
||||
HEADER_802_11 Hdr;
|
||||
UCHAR Category;
|
||||
UCHAR Action;
|
||||
HT_INFORMATION_OCTET HT_Info;
|
||||
} FRAME_HT_INFO, *PFRAME_HT_INFO;
|
||||
|
||||
#endif /* __ACTION_H__ */
|
||||
|
||||
|
||||
|
@ -48,24 +48,18 @@
|
||||
|
||||
#ifdef SHA1_SUPPORT
|
||||
#define HMAC_SHA1_SUPPORT
|
||||
VOID HMAC_SHA1 (
|
||||
IN const UINT8 Key[],
|
||||
IN UINT KeyLen,
|
||||
IN const UINT8 Message[],
|
||||
IN UINT MessageLen,
|
||||
OUT UINT8 MAC[],
|
||||
IN UINT MACLen);
|
||||
VOID HMAC_SHA1(IN const UINT8 Key[],
|
||||
IN UINT KeyLen,
|
||||
IN const UINT8 Message[],
|
||||
IN UINT MessageLen, OUT UINT8 MAC[], IN UINT MACLen);
|
||||
#endif /* SHA1_SUPPORT */
|
||||
|
||||
#ifdef MD5_SUPPORT
|
||||
#define HMAC_MD5_SUPPORT
|
||||
VOID HMAC_MD5 (
|
||||
IN const UINT8 Key[],
|
||||
IN UINT KeyLen,
|
||||
IN const UINT8 Message[],
|
||||
IN UINT MessageLen,
|
||||
OUT UINT8 MAC[],
|
||||
IN UINT MACLen);
|
||||
VOID HMAC_MD5(IN const UINT8 Key[],
|
||||
IN UINT KeyLen,
|
||||
IN const UINT8 Message[],
|
||||
IN UINT MessageLen, OUT UINT8 MAC[], IN UINT MACLen);
|
||||
#endif /* MD5_SUPPORT */
|
||||
|
||||
#endif /* __CRYPT_HMAC_H__ */
|
||||
|
@ -51,30 +51,22 @@
|
||||
#define MD5_SUPPORT
|
||||
|
||||
#ifdef MD5_SUPPORT
|
||||
#define MD5_BLOCK_SIZE 64 /* 512 bits = 64 bytes */
|
||||
#define MD5_DIGEST_SIZE 16 /* 128 bits = 16 bytes */
|
||||
#define MD5_BLOCK_SIZE 64 /* 512 bits = 64 bytes */
|
||||
#define MD5_DIGEST_SIZE 16 /* 128 bits = 16 bytes */
|
||||
typedef struct {
|
||||
UINT32 HashValue[4];
|
||||
UINT64 MessageLen;
|
||||
UINT8 Block[MD5_BLOCK_SIZE];
|
||||
UINT BlockLen;
|
||||
UINT32 HashValue[4];
|
||||
UINT64 MessageLen;
|
||||
UINT8 Block[MD5_BLOCK_SIZE];
|
||||
UINT BlockLen;
|
||||
} MD5_CTX_STRUC, *PMD5_CTX_STRUC;
|
||||
|
||||
VOID MD5_Init (
|
||||
IN MD5_CTX_STRUC *pMD5_CTX);
|
||||
VOID MD5_Hash (
|
||||
IN MD5_CTX_STRUC *pMD5_CTX);
|
||||
VOID MD5_Append (
|
||||
IN MD5_CTX_STRUC *pMD5_CTX,
|
||||
IN const UINT8 Message[],
|
||||
IN UINT MessageLen);
|
||||
VOID MD5_End (
|
||||
IN MD5_CTX_STRUC *pMD5_CTX,
|
||||
OUT UINT8 DigestMessage[]);
|
||||
VOID RT_MD5 (
|
||||
IN const UINT8 Message[],
|
||||
IN UINT MessageLen,
|
||||
OUT UINT8 DigestMessage[]);
|
||||
VOID MD5_Init(IN MD5_CTX_STRUC * pMD5_CTX);
|
||||
VOID MD5_Hash(IN MD5_CTX_STRUC * pMD5_CTX);
|
||||
VOID MD5_Append(IN MD5_CTX_STRUC * pMD5_CTX,
|
||||
IN const UINT8 Message[], IN UINT MessageLen);
|
||||
VOID MD5_End(IN MD5_CTX_STRUC * pMD5_CTX, OUT UINT8 DigestMessage[]);
|
||||
VOID RT_MD5(IN const UINT8 Message[],
|
||||
IN UINT MessageLen, OUT UINT8 DigestMessage[]);
|
||||
#endif /* MD5_SUPPORT */
|
||||
|
||||
#endif /* __CRYPT_MD5_H__ */
|
||||
|
@ -52,30 +52,22 @@
|
||||
#define SHA1_SUPPORT
|
||||
|
||||
#ifdef SHA1_SUPPORT
|
||||
#define SHA1_BLOCK_SIZE 64 /* 512 bits = 64 bytes */
|
||||
#define SHA1_DIGEST_SIZE 20 /* 160 bits = 20 bytes */
|
||||
#define SHA1_BLOCK_SIZE 64 /* 512 bits = 64 bytes */
|
||||
#define SHA1_DIGEST_SIZE 20 /* 160 bits = 20 bytes */
|
||||
typedef struct _SHA1_CTX_STRUC {
|
||||
UINT32 HashValue[5]; /* 5 = (SHA1_DIGEST_SIZE / 32) */
|
||||
UINT64 MessageLen; /* total size */
|
||||
UINT8 Block[SHA1_BLOCK_SIZE];
|
||||
UINT BlockLen;
|
||||
UINT32 HashValue[5]; /* 5 = (SHA1_DIGEST_SIZE / 32) */
|
||||
UINT64 MessageLen; /* total size */
|
||||
UINT8 Block[SHA1_BLOCK_SIZE];
|
||||
UINT BlockLen;
|
||||
} SHA1_CTX_STRUC, *PSHA1_CTX_STRUC;
|
||||
|
||||
VOID RT_SHA1_Init (
|
||||
IN SHA1_CTX_STRUC *pSHA_CTX);
|
||||
VOID SHA1_Hash (
|
||||
IN SHA1_CTX_STRUC *pSHA_CTX);
|
||||
VOID SHA1_Append (
|
||||
IN SHA1_CTX_STRUC *pSHA_CTX,
|
||||
IN const UINT8 Message[],
|
||||
IN UINT MessageLen);
|
||||
VOID SHA1_End (
|
||||
IN SHA1_CTX_STRUC *pSHA_CTX,
|
||||
OUT UINT8 DigestMessage[]);
|
||||
VOID RT_SHA1 (
|
||||
IN const UINT8 Message[],
|
||||
IN UINT MessageLen,
|
||||
OUT UINT8 DigestMessage[]);
|
||||
VOID RT_SHA1_Init(IN SHA1_CTX_STRUC * pSHA_CTX);
|
||||
VOID SHA1_Hash(IN SHA1_CTX_STRUC * pSHA_CTX);
|
||||
VOID SHA1_Append(IN SHA1_CTX_STRUC * pSHA_CTX,
|
||||
IN const UINT8 Message[], IN UINT MessageLen);
|
||||
VOID SHA1_End(IN SHA1_CTX_STRUC * pSHA_CTX, OUT UINT8 DigestMessage[]);
|
||||
VOID RT_SHA1(IN const UINT8 Message[],
|
||||
IN UINT MessageLen, OUT UINT8 DigestMessage[]);
|
||||
#endif /* SHA1_SUPPORT */
|
||||
|
||||
#endif /* __CRYPT_SHA2_H__ */
|
||||
|
@ -36,6 +36,4 @@
|
||||
Fonchi 03-12-2007 created
|
||||
*/
|
||||
|
||||
BOOLEAN RadarChannelCheck(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN UCHAR Ch);
|
||||
BOOLEAN RadarChannelCheck(IN PRTMP_ADAPTER pAd, IN UCHAR Ch);
|
||||
|
@ -24,7 +24,6 @@
|
||||
* *
|
||||
*************************************************************************
|
||||
|
||||
|
||||
Module Name:
|
||||
eeprom.h
|
||||
|
||||
@ -38,41 +37,31 @@
|
||||
#ifndef __EEPROM_H__
|
||||
#define __EEPROM_H__
|
||||
|
||||
|
||||
|
||||
#ifdef RTMP_PCI_SUPPORT
|
||||
/*************************************************************************
|
||||
* Public function declarations for prom-based chipset
|
||||
************************************************************************/
|
||||
int rtmp_ee_prom_read16(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN USHORT Offset,
|
||||
OUT USHORT *pValue);
|
||||
int rtmp_ee_prom_read16(IN PRTMP_ADAPTER pAd,
|
||||
IN USHORT Offset, OUT USHORT * pValue);
|
||||
#endif // RTMP_PCI_SUPPORT //
|
||||
#ifdef RTMP_USB_SUPPORT
|
||||
/*************************************************************************
|
||||
* Public function declarations for usb-based prom chipset
|
||||
************************************************************************/
|
||||
NTSTATUS RTUSBReadEEPROM16(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN USHORT offset,
|
||||
OUT PUSHORT pData);
|
||||
NTSTATUS RTUSBReadEEPROM16(IN PRTMP_ADAPTER pAd,
|
||||
IN USHORT offset, OUT PUSHORT pData);
|
||||
#endif // RTMP_USB_SUPPORT //
|
||||
|
||||
#ifdef RT30xx
|
||||
#ifdef RTMP_EFUSE_SUPPORT
|
||||
int rtmp_ee_efuse_read16(
|
||||
IN RTMP_ADAPTER *pAd,
|
||||
IN USHORT Offset,
|
||||
OUT USHORT *pValue);
|
||||
int rtmp_ee_efuse_read16(IN RTMP_ADAPTER * pAd,
|
||||
IN USHORT Offset, OUT USHORT * pValue);
|
||||
#endif // RTMP_EFUSE_SUPPORT //
|
||||
#endif // RT30xx //
|
||||
|
||||
/*************************************************************************
|
||||
* Public function declarations for prom operation callback functions setting
|
||||
************************************************************************/
|
||||
INT RtmpChipOpsEepromHook(
|
||||
IN RTMP_ADAPTER *pAd,
|
||||
IN INT infType);
|
||||
INT RtmpChipOpsEepromHook(IN RTMP_ADAPTER * pAd, IN INT infType);
|
||||
|
||||
#endif // __EEPROM_H__ //
|
||||
|
@ -31,7 +31,6 @@
|
||||
#define RT28XX_HANDLE_DEV_ASSIGN(handle, dev_p) \
|
||||
((POS_COOKIE)handle)->pci_dev = dev_p;
|
||||
|
||||
|
||||
#ifdef LINUX
|
||||
// set driver data
|
||||
#define RT28XX_DRVDATA_SET(_a) pci_set_drvdata(_a, net_dev);
|
||||
@ -64,7 +63,6 @@
|
||||
pci_resource_len(dev_p, 0)); } \
|
||||
if (net_dev->irq) pci_release_regions(dev_p); }
|
||||
|
||||
|
||||
#define PCI_REG_READ_WORD(pci_dev, offset, Configuration) \
|
||||
if (pci_read_config_word(pci_dev, offset, ®16) == 0) \
|
||||
Configuration = le2cpu16(reg16); \
|
||||
@ -77,5 +75,4 @@
|
||||
|
||||
#endif // LINUX //
|
||||
|
||||
|
||||
#endif // __RTMP_PCI_H__ //
|
||||
|
@ -28,28 +28,24 @@
|
||||
#ifndef __RTMP_USB_H__
|
||||
#define __RTMP_USB_H__
|
||||
|
||||
|
||||
#include "../rtusb_io.h"
|
||||
|
||||
|
||||
#ifdef LINUX
|
||||
#include <linux/usb.h>
|
||||
|
||||
typedef struct usb_device * PUSB_DEV;
|
||||
typedef struct usb_device *PUSB_DEV;
|
||||
typedef struct urb *purbb_t;
|
||||
typedef struct usb_ctrlrequest devctrlrequest;
|
||||
#endif // LINUX //
|
||||
|
||||
extern UCHAR EpToQueue[6];
|
||||
|
||||
|
||||
#define RXBULKAGGRE_ZISE 12
|
||||
#define MAX_TXBULK_LIMIT (LOCAL_TXBUF_SIZE*(BULKAGGRE_ZISE-1))
|
||||
#define MAX_TXBULK_SIZE (LOCAL_TXBUF_SIZE*BULKAGGRE_ZISE)
|
||||
#define MAX_RXBULK_SIZE (LOCAL_TXBUF_SIZE*RXBULKAGGRE_ZISE)
|
||||
#define MAX_MLME_HANDLER_MEMORY 20
|
||||
|
||||
|
||||
// Flags for Bulkflags control for bulk out data
|
||||
//
|
||||
#define fRTUSB_BULK_OUT_DATA_NULL 0x00000001
|
||||
@ -69,7 +65,6 @@ extern UCHAR EpToQueue[6];
|
||||
|
||||
// TODO:move to ./ate/include/iface/ate_usb.h
|
||||
|
||||
|
||||
#define FREE_HTTX_RING(_pCookie, _pipeId, _txContext) \
|
||||
{ \
|
||||
if ((_txContext)->ENextBulkOutPosition == (_txContext)->CurWritePosition) \
|
||||
@ -79,8 +74,6 @@ extern UCHAR EpToQueue[6];
|
||||
/*NdisInterlockedDecrement(&(_p)->TxCount); */\
|
||||
}
|
||||
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
|
||||
USB Bulk operation related definitions
|
||||
@ -100,7 +93,7 @@ extern UCHAR EpToQueue[6];
|
||||
// unlink urb
|
||||
#define RTUSB_UNLINK_URB(pUrb) usb_kill_urb(pUrb)
|
||||
|
||||
extern void dump_urb(struct urb* purb);
|
||||
extern void dump_urb(struct urb *purb);
|
||||
|
||||
#define InterlockedIncrement atomic_inc
|
||||
#define NdisInterlockedIncrement atomic_inc
|
||||
@ -110,12 +103,8 @@ extern void dump_urb(struct urb* purb);
|
||||
|
||||
#endif // LINUX //
|
||||
|
||||
|
||||
|
||||
#define NT_SUCCESS(status) (((status) >=0) ? (TRUE):(FALSE))
|
||||
|
||||
|
||||
|
||||
#define USBD_TRANSFER_DIRECTION_OUT 0
|
||||
#define USBD_TRANSFER_DIRECTION_IN 0
|
||||
#define USBD_SHORT_TRANSFER_OK 0
|
||||
@ -131,7 +120,6 @@ extern void dump_urb(struct urb* purb);
|
||||
#define CONTROL_TIMEOUT_JIFFIES ( (100 * OS_HZ) / 1000)
|
||||
#define UNLINK_TIMEOUT_MS 3
|
||||
|
||||
|
||||
VOID RTUSBBulkOutDataPacketComplete(purbb_t purb, struct pt_regs *pt_regs);
|
||||
VOID RTUSBBulkOutMLMEPacketComplete(purbb_t pUrb, struct pt_regs *pt_regs);
|
||||
VOID RTUSBBulkOutNullFrameComplete(purbb_t pUrb, struct pt_regs *pt_regs);
|
||||
@ -139,7 +127,6 @@ VOID RTUSBBulkOutRTSFrameComplete(purbb_t pUrb, struct pt_regs *pt_regs);
|
||||
VOID RTUSBBulkOutPsPollComplete(purbb_t pUrb, struct pt_regs *pt_regs);
|
||||
VOID RTUSBBulkRxComplete(purbb_t pUrb, struct pt_regs *pt_regs);
|
||||
|
||||
|
||||
#ifdef KTHREAD_SUPPORT
|
||||
#define RTUSBMlmeUp(pAd) \
|
||||
do{ \
|
||||
@ -196,5 +183,4 @@ VOID RTUSBBulkRxComplete(purbb_t pUrb, struct pt_regs *pt_regs);
|
||||
#define RTMP_IRQ_REQUEST(net_dev) do{}while(0)
|
||||
#define RTMP_IRQ_RELEASE(net_dev) do{}while(0)
|
||||
|
||||
|
||||
#endif // __RTMP_USB_H__ //
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -68,5 +68,4 @@
|
||||
#include "igmp_snoop.h"
|
||||
#endif // IGMP_SNOOP_SUPPORT //
|
||||
|
||||
#endif // __RT_CONFIG_H__
|
||||
|
||||
#endif // __RT_CONFIG_H__
|
||||
|
@ -79,7 +79,6 @@
|
||||
* Profile related sections
|
||||
***********************************************************************************/
|
||||
|
||||
|
||||
#ifdef RTMP_MAC_PCI
|
||||
#define STA_PROFILE_PATH "/etc/Wireless/RT2860STA/RT2860STA.dat"
|
||||
#define STA_DRIVER_VERSION "2.1.0.0"
|
||||
@ -90,8 +89,7 @@
|
||||
// RT3070 version: 2.1.1.0
|
||||
#endif // RTMP_MAC_USB //
|
||||
|
||||
extern const struct iw_handler_def rt28xx_iw_handler_def;
|
||||
|
||||
extern const struct iw_handler_def rt28xx_iw_handler_def;
|
||||
|
||||
/***********************************************************************************
|
||||
* Compiler related definitions
|
||||
@ -103,23 +101,23 @@ extern const struct iw_handler_def rt28xx_iw_handler_def;
|
||||
#define INOUT
|
||||
#define NDIS_STATUS INT
|
||||
|
||||
|
||||
/***********************************************************************************
|
||||
* OS Specific definitions and data structures
|
||||
***********************************************************************************/
|
||||
typedef struct pci_dev * PPCI_DEV;
|
||||
typedef struct net_device * PNET_DEV;
|
||||
typedef void * PNDIS_PACKET;
|
||||
typedef char NDIS_PACKET;
|
||||
typedef PNDIS_PACKET * PPNDIS_PACKET;
|
||||
typedef dma_addr_t NDIS_PHYSICAL_ADDRESS;
|
||||
typedef dma_addr_t * PNDIS_PHYSICAL_ADDRESS;
|
||||
typedef void * NDIS_HANDLE;
|
||||
typedef char * PNDIS_BUFFER;
|
||||
typedef struct pid * RTMP_OS_PID;
|
||||
typedef struct semaphore RTMP_OS_SEM;
|
||||
typedef struct pci_dev *PPCI_DEV;
|
||||
typedef struct net_device *PNET_DEV;
|
||||
typedef void *PNDIS_PACKET;
|
||||
typedef char NDIS_PACKET;
|
||||
typedef PNDIS_PACKET *PPNDIS_PACKET;
|
||||
typedef dma_addr_t NDIS_PHYSICAL_ADDRESS;
|
||||
typedef dma_addr_t *PNDIS_PHYSICAL_ADDRESS;
|
||||
typedef void *NDIS_HANDLE;
|
||||
typedef char *PNDIS_BUFFER;
|
||||
typedef struct pid *RTMP_OS_PID;
|
||||
typedef struct semaphore RTMP_OS_SEM;
|
||||
|
||||
typedef int (*HARD_START_XMIT_FUNC)(struct sk_buff *skb, struct net_device *net_dev);
|
||||
typedef int (*HARD_START_XMIT_FUNC) (struct sk_buff * skb,
|
||||
struct net_device * net_dev);
|
||||
|
||||
#ifdef RTMP_MAC_PCI
|
||||
#ifndef PCI_DEVICE
|
||||
@ -142,11 +140,8 @@ typedef int (*HARD_START_XMIT_FUNC)(struct sk_buff *skb, struct net_device *net_
|
||||
#define RTMP_DEC_REF(_A) 0
|
||||
#define RTMP_GET_REF(_A) 0
|
||||
|
||||
|
||||
// This function will be called when query /proc
|
||||
struct iw_statistics *rt28xx_get_wireless_stats(
|
||||
IN struct net_device *net_dev);
|
||||
|
||||
struct iw_statistics *rt28xx_get_wireless_stats(IN struct net_device *net_dev);
|
||||
|
||||
/***********************************************************************************
|
||||
* Network related constant definitions
|
||||
@ -178,18 +173,16 @@ struct iw_statistics *rt28xx_get_wireless_stats(
|
||||
#define STATS_INC_RX_DROPPED(_pAd, _dev)
|
||||
#define STATS_INC_TX_DROPPED(_pAd, _dev)
|
||||
|
||||
|
||||
/***********************************************************************************
|
||||
* Ralink Specific network related constant definitions
|
||||
***********************************************************************************/
|
||||
#define MIN_NET_DEVICE_FOR_AID 0x00 //0x00~0x3f
|
||||
#define MIN_NET_DEVICE_FOR_MBSSID 0x00 //0x00,0x10,0x20,0x30
|
||||
#define MIN_NET_DEVICE_FOR_WDS 0x10 //0x40,0x50,0x60,0x70
|
||||
#define MIN_NET_DEVICE_FOR_AID 0x00 //0x00~0x3f
|
||||
#define MIN_NET_DEVICE_FOR_MBSSID 0x00 //0x00,0x10,0x20,0x30
|
||||
#define MIN_NET_DEVICE_FOR_WDS 0x10 //0x40,0x50,0x60,0x70
|
||||
#define MIN_NET_DEVICE_FOR_APCLI 0x20
|
||||
#define MIN_NET_DEVICE_FOR_MESH 0x30
|
||||
#define MIN_NET_DEVICE_FOR_DLS 0x40
|
||||
#define NET_DEVICE_REAL_IDX_MASK 0x0f // for each operation mode, we maximum support 15 entities.
|
||||
|
||||
#define NET_DEVICE_REAL_IDX_MASK 0x0f // for each operation mode, we maximum support 15 entities.
|
||||
|
||||
#define NDIS_PACKET_TYPE_DIRECTED 0
|
||||
#define NDIS_PACKET_TYPE_MULTICAST 1
|
||||
@ -197,36 +190,32 @@ struct iw_statistics *rt28xx_get_wireless_stats(
|
||||
#define NDIS_PACKET_TYPE_ALL_MULTICAST 3
|
||||
#define NDIS_PACKET_TYPE_PROMISCUOUS 4
|
||||
|
||||
|
||||
/***********************************************************************************
|
||||
* OS signaling related constant definitions
|
||||
***********************************************************************************/
|
||||
|
||||
|
||||
/***********************************************************************************
|
||||
* OS file operation related data structure definitions
|
||||
***********************************************************************************/
|
||||
typedef struct file* RTMP_OS_FD;
|
||||
typedef struct file *RTMP_OS_FD;
|
||||
|
||||
typedef struct _RTMP_OS_FS_INFO_
|
||||
{
|
||||
int fsuid;
|
||||
int fsgid;
|
||||
mm_segment_t fs;
|
||||
}RTMP_OS_FS_INFO;
|
||||
typedef struct _RTMP_OS_FS_INFO_ {
|
||||
int fsuid;
|
||||
int fsgid;
|
||||
mm_segment_t fs;
|
||||
} RTMP_OS_FS_INFO;
|
||||
|
||||
#define IS_FILE_OPEN_ERR(_fd) IS_ERR((_fd))
|
||||
|
||||
|
||||
/***********************************************************************************
|
||||
* OS semaphore related data structure and definitions
|
||||
***********************************************************************************/
|
||||
struct os_lock {
|
||||
spinlock_t lock;
|
||||
unsigned long flags;
|
||||
struct os_lock {
|
||||
spinlock_t lock;
|
||||
unsigned long flags;
|
||||
};
|
||||
|
||||
typedef spinlock_t NDIS_SPIN_LOCK;
|
||||
typedef spinlock_t NDIS_SPIN_LOCK;
|
||||
|
||||
//
|
||||
// spin_lock enhanced for Nested spin lock
|
||||
@ -239,7 +228,6 @@ typedef spinlock_t NDIS_SPIN_LOCK;
|
||||
#define NdisFreeSpinLock(lock) \
|
||||
do{}while(0)
|
||||
|
||||
|
||||
#define RTMP_SEM_LOCK(__lock) \
|
||||
{ \
|
||||
spin_lock_bh((spinlock_t *)(__lock)); \
|
||||
@ -250,7 +238,6 @@ typedef spinlock_t NDIS_SPIN_LOCK;
|
||||
spin_unlock_bh((spinlock_t *)(__lock)); \
|
||||
}
|
||||
|
||||
|
||||
// sample, use semaphore lock to replace IRQ lock, 2007/11/15
|
||||
#define RTMP_IRQ_LOCK(__lock, __irqflags) \
|
||||
{ \
|
||||
@ -343,7 +330,7 @@ do { \
|
||||
/***********************************************************************************
|
||||
* OS Memory Access related data structure and definitions
|
||||
***********************************************************************************/
|
||||
#define MEM_ALLOC_FLAG (GFP_ATOMIC) //(GFP_DMA | GFP_ATOMIC)
|
||||
#define MEM_ALLOC_FLAG (GFP_ATOMIC) //(GFP_DMA | GFP_ATOMIC)
|
||||
|
||||
#define NdisMoveMemory(Destination, Source, Length) memmove(Destination, Source, Length)
|
||||
#define NdisCopyMemory(Destination, Source, Length) memcpy(Destination, Source, Length)
|
||||
@ -358,32 +345,29 @@ do { \
|
||||
|
||||
#define COPY_MAC_ADDR(Addr1, Addr2) memcpy((Addr1), (Addr2), MAC_ADDR_LEN)
|
||||
|
||||
|
||||
/***********************************************************************************
|
||||
* OS task related data structure and definitions
|
||||
***********************************************************************************/
|
||||
#define RTMP_OS_MGMT_TASK_FLAGS CLONE_VM
|
||||
|
||||
typedef struct pid * THREAD_PID;
|
||||
typedef struct pid *THREAD_PID;
|
||||
#define THREAD_PID_INIT_VALUE NULL
|
||||
#define GET_PID(_v) find_get_pid((_v))
|
||||
#define GET_PID_NUMBER(_v) pid_nr((_v))
|
||||
#define CHECK_PID_LEGALITY(_pid) if (pid_nr((_pid)) > 0)
|
||||
#define KILL_THREAD_PID(_A, _B, _C) kill_pid((_A), (_B), (_C))
|
||||
|
||||
typedef struct tasklet_struct RTMP_NET_TASK_STRUCT;
|
||||
typedef struct tasklet_struct *PRTMP_NET_TASK_STRUCT;
|
||||
|
||||
typedef struct tasklet_struct RTMP_NET_TASK_STRUCT;
|
||||
typedef struct tasklet_struct *PRTMP_NET_TASK_STRUCT;
|
||||
|
||||
/***********************************************************************************
|
||||
* Timer related definitions and data structures.
|
||||
**********************************************************************************/
|
||||
#define OS_HZ HZ
|
||||
|
||||
typedef struct timer_list NDIS_MINIPORT_TIMER;
|
||||
typedef struct timer_list RTMP_OS_TIMER;
|
||||
typedef void (*TIMER_FUNCTION)(unsigned long);
|
||||
|
||||
typedef struct timer_list NDIS_MINIPORT_TIMER;
|
||||
typedef struct timer_list RTMP_OS_TIMER;
|
||||
typedef void (*TIMER_FUNCTION) (unsigned long);
|
||||
|
||||
#define OS_WAIT(_time) \
|
||||
{ int _i; \
|
||||
@ -406,26 +390,25 @@ typedef void (*TIMER_FUNCTION)(unsigned long);
|
||||
|
||||
#define ONE_TICK 1
|
||||
|
||||
static inline void NdisGetSystemUpTime(ULONG *time)
|
||||
static inline void NdisGetSystemUpTime(ULONG * time)
|
||||
{
|
||||
*time = jiffies;
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************************
|
||||
* OS specific cookie data structure binding to RTMP_ADAPTER
|
||||
***********************************************************************************/
|
||||
|
||||
struct os_cookie {
|
||||
#ifdef RTMP_MAC_PCI
|
||||
struct pci_dev *pci_dev;
|
||||
struct pci_dev *parent_pci_dev;
|
||||
USHORT DeviceID;
|
||||
dma_addr_t pAd_pa;
|
||||
#endif // RTMP_MAC_PCI //
|
||||
struct pci_dev *pci_dev;
|
||||
struct pci_dev *parent_pci_dev;
|
||||
USHORT DeviceID;
|
||||
dma_addr_t pAd_pa;
|
||||
#endif // RTMP_MAC_PCI //
|
||||
#ifdef RTMP_MAC_USB
|
||||
struct usb_device *pUsb_Dev;
|
||||
#endif // RTMP_MAC_USB //
|
||||
struct usb_device *pUsb_Dev;
|
||||
#endif // RTMP_MAC_USB //
|
||||
|
||||
RTMP_NET_TASK_STRUCT rx_done_task;
|
||||
RTMP_NET_TASK_STRUCT mgmt_dma_done_task;
|
||||
@ -436,21 +419,19 @@ struct os_cookie {
|
||||
RTMP_NET_TASK_STRUCT tbtt_task;
|
||||
#ifdef RTMP_MAC_PCI
|
||||
RTMP_NET_TASK_STRUCT fifo_statistic_full_task;
|
||||
#endif // RTMP_MAC_PCI //
|
||||
#endif // RTMP_MAC_PCI //
|
||||
#ifdef RTMP_MAC_USB
|
||||
RTMP_NET_TASK_STRUCT null_frame_complete_task;
|
||||
RTMP_NET_TASK_STRUCT rts_frame_complete_task;
|
||||
RTMP_NET_TASK_STRUCT pspoll_frame_complete_task;
|
||||
#endif // RTMP_MAC_USB //
|
||||
#endif // RTMP_MAC_USB //
|
||||
|
||||
unsigned long apd_pid; //802.1x daemon pid
|
||||
INT ioctl_if_type;
|
||||
INT ioctl_if;
|
||||
unsigned long apd_pid; //802.1x daemon pid
|
||||
INT ioctl_if_type;
|
||||
INT ioctl_if;
|
||||
};
|
||||
|
||||
typedef struct os_cookie * POS_COOKIE;
|
||||
|
||||
|
||||
typedef struct os_cookie *POS_COOKIE;
|
||||
|
||||
/***********************************************************************************
|
||||
* OS debugging and printing related definitions and data structure
|
||||
@ -459,7 +440,7 @@ typedef struct os_cookie * POS_COOKIE;
|
||||
addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]
|
||||
|
||||
#ifdef DBG
|
||||
extern ULONG RTDebugLevel;
|
||||
extern ULONG RTDebugLevel;
|
||||
|
||||
#define DBGPRINT_RAW(Level, Fmt) \
|
||||
do{ \
|
||||
@ -471,7 +452,6 @@ do{ \
|
||||
|
||||
#define DBGPRINT(Level, Fmt) DBGPRINT_RAW(Level, Fmt)
|
||||
|
||||
|
||||
#define DBGPRINT_ERR(Fmt) \
|
||||
{ \
|
||||
printk("ERROR!!! "); \
|
||||
@ -483,7 +463,6 @@ do{ \
|
||||
printk Fmt; \
|
||||
}
|
||||
|
||||
|
||||
#else
|
||||
#define DBGPRINT(Level, Fmt)
|
||||
#define DBGPRINT_RAW(Level, Fmt)
|
||||
@ -495,18 +474,18 @@ do{ \
|
||||
|
||||
void hex_dump(char *str, unsigned char *pSrcBufVA, unsigned int SrcBufLen);
|
||||
|
||||
|
||||
/*********************************************************************************************************
|
||||
The following code are not revised, temporary put it here.
|
||||
*********************************************************************************************************/
|
||||
|
||||
|
||||
/***********************************************************************************
|
||||
* Device DMA Access related definitions and data structures.
|
||||
**********************************************************************************/
|
||||
#ifdef RTMP_MAC_PCI
|
||||
dma_addr_t linux_pci_map_single(void *handle, void *ptr, size_t size, int sd_idx, int direction);
|
||||
void linux_pci_unmap_single(void *handle, dma_addr_t dma_addr, size_t size, int direction);
|
||||
dma_addr_t linux_pci_map_single(void *handle, void *ptr, size_t size,
|
||||
int sd_idx, int direction);
|
||||
void linux_pci_unmap_single(void *handle, dma_addr_t dma_addr, size_t size,
|
||||
int direction);
|
||||
|
||||
#define PCI_MAP_SINGLE(_handle, _ptr, _size, _sd_idx, _dir) \
|
||||
linux_pci_map_single(_handle, _ptr, _size, _sd_idx, _dir)
|
||||
@ -562,8 +541,6 @@ void linux_pci_unmap_single(void *handle, dma_addr_t dma_addr, size_t size, int
|
||||
|
||||
#define NdisMIndicateStatus(_w, _x, _y, _z)
|
||||
|
||||
|
||||
|
||||
/***********************************************************************************
|
||||
* Device Register I/O Access related definitions and data structures.
|
||||
**********************************************************************************/
|
||||
@ -729,7 +706,6 @@ void linux_pci_unmap_single(void *handle, dma_addr_t dma_addr, size_t size, int
|
||||
#define GET_OS_PKT_NEXT(_pkt) \
|
||||
(RTPKT_TO_OSPKT(_pkt)->next)
|
||||
|
||||
|
||||
#define OS_PKT_CLONED(_pkt) skb_cloned(RTPKT_TO_OSPKT(_pkt))
|
||||
|
||||
#define OS_NTOHS(_Val) \
|
||||
@ -783,9 +759,8 @@ void linux_pci_unmap_single(void *handle, dma_addr_t dma_addr, size_t size, int
|
||||
#define RTMP_SET_PACKET_MOREDATA(_p, _morebit) (RTPKT_TO_OSPKT(_p)->cb[CB_OFF+7] = _morebit)
|
||||
#define RTMP_GET_PACKET_MOREDATA(_p) (RTPKT_TO_OSPKT(_p)->cb[CB_OFF+7])
|
||||
|
||||
|
||||
//
|
||||
// Sepcific Pakcet Type definition
|
||||
// Sepcific Pakcet Type definition
|
||||
//
|
||||
#define RTMP_PACKET_SPECIFIC_CB_OFFSET 11
|
||||
|
||||
@ -863,13 +838,10 @@ void linux_pci_unmap_single(void *handle, dma_addr_t dma_addr, size_t size, int
|
||||
|
||||
#define RTMP_GET_PACKET_IPV4(_p) (RTPKT_TO_OSPKT(_p)->cb[CB_OFF+11] & RTMP_PACKET_SPECIFIC_IPV4)
|
||||
|
||||
|
||||
// If this flag is set, it indicates that this EAPoL frame MUST be clear.
|
||||
#define RTMP_SET_PACKET_CLEAR_EAP_FRAME(_p, _flg) (RTPKT_TO_OSPKT(_p)->cb[CB_OFF+12] = _flg)
|
||||
#define RTMP_GET_PACKET_CLEAR_EAP_FRAME(_p) (RTPKT_TO_OSPKT(_p)->cb[CB_OFF+12])
|
||||
|
||||
|
||||
|
||||
/* use bit3 of cb[CB_OFF+16] */
|
||||
|
||||
#define RTMP_SET_PACKET_5VT(_p, _flg) (RTPKT_TO_OSPKT(_p)->cb[CB_OFF+22] = _flg)
|
||||
@ -877,12 +849,10 @@ void linux_pci_unmap_single(void *handle, dma_addr_t dma_addr, size_t size, int
|
||||
|
||||
/* Max skb->cb = 48B = [CB_OFF+38] */
|
||||
|
||||
|
||||
|
||||
/***********************************************************************************
|
||||
* Other function prototypes definitions
|
||||
***********************************************************************************/
|
||||
void RTMP_GetCurrentSystemTime(LARGE_INTEGER *time);
|
||||
void RTMP_GetCurrentSystemTime(LARGE_INTEGER * time);
|
||||
int rt28xx_packet_xmit(struct sk_buff *skb);
|
||||
|
||||
#ifdef RTMP_MAC_PCI
|
||||
@ -892,13 +862,10 @@ int rt28xx_packet_xmit(struct sk_buff *skb);
|
||||
IRQ_HANDLE_TYPE rt2860_interrupt(int irq, void *dev_instance);
|
||||
#endif // RTMP_MAC_PCI //
|
||||
|
||||
INT rt28xx_sta_ioctl(
|
||||
IN PNET_DEV net_dev,
|
||||
IN OUT struct ifreq *rq,
|
||||
IN INT cmd);
|
||||
INT rt28xx_sta_ioctl(IN PNET_DEV net_dev, IN OUT struct ifreq *rq, IN INT cmd);
|
||||
|
||||
extern int ra_mtd_write(int num, loff_t to, size_t len, const u_char *buf);
|
||||
extern int ra_mtd_read(int num, loff_t from, size_t len, u_char *buf);
|
||||
extern int ra_mtd_write(int num, loff_t to, size_t len, const u_char * buf);
|
||||
extern int ra_mtd_read(int num, loff_t from, size_t len, u_char * buf);
|
||||
|
||||
#define GET_PAD_FROM_NET_DEV(_pAd, _net_dev) (_pAd) = (PRTMP_ADAPTER)(_net_dev)->ml_priv;
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -73,7 +73,7 @@
|
||||
#define IS_RT2070(_pAd) (((_pAd)->RfIcType == RFIC_2020) || ((_pAd)->EFuseTag == 0x27))
|
||||
|
||||
#define IS_RT30xx(_pAd) (((_pAd)->MACVersion & 0xfff00000) == 0x30700000||IS_RT3090A(_pAd))
|
||||
//#define IS_RT305X(_pAd) ((_pAd)->MACVersion == 0x28720200)
|
||||
//#define IS_RT305X(_pAd) ((_pAd)->MACVersion == 0x28720200)
|
||||
|
||||
/* RT3572, 3592, 3562, 3062 share the same MAC version */
|
||||
#define IS_RT3572(_pAd) (((_pAd)->MACVersion & 0xffff0000) == 0x35720000)
|
||||
@ -103,15 +103,12 @@
|
||||
|
||||
#define RETRY_LIMIT 10
|
||||
|
||||
|
||||
|
||||
// ------------------------------------------------------
|
||||
// BBP & RF definition
|
||||
// BBP & RF definition
|
||||
// ------------------------------------------------------
|
||||
#define BUSY 1
|
||||
#define IDLE 0
|
||||
|
||||
|
||||
//-------------------------------------------------------------------------
|
||||
// EEPROM definition
|
||||
//-------------------------------------------------------------------------
|
||||
@ -126,11 +123,11 @@
|
||||
#define EEPROM_EWDS_OPCODE 0x10
|
||||
#define EEPROM_EWEN_OPCODE 0x13
|
||||
|
||||
#define NUM_EEPROM_BBP_PARMS 19 // Include NIC Config 0, 1, CR, TX ALC step, BBPs
|
||||
#define NUM_EEPROM_BBP_PARMS 19 // Include NIC Config 0, 1, CR, TX ALC step, BBPs
|
||||
#define NUM_EEPROM_TX_G_PARMS 7
|
||||
#define EEPROM_NIC1_OFFSET 0x34 // The address is from NIC config 0, not BBP register ID
|
||||
#define EEPROM_NIC2_OFFSET 0x36 // The address is from NIC config 0, not BBP register ID
|
||||
#define EEPROM_BBP_BASE_OFFSET 0xf0 // The address is from NIC config 0, not BBP register ID
|
||||
#define EEPROM_NIC1_OFFSET 0x34 // The address is from NIC config 0, not BBP register ID
|
||||
#define EEPROM_NIC2_OFFSET 0x36 // The address is from NIC config 0, not BBP register ID
|
||||
#define EEPROM_BBP_BASE_OFFSET 0xf0 // The address is from NIC config 0, not BBP register ID
|
||||
#define EEPROM_G_TX_PWR_OFFSET 0x52
|
||||
#define EEPROM_G_TX2_PWR_OFFSET 0x60
|
||||
#define EEPROM_LED1_OFFSET 0x3c
|
||||
@ -150,24 +147,22 @@
|
||||
#define EEPROM_A_TX2_PWR_OFFSET 0xa6
|
||||
//#define EEPROM_Japan_TX_PWR_OFFSET 0x90 // 802.11j
|
||||
//#define EEPROM_Japan_TX2_PWR_OFFSET 0xbe
|
||||
//#define EEPROM_TSSI_REF_OFFSET 0x54
|
||||
//#define EEPROM_TSSI_DELTA_OFFSET 0x24
|
||||
//#define EEPROM_TSSI_REF_OFFSET 0x54
|
||||
//#define EEPROM_TSSI_DELTA_OFFSET 0x24
|
||||
//#define EEPROM_CCK_TX_PWR_OFFSET 0x62
|
||||
//#define EEPROM_CALIBRATE_OFFSET 0x7c
|
||||
//#define EEPROM_CALIBRATE_OFFSET 0x7c
|
||||
#define EEPROM_VERSION_OFFSET 0x02
|
||||
#define EEPROM_FREQ_OFFSET 0x3a
|
||||
#define EEPROM_TXPOWER_BYRATE 0xde // 20MHZ power.
|
||||
#define EEPROM_TXPOWER_DELTA 0x50 // 20MHZ AND 40 MHZ use different power. This is delta in 40MHZ.
|
||||
#define VALID_EEPROM_VERSION 1
|
||||
|
||||
|
||||
/*
|
||||
* EEPROM operation related marcos
|
||||
*/
|
||||
#define RT28xx_EEPROM_READ16(_pAd, _offset, _value) \
|
||||
(_pAd)->chipOps.eeread((RTMP_ADAPTER *)(_pAd), (USHORT)(_offset), (PUSHORT)&(_value))
|
||||
|
||||
|
||||
// -------------------------------------------------------------------
|
||||
// E2PROM data layout
|
||||
// -------------------------------------------------------------------
|
||||
@ -175,90 +170,89 @@
|
||||
//
|
||||
// MCU_LEDCS: MCU LED Control Setting.
|
||||
//
|
||||
typedef union _MCU_LEDCS_STRUC {
|
||||
struct {
|
||||
UCHAR LedMode:7;
|
||||
UCHAR Polarity:1;
|
||||
typedef union _MCU_LEDCS_STRUC {
|
||||
struct {
|
||||
UCHAR LedMode:7;
|
||||
UCHAR Polarity:1;
|
||||
} field;
|
||||
UCHAR word;
|
||||
UCHAR word;
|
||||
} MCU_LEDCS_STRUC, *PMCU_LEDCS_STRUC;
|
||||
|
||||
|
||||
//
|
||||
// EEPROM antenna select format
|
||||
//
|
||||
typedef union _EEPROM_ANTENNA_STRUC {
|
||||
struct {
|
||||
USHORT RxPath:4; // 1: 1R, 2: 2R, 3: 3R
|
||||
USHORT TxPath:4; // 1: 1T, 2: 2T
|
||||
USHORT RfIcType:4; // see E2PROM document
|
||||
USHORT Rsv:4;
|
||||
} field;
|
||||
USHORT word;
|
||||
} EEPROM_ANTENNA_STRUC, *PEEPROM_ANTENNA_STRUC;
|
||||
|
||||
typedef union _EEPROM_NIC_CINFIG2_STRUC {
|
||||
typedef union _EEPROM_ANTENNA_STRUC {
|
||||
struct {
|
||||
USHORT HardwareRadioControl:1; // 1:enable, 0:disable
|
||||
USHORT DynamicTxAgcControl:1; //
|
||||
USHORT ExternalLNAForG:1; //
|
||||
USHORT ExternalLNAForA:1; // external LNA enable for 2.4G
|
||||
USHORT CardbusAcceleration:1; // !!! NOTE: 0 - enable, 1 - disable
|
||||
USHORT BW40MSidebandForG:1;
|
||||
USHORT BW40MSidebandForA:1;
|
||||
USHORT EnableWPSPBC:1; // WPS PBC Control bit
|
||||
USHORT BW40MAvailForG:1; // 0:enable, 1:disable
|
||||
USHORT BW40MAvailForA:1; // 0:enable, 1:disable
|
||||
USHORT Rsv1:1; // must be 0
|
||||
USHORT AntDiversity:1; // Antenna diversity
|
||||
USHORT Rsv2:3; // must be 0
|
||||
USHORT DACTestBit:1; // control if driver should patch the DAC issue
|
||||
} field;
|
||||
USHORT word;
|
||||
} EEPROM_NIC_CONFIG2_STRUC, *PEEPROM_NIC_CONFIG2_STRUC;
|
||||
USHORT RxPath:4; // 1: 1R, 2: 2R, 3: 3R
|
||||
USHORT TxPath:4; // 1: 1T, 2: 2T
|
||||
USHORT RfIcType:4; // see E2PROM document
|
||||
USHORT Rsv:4;
|
||||
} field;
|
||||
USHORT word;
|
||||
} EEPROM_ANTENNA_STRUC, *PEEPROM_ANTENNA_STRUC;
|
||||
|
||||
typedef union _EEPROM_NIC_CINFIG2_STRUC {
|
||||
struct {
|
||||
USHORT HardwareRadioControl:1; // 1:enable, 0:disable
|
||||
USHORT DynamicTxAgcControl:1; //
|
||||
USHORT ExternalLNAForG:1; //
|
||||
USHORT ExternalLNAForA:1; // external LNA enable for 2.4G
|
||||
USHORT CardbusAcceleration:1; // !!! NOTE: 0 - enable, 1 - disable
|
||||
USHORT BW40MSidebandForG:1;
|
||||
USHORT BW40MSidebandForA:1;
|
||||
USHORT EnableWPSPBC:1; // WPS PBC Control bit
|
||||
USHORT BW40MAvailForG:1; // 0:enable, 1:disable
|
||||
USHORT BW40MAvailForA:1; // 0:enable, 1:disable
|
||||
USHORT Rsv1:1; // must be 0
|
||||
USHORT AntDiversity:1; // Antenna diversity
|
||||
USHORT Rsv2:3; // must be 0
|
||||
USHORT DACTestBit:1; // control if driver should patch the DAC issue
|
||||
} field;
|
||||
USHORT word;
|
||||
} EEPROM_NIC_CONFIG2_STRUC, *PEEPROM_NIC_CONFIG2_STRUC;
|
||||
|
||||
//
|
||||
// TX_PWR Value valid range 0xFA(-6) ~ 0x24(36)
|
||||
//
|
||||
typedef union _EEPROM_TX_PWR_STRUC {
|
||||
struct {
|
||||
CHAR Byte0; // Low Byte
|
||||
CHAR Byte1; // High Byte
|
||||
} field;
|
||||
USHORT word;
|
||||
} EEPROM_TX_PWR_STRUC, *PEEPROM_TX_PWR_STRUC;
|
||||
typedef union _EEPROM_TX_PWR_STRUC {
|
||||
struct {
|
||||
CHAR Byte0; // Low Byte
|
||||
CHAR Byte1; // High Byte
|
||||
} field;
|
||||
USHORT word;
|
||||
} EEPROM_TX_PWR_STRUC, *PEEPROM_TX_PWR_STRUC;
|
||||
|
||||
typedef union _EEPROM_VERSION_STRUC {
|
||||
struct {
|
||||
UCHAR FaeReleaseNumber; // Low Byte
|
||||
UCHAR Version; // High Byte
|
||||
} field;
|
||||
USHORT word;
|
||||
} EEPROM_VERSION_STRUC, *PEEPROM_VERSION_STRUC;
|
||||
typedef union _EEPROM_VERSION_STRUC {
|
||||
struct {
|
||||
UCHAR FaeReleaseNumber; // Low Byte
|
||||
UCHAR Version; // High Byte
|
||||
} field;
|
||||
USHORT word;
|
||||
} EEPROM_VERSION_STRUC, *PEEPROM_VERSION_STRUC;
|
||||
|
||||
typedef union _EEPROM_LED_STRUC {
|
||||
struct {
|
||||
USHORT PolarityRDY_G:1; // Polarity RDY_G setting.
|
||||
USHORT PolarityRDY_A:1; // Polarity RDY_A setting.
|
||||
USHORT PolarityACT:1; // Polarity ACT setting.
|
||||
USHORT PolarityGPIO_0:1; // Polarity GPIO#0 setting.
|
||||
USHORT PolarityGPIO_1:1; // Polarity GPIO#1 setting.
|
||||
USHORT PolarityGPIO_2:1; // Polarity GPIO#2 setting.
|
||||
USHORT PolarityGPIO_3:1; // Polarity GPIO#3 setting.
|
||||
USHORT PolarityGPIO_4:1; // Polarity GPIO#4 setting.
|
||||
USHORT LedMode:5; // Led mode.
|
||||
USHORT Rsvd:3; // Reserved
|
||||
} field;
|
||||
USHORT word;
|
||||
} EEPROM_LED_STRUC, *PEEPROM_LED_STRUC;
|
||||
typedef union _EEPROM_LED_STRUC {
|
||||
struct {
|
||||
USHORT PolarityRDY_G:1; // Polarity RDY_G setting.
|
||||
USHORT PolarityRDY_A:1; // Polarity RDY_A setting.
|
||||
USHORT PolarityACT:1; // Polarity ACT setting.
|
||||
USHORT PolarityGPIO_0:1; // Polarity GPIO#0 setting.
|
||||
USHORT PolarityGPIO_1:1; // Polarity GPIO#1 setting.
|
||||
USHORT PolarityGPIO_2:1; // Polarity GPIO#2 setting.
|
||||
USHORT PolarityGPIO_3:1; // Polarity GPIO#3 setting.
|
||||
USHORT PolarityGPIO_4:1; // Polarity GPIO#4 setting.
|
||||
USHORT LedMode:5; // Led mode.
|
||||
USHORT Rsvd:3; // Reserved
|
||||
} field;
|
||||
USHORT word;
|
||||
} EEPROM_LED_STRUC, *PEEPROM_LED_STRUC;
|
||||
|
||||
typedef union _EEPROM_TXPOWER_DELTA_STRUC {
|
||||
struct {
|
||||
UCHAR DeltaValue:6; // Tx Power dalta value (MAX=4)
|
||||
UCHAR Type:1; // 1: plus the delta value, 0: minus the delta value
|
||||
UCHAR TxPowerEnable:1;// Enable
|
||||
} field;
|
||||
UCHAR value;
|
||||
} EEPROM_TXPOWER_DELTA_STRUC, *PEEPROM_TXPOWER_DELTA_STRUC;
|
||||
typedef union _EEPROM_TXPOWER_DELTA_STRUC {
|
||||
struct {
|
||||
UCHAR DeltaValue:6; // Tx Power dalta value (MAX=4)
|
||||
UCHAR Type:1; // 1: plus the delta value, 0: minus the delta value
|
||||
UCHAR TxPowerEnable:1; // Enable
|
||||
} field;
|
||||
UCHAR value;
|
||||
} EEPROM_TXPOWER_DELTA_STRUC, *PEEPROM_TXPOWER_DELTA_STRUC;
|
||||
|
||||
#endif // __RTMP_CHIP_H__ //
|
||||
#endif // __RTMP_CHIP_H__ //
|
||||
|
@ -37,42 +37,27 @@
|
||||
#ifndef __RTMP_CKIPMIC_H__
|
||||
#define __RTMP_CKIPMIC_H__
|
||||
|
||||
typedef struct _MIC_CONTEXT {
|
||||
typedef struct _MIC_CONTEXT {
|
||||
/* --- MMH context */
|
||||
UCHAR CK[16]; /* the key */
|
||||
UCHAR coefficient[16]; /* current aes counter mode coefficients */
|
||||
ULONGLONG accum; /* accumulated mic, reduced to u32 in final() */
|
||||
UINT position; /* current position (byte offset) in message */
|
||||
UCHAR part[4]; /* for conversion of message to u32 for mmh */
|
||||
} MIC_CONTEXT, *PMIC_CONTEXT;
|
||||
UCHAR CK[16]; /* the key */
|
||||
UCHAR coefficient[16]; /* current aes counter mode coefficients */
|
||||
ULONGLONG accum; /* accumulated mic, reduced to u32 in final() */
|
||||
UINT position; /* current position (byte offset) in message */
|
||||
UCHAR part[4]; /* for conversion of message to u32 for mmh */
|
||||
} MIC_CONTEXT, *PMIC_CONTEXT;
|
||||
|
||||
VOID xor_128(
|
||||
IN PUCHAR a,
|
||||
IN PUCHAR b,
|
||||
OUT PUCHAR out);
|
||||
VOID xor_128(IN PUCHAR a, IN PUCHAR b, OUT PUCHAR out);
|
||||
|
||||
UCHAR RTMPCkipSbox(
|
||||
IN UCHAR a);
|
||||
UCHAR RTMPCkipSbox(IN UCHAR a);
|
||||
|
||||
VOID xor_32(
|
||||
IN PUCHAR a,
|
||||
IN PUCHAR b,
|
||||
OUT PUCHAR out);
|
||||
VOID xor_32(IN PUCHAR a, IN PUCHAR b, OUT PUCHAR out);
|
||||
|
||||
VOID next_key(
|
||||
IN PUCHAR key,
|
||||
IN INT round);
|
||||
VOID next_key(IN PUCHAR key, IN INT round);
|
||||
|
||||
VOID byte_sub(
|
||||
IN PUCHAR in,
|
||||
OUT PUCHAR out);
|
||||
VOID byte_sub(IN PUCHAR in, OUT PUCHAR out);
|
||||
|
||||
VOID shift_row(
|
||||
IN PUCHAR in,
|
||||
OUT PUCHAR out);
|
||||
VOID shift_row(IN PUCHAR in, OUT PUCHAR out);
|
||||
|
||||
VOID mix_column(
|
||||
IN PUCHAR in,
|
||||
OUT PUCHAR out);
|
||||
VOID mix_column(IN PUCHAR in, OUT PUCHAR out);
|
||||
|
||||
#endif //__RTMP_CKIPMIC_H__
|
||||
|
@ -55,9 +55,9 @@
|
||||
#define NIC_DBG_STRING ("**RT28xx**")
|
||||
|
||||
#ifdef RTMP_MAC_USB
|
||||
#define TX_RING_SIZE 8 // 1
|
||||
#define TX_RING_SIZE 8 // 1
|
||||
#define PRIO_RING_SIZE 8
|
||||
#define MGMT_RING_SIZE 32 // PRIO_RING_SIZE
|
||||
#define MGMT_RING_SIZE 32 // PRIO_RING_SIZE
|
||||
#define RX_RING_SIZE 8
|
||||
#define MAX_TX_PROCESS 4
|
||||
#define LOCAL_TXBUF_SIZE 2048
|
||||
@ -76,29 +76,29 @@
|
||||
//
|
||||
|
||||
#ifdef RTMP_MAC_PCI
|
||||
#define TX_RING_SIZE 64 //64
|
||||
#define TX_RING_SIZE 64 //64
|
||||
#define MGMT_RING_SIZE 128
|
||||
#define RX_RING_SIZE 128 //64
|
||||
#define MAX_TX_PROCESS TX_RING_SIZE //8
|
||||
#define RX_RING_SIZE 128 //64
|
||||
#define MAX_TX_PROCESS TX_RING_SIZE //8
|
||||
#define MAX_DMA_DONE_PROCESS TX_RING_SIZE
|
||||
#define MAX_TX_DONE_PROCESS TX_RING_SIZE //8
|
||||
#define MAX_TX_DONE_PROCESS TX_RING_SIZE //8
|
||||
#define LOCAL_TXBUF_SIZE 2
|
||||
#endif // RTMP_MAC_PCI //
|
||||
|
||||
#define MAX_RX_PROCESS 128 //64 //32
|
||||
#define MAX_RX_PROCESS 128 //64 //32
|
||||
#define NUM_OF_LOCAL_TXBUF 2
|
||||
#define TXD_SIZE 16
|
||||
#define TXWI_SIZE 16
|
||||
#define RXD_SIZE 16
|
||||
#define RXWI_SIZE 16
|
||||
// TXINFO_SIZE + TXWI_SIZE + 802.11 Header Size + AMSDU sub frame header
|
||||
#define TX_DMA_1ST_BUFFER_SIZE 96 // only the 1st physical buffer is pre-allocated
|
||||
#define MGMT_DMA_BUFFER_SIZE 1536 //2048
|
||||
#define RX_BUFFER_AGGRESIZE 3840 //3904 //3968 //4096 //2048 //4096
|
||||
#define RX_BUFFER_NORMSIZE 3840 //3904 //3968 //4096 //2048 //4096
|
||||
#define TX_DMA_1ST_BUFFER_SIZE 96 // only the 1st physical buffer is pre-allocated
|
||||
#define MGMT_DMA_BUFFER_SIZE 1536 //2048
|
||||
#define RX_BUFFER_AGGRESIZE 3840 //3904 //3968 //4096 //2048 //4096
|
||||
#define RX_BUFFER_NORMSIZE 3840 //3904 //3968 //4096 //2048 //4096
|
||||
#define TX_BUFFER_NORMSIZE RX_BUFFER_NORMSIZE
|
||||
#define MAX_FRAME_SIZE 2346 // Maximum 802.11 frame size
|
||||
#define MAX_AGGREGATION_SIZE 3840 //3904 //3968 //4096
|
||||
#define MAX_FRAME_SIZE 2346 // Maximum 802.11 frame size
|
||||
#define MAX_AGGREGATION_SIZE 3840 //3904 //3968 //4096
|
||||
#define MAX_NUM_OF_TUPLE_CACHE 2
|
||||
#define MAX_MCAST_LIST_SIZE 32
|
||||
#define MAX_LEN_OF_VENDOR_DESC 64
|
||||
@ -107,7 +107,6 @@
|
||||
|
||||
#define MAX_RX_PROCESS_CNT (RX_RING_SIZE)
|
||||
|
||||
|
||||
/*
|
||||
WMM Note: If memory of your system is not much, please reduce the definition;
|
||||
or when you do WMM test, the queue for low priority AC will be full, i.e.
|
||||
@ -127,12 +126,11 @@
|
||||
clConfig.clNum = RX_RING_SIZE * 4;
|
||||
*/
|
||||
// TODO: For VxWorks the size is 256. Shall we cahnge the value as 256 for all OS?????
|
||||
#define MAX_PACKETS_IN_QUEUE (512) //(512) // to pass WMM A5-WPAPSK
|
||||
#define MAX_PACKETS_IN_QUEUE (512) //(512) // to pass WMM A5-WPAPSK
|
||||
|
||||
#define MAX_PACKETS_IN_MCAST_PS_QUEUE 32
|
||||
#define MAX_PACKETS_IN_PS_QUEUE 128 //32
|
||||
#define WMM_NUM_OF_AC 4 /* AC0, AC1, AC2, and AC3 */
|
||||
|
||||
#define WMM_NUM_OF_AC 4 /* AC0, AC1, AC2, and AC3 */
|
||||
|
||||
#ifdef RTMP_EFUSE_SUPPORT
|
||||
//2008/09/11:KH add to support efuse<--
|
||||
@ -189,8 +187,8 @@
|
||||
#define fOP_STATUS_MEDIA_STATE_CONNECTED 0x00000080
|
||||
#define fOP_STATUS_WMM_INUSED 0x00000100
|
||||
#define fOP_STATUS_AGGREGATION_INUSED 0x00000200
|
||||
#define fOP_STATUS_DOZE 0x00000400 // debug purpose
|
||||
#define fOP_STATUS_PIGGYBACK_INUSED 0x00000800 // piggy-back, and aggregation
|
||||
#define fOP_STATUS_DOZE 0x00000400 // debug purpose
|
||||
#define fOP_STATUS_PIGGYBACK_INUSED 0x00000800 // piggy-back, and aggregation
|
||||
#define fOP_STATUS_APSD_INUSED 0x00001000
|
||||
#define fOP_STATUS_TX_AMSDU_INUSED 0x00002000
|
||||
#define fOP_STATUS_MAX_RETRY_ENABLED 0x00004000
|
||||
@ -229,9 +227,9 @@
|
||||
//
|
||||
// AP's client table operation status flags
|
||||
//
|
||||
#define fCLIENT_STATUS_WMM_CAPABLE 0x00000001 // CLIENT can parse QOS DATA frame
|
||||
#define fCLIENT_STATUS_AGGREGATION_CAPABLE 0x00000002 // CLIENT can receive Ralink's proprietary TX aggregation frame
|
||||
#define fCLIENT_STATUS_PIGGYBACK_CAPABLE 0x00000004 // CLIENT support piggy-back
|
||||
#define fCLIENT_STATUS_WMM_CAPABLE 0x00000001 // CLIENT can parse QOS DATA frame
|
||||
#define fCLIENT_STATUS_AGGREGATION_CAPABLE 0x00000002 // CLIENT can receive Ralink's proprietary TX aggregation frame
|
||||
#define fCLIENT_STATUS_PIGGYBACK_CAPABLE 0x00000004 // CLIENT support piggy-back
|
||||
#define fCLIENT_STATUS_AMSDU_INUSED 0x00000008
|
||||
#define fCLIENT_STATUS_SGI20_CAPABLE 0x00000010
|
||||
#define fCLIENT_STATUS_SGI40_CAPABLE 0x00000020
|
||||
@ -240,7 +238,7 @@
|
||||
#define fCLIENT_STATUS_HTC_CAPABLE 0x00000100
|
||||
#define fCLIENT_STATUS_RDG_CAPABLE 0x00000200
|
||||
#define fCLIENT_STATUS_MCSFEEDBACK_CAPABLE 0x00000400
|
||||
#define fCLIENT_STATUS_APSD_CAPABLE 0x00000800 /* UAPSD STATION */
|
||||
#define fCLIENT_STATUS_APSD_CAPABLE 0x00000800 /* UAPSD STATION */
|
||||
|
||||
#define fCLIENT_STATUS_RALINK_CHIPSET 0x00100000
|
||||
//
|
||||
@ -303,10 +301,9 @@
|
||||
#define ERRLOG_NO_INTERRUPT_RESOURCE 0x00000604L
|
||||
#define ERRLOG_NO_MEMORY_RESOURCE 0x00000605L
|
||||
|
||||
|
||||
// WDS definition
|
||||
#define MAX_WDS_ENTRY 4
|
||||
#define WDS_PAIRWISE_KEY_OFFSET 60 // WDS links uses pairwise key#60 ~ 63 in ASIC pairwise key table
|
||||
#define WDS_PAIRWISE_KEY_OFFSET 60 // WDS links uses pairwise key#60 ~ 63 in ASIC pairwise key table
|
||||
|
||||
#define WDS_DISABLE_MODE 0
|
||||
#define WDS_RESTRICT_MODE 1
|
||||
@ -314,7 +311,6 @@
|
||||
#define WDS_REPEATER_MODE 3
|
||||
#define WDS_LAZY_MODE 4
|
||||
|
||||
|
||||
#define MAX_MESH_NUM 0
|
||||
|
||||
#define MAX_APCLI_NUM 0
|
||||
@ -336,12 +332,11 @@
|
||||
#define MAIN_MBSSID 0
|
||||
#define FIRST_MBSSID 1
|
||||
|
||||
|
||||
#define MAX_BEACON_SIZE 512
|
||||
// If the MAX_MBSSID_NUM is larger than 6,
|
||||
// it shall reserve some WCID space(wcid 222~253) for beacon frames.
|
||||
// - these wcid 238~253 are reserved for beacon#6(ra6).
|
||||
// - these wcid 222~237 are reserved for beacon#7(ra7).
|
||||
// - these wcid 238~253 are reserved for beacon#6(ra6).
|
||||
// - these wcid 222~237 are reserved for beacon#7(ra7).
|
||||
#if defined(MAX_MBSSID_NUM) && (MAX_MBSSID_NUM == 8)
|
||||
#define HW_RESERVED_WCID 222
|
||||
#elif defined(MAX_MBSSID_NUM) && (MAX_MBSSID_NUM == 7)
|
||||
@ -368,7 +363,6 @@
|
||||
|
||||
#define IsGroupKeyWCID(__wcid) (((__wcid) < LAST_SPECIFIC_WCID) && ((__wcid) >= (LAST_SPECIFIC_WCID - (MAX_MBSSID_NUM))))
|
||||
|
||||
|
||||
// definition to support multiple BSSID
|
||||
#define BSS0 0
|
||||
#define BSS1 1
|
||||
@ -379,20 +373,19 @@
|
||||
#define BSS6 6
|
||||
#define BSS7 7
|
||||
|
||||
|
||||
//============================================================
|
||||
// Length definitions
|
||||
#define PEER_KEY_NO 2
|
||||
#define MAC_ADDR_LEN 6
|
||||
#define TIMESTAMP_LEN 8
|
||||
#define MAX_LEN_OF_SUPPORTED_RATES MAX_LENGTH_OF_SUPPORT_RATES // 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48, 54
|
||||
#define MAX_LEN_OF_KEY 32 // 32 octets == 256 bits, Redefine for WPA
|
||||
#define MAX_NUM_OF_CHANNELS MAX_NUM_OF_CHS // 14 channels @2.4G + 12@UNII + 4 @MMAC + 11 @HiperLAN2 + 7 @Japan + 1 as NULL termination
|
||||
#define MAX_NUM_OF_11JCHANNELS 20 // 14 channels @2.4G + 12@UNII + 4 @MMAC + 11 @HiperLAN2 + 7 @Japan + 1 as NULL termination
|
||||
#define MAX_LEN_OF_SUPPORTED_RATES MAX_LENGTH_OF_SUPPORT_RATES // 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48, 54
|
||||
#define MAX_LEN_OF_KEY 32 // 32 octets == 256 bits, Redefine for WPA
|
||||
#define MAX_NUM_OF_CHANNELS MAX_NUM_OF_CHS // 14 channels @2.4G + 12@UNII + 4 @MMAC + 11 @HiperLAN2 + 7 @Japan + 1 as NULL termination
|
||||
#define MAX_NUM_OF_11JCHANNELS 20 // 14 channels @2.4G + 12@UNII + 4 @MMAC + 11 @HiperLAN2 + 7 @Japan + 1 as NULL termination
|
||||
#define MAX_LEN_OF_SSID 32
|
||||
#define CIPHER_TEXT_LEN 128
|
||||
#define HASH_TABLE_SIZE 256
|
||||
#define MAX_VIE_LEN 1024 // New for WPA cipher suite variable IE sizes.
|
||||
#define MAX_VIE_LEN 1024 // New for WPA cipher suite variable IE sizes.
|
||||
#define MAX_SUPPORT_MCS 32
|
||||
#define MAX_NUM_OF_BBP_LATCH 140
|
||||
|
||||
@ -413,7 +406,7 @@
|
||||
|
||||
#define MAX_NUM_OF_ACL_LIST MAX_NUMBER_OF_ACL
|
||||
|
||||
#define MAX_LEN_OF_MAC_TABLE MAX_NUMBER_OF_MAC // if MAX_MBSSID_NUM is 8, this value can't be larger than 211
|
||||
#define MAX_LEN_OF_MAC_TABLE MAX_NUMBER_OF_MAC // if MAX_MBSSID_NUM is 8, this value can't be larger than 211
|
||||
|
||||
#if MAX_LEN_OF_MAC_TABLE>MAX_AVAILABLE_CLIENT_WCID
|
||||
#error MAX_LEN_OF_MAC_TABLE can not be larger than MAX_AVAILABLE_CLIENT_WCID!!!!
|
||||
@ -426,37 +419,36 @@
|
||||
|
||||
#define NUM_OF_TID 8
|
||||
#define MAX_AID_BA 4
|
||||
#define MAX_LEN_OF_BA_REC_TABLE ((NUM_OF_TID * MAX_LEN_OF_MAC_TABLE)/2)// (NUM_OF_TID*MAX_AID_BA + 32) //Block ACK recipient
|
||||
#define MAX_LEN_OF_BA_ORI_TABLE ((NUM_OF_TID * MAX_LEN_OF_MAC_TABLE)/2)// (NUM_OF_TID*MAX_AID_BA + 32) // Block ACK originator
|
||||
#define MAX_LEN_OF_BA_REC_TABLE ((NUM_OF_TID * MAX_LEN_OF_MAC_TABLE)/2) // (NUM_OF_TID*MAX_AID_BA + 32) //Block ACK recipient
|
||||
#define MAX_LEN_OF_BA_ORI_TABLE ((NUM_OF_TID * MAX_LEN_OF_MAC_TABLE)/2) // (NUM_OF_TID*MAX_AID_BA + 32) // Block ACK originator
|
||||
#define MAX_LEN_OF_BSS_TABLE 64
|
||||
#define MAX_REORDERING_MPDU_NUM 512
|
||||
|
||||
// key related definitions
|
||||
#define SHARE_KEY_NUM 4
|
||||
#define MAX_LEN_OF_SHARE_KEY 16 // byte count
|
||||
#define MAX_LEN_OF_PEER_KEY 16 // byte count
|
||||
#define PAIRWISE_KEY_NUM 64 // in MAC ASIC pairwise key table
|
||||
#define MAX_LEN_OF_SHARE_KEY 16 // byte count
|
||||
#define MAX_LEN_OF_PEER_KEY 16 // byte count
|
||||
#define PAIRWISE_KEY_NUM 64 // in MAC ASIC pairwise key table
|
||||
#define GROUP_KEY_NUM 4
|
||||
#define PMK_LEN 32
|
||||
#define WDS_PAIRWISE_KEY_OFFSET 60 // WDS links uses pairwise key#60 ~ 63 in ASIC pairwise key table
|
||||
#define PMKID_NO 4 // Number of PMKID saved supported
|
||||
#define WDS_PAIRWISE_KEY_OFFSET 60 // WDS links uses pairwise key#60 ~ 63 in ASIC pairwise key table
|
||||
#define PMKID_NO 4 // Number of PMKID saved supported
|
||||
#define MAX_LEN_OF_MLME_BUFFER 2048
|
||||
|
||||
// power status related definitions
|
||||
#define PWR_ACTIVE 0
|
||||
#define PWR_SAVE 1
|
||||
#define PWR_MMPS 2 //MIMO power save
|
||||
#define PWR_MMPS 2 //MIMO power save
|
||||
|
||||
// Auth and Assoc mode related definitions
|
||||
#define AUTH_MODE_OPEN 0x00
|
||||
#define AUTH_MODE_KEY 0x01
|
||||
|
||||
// BSS Type definitions
|
||||
#define BSS_ADHOC 0 // = Ndis802_11IBSS
|
||||
#define BSS_INFRA 1 // = Ndis802_11Infrastructure
|
||||
#define BSS_ANY 2 // = Ndis802_11AutoUnknown
|
||||
#define BSS_MONITOR 3 // = Ndis802_11Monitor
|
||||
|
||||
#define BSS_ADHOC 0 // = Ndis802_11IBSS
|
||||
#define BSS_INFRA 1 // = Ndis802_11Infrastructure
|
||||
#define BSS_ANY 2 // = Ndis802_11AutoUnknown
|
||||
#define BSS_MONITOR 3 // = Ndis802_11Monitor
|
||||
|
||||
// Reason code definitions
|
||||
#define REASON_RESERVED 0
|
||||
@ -533,65 +525,63 @@
|
||||
#define IE_CF_PARM 4
|
||||
#define IE_TIM 5
|
||||
#define IE_IBSS_PARM 6
|
||||
#define IE_COUNTRY 7 // 802.11d
|
||||
#define IE_802_11D_REQUEST 10 // 802.11d
|
||||
#define IE_QBSS_LOAD 11 // 802.11e d9
|
||||
#define IE_EDCA_PARAMETER 12 // 802.11e d9
|
||||
#define IE_TSPEC 13 // 802.11e d9
|
||||
#define IE_TCLAS 14 // 802.11e d9
|
||||
#define IE_SCHEDULE 15 // 802.11e d9
|
||||
#define IE_COUNTRY 7 // 802.11d
|
||||
#define IE_802_11D_REQUEST 10 // 802.11d
|
||||
#define IE_QBSS_LOAD 11 // 802.11e d9
|
||||
#define IE_EDCA_PARAMETER 12 // 802.11e d9
|
||||
#define IE_TSPEC 13 // 802.11e d9
|
||||
#define IE_TCLAS 14 // 802.11e d9
|
||||
#define IE_SCHEDULE 15 // 802.11e d9
|
||||
#define IE_CHALLENGE_TEXT 16
|
||||
#define IE_POWER_CONSTRAINT 32 // 802.11h d3.3
|
||||
#define IE_POWER_CAPABILITY 33 // 802.11h d3.3
|
||||
#define IE_TPC_REQUEST 34 // 802.11h d3.3
|
||||
#define IE_TPC_REPORT 35 // 802.11h d3.3
|
||||
#define IE_SUPP_CHANNELS 36 // 802.11h d3.3
|
||||
#define IE_CHANNEL_SWITCH_ANNOUNCEMENT 37 // 802.11h d3.3
|
||||
#define IE_MEASUREMENT_REQUEST 38 // 802.11h d3.3
|
||||
#define IE_MEASUREMENT_REPORT 39 // 802.11h d3.3
|
||||
#define IE_QUIET 40 // 802.11h d3.3
|
||||
#define IE_IBSS_DFS 41 // 802.11h d3.3
|
||||
#define IE_ERP 42 // 802.11g
|
||||
#define IE_TS_DELAY 43 // 802.11e d9
|
||||
#define IE_TCLAS_PROCESSING 44 // 802.11e d9
|
||||
#define IE_QOS_CAPABILITY 46 // 802.11e d6
|
||||
#define IE_HT_CAP 45 // 802.11n d1. HT CAPABILITY. ELEMENT ID TBD
|
||||
#define IE_AP_CHANNEL_REPORT 51 // 802.11k d6
|
||||
#define IE_HT_CAP2 52 // 802.11n d1. HT CAPABILITY. ELEMENT ID TBD
|
||||
#define IE_RSN 48 // 802.11i d3.0
|
||||
#define IE_WPA2 48 // WPA2
|
||||
#define IE_EXT_SUPP_RATES 50 // 802.11g
|
||||
#define IE_SUPP_REG_CLASS 59 // 802.11y. Supported regulatory classes.
|
||||
#define IE_POWER_CONSTRAINT 32 // 802.11h d3.3
|
||||
#define IE_POWER_CAPABILITY 33 // 802.11h d3.3
|
||||
#define IE_TPC_REQUEST 34 // 802.11h d3.3
|
||||
#define IE_TPC_REPORT 35 // 802.11h d3.3
|
||||
#define IE_SUPP_CHANNELS 36 // 802.11h d3.3
|
||||
#define IE_CHANNEL_SWITCH_ANNOUNCEMENT 37 // 802.11h d3.3
|
||||
#define IE_MEASUREMENT_REQUEST 38 // 802.11h d3.3
|
||||
#define IE_MEASUREMENT_REPORT 39 // 802.11h d3.3
|
||||
#define IE_QUIET 40 // 802.11h d3.3
|
||||
#define IE_IBSS_DFS 41 // 802.11h d3.3
|
||||
#define IE_ERP 42 // 802.11g
|
||||
#define IE_TS_DELAY 43 // 802.11e d9
|
||||
#define IE_TCLAS_PROCESSING 44 // 802.11e d9
|
||||
#define IE_QOS_CAPABILITY 46 // 802.11e d6
|
||||
#define IE_HT_CAP 45 // 802.11n d1. HT CAPABILITY. ELEMENT ID TBD
|
||||
#define IE_AP_CHANNEL_REPORT 51 // 802.11k d6
|
||||
#define IE_HT_CAP2 52 // 802.11n d1. HT CAPABILITY. ELEMENT ID TBD
|
||||
#define IE_RSN 48 // 802.11i d3.0
|
||||
#define IE_WPA2 48 // WPA2
|
||||
#define IE_EXT_SUPP_RATES 50 // 802.11g
|
||||
#define IE_SUPP_REG_CLASS 59 // 802.11y. Supported regulatory classes.
|
||||
#define IE_EXT_CHANNEL_SWITCH_ANNOUNCEMENT 60 // 802.11n
|
||||
#define IE_ADD_HT 61 // 802.11n d1. ADDITIONAL HT CAPABILITY. ELEMENT ID TBD
|
||||
#define IE_ADD_HT2 53 // 802.11n d1. ADDITIONAL HT CAPABILITY. ELEMENT ID TBD
|
||||
|
||||
#define IE_ADD_HT 61 // 802.11n d1. ADDITIONAL HT CAPABILITY. ELEMENT ID TBD
|
||||
#define IE_ADD_HT2 53 // 802.11n d1. ADDITIONAL HT CAPABILITY. ELEMENT ID TBD
|
||||
|
||||
// For 802.11n D3.03
|
||||
//#define IE_NEW_EXT_CHA_OFFSET 62 // 802.11n d1. New extension channel offset elemet
|
||||
#define IE_SECONDARY_CH_OFFSET 62 // 802.11n D3.03 Secondary Channel Offset element
|
||||
#define IE_WAPI 68 // WAPI information element
|
||||
#define IE_2040_BSS_COEXIST 72 // 802.11n D3.0.3
|
||||
#define IE_2040_BSS_INTOLERANT_REPORT 73 // 802.11n D3.03
|
||||
#define IE_OVERLAPBSS_SCAN_PARM 74 // 802.11n D3.03
|
||||
#define IE_EXT_CAPABILITY 127 // 802.11n D3.03
|
||||
#define IE_SECONDARY_CH_OFFSET 62 // 802.11n D3.03 Secondary Channel Offset element
|
||||
#define IE_WAPI 68 // WAPI information element
|
||||
#define IE_2040_BSS_COEXIST 72 // 802.11n D3.0.3
|
||||
#define IE_2040_BSS_INTOLERANT_REPORT 73 // 802.11n D3.03
|
||||
#define IE_OVERLAPBSS_SCAN_PARM 74 // 802.11n D3.03
|
||||
#define IE_EXT_CAPABILITY 127 // 802.11n D3.03
|
||||
|
||||
#define IE_WPA 221 // WPA
|
||||
#define IE_VENDOR_SPECIFIC 221 // Wifi WMM (WME)
|
||||
|
||||
#define IE_WPA 221 // WPA
|
||||
#define IE_VENDOR_SPECIFIC 221 // Wifi WMM (WME)
|
||||
|
||||
#define OUI_BROADCOM_HT 51 //
|
||||
#define OUI_BROADCOM_HTADD 52 //
|
||||
#define OUI_PREN_HT_CAP 51 //
|
||||
#define OUI_PREN_ADD_HT 52 //
|
||||
#define OUI_BROADCOM_HT 51 //
|
||||
#define OUI_BROADCOM_HTADD 52 //
|
||||
#define OUI_PREN_HT_CAP 51 //
|
||||
#define OUI_PREN_ADD_HT 52 //
|
||||
|
||||
// CCX information
|
||||
#define IE_AIRONET_CKIP 133 // CCX1.0 ID 85H for CKIP
|
||||
#define IE_AP_TX_POWER 150 // CCX 2.0 for AP transmit power
|
||||
#define IE_MEASUREMENT_CAPABILITY 221 // CCX 2.0
|
||||
#define IE_AIRONET_CKIP 133 // CCX1.0 ID 85H for CKIP
|
||||
#define IE_AP_TX_POWER 150 // CCX 2.0 for AP transmit power
|
||||
#define IE_MEASUREMENT_CAPABILITY 221 // CCX 2.0
|
||||
#define IE_CCX_V2 221
|
||||
#define IE_AIRONET_IPADDRESS 149 // CCX ID 95H for IP Address
|
||||
#define IE_AIRONET_CCKMREASSOC 156 // CCX ID 9CH for CCKM Reassociation Request element
|
||||
#define IE_AIRONET_IPADDRESS 149 // CCX ID 95H for IP Address
|
||||
#define IE_AIRONET_CCKMREASSOC 156 // CCX ID 9CH for CCKM Reassociation Request element
|
||||
#define CKIP_NEGOTIATION_LENGTH 30
|
||||
#define AIRONET_IPADDRESS_LENGTH 10
|
||||
#define AIRONET_CCKMREASSOC_LENGTH 24
|
||||
@ -619,11 +609,8 @@
|
||||
#define WSC_STATE_MACHINE 17
|
||||
#define WSC_UPNP_STATE_MACHINE 18
|
||||
|
||||
|
||||
#define WPA_STATE_MACHINE 23
|
||||
|
||||
|
||||
|
||||
//
|
||||
// STA's CONTROL/CONNECT state machine: states, events, total function #
|
||||
//
|
||||
@ -700,10 +687,9 @@
|
||||
#define MT2_PEER_PUBLIC_CATE 4
|
||||
#define MT2_PEER_RM_CATE 5
|
||||
/* "FT_CATEGORY_BSS_TRANSITION equal to 6" is defined file of "dot11r_ft.h" */
|
||||
#define MT2_PEER_HT_CATE 7 // 7.4.7
|
||||
#define MT2_PEER_HT_CATE 7 // 7.4.7
|
||||
#define MAX_PEER_CATE_MSG 7
|
||||
|
||||
|
||||
#define MT2_MLME_ADD_BA_CATE 8
|
||||
#define MT2_MLME_ORI_DELBA_CATE 9
|
||||
#define MT2_MLME_REC_DELBA_CATE 10
|
||||
@ -721,7 +707,6 @@
|
||||
#define CATEGORY_RM 5
|
||||
#define CATEGORY_HT 7
|
||||
|
||||
|
||||
// DLS Action frame definition
|
||||
#define ACTION_DLS_REQUEST 0
|
||||
#define ACTION_DLS_RESPONSE 1
|
||||
@ -734,7 +719,6 @@
|
||||
#define SPEC_TPCRP 3
|
||||
#define SPEC_CHANNEL_SWITCH 4
|
||||
|
||||
|
||||
//BA Action field value
|
||||
#define ADDBA_REQ 0
|
||||
#define ADDBA_RESP 1
|
||||
@ -748,10 +732,9 @@
|
||||
#define ACTION_EXT_CH_SWITCH_ANNOUNCE 4 // 11y D9.0
|
||||
#define ACTION_DSE_MEASUREMENT_REQ 5 // 11y D9.0
|
||||
#define ACTION_DSE_MEASUREMENT_REPORT 6 // 11y D9.0
|
||||
#define ACTION_MEASUREMENT_PILOT_ACTION 7 // 11y D9.0
|
||||
#define ACTION_MEASUREMENT_PILOT_ACTION 7 // 11y D9.0
|
||||
#define ACTION_DSE_POWER_CONSTRAINT 8 // 11y D9.0
|
||||
|
||||
|
||||
//HT Action field value
|
||||
#define NOTIFY_BW_ACTION 0
|
||||
#define SMPS_ACTION 1
|
||||
@ -798,7 +781,7 @@
|
||||
//
|
||||
// STA's SYNC state machine: states, events, total function #
|
||||
//
|
||||
#define SYNC_IDLE 0 // merge NO_BSS,IBSS_IDLE,IBSS_ACTIVE and BSS in to 1 state
|
||||
#define SYNC_IDLE 0 // merge NO_BSS,IBSS_IDLE,IBSS_ACTIVE and BSS in to 1 state
|
||||
#define JOIN_WAIT_BEACON 1
|
||||
#define SCAN_LISTEN 2
|
||||
#define MAX_SYNC_STATE 3
|
||||
@ -907,8 +890,6 @@
|
||||
|
||||
#define WPA_FUNC_SIZE (MAX_WPA_PTK_STATE * MAX_WPA_MSG)
|
||||
|
||||
|
||||
|
||||
// =============================================================================
|
||||
|
||||
// value domain of 802.11 header FC.Tyte, which is b3..b2 of the 1st-byte of MAC header
|
||||
@ -961,10 +942,10 @@
|
||||
#define SUBTYPE_QOS_CFACK_CFPOLL 15
|
||||
|
||||
// ACK policy of QOS Control field bit 6:5
|
||||
#define NORMAL_ACK 0x00 // b6:5 = 00
|
||||
#define NO_ACK 0x20 // b6:5 = 01
|
||||
#define NO_EXPLICIT_ACK 0x40 // b6:5 = 10
|
||||
#define BLOCK_ACK 0x60 // b6:5 = 11
|
||||
#define NORMAL_ACK 0x00 // b6:5 = 00
|
||||
#define NO_ACK 0x20 // b6:5 = 01
|
||||
#define NO_EXPLICIT_ACK 0x40 // b6:5 = 10
|
||||
#define BLOCK_ACK 0x60 // b6:5 = 11
|
||||
|
||||
//
|
||||
// rtmp_data.c use these definition
|
||||
@ -982,7 +963,7 @@
|
||||
#define LENGTH_CRC 4
|
||||
#define MAX_SEQ_NUMBER 0x0fff
|
||||
#define LENGTH_802_3_NO_TYPE 12
|
||||
#define LENGTH_802_1Q 4 /* VLAN related */
|
||||
#define LENGTH_802_1Q 4 /* VLAN related */
|
||||
|
||||
// STA_CSR4.field.TxResult
|
||||
#define TX_RESULT_SUCCESS 0
|
||||
@ -999,23 +980,23 @@
|
||||
#define MODE_HTGREENFIELD 3
|
||||
|
||||
// MCS for CCK. BW.SGI.STBC are reserved
|
||||
#define MCS_LONGP_RATE_1 0 // long preamble CCK 1Mbps
|
||||
#define MCS_LONGP_RATE_1 0 // long preamble CCK 1Mbps
|
||||
#define MCS_LONGP_RATE_2 1 // long preamble CCK 1Mbps
|
||||
#define MCS_LONGP_RATE_5_5 2
|
||||
#define MCS_LONGP_RATE_11 3
|
||||
#define MCS_SHORTP_RATE_1 4 // long preamble CCK 1Mbps. short is forbidden in 1Mbps
|
||||
#define MCS_SHORTP_RATE_1 4 // long preamble CCK 1Mbps. short is forbidden in 1Mbps
|
||||
#define MCS_SHORTP_RATE_2 5 // short preamble CCK 2Mbps
|
||||
#define MCS_SHORTP_RATE_5_5 6
|
||||
#define MCS_SHORTP_RATE_11 7
|
||||
// To send duplicate legacy OFDM. set BW=BW_40. SGI.STBC are reserved
|
||||
#define MCS_RATE_6 0 // legacy OFDM
|
||||
#define MCS_RATE_9 1 // OFDM
|
||||
#define MCS_RATE_12 2 // OFDM
|
||||
#define MCS_RATE_18 3 // OFDM
|
||||
#define MCS_RATE_24 4 // OFDM
|
||||
#define MCS_RATE_36 5 // OFDM
|
||||
#define MCS_RATE_48 6 // OFDM
|
||||
#define MCS_RATE_54 7 // OFDM
|
||||
#define MCS_RATE_6 0 // legacy OFDM
|
||||
#define MCS_RATE_9 1 // OFDM
|
||||
#define MCS_RATE_12 2 // OFDM
|
||||
#define MCS_RATE_18 3 // OFDM
|
||||
#define MCS_RATE_24 4 // OFDM
|
||||
#define MCS_RATE_36 5 // OFDM
|
||||
#define MCS_RATE_48 6 // OFDM
|
||||
#define MCS_RATE_54 7 // OFDM
|
||||
// HT
|
||||
#define MCS_0 0 // 1S
|
||||
#define MCS_1 1
|
||||
@ -1070,7 +1051,7 @@
|
||||
#define RXSTBC_TWO 2 // rx support of 1 and 2 spatial stream
|
||||
#define RXSTBC_THR 3 // rx support of 1~3 spatial stream
|
||||
// MCS FEEDBACK
|
||||
#define MCSFBK_NONE 0 // not support mcs feedback /
|
||||
#define MCSFBK_NONE 0 // not support mcs feedback /
|
||||
#define MCSFBK_RSV 1 // reserved
|
||||
#define MCSFBK_UNSOLICIT 2 // only support unsolict mcs feedback
|
||||
#define MCSFBK_MRQ 3 // response to both MRQ and unsolict mcs feedback
|
||||
@ -1081,7 +1062,6 @@
|
||||
#define MMPS_RSV 2
|
||||
#define MMPS_ENABLE 3
|
||||
|
||||
|
||||
// A-MSDU size
|
||||
#define AMSDU_0 0
|
||||
#define AMSDU_1 1
|
||||
@ -1094,28 +1074,28 @@
|
||||
#define RATE_2 1
|
||||
#define RATE_5_5 2
|
||||
#define RATE_11 3
|
||||
#define RATE_6 4 // OFDM
|
||||
#define RATE_9 5 // OFDM
|
||||
#define RATE_12 6 // OFDM
|
||||
#define RATE_18 7 // OFDM
|
||||
#define RATE_24 8 // OFDM
|
||||
#define RATE_36 9 // OFDM
|
||||
#define RATE_48 10 // OFDM
|
||||
#define RATE_54 11 // OFDM
|
||||
#define RATE_6 4 // OFDM
|
||||
#define RATE_9 5 // OFDM
|
||||
#define RATE_12 6 // OFDM
|
||||
#define RATE_18 7 // OFDM
|
||||
#define RATE_24 8 // OFDM
|
||||
#define RATE_36 9 // OFDM
|
||||
#define RATE_48 10 // OFDM
|
||||
#define RATE_54 11 // OFDM
|
||||
#define RATE_FIRST_OFDM_RATE RATE_6
|
||||
#define RATE_LAST_OFDM_RATE RATE_54
|
||||
#define RATE_6_5 12 // HT mix
|
||||
#define RATE_13 13 // HT mix
|
||||
#define RATE_19_5 14 // HT mix
|
||||
#define RATE_26 15 // HT mix
|
||||
#define RATE_39 16 // HT mix
|
||||
#define RATE_52 17 // HT mix
|
||||
#define RATE_58_5 18 // HT mix
|
||||
#define RATE_65 19 // HT mix
|
||||
#define RATE_78 20 // HT mix
|
||||
#define RATE_104 21 // HT mix
|
||||
#define RATE_117 22 // HT mix
|
||||
#define RATE_130 23 // HT mix
|
||||
#define RATE_6_5 12 // HT mix
|
||||
#define RATE_13 13 // HT mix
|
||||
#define RATE_19_5 14 // HT mix
|
||||
#define RATE_26 15 // HT mix
|
||||
#define RATE_39 16 // HT mix
|
||||
#define RATE_52 17 // HT mix
|
||||
#define RATE_58_5 18 // HT mix
|
||||
#define RATE_65 19 // HT mix
|
||||
#define RATE_78 20 // HT mix
|
||||
#define RATE_104 21 // HT mix
|
||||
#define RATE_117 22 // HT mix
|
||||
#define RATE_130 23 // HT mix
|
||||
//#define RATE_AUTO_SWITCH 255 // for StaCfg.FixedTxRate only
|
||||
#define HTRATE_0 12
|
||||
#define RATE_FIRST_MM_RATE HTRATE_0
|
||||
@ -1134,34 +1114,34 @@
|
||||
|
||||
// Country Region definition
|
||||
#define REGION_MINIMUM_BG_BAND 0
|
||||
#define REGION_0_BG_BAND 0 // 1-11
|
||||
#define REGION_1_BG_BAND 1 // 1-13
|
||||
#define REGION_2_BG_BAND 2 // 10-11
|
||||
#define REGION_3_BG_BAND 3 // 10-13
|
||||
#define REGION_4_BG_BAND 4 // 14
|
||||
#define REGION_5_BG_BAND 5 // 1-14
|
||||
#define REGION_6_BG_BAND 6 // 3-9
|
||||
#define REGION_7_BG_BAND 7 // 5-13
|
||||
#define REGION_31_BG_BAND 31 // 5-13
|
||||
#define REGION_0_BG_BAND 0 // 1-11
|
||||
#define REGION_1_BG_BAND 1 // 1-13
|
||||
#define REGION_2_BG_BAND 2 // 10-11
|
||||
#define REGION_3_BG_BAND 3 // 10-13
|
||||
#define REGION_4_BG_BAND 4 // 14
|
||||
#define REGION_5_BG_BAND 5 // 1-14
|
||||
#define REGION_6_BG_BAND 6 // 3-9
|
||||
#define REGION_7_BG_BAND 7 // 5-13
|
||||
#define REGION_31_BG_BAND 31 // 5-13
|
||||
#define REGION_MAXIMUM_BG_BAND 7
|
||||
|
||||
#define REGION_MINIMUM_A_BAND 0
|
||||
#define REGION_0_A_BAND 0 // 36, 40, 44, 48, 52, 56, 60, 64, 149, 153, 157, 161, 165
|
||||
#define REGION_1_A_BAND 1 // 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140
|
||||
#define REGION_2_A_BAND 2 // 36, 40, 44, 48, 52, 56, 60, 64
|
||||
#define REGION_3_A_BAND 3 // 52, 56, 60, 64, 149, 153, 157, 161
|
||||
#define REGION_4_A_BAND 4 // 149, 153, 157, 161, 165
|
||||
#define REGION_5_A_BAND 5 // 149, 153, 157, 161
|
||||
#define REGION_6_A_BAND 6 // 36, 40, 44, 48
|
||||
#define REGION_7_A_BAND 7 // 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 149, 153, 157, 161, 165, 169, 173
|
||||
#define REGION_8_A_BAND 8 // 52, 56, 60, 64
|
||||
#define REGION_9_A_BAND 9 // 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 132, 136, 140, 149, 153, 157, 161, 165
|
||||
#define REGION_10_A_BAND 10 // 36, 40, 44, 48, 149, 153, 157, 161, 165
|
||||
#define REGION_11_A_BAND 11 // 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 149, 153, 157, 161
|
||||
#define REGION_12_A_BAND 12 // 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140
|
||||
#define REGION_13_A_BAND 13 // 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 149, 153, 157, 161
|
||||
#define REGION_14_A_BAND 14 // 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 136, 140, 149, 153, 157, 161, 165
|
||||
#define REGION_15_A_BAND 15 // 149, 153, 157, 161, 165, 169, 173
|
||||
#define REGION_0_A_BAND 0 // 36, 40, 44, 48, 52, 56, 60, 64, 149, 153, 157, 161, 165
|
||||
#define REGION_1_A_BAND 1 // 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140
|
||||
#define REGION_2_A_BAND 2 // 36, 40, 44, 48, 52, 56, 60, 64
|
||||
#define REGION_3_A_BAND 3 // 52, 56, 60, 64, 149, 153, 157, 161
|
||||
#define REGION_4_A_BAND 4 // 149, 153, 157, 161, 165
|
||||
#define REGION_5_A_BAND 5 // 149, 153, 157, 161
|
||||
#define REGION_6_A_BAND 6 // 36, 40, 44, 48
|
||||
#define REGION_7_A_BAND 7 // 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 149, 153, 157, 161, 165, 169, 173
|
||||
#define REGION_8_A_BAND 8 // 52, 56, 60, 64
|
||||
#define REGION_9_A_BAND 9 // 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 132, 136, 140, 149, 153, 157, 161, 165
|
||||
#define REGION_10_A_BAND 10 // 36, 40, 44, 48, 149, 153, 157, 161, 165
|
||||
#define REGION_11_A_BAND 11 // 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 149, 153, 157, 161
|
||||
#define REGION_12_A_BAND 12 // 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140
|
||||
#define REGION_13_A_BAND 13 // 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 149, 153, 157, 161
|
||||
#define REGION_14_A_BAND 14 // 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 136, 140, 149, 153, 157, 161, 165
|
||||
#define REGION_15_A_BAND 15 // 149, 153, 157, 161, 165, 169, 173
|
||||
#define REGION_MAXIMUM_A_BAND 15
|
||||
|
||||
// pTxD->CipherAlg
|
||||
@ -1172,10 +1152,9 @@
|
||||
#define CIPHER_AES 4
|
||||
#define CIPHER_CKIP64 5
|
||||
#define CIPHER_CKIP128 6
|
||||
#define CIPHER_TKIP_NO_MIC 7 // MIC appended by driver: not a valid value in hardware key table
|
||||
#define CIPHER_TKIP_NO_MIC 7 // MIC appended by driver: not a valid value in hardware key table
|
||||
#define CIPHER_SMS4 8
|
||||
|
||||
|
||||
// LED Status.
|
||||
#define LED_LINK_DOWN 0
|
||||
#define LED_LINK_UP 1
|
||||
@ -1189,11 +1168,11 @@
|
||||
// value domain of pAd->LedCntl.LedMode and E2PROM
|
||||
#define LED_MODE_DEFAULT 0
|
||||
#define LED_MODE_TWO_LED 1
|
||||
//#define LED_MODE_SIGNAL_STREGTH 8 // EEPROM define =8
|
||||
#define LED_MODE_SIGNAL_STREGTH 0x40 // EEPROM define = 64
|
||||
//#define LED_MODE_SIGNAL_STREGTH 8 // EEPROM define =8
|
||||
#define LED_MODE_SIGNAL_STREGTH 0x40 // EEPROM define = 64
|
||||
|
||||
// RC4 init value, used fro WEP & TKIP
|
||||
#define PPPINITFCS32 0xffffffff /* Initial FCS value */
|
||||
#define PPPINITFCS32 0xffffffff /* Initial FCS value */
|
||||
|
||||
// value domain of pAd->StaCfg.PortSecured. 802.1X controlled port definition
|
||||
#define WPA_802_1X_PORT_SECURED 1
|
||||
@ -1205,7 +1184,6 @@
|
||||
//definition of DRS
|
||||
#define MAX_STEP_OF_TX_RATE_SWITCH 32
|
||||
|
||||
|
||||
// pre-allocated free NDIS PACKET/BUFFER poll for internal usage
|
||||
#define MAX_NUM_OF_FREE_NDIS_PACKET 128
|
||||
|
||||
@ -1223,7 +1201,7 @@
|
||||
#define DEFAULT_RF_TX_POWER 5
|
||||
|
||||
#define MAX_INI_BUFFER_SIZE 4096
|
||||
#define MAX_PARAM_BUFFER_SIZE (2048) // enough for ACL (18*64)
|
||||
#define MAX_PARAM_BUFFER_SIZE (2048) // enough for ACL (18*64)
|
||||
//18 : the length of Mac address acceptable format "01:02:03:04:05:06;")
|
||||
//64 : MAX_NUM_OF_ACL_LIST
|
||||
// definition of pAd->OpMode
|
||||
@ -1233,10 +1211,10 @@
|
||||
|
||||
// ========================= AP rtmp_def.h ===========================
|
||||
// value domain for pAd->EventTab.Log[].Event
|
||||
#define EVENT_RESET_ACCESS_POINT 0 // Log = "hh:mm:ss Restart Access Point"
|
||||
#define EVENT_ASSOCIATED 1 // Log = "hh:mm:ss STA 00:01:02:03:04:05 associated"
|
||||
#define EVENT_DISASSOCIATED 2 // Log = "hh:mm:ss STA 00:01:02:03:04:05 left this BSS"
|
||||
#define EVENT_AGED_OUT 3 // Log = "hh:mm:ss STA 00:01:02:03:04:05 was aged-out and removed from this BSS"
|
||||
#define EVENT_RESET_ACCESS_POINT 0 // Log = "hh:mm:ss Restart Access Point"
|
||||
#define EVENT_ASSOCIATED 1 // Log = "hh:mm:ss STA 00:01:02:03:04:05 associated"
|
||||
#define EVENT_DISASSOCIATED 2 // Log = "hh:mm:ss STA 00:01:02:03:04:05 left this BSS"
|
||||
#define EVENT_AGED_OUT 3 // Log = "hh:mm:ss STA 00:01:02:03:04:05 was aged-out and removed from this BSS"
|
||||
#define EVENT_COUNTER_M 4
|
||||
#define EVENT_INVALID_PSK 5
|
||||
#define EVENT_MAX_EVENT_TYPE 6
|
||||
@ -1262,7 +1240,6 @@
|
||||
// MBSSID definition
|
||||
#define ENTRY_NOT_FOUND 0xFF
|
||||
|
||||
|
||||
/* After Linux 2.6.9,
|
||||
* VLAN module use Private (from user) interface flags (netdevice->priv_flags).
|
||||
* #define IFF_802_1Q_VLAN 0x1 -- 802.1Q VLAN device. in if.h
|
||||
@ -1282,13 +1259,10 @@
|
||||
#define INF_APCLI_DEV_NAME "apcli"
|
||||
#define INF_MESH_DEV_NAME "mesh"
|
||||
|
||||
|
||||
// WEP Key TYPE
|
||||
#define WEP_HEXADECIMAL_TYPE 0
|
||||
#define WEP_ASCII_TYPE 1
|
||||
|
||||
|
||||
|
||||
// WIRELESS EVENTS definition
|
||||
/* Max number of char in custom event, refer to wireless_tools.28/wireless.20.h */
|
||||
#define IW_CUSTOM_MAX_LEN 255 /* In bytes */
|
||||
@ -1375,7 +1349,6 @@
|
||||
#define GUI_IDLE_POWER_SAVE 3
|
||||
// --
|
||||
|
||||
|
||||
// definition for WpaSupport flag
|
||||
#define WPA_SUPPLICANT_DISABLE 0
|
||||
#define WPA_SUPPLICANT_ENABLE 1
|
||||
@ -1418,10 +1391,8 @@
|
||||
#define cpu2be16(x) SWAP16((x))
|
||||
#define be2cpu16(x) SWAP16((x))
|
||||
|
||||
|
||||
#define ABS(_x, _y) ((_x) > (_y)) ? ((_x) -(_y)) : ((_y) -(_x))
|
||||
|
||||
|
||||
#define A2Dec(_X, _p) \
|
||||
{ \
|
||||
UCHAR *p; \
|
||||
@ -1435,7 +1406,6 @@
|
||||
} \
|
||||
}
|
||||
|
||||
|
||||
#define A2Hex(_X, _p) \
|
||||
do{ \
|
||||
char *__p; \
|
||||
@ -1453,6 +1423,4 @@ do{ \
|
||||
} \
|
||||
}while(0)
|
||||
|
||||
#endif // __RTMP_DEF_H__
|
||||
|
||||
|
||||
#endif // __RTMP_DEF_H__
|
||||
|
@ -30,73 +30,71 @@
|
||||
|
||||
#include "rtmp_type.h"
|
||||
|
||||
|
||||
// 4-byte HTC field. maybe included in any frame except non-QOS data frame. The Order bit must set 1.
|
||||
typedef struct PACKED {
|
||||
UINT32 MA:1; //management action payload exist in (QoS Null+HTC)
|
||||
UINT32 TRQ:1; //sounding request
|
||||
UINT32 MRQ:1; //MCS feedback. Request for a MCS feedback
|
||||
UINT32 MRSorASI:3; // MRQ Sequence identifier. unchanged during entire procedure. 0x000-0x110.
|
||||
UINT32 MFS:3; //SET to the received value of MRS. 0x111 for unsolicited MFB.
|
||||
UINT32 MFBorASC:7; //Link adaptation feedback containing recommended MCS. 0x7f for no feedback or not available
|
||||
UINT32 CalPos:2; // calibration position
|
||||
UINT32 CalSeq:2; //calibration sequence
|
||||
UINT32 FBKReq:2; //feedback request
|
||||
UINT32 CSISTEERING:2; //CSI/ STEERING
|
||||
UINT32 ZLFAnnouce:1; // ZLF announcement
|
||||
UINT32 rsv:5; //calibration sequence
|
||||
UINT32 ACConstraint:1; //feedback request
|
||||
UINT32 RDG:1; //RDG / More PPDU
|
||||
UINT32 MA:1; //management action payload exist in (QoS Null+HTC)
|
||||
UINT32 TRQ:1; //sounding request
|
||||
UINT32 MRQ:1; //MCS feedback. Request for a MCS feedback
|
||||
UINT32 MRSorASI:3; // MRQ Sequence identifier. unchanged during entire procedure. 0x000-0x110.
|
||||
UINT32 MFS:3; //SET to the received value of MRS. 0x111 for unsolicited MFB.
|
||||
UINT32 MFBorASC:7; //Link adaptation feedback containing recommended MCS. 0x7f for no feedback or not available
|
||||
UINT32 CalPos:2; // calibration position
|
||||
UINT32 CalSeq:2; //calibration sequence
|
||||
UINT32 FBKReq:2; //feedback request
|
||||
UINT32 CSISTEERING:2; //CSI/ STEERING
|
||||
UINT32 ZLFAnnouce:1; // ZLF announcement
|
||||
UINT32 rsv:5; //calibration sequence
|
||||
UINT32 ACConstraint:1; //feedback request
|
||||
UINT32 RDG:1; //RDG / More PPDU
|
||||
} HT_CONTROL, *PHT_CONTROL;
|
||||
|
||||
// 2-byte QOS CONTROL field
|
||||
typedef struct PACKED {
|
||||
USHORT TID:4;
|
||||
USHORT EOSP:1;
|
||||
USHORT AckPolicy:2; //0: normal ACK 1:No ACK 2:scheduled under MTBA/PSMP 3: BA
|
||||
USHORT AMsduPresent:1;
|
||||
USHORT Txop_QueueSize:8;
|
||||
USHORT TID:4;
|
||||
USHORT EOSP:1;
|
||||
USHORT AckPolicy:2; //0: normal ACK 1:No ACK 2:scheduled under MTBA/PSMP 3: BA
|
||||
USHORT AMsduPresent:1;
|
||||
USHORT Txop_QueueSize:8;
|
||||
} QOS_CONTROL, *PQOS_CONTROL;
|
||||
|
||||
|
||||
// 2-byte Frame control field
|
||||
typedef struct PACKED {
|
||||
USHORT Ver:2; // Protocol version
|
||||
USHORT Type:2; // MSDU type
|
||||
USHORT SubType:4; // MSDU subtype
|
||||
USHORT ToDs:1; // To DS indication
|
||||
USHORT FrDs:1; // From DS indication
|
||||
USHORT MoreFrag:1; // More fragment bit
|
||||
USHORT Retry:1; // Retry status bit
|
||||
USHORT PwrMgmt:1; // Power management bit
|
||||
USHORT MoreData:1; // More data bit
|
||||
USHORT Wep:1; // Wep data
|
||||
USHORT Order:1; // Strict order expected
|
||||
typedef struct PACKED {
|
||||
USHORT Ver:2; // Protocol version
|
||||
USHORT Type:2; // MSDU type
|
||||
USHORT SubType:4; // MSDU subtype
|
||||
USHORT ToDs:1; // To DS indication
|
||||
USHORT FrDs:1; // From DS indication
|
||||
USHORT MoreFrag:1; // More fragment bit
|
||||
USHORT Retry:1; // Retry status bit
|
||||
USHORT PwrMgmt:1; // Power management bit
|
||||
USHORT MoreData:1; // More data bit
|
||||
USHORT Wep:1; // Wep data
|
||||
USHORT Order:1; // Strict order expected
|
||||
} FRAME_CONTROL, *PFRAME_CONTROL;
|
||||
|
||||
typedef struct PACKED _HEADER_802_11 {
|
||||
FRAME_CONTROL FC;
|
||||
USHORT Duration;
|
||||
UCHAR Addr1[MAC_ADDR_LEN];
|
||||
UCHAR Addr2[MAC_ADDR_LEN];
|
||||
UCHAR Addr3[MAC_ADDR_LEN];
|
||||
USHORT Frag:4;
|
||||
USHORT Sequence:12;
|
||||
UCHAR Octet[0];
|
||||
} HEADER_802_11, *PHEADER_802_11;
|
||||
typedef struct PACKED _HEADER_802_11 {
|
||||
FRAME_CONTROL FC;
|
||||
USHORT Duration;
|
||||
UCHAR Addr1[MAC_ADDR_LEN];
|
||||
UCHAR Addr2[MAC_ADDR_LEN];
|
||||
UCHAR Addr3[MAC_ADDR_LEN];
|
||||
USHORT Frag:4;
|
||||
USHORT Sequence:12;
|
||||
UCHAR Octet[0];
|
||||
} HEADER_802_11, *PHEADER_802_11;
|
||||
|
||||
typedef struct PACKED _PSPOLL_FRAME {
|
||||
FRAME_CONTROL FC;
|
||||
USHORT Aid;
|
||||
UCHAR Bssid[MAC_ADDR_LEN];
|
||||
UCHAR Ta[MAC_ADDR_LEN];
|
||||
} PSPOLL_FRAME, *PPSPOLL_FRAME;
|
||||
FRAME_CONTROL FC;
|
||||
USHORT Aid;
|
||||
UCHAR Bssid[MAC_ADDR_LEN];
|
||||
UCHAR Ta[MAC_ADDR_LEN];
|
||||
} PSPOLL_FRAME, *PPSPOLL_FRAME;
|
||||
|
||||
typedef struct PACKED _RTS_FRAME {
|
||||
FRAME_CONTROL FC;
|
||||
USHORT Duration;
|
||||
UCHAR Addr1[MAC_ADDR_LEN];
|
||||
UCHAR Addr2[MAC_ADDR_LEN];
|
||||
}RTS_FRAME, *PRTS_FRAME;
|
||||
typedef struct PACKED _RTS_FRAME {
|
||||
FRAME_CONTROL FC;
|
||||
USHORT Duration;
|
||||
UCHAR Addr1[MAC_ADDR_LEN];
|
||||
UCHAR Addr2[MAC_ADDR_LEN];
|
||||
} RTS_FRAME, *PRTS_FRAME;
|
||||
|
||||
#endif // __DOT11_BASE_H__ //
|
||||
|
@ -37,7 +37,6 @@
|
||||
#ifndef __RTMP_IFACE_H__
|
||||
#define __RTMP_IFACE_H__
|
||||
|
||||
|
||||
#ifdef RTMP_PCI_SUPPORT
|
||||
#include "iface/rtmp_pci.h"
|
||||
#endif // RTMP_PCI_SUPPORT //
|
||||
@ -45,40 +44,32 @@
|
||||
#include "iface/rtmp_usb.h"
|
||||
#endif // RTMP_USB_SUPPORT //
|
||||
|
||||
typedef struct _INF_PCI_CONFIG_
|
||||
{
|
||||
unsigned long CSRBaseAddress; // PCI MMIO Base Address, all access will use
|
||||
unsigned int irq_num;
|
||||
}INF_PCI_CONFIG;
|
||||
typedef struct _INF_PCI_CONFIG_ {
|
||||
unsigned long CSRBaseAddress; // PCI MMIO Base Address, all access will use
|
||||
unsigned int irq_num;
|
||||
} INF_PCI_CONFIG;
|
||||
|
||||
typedef struct _INF_USB_CONFIG_ {
|
||||
UINT8 BulkInEpAddr; // bulk-in endpoint address
|
||||
UINT8 BulkOutEpAddr[6]; // bulk-out endpoint address
|
||||
} INF_USB_CONFIG;
|
||||
|
||||
typedef struct _INF_USB_CONFIG_
|
||||
{
|
||||
UINT8 BulkInEpAddr; // bulk-in endpoint address
|
||||
UINT8 BulkOutEpAddr[6]; // bulk-out endpoint address
|
||||
}INF_USB_CONFIG;
|
||||
typedef struct _INF_RBUS_CONFIG_ {
|
||||
unsigned long csr_addr;
|
||||
unsigned int irq;
|
||||
} INF_RBUS_CONFIG;
|
||||
|
||||
|
||||
typedef struct _INF_RBUS_CONFIG_
|
||||
{
|
||||
unsigned long csr_addr;
|
||||
unsigned int irq;
|
||||
}INF_RBUS_CONFIG;
|
||||
|
||||
|
||||
typedef enum _RTMP_INF_TYPE_
|
||||
{
|
||||
typedef enum _RTMP_INF_TYPE_ {
|
||||
RTMP_DEV_INF_UNKNOWN = 0,
|
||||
RTMP_DEV_INF_PCI = 1,
|
||||
RTMP_DEV_INF_USB = 2,
|
||||
RTMP_DEV_INF_RBUS = 4,
|
||||
}RTMP_INF_TYPE;
|
||||
} RTMP_INF_TYPE;
|
||||
|
||||
|
||||
typedef union _RTMP_INF_CONFIG_{
|
||||
struct _INF_PCI_CONFIG_ pciConfig;
|
||||
struct _INF_USB_CONFIG_ usbConfig;
|
||||
struct _INF_RBUS_CONFIG_ rbusConfig;
|
||||
}RTMP_INF_CONFIG;
|
||||
typedef union _RTMP_INF_CONFIG_ {
|
||||
struct _INF_PCI_CONFIG_ pciConfig;
|
||||
struct _INF_USB_CONFIG_ usbConfig;
|
||||
struct _INF_RBUS_CONFIG_ rbusConfig;
|
||||
} RTMP_INF_CONFIG;
|
||||
|
||||
#endif // __RTMP_IFACE_H__ //
|
||||
|
@ -38,18 +38,12 @@
|
||||
#ifndef __RTMP_MCU_H__
|
||||
#define __RTMP_MCU_H__
|
||||
|
||||
INT RtmpAsicEraseFirmware(IN PRTMP_ADAPTER pAd);
|
||||
|
||||
INT RtmpAsicEraseFirmware(
|
||||
IN PRTMP_ADAPTER pAd);
|
||||
NDIS_STATUS RtmpAsicLoadFirmware(IN PRTMP_ADAPTER pAd);
|
||||
|
||||
NDIS_STATUS RtmpAsicLoadFirmware(
|
||||
IN PRTMP_ADAPTER pAd);
|
||||
|
||||
INT RtmpAsicSendCommandToMcu(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN UCHAR Command,
|
||||
IN UCHAR Token,
|
||||
IN UCHAR Arg0,
|
||||
IN UCHAR Arg1);
|
||||
INT RtmpAsicSendCommandToMcu(IN PRTMP_ADAPTER pAd,
|
||||
IN UCHAR Command,
|
||||
IN UCHAR Token, IN UCHAR Arg0, IN UCHAR Arg1);
|
||||
|
||||
#endif // __RTMP_MCU_H__ //
|
||||
|
@ -34,7 +34,6 @@
|
||||
--------- ---------- ----------------------------------------------
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __RTMP_OS_H__
|
||||
#define __RTMP_OS_H__
|
||||
|
||||
@ -42,8 +41,6 @@
|
||||
#include "rt_linux.h"
|
||||
#endif // LINUX //
|
||||
|
||||
|
||||
|
||||
/*
|
||||
This data structure mainly strip some callback function defined in
|
||||
"struct net_device" in kernel source "include/linux/netdevice.h".
|
||||
@ -51,46 +48,41 @@
|
||||
The definition of this data structure may various depends on different
|
||||
OS. Use it carefully.
|
||||
*/
|
||||
typedef struct _RTMP_OS_NETDEV_OP_HOOK_
|
||||
{
|
||||
typedef struct _RTMP_OS_NETDEV_OP_HOOK_ {
|
||||
const struct net_device_ops *netdev_ops;
|
||||
void *priv;
|
||||
int priv_flags;
|
||||
void *priv;
|
||||
int priv_flags;
|
||||
unsigned char devAddr[6];
|
||||
unsigned char devName[16];
|
||||
unsigned char needProtcted;
|
||||
}RTMP_OS_NETDEV_OP_HOOK, *PRTMP_OS_NETDEV_OP_HOOK;
|
||||
unsigned char devName[16];
|
||||
unsigned char needProtcted;
|
||||
} RTMP_OS_NETDEV_OP_HOOK, *PRTMP_OS_NETDEV_OP_HOOK;
|
||||
|
||||
|
||||
typedef enum _RTMP_TASK_STATUS_
|
||||
{
|
||||
typedef enum _RTMP_TASK_STATUS_ {
|
||||
RTMP_TASK_STAT_UNKNOWN = 0,
|
||||
RTMP_TASK_STAT_INITED = 1,
|
||||
RTMP_TASK_STAT_RUNNING = 2,
|
||||
RTMP_TASK_STAT_STOPED = 4,
|
||||
}RTMP_TASK_STATUS;
|
||||
} RTMP_TASK_STATUS;
|
||||
#define RTMP_TASK_CAN_DO_INSERT (RTMP_TASK_STAT_INITED |RTMP_TASK_STAT_RUNNING)
|
||||
|
||||
#define RTMP_OS_TASK_NAME_LEN 16
|
||||
typedef struct _RTMP_OS_TASK_
|
||||
{
|
||||
char taskName[RTMP_OS_TASK_NAME_LEN];
|
||||
void *priv;
|
||||
//unsigned long taskFlags;
|
||||
RTMP_TASK_STATUS taskStatus;
|
||||
typedef struct _RTMP_OS_TASK_ {
|
||||
char taskName[RTMP_OS_TASK_NAME_LEN];
|
||||
void *priv;
|
||||
//unsigned long taskFlags;
|
||||
RTMP_TASK_STATUS taskStatus;
|
||||
#ifndef KTHREAD_SUPPORT
|
||||
RTMP_OS_SEM taskSema;
|
||||
RTMP_OS_PID taskPID;
|
||||
struct completion taskComplete;
|
||||
RTMP_OS_SEM taskSema;
|
||||
RTMP_OS_PID taskPID;
|
||||
struct completion taskComplete;
|
||||
#endif
|
||||
unsigned char task_killed;
|
||||
unsigned char task_killed;
|
||||
#ifdef KTHREAD_SUPPORT
|
||||
struct task_struct *kthread_task;
|
||||
wait_queue_head_t kthread_q;
|
||||
BOOLEAN kthread_running;
|
||||
struct task_struct *kthread_task;
|
||||
wait_queue_head_t kthread_q;
|
||||
BOOLEAN kthread_running;
|
||||
#endif
|
||||
}RTMP_OS_TASK;
|
||||
|
||||
} RTMP_OS_TASK;
|
||||
|
||||
int RtmpOSIRQRequest(IN PNET_DEV pNetDev);
|
||||
int RtmpOSIRQRelease(IN PNET_DEV pNetDev);
|
||||
|
@ -43,59 +43,52 @@
|
||||
|
||||
#include "rtmp_os.h"
|
||||
|
||||
|
||||
#define DECLARE_TIMER_FUNCTION(_func) \
|
||||
void rtmp_timer_##_func(unsigned long data)
|
||||
|
||||
#define GET_TIMER_FUNCTION(_func) \
|
||||
rtmp_timer_##_func
|
||||
|
||||
|
||||
/* ----------------- Timer Related MARCO ---------------*/
|
||||
// In some os or chipset, we have a lot of timer functions and will read/write register,
|
||||
// it's not allowed in Linux USB sub-system to do it ( because of sleep issue when
|
||||
// submit to ctrl pipe). So we need a wrapper function to take care it.
|
||||
|
||||
#ifdef RTMP_TIMER_TASK_SUPPORT
|
||||
typedef VOID (*RTMP_TIMER_TASK_HANDLE)(
|
||||
IN PVOID SystemSpecific1,
|
||||
IN PVOID FunctionContext,
|
||||
IN PVOID SystemSpecific2,
|
||||
IN PVOID SystemSpecific3);
|
||||
typedef VOID(*RTMP_TIMER_TASK_HANDLE) (IN PVOID SystemSpecific1,
|
||||
IN PVOID FunctionContext,
|
||||
IN PVOID SystemSpecific2,
|
||||
IN PVOID SystemSpecific3);
|
||||
#endif // RTMP_TIMER_TASK_SUPPORT //
|
||||
|
||||
typedef struct _RALINK_TIMER_STRUCT {
|
||||
RTMP_OS_TIMER TimerObj; // Ndis Timer object
|
||||
BOOLEAN Valid; // Set to True when call RTMPInitTimer
|
||||
BOOLEAN State; // True if timer cancelled
|
||||
BOOLEAN PeriodicType; // True if timer is periodic timer
|
||||
BOOLEAN Repeat; // True if periodic timer
|
||||
ULONG TimerValue; // Timer value in milliseconds
|
||||
ULONG cookie; // os specific object
|
||||
typedef struct _RALINK_TIMER_STRUCT {
|
||||
RTMP_OS_TIMER TimerObj; // Ndis Timer object
|
||||
BOOLEAN Valid; // Set to True when call RTMPInitTimer
|
||||
BOOLEAN State; // True if timer cancelled
|
||||
BOOLEAN PeriodicType; // True if timer is periodic timer
|
||||
BOOLEAN Repeat; // True if periodic timer
|
||||
ULONG TimerValue; // Timer value in milliseconds
|
||||
ULONG cookie; // os specific object
|
||||
#ifdef RTMP_TIMER_TASK_SUPPORT
|
||||
RTMP_TIMER_TASK_HANDLE handle;
|
||||
void *pAd;
|
||||
#endif // RTMP_TIMER_TASK_SUPPORT //
|
||||
}RALINK_TIMER_STRUCT, *PRALINK_TIMER_STRUCT;
|
||||
|
||||
RTMP_TIMER_TASK_HANDLE handle;
|
||||
void *pAd;
|
||||
#endif // RTMP_TIMER_TASK_SUPPORT //
|
||||
} RALINK_TIMER_STRUCT, *PRALINK_TIMER_STRUCT;
|
||||
|
||||
#ifdef RTMP_TIMER_TASK_SUPPORT
|
||||
typedef struct _RTMP_TIMER_TASK_ENTRY_
|
||||
{
|
||||
RALINK_TIMER_STRUCT *pRaTimer;
|
||||
struct _RTMP_TIMER_TASK_ENTRY_ *pNext;
|
||||
}RTMP_TIMER_TASK_ENTRY;
|
||||
|
||||
typedef struct _RTMP_TIMER_TASK_ENTRY_ {
|
||||
RALINK_TIMER_STRUCT *pRaTimer;
|
||||
struct _RTMP_TIMER_TASK_ENTRY_ *pNext;
|
||||
} RTMP_TIMER_TASK_ENTRY;
|
||||
|
||||
#define TIMER_QUEUE_SIZE_MAX 128
|
||||
typedef struct _RTMP_TIMER_TASK_QUEUE_
|
||||
{
|
||||
unsigned int status;
|
||||
unsigned char *pTimerQPoll;
|
||||
RTMP_TIMER_TASK_ENTRY *pQPollFreeList;
|
||||
RTMP_TIMER_TASK_ENTRY *pQHead;
|
||||
RTMP_TIMER_TASK_ENTRY *pQTail;
|
||||
}RTMP_TIMER_TASK_QUEUE;
|
||||
typedef struct _RTMP_TIMER_TASK_QUEUE_ {
|
||||
unsigned int status;
|
||||
unsigned char *pTimerQPoll;
|
||||
RTMP_TIMER_TASK_ENTRY *pQPollFreeList;
|
||||
RTMP_TIMER_TASK_ENTRY *pQHead;
|
||||
RTMP_TIMER_TASK_ENTRY *pQTail;
|
||||
} RTMP_TIMER_TASK_QUEUE;
|
||||
|
||||
#define BUILD_TIMER_FUNCTION(_func) \
|
||||
void rtmp_timer_##_func(unsigned long data) \
|
||||
@ -122,7 +115,6 @@ void rtmp_timer_##_func(unsigned long data) \
|
||||
}
|
||||
#endif // RTMP_TIMER_TASK_SUPPORT //
|
||||
|
||||
|
||||
DECLARE_TIMER_FUNCTION(MlmePeriodicExec);
|
||||
DECLARE_TIMER_FUNCTION(MlmeRssiReportExec);
|
||||
DECLARE_TIMER_FUNCTION(AsicRxAntEvalTimeout);
|
||||
@ -152,5 +144,4 @@ DECLARE_TIMER_FUNCTION(RtmpUsbStaAsicForceWakeupTimeout);
|
||||
DECLARE_TIMER_FUNCTION(LedCtrlMain);
|
||||
#endif
|
||||
|
||||
|
||||
#endif // __RTMP_TIMER_H__ //
|
||||
|
@ -38,110 +38,101 @@
|
||||
#ifndef __RTMP_TYPE_H__
|
||||
#define __RTMP_TYPE_H__
|
||||
|
||||
|
||||
#define PACKED __attribute__ ((packed))
|
||||
|
||||
#ifdef LINUX
|
||||
// Put platform dependent declaration here
|
||||
// For example, linux type definition
|
||||
typedef unsigned char UINT8;
|
||||
typedef unsigned short UINT16;
|
||||
typedef unsigned int UINT32;
|
||||
typedef unsigned long long UINT64;
|
||||
typedef int INT32;
|
||||
typedef long long INT64;
|
||||
typedef unsigned char UINT8;
|
||||
typedef unsigned short UINT16;
|
||||
typedef unsigned int UINT32;
|
||||
typedef unsigned long long UINT64;
|
||||
typedef int INT32;
|
||||
typedef long long INT64;
|
||||
#endif // LINUX //
|
||||
|
||||
typedef unsigned char * PUINT8;
|
||||
typedef unsigned short * PUINT16;
|
||||
typedef unsigned int * PUINT32;
|
||||
typedef unsigned long long * PUINT64;
|
||||
typedef int * PINT32;
|
||||
typedef long long * PINT64;
|
||||
typedef unsigned char *PUINT8;
|
||||
typedef unsigned short *PUINT16;
|
||||
typedef unsigned int *PUINT32;
|
||||
typedef unsigned long long *PUINT64;
|
||||
typedef int *PINT32;
|
||||
typedef long long *PINT64;
|
||||
|
||||
// modified for fixing compile warning on Sigma 8634 platform
|
||||
typedef char STRING;
|
||||
typedef signed char CHAR;
|
||||
|
||||
typedef signed short SHORT;
|
||||
typedef signed int INT;
|
||||
typedef signed long LONG;
|
||||
typedef signed long long LONGLONG;
|
||||
typedef char STRING;
|
||||
typedef signed char CHAR;
|
||||
|
||||
typedef signed short SHORT;
|
||||
typedef signed int INT;
|
||||
typedef signed long LONG;
|
||||
typedef signed long long LONGLONG;
|
||||
|
||||
#ifdef LINUX
|
||||
typedef unsigned char UCHAR;
|
||||
typedef unsigned short USHORT;
|
||||
typedef unsigned int UINT;
|
||||
typedef unsigned long ULONG;
|
||||
typedef unsigned char UCHAR;
|
||||
typedef unsigned short USHORT;
|
||||
typedef unsigned int UINT;
|
||||
typedef unsigned long ULONG;
|
||||
#endif // LINUX //
|
||||
typedef unsigned long long ULONGLONG;
|
||||
typedef unsigned long long ULONGLONG;
|
||||
|
||||
typedef unsigned char BOOLEAN;
|
||||
typedef unsigned char BOOLEAN;
|
||||
#ifdef LINUX
|
||||
typedef void VOID;
|
||||
typedef void VOID;
|
||||
#endif // LINUX //
|
||||
|
||||
typedef char * PSTRING;
|
||||
typedef VOID * PVOID;
|
||||
typedef CHAR * PCHAR;
|
||||
typedef UCHAR * PUCHAR;
|
||||
typedef USHORT * PUSHORT;
|
||||
typedef LONG * PLONG;
|
||||
typedef ULONG * PULONG;
|
||||
typedef UINT * PUINT;
|
||||
typedef char *PSTRING;
|
||||
typedef VOID *PVOID;
|
||||
typedef CHAR *PCHAR;
|
||||
typedef UCHAR *PUCHAR;
|
||||
typedef USHORT *PUSHORT;
|
||||
typedef LONG *PLONG;
|
||||
typedef ULONG *PULONG;
|
||||
typedef UINT *PUINT;
|
||||
|
||||
typedef unsigned int NDIS_MEDIA_STATE;
|
||||
typedef unsigned int NDIS_MEDIA_STATE;
|
||||
|
||||
typedef union _LARGE_INTEGER {
|
||||
struct {
|
||||
UINT LowPart;
|
||||
INT32 HighPart;
|
||||
} u;
|
||||
INT64 QuadPart;
|
||||
struct {
|
||||
UINT LowPart;
|
||||
INT32 HighPart;
|
||||
} u;
|
||||
INT64 QuadPart;
|
||||
} LARGE_INTEGER;
|
||||
|
||||
|
||||
//
|
||||
// Register set pair for initialzation register set definition
|
||||
//
|
||||
typedef struct _RTMP_REG_PAIR
|
||||
{
|
||||
ULONG Register;
|
||||
ULONG Value;
|
||||
typedef struct _RTMP_REG_PAIR {
|
||||
ULONG Register;
|
||||
ULONG Value;
|
||||
} RTMP_REG_PAIR, *PRTMP_REG_PAIR;
|
||||
|
||||
typedef struct _REG_PAIR
|
||||
{
|
||||
UCHAR Register;
|
||||
UCHAR Value;
|
||||
typedef struct _REG_PAIR {
|
||||
UCHAR Register;
|
||||
UCHAR Value;
|
||||
} REG_PAIR, *PREG_PAIR;
|
||||
|
||||
//
|
||||
// Register set pair for initialzation register set definition
|
||||
//
|
||||
typedef struct _RTMP_RF_REGS
|
||||
{
|
||||
UCHAR Channel;
|
||||
ULONG R1;
|
||||
ULONG R2;
|
||||
ULONG R3;
|
||||
ULONG R4;
|
||||
typedef struct _RTMP_RF_REGS {
|
||||
UCHAR Channel;
|
||||
ULONG R1;
|
||||
ULONG R2;
|
||||
ULONG R3;
|
||||
ULONG R4;
|
||||
} RTMP_RF_REGS, *PRTMP_RF_REGS;
|
||||
|
||||
typedef struct _FREQUENCY_ITEM {
|
||||
UCHAR Channel;
|
||||
UCHAR N;
|
||||
UCHAR R;
|
||||
UCHAR K;
|
||||
UCHAR Channel;
|
||||
UCHAR N;
|
||||
UCHAR R;
|
||||
UCHAR K;
|
||||
} FREQUENCY_ITEM, *PFREQUENCY_ITEM;
|
||||
|
||||
|
||||
typedef int NTSTATUS;
|
||||
|
||||
typedef int NTSTATUS;
|
||||
|
||||
#define STATUS_SUCCESS 0x00
|
||||
#define STATUS_UNSUCCESSFUL 0x01
|
||||
|
||||
#endif // __RTMP_TYPE_H__ //
|
||||
|
||||
#endif // __RTMP_TYPE_H__ //
|
||||
|
@ -25,7 +25,6 @@
|
||||
*************************************************************************
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __RTUSB_IO_H__
|
||||
#define __RTUSB_IO_H__
|
||||
|
||||
@ -60,8 +59,8 @@
|
||||
#define CMDTHREAD_SET_ASIC_WCID 0x0D730226 // cmd
|
||||
#define CMDTHREAD_SET_ASIC_WCID_CIPHER 0x0D730227 // cmd
|
||||
#define CMDTHREAD_QKERIODIC_EXECUT 0x0D73023D // cmd
|
||||
#define RT_CMD_SET_KEY_TABLE 0x0D730228 // cmd
|
||||
#define RT_CMD_SET_RX_WCID_TABLE 0x0D730229 // cmd
|
||||
#define RT_CMD_SET_KEY_TABLE 0x0D730228 // cmd
|
||||
#define RT_CMD_SET_RX_WCID_TABLE 0x0D730229 // cmd
|
||||
#define CMDTHREAD_SET_CLIENT_MAC_ENTRY 0x0D73023E // cmd
|
||||
#define CMDTHREAD_SET_GROUP_KEY 0x0D73023F // cmd
|
||||
#define CMDTHREAD_SET_PAIRWISE_KEY 0x0D730240 // cmd
|
||||
@ -75,34 +74,31 @@
|
||||
#define CMDTHREAD_UPDATE_PROTECT 0x0D790103 // cmd
|
||||
// end johnli
|
||||
|
||||
|
||||
//CMDTHREAD_MULTI_READ_MAC
|
||||
//CMDTHREAD_MULTI_WRITE_MAC
|
||||
//CMDTHREAD_VENDOR_EEPROM_READ
|
||||
//CMDTHREAD_VENDOR_EEPROM_WRITE
|
||||
typedef struct _CMDHandler_TLV {
|
||||
USHORT Offset;
|
||||
USHORT Length;
|
||||
UCHAR DataFirst;
|
||||
} CMDHandler_TLV, *PCMDHandler_TLV;
|
||||
typedef struct _CMDHandler_TLV {
|
||||
USHORT Offset;
|
||||
USHORT Length;
|
||||
UCHAR DataFirst;
|
||||
} CMDHandler_TLV, *PCMDHandler_TLV;
|
||||
|
||||
typedef struct _CmdQElmt {
|
||||
UINT command;
|
||||
PVOID buffer;
|
||||
ULONG bufferlength;
|
||||
BOOLEAN CmdFromNdis;
|
||||
BOOLEAN SetOperation;
|
||||
struct _CmdQElmt *next;
|
||||
} CmdQElmt, *PCmdQElmt;
|
||||
|
||||
typedef struct _CmdQElmt {
|
||||
UINT command;
|
||||
PVOID buffer;
|
||||
ULONG bufferlength;
|
||||
BOOLEAN CmdFromNdis;
|
||||
BOOLEAN SetOperation;
|
||||
struct _CmdQElmt *next;
|
||||
} CmdQElmt, *PCmdQElmt;
|
||||
|
||||
typedef struct _CmdQ {
|
||||
UINT size;
|
||||
CmdQElmt *head;
|
||||
CmdQElmt *tail;
|
||||
UINT32 CmdQState;
|
||||
}CmdQ, *PCmdQ;
|
||||
|
||||
typedef struct _CmdQ {
|
||||
UINT size;
|
||||
CmdQElmt *head;
|
||||
CmdQElmt *tail;
|
||||
UINT32 CmdQState;
|
||||
} CmdQ, *PCmdQ;
|
||||
|
||||
#define EnqueueCmd(cmdq, cmdqelmt) \
|
||||
{ \
|
||||
@ -115,7 +111,6 @@ typedef struct _CmdQ {
|
||||
cmdq->size++; \
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
|
||||
USB Cmd to ASIC Related MACRO
|
||||
@ -185,5 +180,4 @@ typedef struct _CmdQ {
|
||||
RTUSBEnqueueInternalCmd((_pAd), CMDTHREAD_SET_ASIC_WCID, &SetAsicWcid, sizeof(RT_SET_ASIC_WCID)); \
|
||||
}while(0)
|
||||
|
||||
|
||||
#endif // __RTUSB_IO_H__ //
|
||||
|
@ -31,10 +31,7 @@
|
||||
#include "rtmp_type.h"
|
||||
#include "spectrum_def.h"
|
||||
|
||||
|
||||
CHAR RTMP_GetTxPwr(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN HTTRANSMIT_SETTING HTTxMode);
|
||||
CHAR RTMP_GetTxPwr(IN PRTMP_ADAPTER pAd, IN HTTRANSMIT_SETTING HTTxMode);
|
||||
|
||||
/*
|
||||
==========================================================================
|
||||
@ -48,17 +45,16 @@ CHAR RTMP_GetTxPwr(
|
||||
Return : None.
|
||||
==========================================================================
|
||||
*/
|
||||
VOID MakeMeasurementReqFrame(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
OUT PUCHAR pOutBuffer,
|
||||
OUT PULONG pFrameLen,
|
||||
IN UINT8 TotalLen,
|
||||
IN UINT8 Category,
|
||||
IN UINT8 Action,
|
||||
IN UINT8 MeasureToken,
|
||||
IN UINT8 MeasureReqMode,
|
||||
IN UINT8 MeasureReqType,
|
||||
IN UINT8 NumOfRepetitions);
|
||||
VOID MakeMeasurementReqFrame(IN PRTMP_ADAPTER pAd,
|
||||
OUT PUCHAR pOutBuffer,
|
||||
OUT PULONG pFrameLen,
|
||||
IN UINT8 TotalLen,
|
||||
IN UINT8 Category,
|
||||
IN UINT8 Action,
|
||||
IN UINT8 MeasureToken,
|
||||
IN UINT8 MeasureReqMode,
|
||||
IN UINT8 MeasureReqType,
|
||||
IN UINT8 NumOfRepetitions);
|
||||
|
||||
/*
|
||||
==========================================================================
|
||||
@ -72,15 +68,13 @@ VOID MakeMeasurementReqFrame(
|
||||
Return : None.
|
||||
==========================================================================
|
||||
*/
|
||||
VOID EnqueueMeasurementRep(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN PUCHAR pDA,
|
||||
IN UINT8 DialogToken,
|
||||
IN UINT8 MeasureToken,
|
||||
IN UINT8 MeasureReqMode,
|
||||
IN UINT8 MeasureReqType,
|
||||
IN UINT8 ReportInfoLen,
|
||||
IN PUINT8 pReportInfo);
|
||||
VOID EnqueueMeasurementRep(IN PRTMP_ADAPTER pAd,
|
||||
IN PUCHAR pDA,
|
||||
IN UINT8 DialogToken,
|
||||
IN UINT8 MeasureToken,
|
||||
IN UINT8 MeasureReqMode,
|
||||
IN UINT8 MeasureReqType,
|
||||
IN UINT8 ReportInfoLen, IN PUINT8 pReportInfo);
|
||||
|
||||
/*
|
||||
==========================================================================
|
||||
@ -94,10 +88,7 @@ VOID EnqueueMeasurementRep(
|
||||
Return : None.
|
||||
==========================================================================
|
||||
*/
|
||||
VOID EnqueueTPCReq(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN PUCHAR pDA,
|
||||
IN UCHAR DialogToken);
|
||||
VOID EnqueueTPCReq(IN PRTMP_ADAPTER pAd, IN PUCHAR pDA, IN UCHAR DialogToken);
|
||||
|
||||
/*
|
||||
==========================================================================
|
||||
@ -111,12 +102,9 @@ VOID EnqueueTPCReq(
|
||||
Return : None.
|
||||
==========================================================================
|
||||
*/
|
||||
VOID EnqueueTPCRep(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN PUCHAR pDA,
|
||||
IN UINT8 DialogToken,
|
||||
IN UINT8 TxPwr,
|
||||
IN UINT8 LinkMargin);
|
||||
VOID EnqueueTPCRep(IN PRTMP_ADAPTER pAd,
|
||||
IN PUCHAR pDA,
|
||||
IN UINT8 DialogToken, IN UINT8 TxPwr, IN UINT8 LinkMargin);
|
||||
|
||||
/*
|
||||
==========================================================================
|
||||
@ -132,11 +120,8 @@ VOID EnqueueTPCRep(
|
||||
Return : None.
|
||||
==========================================================================
|
||||
*/
|
||||
VOID EnqueueChSwAnn(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN PUCHAR pDA,
|
||||
IN UINT8 ChSwMode,
|
||||
IN UINT8 NewCh);
|
||||
VOID EnqueueChSwAnn(IN PRTMP_ADAPTER pAd,
|
||||
IN PUCHAR pDA, IN UINT8 ChSwMode, IN UINT8 NewCh);
|
||||
|
||||
/*
|
||||
==========================================================================
|
||||
@ -150,9 +135,7 @@ VOID EnqueueChSwAnn(
|
||||
Return : None.
|
||||
==========================================================================
|
||||
*/
|
||||
VOID PeerSpectrumAction(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN MLME_QUEUE_ELEM *Elem);
|
||||
VOID PeerSpectrumAction(IN PRTMP_ADAPTER pAd, IN MLME_QUEUE_ELEM * Elem);
|
||||
|
||||
/*
|
||||
==========================================================================
|
||||
@ -163,73 +146,44 @@ VOID PeerSpectrumAction(
|
||||
Return : None.
|
||||
==========================================================================
|
||||
*/
|
||||
INT Set_MeasureReq_Proc(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN PSTRING arg);
|
||||
INT Set_MeasureReq_Proc(IN PRTMP_ADAPTER pAd, IN PSTRING arg);
|
||||
|
||||
INT Set_TpcReq_Proc(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN PSTRING arg);
|
||||
INT Set_TpcReq_Proc(IN PRTMP_ADAPTER pAd, IN PSTRING arg);
|
||||
|
||||
INT Set_PwrConstraint(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN PSTRING arg);
|
||||
INT Set_PwrConstraint(IN PRTMP_ADAPTER pAd, IN PSTRING arg);
|
||||
|
||||
VOID MeasureReqTabInit(IN PRTMP_ADAPTER pAd);
|
||||
|
||||
VOID MeasureReqTabInit(
|
||||
IN PRTMP_ADAPTER pAd);
|
||||
VOID MeasureReqTabExit(IN PRTMP_ADAPTER pAd);
|
||||
|
||||
VOID MeasureReqTabExit(
|
||||
IN PRTMP_ADAPTER pAd);
|
||||
PMEASURE_REQ_ENTRY MeasureReqLookUp(IN PRTMP_ADAPTER pAd, IN UINT8 DialogToken);
|
||||
|
||||
PMEASURE_REQ_ENTRY MeasureReqLookUp(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN UINT8 DialogToken);
|
||||
PMEASURE_REQ_ENTRY MeasureReqInsert(IN PRTMP_ADAPTER pAd, IN UINT8 DialogToken);
|
||||
|
||||
PMEASURE_REQ_ENTRY MeasureReqInsert(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN UINT8 DialogToken);
|
||||
VOID MeasureReqDelete(IN PRTMP_ADAPTER pAd, IN UINT8 DialogToken);
|
||||
|
||||
VOID MeasureReqDelete(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN UINT8 DialogToken);
|
||||
VOID InsertChannelRepIE(IN PRTMP_ADAPTER pAd,
|
||||
OUT PUCHAR pFrameBuf,
|
||||
OUT PULONG pFrameLen,
|
||||
IN PSTRING pCountry, IN UINT8 RegulatoryClass);
|
||||
|
||||
VOID InsertChannelRepIE(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
OUT PUCHAR pFrameBuf,
|
||||
OUT PULONG pFrameLen,
|
||||
IN PSTRING pCountry,
|
||||
IN UINT8 RegulatoryClass);
|
||||
VOID InsertTpcReportIE(IN PRTMP_ADAPTER pAd,
|
||||
OUT PUCHAR pFrameBuf,
|
||||
OUT PULONG pFrameLen,
|
||||
IN UINT8 TxPwr, IN UINT8 LinkMargin);
|
||||
|
||||
VOID InsertTpcReportIE(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
OUT PUCHAR pFrameBuf,
|
||||
OUT PULONG pFrameLen,
|
||||
IN UINT8 TxPwr,
|
||||
IN UINT8 LinkMargin);
|
||||
VOID InsertDialogToken(IN PRTMP_ADAPTER pAd,
|
||||
OUT PUCHAR pFrameBuf,
|
||||
OUT PULONG pFrameLen, IN UINT8 DialogToken);
|
||||
|
||||
VOID InsertDialogToken(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
OUT PUCHAR pFrameBuf,
|
||||
OUT PULONG pFrameLen,
|
||||
IN UINT8 DialogToken);
|
||||
VOID TpcReqTabInit(IN PRTMP_ADAPTER pAd);
|
||||
|
||||
VOID TpcReqTabInit(
|
||||
IN PRTMP_ADAPTER pAd);
|
||||
VOID TpcReqTabExit(IN PRTMP_ADAPTER pAd);
|
||||
|
||||
VOID TpcReqTabExit(
|
||||
IN PRTMP_ADAPTER pAd);
|
||||
VOID NotifyChSwAnnToPeerAPs(IN PRTMP_ADAPTER pAd,
|
||||
IN PUCHAR pRA,
|
||||
IN PUCHAR pTA, IN UINT8 ChSwMode, IN UINT8 Channel);
|
||||
|
||||
VOID NotifyChSwAnnToPeerAPs(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
IN PUCHAR pRA,
|
||||
IN PUCHAR pTA,
|
||||
IN UINT8 ChSwMode,
|
||||
IN UINT8 Channel);
|
||||
|
||||
VOID RguClass_BuildBcnChList(
|
||||
IN PRTMP_ADAPTER pAd,
|
||||
OUT PUCHAR pBuf,
|
||||
OUT PULONG pBufLen);
|
||||
VOID RguClass_BuildBcnChList(IN PRTMP_ADAPTER pAd,
|
||||
OUT PUCHAR pBuf, OUT PULONG pBufLen);
|
||||
#endif // __SPECTRUM_H__ //
|
||||
|
||||
|
@ -39,69 +39,59 @@
|
||||
#ifndef __SPECTRUM_DEF_H__
|
||||
#define __SPECTRUM_DEF_H__
|
||||
|
||||
|
||||
#define MAX_MEASURE_REQ_TAB_SIZE 32
|
||||
#define MAX_HASH_MEASURE_REQ_TAB_SIZE MAX_MEASURE_REQ_TAB_SIZE
|
||||
|
||||
#define MAX_TPC_REQ_TAB_SIZE 32
|
||||
#define MAX_HASH_TPC_REQ_TAB_SIZE MAX_TPC_REQ_TAB_SIZE
|
||||
|
||||
#define MIN_RCV_PWR 100 /* Negative value ((dBm) */
|
||||
#define MIN_RCV_PWR 100 /* Negative value ((dBm) */
|
||||
|
||||
#define TPC_REQ_AGE_OUT 500 /* ms */
|
||||
#define MQ_REQ_AGE_OUT 500 /* ms */
|
||||
#define TPC_REQ_AGE_OUT 500 /* ms */
|
||||
#define MQ_REQ_AGE_OUT 500 /* ms */
|
||||
|
||||
#define TPC_DIALOGTOKEN_HASH_INDEX(_DialogToken) ((_DialogToken) % MAX_HASH_TPC_REQ_TAB_SIZE)
|
||||
#define MQ_DIALOGTOKEN_HASH_INDEX(_DialogToken) ((_DialogToken) % MAX_MEASURE_REQ_TAB_SIZE)
|
||||
|
||||
typedef struct _MEASURE_REQ_ENTRY
|
||||
{
|
||||
typedef struct _MEASURE_REQ_ENTRY {
|
||||
struct _MEASURE_REQ_ENTRY *pNext;
|
||||
ULONG lastTime;
|
||||
BOOLEAN Valid;
|
||||
BOOLEAN Valid;
|
||||
UINT8 DialogToken;
|
||||
UINT8 MeasureDialogToken[3]; // 0:basic measure, 1: CCA measure, 2: RPI_Histogram measure.
|
||||
} MEASURE_REQ_ENTRY, *PMEASURE_REQ_ENTRY;
|
||||
|
||||
typedef struct _MEASURE_REQ_TAB
|
||||
{
|
||||
typedef struct _MEASURE_REQ_TAB {
|
||||
UCHAR Size;
|
||||
PMEASURE_REQ_ENTRY Hash[MAX_HASH_MEASURE_REQ_TAB_SIZE];
|
||||
MEASURE_REQ_ENTRY Content[MAX_MEASURE_REQ_TAB_SIZE];
|
||||
} MEASURE_REQ_TAB, *PMEASURE_REQ_TAB;
|
||||
|
||||
typedef struct _TPC_REQ_ENTRY
|
||||
{
|
||||
typedef struct _TPC_REQ_ENTRY {
|
||||
struct _TPC_REQ_ENTRY *pNext;
|
||||
ULONG lastTime;
|
||||
BOOLEAN Valid;
|
||||
UINT8 DialogToken;
|
||||
} TPC_REQ_ENTRY, *PTPC_REQ_ENTRY;
|
||||
|
||||
typedef struct _TPC_REQ_TAB
|
||||
{
|
||||
typedef struct _TPC_REQ_TAB {
|
||||
UCHAR Size;
|
||||
PTPC_REQ_ENTRY Hash[MAX_HASH_TPC_REQ_TAB_SIZE];
|
||||
TPC_REQ_ENTRY Content[MAX_TPC_REQ_TAB_SIZE];
|
||||
} TPC_REQ_TAB, *PTPC_REQ_TAB;
|
||||
|
||||
|
||||
/* The regulatory information */
|
||||
typedef struct _DOT11_CHANNEL_SET
|
||||
{
|
||||
typedef struct _DOT11_CHANNEL_SET {
|
||||
UCHAR NumberOfChannels;
|
||||
UINT8 MaxTxPwr;
|
||||
UCHAR ChannelList[16];
|
||||
} DOT11_CHANNEL_SET, *PDOT11_CHANNEL_SET;
|
||||
|
||||
typedef struct _DOT11_REGULATORY_INFORMATION
|
||||
{
|
||||
typedef struct _DOT11_REGULATORY_INFORMATION {
|
||||
UCHAR RegulatoryClass;
|
||||
DOT11_CHANNEL_SET ChannelSet;
|
||||
} DOT11_REGULATORY_INFORMATION, *PDOT11_REGULATORY_INFORMATION;
|
||||
|
||||
|
||||
|
||||
#define RM_TPC_REQ 0
|
||||
#define RM_MEASURE_REQ 1
|
||||
|
||||
@ -111,53 +101,44 @@ typedef struct _DOT11_REGULATORY_INFORMATION
|
||||
#define RM_CH_LOAD 3
|
||||
#define RM_NOISE_HISTOGRAM 4
|
||||
|
||||
|
||||
typedef struct PACKED _TPC_REPORT_INFO
|
||||
{
|
||||
typedef struct PACKED _TPC_REPORT_INFO {
|
||||
UINT8 TxPwr;
|
||||
UINT8 LinkMargin;
|
||||
} TPC_REPORT_INFO, *PTPC_REPORT_INFO;
|
||||
|
||||
typedef struct PACKED _CH_SW_ANN_INFO
|
||||
{
|
||||
typedef struct PACKED _CH_SW_ANN_INFO {
|
||||
UINT8 ChSwMode;
|
||||
UINT8 Channel;
|
||||
UINT8 ChSwCnt;
|
||||
} CH_SW_ANN_INFO, *PCH_SW_ANN_INFO;
|
||||
|
||||
typedef union PACKED _MEASURE_REQ_MODE
|
||||
{
|
||||
struct PACKED
|
||||
{
|
||||
typedef union PACKED _MEASURE_REQ_MODE {
|
||||
struct PACKED {
|
||||
UINT8 Parallel:1;
|
||||
UINT8 Enable:1;
|
||||
UINT8 Request:1;
|
||||
UINT8 Report:1;
|
||||
UINT8 DurationMandatory:1;
|
||||
UINT8 :3;
|
||||
UINT8:3;
|
||||
} field;
|
||||
UINT8 word;
|
||||
} MEASURE_REQ_MODE, *PMEASURE_REQ_MODE;
|
||||
|
||||
typedef struct PACKED _MEASURE_REQ
|
||||
{
|
||||
typedef struct PACKED _MEASURE_REQ {
|
||||
UINT8 ChNum;
|
||||
UINT64 MeasureStartTime;
|
||||
UINT16 MeasureDuration;
|
||||
} MEASURE_REQ, *PMEASURE_REQ;
|
||||
|
||||
typedef struct PACKED _MEASURE_REQ_INFO
|
||||
{
|
||||
typedef struct PACKED _MEASURE_REQ_INFO {
|
||||
UINT8 Token;
|
||||
MEASURE_REQ_MODE ReqMode;
|
||||
UINT8 ReqType;
|
||||
UINT8 Oct[0];
|
||||
} MEASURE_REQ_INFO, *PMEASURE_REQ_INFO;
|
||||
|
||||
typedef union PACKED _MEASURE_BASIC_REPORT_MAP
|
||||
{
|
||||
struct PACKED
|
||||
{
|
||||
typedef union PACKED _MEASURE_BASIC_REPORT_MAP {
|
||||
struct PACKED {
|
||||
UINT8 BSS:1;
|
||||
|
||||
UINT8 OfdmPreamble:1;
|
||||
@ -169,34 +150,29 @@ typedef union PACKED _MEASURE_BASIC_REPORT_MAP
|
||||
UINT8 word;
|
||||
} MEASURE_BASIC_REPORT_MAP, *PMEASURE_BASIC_REPORT_MAP;
|
||||
|
||||
typedef struct PACKED _MEASURE_BASIC_REPORT
|
||||
{
|
||||
typedef struct PACKED _MEASURE_BASIC_REPORT {
|
||||
UINT8 ChNum;
|
||||
UINT64 MeasureStartTime;
|
||||
UINT16 MeasureDuration;
|
||||
MEASURE_BASIC_REPORT_MAP Map;
|
||||
} MEASURE_BASIC_REPORT, *PMEASURE_BASIC_REPORT;
|
||||
|
||||
typedef struct PACKED _MEASURE_CCA_REPORT
|
||||
{
|
||||
typedef struct PACKED _MEASURE_CCA_REPORT {
|
||||
UINT8 ChNum;
|
||||
UINT64 MeasureStartTime;
|
||||
UINT16 MeasureDuration;
|
||||
UINT8 CCA_Busy_Fraction;
|
||||
} MEASURE_CCA_REPORT, *PMEASURE_CCA_REPORT;
|
||||
|
||||
typedef struct PACKED _MEASURE_RPI_REPORT
|
||||
{
|
||||
typedef struct PACKED _MEASURE_RPI_REPORT {
|
||||
UINT8 ChNum;
|
||||
UINT64 MeasureStartTime;
|
||||
UINT16 MeasureDuration;
|
||||
UINT8 RPI_Density[8];
|
||||
} MEASURE_RPI_REPORT, *PMEASURE_RPI_REPORT;
|
||||
|
||||
typedef union PACKED _MEASURE_REPORT_MODE
|
||||
{
|
||||
struct PACKED
|
||||
{
|
||||
typedef union PACKED _MEASURE_REPORT_MODE {
|
||||
struct PACKED {
|
||||
UINT8 Late:1;
|
||||
UINT8 Incapable:1;
|
||||
UINT8 Refused:1;
|
||||
@ -205,16 +181,14 @@ typedef union PACKED _MEASURE_REPORT_MODE
|
||||
UINT8 word;
|
||||
} MEASURE_REPORT_MODE, *PMEASURE_REPORT_MODE;
|
||||
|
||||
typedef struct PACKED _MEASURE_REPORT_INFO
|
||||
{
|
||||
typedef struct PACKED _MEASURE_REPORT_INFO {
|
||||
UINT8 Token;
|
||||
UINT8 ReportMode;
|
||||
UINT8 ReportType;
|
||||
UINT8 Octect[0];
|
||||
} MEASURE_REPORT_INFO, *PMEASURE_REPORT_INFO;
|
||||
|
||||
typedef struct PACKED _QUIET_INFO
|
||||
{
|
||||
typedef struct PACKED _QUIET_INFO {
|
||||
UINT8 QuietCnt;
|
||||
UINT8 QuietPeriod;
|
||||
UINT16 QuietDuration;
|
||||
@ -222,4 +196,3 @@ typedef struct PACKED _QUIET_INFO
|
||||
} QUIET_INFO, *PQUIET_INFO;
|
||||
|
||||
#endif // __SPECTRUM_DEF_H__ //
|
||||
|
||||
|
@ -126,12 +126,12 @@
|
||||
|
||||
//#ifdef CONFIG_AP_SUPPORT
|
||||
// WPA mechanism retry timer interval
|
||||
#define PEER_MSG1_RETRY_EXEC_INTV 1000 // 1 sec
|
||||
#define PEER_MSG3_RETRY_EXEC_INTV 3000 // 3 sec
|
||||
#define GROUP_KEY_UPDATE_EXEC_INTV 1000 // 1 sec
|
||||
#define PEER_GROUP_KEY_UPDATE_INIV 2000 // 2 sec
|
||||
#define PEER_MSG1_RETRY_EXEC_INTV 1000 // 1 sec
|
||||
#define PEER_MSG3_RETRY_EXEC_INTV 3000 // 3 sec
|
||||
#define GROUP_KEY_UPDATE_EXEC_INTV 1000 // 1 sec
|
||||
#define PEER_GROUP_KEY_UPDATE_INIV 2000 // 2 sec
|
||||
|
||||
#define ENQUEUE_EAPOL_START_TIMER 200 // 200 ms
|
||||
#define ENQUEUE_EAPOL_START_TIMER 200 // 200 ms
|
||||
|
||||
// group rekey interval
|
||||
#define TIME_REKEY 0
|
||||
@ -147,7 +147,6 @@
|
||||
#define AKM_SUITE 2
|
||||
#define PMKID_LIST 3
|
||||
|
||||
|
||||
#define EAPOL_START_DISABLE 0
|
||||
#define EAPOL_START_PSK 1
|
||||
#define EAPOL_START_1X 2
|
||||
@ -181,7 +180,6 @@
|
||||
|
||||
#define CONV_ARRARY_TO_UINT16(_V) ((_V[0]<<8) | (_V[1]))
|
||||
|
||||
|
||||
#define ADD_ONE_To_64BIT_VAR(_V) \
|
||||
{ \
|
||||
UCHAR cnt = LEN_KEY_DESC_REPLAY; \
|
||||
@ -197,224 +195,199 @@
|
||||
#define IS_WPA_CAPABILITY(a) (((a) >= Ndis802_11AuthModeWPA) && ((a) <= Ndis802_11AuthModeWPA1PSKWPA2PSK))
|
||||
|
||||
// EAPOL Key Information definition within Key descriptor format
|
||||
typedef struct PACKED _KEY_INFO
|
||||
{
|
||||
UCHAR KeyMic:1;
|
||||
UCHAR Secure:1;
|
||||
UCHAR Error:1;
|
||||
UCHAR Request:1;
|
||||
UCHAR EKD_DL:1; // EKD for AP; DL for STA
|
||||
UCHAR Rsvd:3;
|
||||
UCHAR KeyDescVer:3;
|
||||
UCHAR KeyType:1;
|
||||
UCHAR KeyIndex:2;
|
||||
UCHAR Install:1;
|
||||
UCHAR KeyAck:1;
|
||||
} KEY_INFO, *PKEY_INFO;
|
||||
typedef struct PACKED _KEY_INFO {
|
||||
UCHAR KeyMic:1;
|
||||
UCHAR Secure:1;
|
||||
UCHAR Error:1;
|
||||
UCHAR Request:1;
|
||||
UCHAR EKD_DL:1; // EKD for AP; DL for STA
|
||||
UCHAR Rsvd:3;
|
||||
UCHAR KeyDescVer:3;
|
||||
UCHAR KeyType:1;
|
||||
UCHAR KeyIndex:2;
|
||||
UCHAR Install:1;
|
||||
UCHAR KeyAck:1;
|
||||
} KEY_INFO, *PKEY_INFO;
|
||||
|
||||
// EAPOL Key descriptor format
|
||||
typedef struct PACKED _KEY_DESCRIPTER
|
||||
{
|
||||
UCHAR Type;
|
||||
KEY_INFO KeyInfo;
|
||||
UCHAR KeyLength[2];
|
||||
UCHAR ReplayCounter[LEN_KEY_DESC_REPLAY];
|
||||
UCHAR KeyNonce[LEN_KEY_DESC_NONCE];
|
||||
UCHAR KeyIv[LEN_KEY_DESC_IV];
|
||||
UCHAR KeyRsc[LEN_KEY_DESC_RSC];
|
||||
UCHAR KeyId[LEN_KEY_DESC_ID];
|
||||
UCHAR KeyMic[LEN_KEY_DESC_MIC];
|
||||
UCHAR KeyDataLen[2];
|
||||
UCHAR KeyData[MAX_LEN_OF_RSNIE];
|
||||
} KEY_DESCRIPTER, *PKEY_DESCRIPTER;
|
||||
typedef struct PACKED _KEY_DESCRIPTER {
|
||||
UCHAR Type;
|
||||
KEY_INFO KeyInfo;
|
||||
UCHAR KeyLength[2];
|
||||
UCHAR ReplayCounter[LEN_KEY_DESC_REPLAY];
|
||||
UCHAR KeyNonce[LEN_KEY_DESC_NONCE];
|
||||
UCHAR KeyIv[LEN_KEY_DESC_IV];
|
||||
UCHAR KeyRsc[LEN_KEY_DESC_RSC];
|
||||
UCHAR KeyId[LEN_KEY_DESC_ID];
|
||||
UCHAR KeyMic[LEN_KEY_DESC_MIC];
|
||||
UCHAR KeyDataLen[2];
|
||||
UCHAR KeyData[MAX_LEN_OF_RSNIE];
|
||||
} KEY_DESCRIPTER, *PKEY_DESCRIPTER;
|
||||
|
||||
typedef struct PACKED _EAPOL_PACKET
|
||||
{
|
||||
UCHAR ProVer;
|
||||
UCHAR ProType;
|
||||
UCHAR Body_Len[2];
|
||||
KEY_DESCRIPTER KeyDesc;
|
||||
} EAPOL_PACKET, *PEAPOL_PACKET;
|
||||
typedef struct PACKED _EAPOL_PACKET {
|
||||
UCHAR ProVer;
|
||||
UCHAR ProType;
|
||||
UCHAR Body_Len[2];
|
||||
KEY_DESCRIPTER KeyDesc;
|
||||
} EAPOL_PACKET, *PEAPOL_PACKET;
|
||||
|
||||
//802.11i D10 page 83
|
||||
typedef struct PACKED _GTK_ENCAP
|
||||
{
|
||||
UCHAR Kid:2;
|
||||
UCHAR tx:1;
|
||||
UCHAR rsv:5;
|
||||
UCHAR rsv1;
|
||||
UCHAR GTK[TKIP_GTK_LENGTH];
|
||||
} GTK_ENCAP, *PGTK_ENCAP;
|
||||
typedef struct PACKED _GTK_ENCAP {
|
||||
UCHAR Kid:2;
|
||||
UCHAR tx:1;
|
||||
UCHAR rsv:5;
|
||||
UCHAR rsv1;
|
||||
UCHAR GTK[TKIP_GTK_LENGTH];
|
||||
} GTK_ENCAP, *PGTK_ENCAP;
|
||||
|
||||
typedef struct PACKED _KDE_ENCAP
|
||||
{
|
||||
UCHAR Type;
|
||||
UCHAR Len;
|
||||
UCHAR OUI[3];
|
||||
UCHAR DataType;
|
||||
GTK_ENCAP GTKEncap;
|
||||
} KDE_ENCAP, *PKDE_ENCAP;
|
||||
typedef struct PACKED _KDE_ENCAP {
|
||||
UCHAR Type;
|
||||
UCHAR Len;
|
||||
UCHAR OUI[3];
|
||||
UCHAR DataType;
|
||||
GTK_ENCAP GTKEncap;
|
||||
} KDE_ENCAP, *PKDE_ENCAP;
|
||||
|
||||
// For WPA1
|
||||
typedef struct PACKED _RSNIE {
|
||||
UCHAR oui[4];
|
||||
USHORT version;
|
||||
UCHAR mcast[4];
|
||||
USHORT ucount;
|
||||
struct PACKED {
|
||||
UCHAR oui[4];
|
||||
}ucast[1];
|
||||
UCHAR oui[4];
|
||||
USHORT version;
|
||||
UCHAR mcast[4];
|
||||
USHORT ucount;
|
||||
struct PACKED {
|
||||
UCHAR oui[4];
|
||||
} ucast[1];
|
||||
} RSNIE, *PRSNIE;
|
||||
|
||||
// For WPA2
|
||||
typedef struct PACKED _RSNIE2 {
|
||||
USHORT version;
|
||||
UCHAR mcast[4];
|
||||
USHORT ucount;
|
||||
struct PACKED {
|
||||
UCHAR oui[4];
|
||||
}ucast[1];
|
||||
USHORT version;
|
||||
UCHAR mcast[4];
|
||||
USHORT ucount;
|
||||
struct PACKED {
|
||||
UCHAR oui[4];
|
||||
} ucast[1];
|
||||
} RSNIE2, *PRSNIE2;
|
||||
|
||||
// AKM Suite
|
||||
typedef struct PACKED _RSNIE_AUTH {
|
||||
USHORT acount;
|
||||
struct PACKED {
|
||||
UCHAR oui[4];
|
||||
}auth[1];
|
||||
} RSNIE_AUTH,*PRSNIE_AUTH;
|
||||
USHORT acount;
|
||||
struct PACKED {
|
||||
UCHAR oui[4];
|
||||
} auth[1];
|
||||
} RSNIE_AUTH, *PRSNIE_AUTH;
|
||||
|
||||
typedef union PACKED _RSN_CAPABILITIES {
|
||||
struct PACKED {
|
||||
USHORT PreAuth:1;
|
||||
USHORT No_Pairwise:1;
|
||||
USHORT PTKSA_R_Counter:2;
|
||||
USHORT GTKSA_R_Counter:2;
|
||||
USHORT Rsvd:10;
|
||||
} field;
|
||||
USHORT word;
|
||||
} RSN_CAPABILITIES, *PRSN_CAPABILITIES;
|
||||
typedef union PACKED _RSN_CAPABILITIES {
|
||||
struct PACKED {
|
||||
USHORT PreAuth:1;
|
||||
USHORT No_Pairwise:1;
|
||||
USHORT PTKSA_R_Counter:2;
|
||||
USHORT GTKSA_R_Counter:2;
|
||||
USHORT Rsvd:10;
|
||||
} field;
|
||||
USHORT word;
|
||||
} RSN_CAPABILITIES, *PRSN_CAPABILITIES;
|
||||
|
||||
typedef struct PACKED _EAP_HDR {
|
||||
UCHAR ProVer;
|
||||
UCHAR ProType;
|
||||
UCHAR Body_Len[2];
|
||||
UCHAR code;
|
||||
UCHAR identifier;
|
||||
UCHAR length[2]; // including code and identifier, followed by length-2 octets of data
|
||||
UCHAR ProVer;
|
||||
UCHAR ProType;
|
||||
UCHAR Body_Len[2];
|
||||
UCHAR code;
|
||||
UCHAR identifier;
|
||||
UCHAR length[2]; // including code and identifier, followed by length-2 octets of data
|
||||
} EAP_HDR, *PEAP_HDR;
|
||||
|
||||
// For supplicant state machine states. 802.11i Draft 4.1, p. 97
|
||||
// We simplified it
|
||||
typedef enum _WpaState
|
||||
{
|
||||
SS_NOTUSE, // 0
|
||||
SS_START, // 1
|
||||
SS_WAIT_MSG_3, // 2
|
||||
SS_WAIT_GROUP, // 3
|
||||
SS_FINISH, // 4
|
||||
SS_KEYUPDATE, // 5
|
||||
} WPA_STATE;
|
||||
typedef enum _WpaState {
|
||||
SS_NOTUSE, // 0
|
||||
SS_START, // 1
|
||||
SS_WAIT_MSG_3, // 2
|
||||
SS_WAIT_GROUP, // 3
|
||||
SS_FINISH, // 4
|
||||
SS_KEYUPDATE, // 5
|
||||
} WPA_STATE;
|
||||
|
||||
//
|
||||
// The definition of the cipher combination
|
||||
// The definition of the cipher combination
|
||||
//
|
||||
// bit3 bit2 bit1 bit0
|
||||
// +------------+------------+
|
||||
// | WPA | WPA2 |
|
||||
// +------+-----+------+-----+
|
||||
// | TKIP | AES | TKIP | AES |
|
||||
// | 0 | 1 | 1 | 0 | -> 0x06
|
||||
// | 0 | 1 | 1 | 1 | -> 0x07
|
||||
// | 1 | 0 | 0 | 1 | -> 0x09
|
||||
// | 1 | 0 | 1 | 1 | -> 0x0B
|
||||
// | 1 | 1 | 0 | 1 | -> 0x0D
|
||||
// | 1 | 1 | 1 | 0 | -> 0x0E
|
||||
// | 1 | 1 | 1 | 1 | -> 0x0F
|
||||
// +------+-----+------+-----+
|
||||
// bit3 bit2 bit1 bit0
|
||||
// +------------+------------+
|
||||
// | WPA | WPA2 |
|
||||
// +------+-----+------+-----+
|
||||
// | TKIP | AES | TKIP | AES |
|
||||
// | 0 | 1 | 1 | 0 | -> 0x06
|
||||
// | 0 | 1 | 1 | 1 | -> 0x07
|
||||
// | 1 | 0 | 0 | 1 | -> 0x09
|
||||
// | 1 | 0 | 1 | 1 | -> 0x0B
|
||||
// | 1 | 1 | 0 | 1 | -> 0x0D
|
||||
// | 1 | 1 | 1 | 0 | -> 0x0E
|
||||
// | 1 | 1 | 1 | 1 | -> 0x0F
|
||||
// +------+-----+------+-----+
|
||||
//
|
||||
typedef enum _WpaMixPairCipher
|
||||
{
|
||||
MIX_CIPHER_NOTUSE = 0x00,
|
||||
WPA_NONE_WPA2_TKIPAES = 0x03, // WPA2-TKIPAES
|
||||
WPA_AES_WPA2_TKIP = 0x06,
|
||||
WPA_AES_WPA2_TKIPAES = 0x07,
|
||||
WPA_TKIP_WPA2_AES = 0x09,
|
||||
WPA_TKIP_WPA2_TKIPAES = 0x0B,
|
||||
WPA_TKIPAES_WPA2_NONE = 0x0C, // WPA-TKIPAES
|
||||
WPA_TKIPAES_WPA2_AES = 0x0D,
|
||||
WPA_TKIPAES_WPA2_TKIP = 0x0E,
|
||||
WPA_TKIPAES_WPA2_TKIPAES = 0x0F,
|
||||
} WPA_MIX_PAIR_CIPHER;
|
||||
typedef enum _WpaMixPairCipher {
|
||||
MIX_CIPHER_NOTUSE = 0x00,
|
||||
WPA_NONE_WPA2_TKIPAES = 0x03, // WPA2-TKIPAES
|
||||
WPA_AES_WPA2_TKIP = 0x06,
|
||||
WPA_AES_WPA2_TKIPAES = 0x07,
|
||||
WPA_TKIP_WPA2_AES = 0x09,
|
||||
WPA_TKIP_WPA2_TKIPAES = 0x0B,
|
||||
WPA_TKIPAES_WPA2_NONE = 0x0C, // WPA-TKIPAES
|
||||
WPA_TKIPAES_WPA2_AES = 0x0D,
|
||||
WPA_TKIPAES_WPA2_TKIP = 0x0E,
|
||||
WPA_TKIPAES_WPA2_TKIPAES = 0x0F,
|
||||
} WPA_MIX_PAIR_CIPHER;
|
||||
|
||||
typedef struct PACKED _RSN_IE_HEADER_STRUCT {
|
||||
UCHAR Eid;
|
||||
UCHAR Length;
|
||||
USHORT Version; // Little endian format
|
||||
} RSN_IE_HEADER_STRUCT, *PRSN_IE_HEADER_STRUCT;
|
||||
typedef struct PACKED _RSN_IE_HEADER_STRUCT {
|
||||
UCHAR Eid;
|
||||
UCHAR Length;
|
||||
USHORT Version; // Little endian format
|
||||
} RSN_IE_HEADER_STRUCT, *PRSN_IE_HEADER_STRUCT;
|
||||
|
||||
// Cipher suite selector types
|
||||
typedef struct PACKED _CIPHER_SUITE_STRUCT {
|
||||
UCHAR Oui[3];
|
||||
UCHAR Type;
|
||||
} CIPHER_SUITE_STRUCT, *PCIPHER_SUITE_STRUCT;
|
||||
typedef struct PACKED _CIPHER_SUITE_STRUCT {
|
||||
UCHAR Oui[3];
|
||||
UCHAR Type;
|
||||
} CIPHER_SUITE_STRUCT, *PCIPHER_SUITE_STRUCT;
|
||||
|
||||
// Authentication and Key Management suite selector
|
||||
typedef struct PACKED _AKM_SUITE_STRUCT {
|
||||
UCHAR Oui[3];
|
||||
UCHAR Type;
|
||||
} AKM_SUITE_STRUCT, *PAKM_SUITE_STRUCT;
|
||||
typedef struct PACKED _AKM_SUITE_STRUCT {
|
||||
UCHAR Oui[3];
|
||||
UCHAR Type;
|
||||
} AKM_SUITE_STRUCT, *PAKM_SUITE_STRUCT;
|
||||
|
||||
// RSN capability
|
||||
typedef struct PACKED _RSN_CAPABILITY {
|
||||
USHORT Rsv:10;
|
||||
USHORT GTKSAReplayCnt:2;
|
||||
USHORT PTKSAReplayCnt:2;
|
||||
USHORT NoPairwise:1;
|
||||
USHORT PreAuth:1;
|
||||
} RSN_CAPABILITY, *PRSN_CAPABILITY;
|
||||
|
||||
typedef struct PACKED _RSN_CAPABILITY {
|
||||
USHORT Rsv:10;
|
||||
USHORT GTKSAReplayCnt:2;
|
||||
USHORT PTKSAReplayCnt:2;
|
||||
USHORT NoPairwise:1;
|
||||
USHORT PreAuth:1;
|
||||
} RSN_CAPABILITY, *PRSN_CAPABILITY;
|
||||
|
||||
/*========================================
|
||||
The prototype is defined in cmm_wpa.c
|
||||
========================================*/
|
||||
BOOLEAN WpaMsgTypeSubst(
|
||||
IN UCHAR EAPType,
|
||||
OUT INT *MsgType);
|
||||
BOOLEAN WpaMsgTypeSubst(IN UCHAR EAPType, OUT INT * MsgType);
|
||||
|
||||
VOID PRF(
|
||||
IN UCHAR *key,
|
||||
IN INT key_len,
|
||||
IN UCHAR *prefix,
|
||||
IN INT prefix_len,
|
||||
IN UCHAR *data,
|
||||
IN INT data_len,
|
||||
OUT UCHAR *output,
|
||||
IN INT len);
|
||||
VOID PRF(IN UCHAR * key,
|
||||
IN INT key_len,
|
||||
IN UCHAR * prefix,
|
||||
IN INT prefix_len,
|
||||
IN UCHAR * data, IN INT data_len, OUT UCHAR * output, IN INT len);
|
||||
|
||||
int PasswordHash(
|
||||
char *password,
|
||||
unsigned char *ssid,
|
||||
int ssidlength,
|
||||
unsigned char *output);
|
||||
int PasswordHash(char *password,
|
||||
unsigned char *ssid, int ssidlength, unsigned char *output);
|
||||
|
||||
PUINT8 GetSuiteFromRSNIE(
|
||||
IN PUINT8 rsnie,
|
||||
IN UINT rsnie_len,
|
||||
IN UINT8 type,
|
||||
OUT UINT8 *count);
|
||||
PUINT8 GetSuiteFromRSNIE(IN PUINT8 rsnie,
|
||||
IN UINT rsnie_len, IN UINT8 type, OUT UINT8 * count);
|
||||
|
||||
VOID WpaShowAllsuite(
|
||||
IN PUINT8 rsnie,
|
||||
IN UINT rsnie_len);
|
||||
|
||||
VOID RTMPInsertRSNIE(
|
||||
IN PUCHAR pFrameBuf,
|
||||
OUT PULONG pFrameLen,
|
||||
IN PUINT8 rsnie_ptr,
|
||||
IN UINT8 rsnie_len,
|
||||
IN PUINT8 pmkid_ptr,
|
||||
IN UINT8 pmkid_len);
|
||||
VOID WpaShowAllsuite(IN PUINT8 rsnie, IN UINT rsnie_len);
|
||||
|
||||
VOID RTMPInsertRSNIE(IN PUCHAR pFrameBuf,
|
||||
OUT PULONG pFrameLen,
|
||||
IN PUINT8 rsnie_ptr,
|
||||
IN UINT8 rsnie_len,
|
||||
IN PUINT8 pmkid_ptr, IN UINT8 pmkid_len);
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user