⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wlan_wt4.h

📁 mini-PCI driver for LHWT chipsets
💻 H
📖 第 1 页 / 共 2 页
字号:
      #ifndef _WLAN_WT4_H#define _WLAN_WT4_H#define RF2827 0#define RF2829 1#define RFMD   2#define RFAiroha 3 #define RF2230 4//mxx add#define MAX_TX_AUX_BUF_LEN (sizeof(WTWLAN_TAUXB))#define MAX_RX_AUX_BUF_LEN (sizeof(WTWLAN_RSB))#define MAX_LLC_LEN     20#define MAX_HW_HEAD_LEN	80#define MAX_HW_BODY_LEN		1600#define MAX_TX_CELL_LEN	1600#define MAX_RX_CELL_LEN	1600#define MAX_INTERNAL_MEM_LEN  (16*1024)#define HW_CSMEM_SIZE		0x1000#define TX_BANK_SIZE		0x1000#define RX_BANK_SIZE		0x1000#define TX_BUF_NUM			5#define RX_BUF_NUM			4#define ETH_ALEN		6#define MAX_STATIONS			64#define MAX_STA_HASH_ENTRY		64#define MAX_KEY_CELL_LEN		32#define MAX_KEY_CELL_NUM		16#define MAX_RX_DESC 64//32#define MAX_TX_DESC 64//32#define MAX_NUM_TX_MGMT_BUF 20#define MAX_NUM_RX_MGMT_BUF 20//#define MAX_RX_DESC 64//#define MAX_TX_DESC 64//#define MAX_NUM_TX_MGMT_BUF 32//#define MAX_NUM_RX_MGMT_BUF 32#define MAX_SENDWAITQUEUE_LEN  128#define MAX_URGENCY_BANK_LOOP_COUNT 200#define MAX_SCAN_DB_LEN	32#define MAX_SUPPORT_RATE_TYPE 32#define CURRENT_RATE_TYPE_LEN 14#define MAX_RATE_VALUE 108#define IEEE_802_11_FRAME_TTL 0x61a8//#define IEEE_802_11_FRAME_TTL 0xEA60//define for convenient use#define DEFAULT_INIT_NAV 0x201#define DEFAULT_HW_INIT_SEQ 0x0#define DEFAULT_HW_SEQ_STEP	0x1#define MAX_RECEIVED_PACKETS_LEN (1024*128)//added by hk 2004.11.23#define WTHWCSMEM (Adapter->MainMemAddress->HwCSMem)#define SWITCH_CHANNEL_DELAY 50//added by hk 2005.2.23#define SYSTIMER_OP_DELAY 2//added by hk 2005.2.23#define HW_CFG_DELAY     20 //2005.7.22#define KEY_NUM 4//added by hk 2005.3.7#define MAX_KEY_LEN 60//added by hk 2005.3.22#define OFFSET_KEY_MEM 0x3B10#define IV_LEN 3#define TKIP_KEY_LEN 16#define MIC_LEN 8#define PRIORITY_LEN 1#define AES_KEY_LEN 16#define MIC_IV_LEN 1#define CTR_PRELOAD_LEN 1#define KEY_INDEX_MASK 0xFF//added by hk 2005.5.14#define TKIP_TRANSMIT_KEY_KEYTABLE_INDEX 0#define TKIP_RECEIVE_KEY_KEYTABLE_INDEX 1//added by hk 2005.5.30#define USE_PROTECTION_MASK 0x02////added by hk 2005.6.1#define GROUP_ADDRESS_REG_LEN 0X08//added by hk for mic failure. 2005.6.14#define MIC_FAIL_BLOCK_TIME 60000#define BEACON_RECEIVE_WATCH_DOG_THRESHOLD 4//added by hk 2005.6.28//added by hk 2005.9.26typedef enum COUNTRY_ENUM {China, NorthAmerica, Europe, France, Japan} COUNTRY_ENUM, *PCOUNTRY_ENUM;#pragma pack(1)//-------------------------------------------------------------------------// Ethernet Frame Structure//-------------------------------------------------------------------------//- Ethernet 6-byte Addresstypedef struct _ETH_ADDRESS_STRUC {    //UCHAR       EthNodeAddress[ETHERNET_ADDRESS_LENGTH]; //who define it?}__WLAN_ATTRIB_PACK__ ETH_ADDRESS_STRUC, *PETH_ADDRESS_STRUC;//- Ethernet 14-byte Headertypedef struct _ETH_HEADER_STRUC {    //UCHAR       Destination[ETHERNET_ADDRESS_LENGTH];    //UCHAR       Source[ETHERNET_ADDRESS_LENGTH];    USHORT      TypeLength;}__WLAN_ATTRIB_PACK__ ETH_HEADER_STRUC, *PETH_HEADER_STRUC;//const//-------------------------------------------------------------------------// Wt4 HW Data Structures//-------------------------------------------------------------------------// control reg#define MASK_SOFT_RESET			0X01#define MASK_AUTOACKENABLE		0X02#define MASK_SEARCHKEYMODE		0X04#define MASK_OPENKEYMODE		0X08#define MASK_N_FILTERGROUPADDR	0X10#define MASK_N_FILTERNETADDR	0X20#define MASK_N_DECRYPT			0X40#define MASK_PROMISCUOUS_MODE	0X80#define MASK_PSINDICATE			0X100#define MASK_TKIPMICENABLE		0X200#define MASK_IVENABLE			0X400#define MASK_LOOPTEST			0X800#define MASK_PCFAVAILABLE		0X1000#define MASK_APMODE				0X2000#define MASK_LHWTSEQ			0X4000typedef union{	struct _BIT_REGCHIPCTRL		{			 UCHAR	SReset			: 1 ;			 UCHAR	AutoAckEn		: 1 ;			 UCHAR	SearchKeyMode	: 1 ;			 UCHAR	OpenKeyMode  	: 1 ;			 			 UCHAR	nFilterGroupAddr	: 1 ;			 UCHAR	nFilterNetAddr	: 1 ;			 UCHAR	nDecrypt  		: 1 ;			 UCHAR	Promiscuous  	: 1 ;			 			 UCHAR	PsIndicate  	: 1 ;			 UCHAR	TkipMicEn  		: 1 ;			 UCHAR	IVEn  			: 1 ;			 UCHAR  LoopTestEn		: 1 ;			 UCHAR	PcfAvailable	: 1 ;			 UCHAR	ApMode			: 1 ;			 UCHAR	LhwtSeq			: 1 ;			 UCHAR	Resv			: 1 ;		} __WLAN_ATTRIB_PACK__ Bit_RegChipCtrl;			 USHORT RegChipCtrl;	} __WLAN_ATTRIB_PACK__ CHIPCTRL;//#define MASK_POWER_SAVE		0X01//edited by hk 2005.1.14#define MASK_INT_ALL			(host2ieee16(0X01))//#define MASK_INT_ALL			0XFF#define MASK_INT_FULL			(host2ieee16(0x7FFF))#define MASK_INT_TXEND			(host2ieee16(0X02))#define MASK_INT_RXSTART		0X04#define MASK_INT_RXEND			(host2ieee16(0X08))#define MASK_INT_TIMER_BEACON	0X10#define MASK_INT_TIMER_ATIM		0X20#define MASK_INT_PSINDICATE		0X40#define MASK_INT_RECVBEACON		0X80#define MASK_INT_RECV_PSPOLL	0X100#define MASK_INT_RECV_CFPOLL	0X200//#define MASK_TX_START			0X01//#define MASK_RF_SEND_BRANCH		0X01#define MASK_RF_SEND_FREQ		0X02#define MASK_RF_IF_TYPE			0X04#define RF_IF_MAXIM 1#define RF_IF_LHWT 2#define RF_DATA_WIDTH_MAXIM 0x12#define RF_DATA_WIDTH_LHWT 0x14#define RF_SEND_BRANCH_A  0#define RF_SEND_BRANCH_B 1typedef union{	struct _BIT_REGRFIFCFG		{			 UCHAR	RFSendBranch	: 1 ;			 UCHAR  RFSendFreq		: 1 ;			 UCHAR  RFIFType		: 1 ;			 //edited by hk 2005.6.16			 //UCHAR	Resv1			: 5 ;			 UCHAR  SoftAntSelEn    : 1 ;			 UCHAR  SoftAntSel      : 1 ;			 UCHAR  SoftAntSetBar   : 1 ;			 UCHAR  AGCSel          : 1 ;			 UCHAR  PALowValidEn    : 1 ;			 UCHAR	RFDataWidth		: 6 ;			 //edited by hk 2005.6.16			 //UCHAR	Resv2			: 2 ;			 UCHAR  RficEn          : 1 ;			 UCHAR  RfmdEn          : 1 ;			 //added by hk 2005.6.16			 UCHAR  RADIOPELowValidEn    : 1 ;			 UCHAR  RXENALowValidEn		 : 1 ;			 UCHAR  TXENALowValidEn		 : 1 ;			 UCHAR  TRSWLowValidEn		 : 1 ;			 UCHAR  AntSelLowValid		 : 1 ;			 UCHAR  SHDNLowValidEn		 : 1 ;			 UCHAR  RXHPLowValidEn		 : 1 ;			 UCHAR  RFCSHighValidEn		 : 1 ;			 //added by hk 2005.6.16			 UCHAR	Resv1			     : 3 ;			 UCHAR  RxABExchangeEn       : 1 ;			 UCHAR  RxAIQExchangeEn      : 1 ;			 UCHAR  RxBIQExchangeEn      : 1 ;			 UCHAR  TxIQExchangeEn       : 1 ;			 UCHAR  Resv2                : 1 ;		}__WLAN_ATTRIB_PACK__ Bit_RegRfIFCfg;			ULONG     RegRfIFCfg;	}__WLAN_ATTRIB_PACK__ RFIFCFG;#define MASK_RF_SHUTDOWN	0X01#define MASK_RF_RADIOPE		0X02#define MASK_RF_RESET		0X04//#define MASK_STATUS_POWERSAVE			0X01#define MASK_STATUS_CCA					0X02#define MASK_STATUS_WPI_ALARM			0X04#define MASK_STATUS_RF_PARAMETER_ALARM	0X08typedef union{	struct _BIT_REGCHIPSTATUS		{			 UCHAR	PowerStatus		: 1 ;			 UCHAR	CCAStatus		: 1 ;			 UCHAR	JamingStatus	: 1 ;			 UCHAR	Resv			: 5 ;		}__WLAN_ATTRIB_PACK__ Bit_RegChipStatus;			 UCHAR RegChipStatus;	}__WLAN_ATTRIB_PACK__ CHIPSTATUS;//#define MASK_STATUS_INT_TXEND				(host2ieee16(0X01))#define MASK_STATUS_INT_RXSTART			(host2ieee16(0X02))#define MASK_STATUS_INT_RXEND				(host2ieee16(0X04))#define MASK_STATUS_INT_TIMER_BEACON		(host2ieee16(0X08))#define MASK_STATUS_INT_TIMER_ATIM		(host2ieee16(0X10))#define MASK_STATUS_INT_PSINDICATE			(host2ieee16(0X20))#define MASK_STATUS_INT_RECVBEACON		(host2ieee16(0X40))#define MASK_STATUS_INT_RECV_PSPOLL		(host2ieee16(0X80))#define MASK_STATUS_INT_RECV_CFPOLL		(host2ieee16(0X100))//edited by hk 2004.12.23//#define MASK_TX_BANK					0X07#define MASK_TX_BANK					0X0007#define MASK_TX_BANK0					(0X07<<0)#define MASK_TX_BANK1					(0X07<<3)#define MASK_TX_BANK2					(0X07<<(3*2))#define MASK_TX_BANK3					(0X07<<(3*3))#define MASK_TX_BANK4					(0X07<<(3*4))#define MASK_TX_STATUS_BANK_AVAILABLE	0X4#define TX_STATUS_BANK_EMPTY				0X4#define MASK_TX_STATUS_ERROR				0X2#define TX_STATUS_SUCCESS_DONE		0X05#define TX_STATUS_FAILURE_DONE		0X06#define TX_STATUS_FAILURE_TTL			0X07#define TX_STATUS_UNDERGO				0X01#define TX_STATUS_WAITSEND			0X02#define MASK_TX_STATUS_UNDERGO				0X01#define MASK_TX_STATUS_FAILURE_DONE		0X06#define MASK_TX_STATUS_FAILURE_TTL			0X07typedef union{	struct _BIT_REGTXSTATUS		{			 USHORT	Bank0		: 3 ;			 USHORT	Bank1		: 3 ;			 USHORT	Bank2		: 3 ;			 USHORT	Bank3		: 3 ;			 USHORT	Bank4		: 3 ;			 USHORT	Resv		: 1 ;		}__WLAN_ATTRIB_PACK__ Bit_RegTxStatus;			 USHORT RegTxStatus;	}__WLAN_ATTRIB_PACK__ TXSTATUS;//edited by hk 204.12.27//#define MASK_RX_BANK					0x03#define MASK_RX_BANK					0x0003#define MASK_RX_BANK_DONE					0x01#define MASK_RX_BANK0					(0X03<<0)#define MASK_RX_BANK1					(0X03<<2)#define MASK_RX_BANK2					(0X03<<(2*2))#define MASK_RX_BANK3					(0X03<<(2*3))#define MASK_RX_DATACOUNT				0XFFFF0000#define MASK_RX_STATUS_EMPTY				0X00#define MASK_RX_STATUS_UNDERGO				0X02#define MASK_RX_STATUS_DONE					0X03typedef union{	struct _BIT_REGRXSTATUS		{			 UCHAR	Bank0		: 2 ;			 UCHAR	Bank1		: 2 ;			 UCHAR	Bank2		: 2 ;			 UCHAR	Bank3		: 2 ;			 UCHAR	Resv		: 8 ;			 USHORT	RecvLen		: 16 ;		}__WLAN_ATTRIB_PACK__ Bit_RegRxStatus;			 ULONG RegRxStatus;	}__WLAN_ATTRIB_PACK__ RXSTATUS;//#define MASK_POWERMGT_STATUS				0X01typedef union{	struct _BIT_REGPSINDICATE		{			 UCHAR	MacAddress[6];			 UCHAR	PowerStatus		: 1 ;			 UCHAR	Resv1			: 7 ;			 UCHAR	Resv2			: 8 ;		}__WLAN_ATTRIB_PACK__ Bit_RegPsIndicate;			 ULONGLONG RegPsIndicate;	}__WLAN_ATTRIB_PACK__ PSINDICATE;#define OFFSET_EEPROM_OP   0x2#define OFFSET_EEPROM_SOFT_EN   0x00enum WTWLAN_WT4Regs {	OFFSET_RESV0				= 0X0,	OFFSET_CHIPCTRL			= 0X8,	OFFSET_POERSAVE			= 0X0A,	OFFSET_INTMASKCTRL		= 0X0B,	OFFSET_TXCTRL				= 0X12,	OFFSET_RFDATA				= 0X14,	OFFSET_CHIPSTATUS			= 0X18,	OFFSET_INTSTATUS			= 0X19,	OFFSET_TXSTATUS			= 0X1A,	OFFSET_RXSTATUS			= 0X1C,	OFFSET_PSINDICATE			= 0X20,	OFFSET_XMTMSDU			= 0X28,	OFFSET_XMTMPDU			= 0X2C,	OFFSET_XMTSUCCESSMSDU	= 0X30,	OFFSET_XMTSUCCESSMPDU	= 0X34,	OFFSET_RCVMPDU			= 0X38,	OFFSET_RCVSUCCESSMPDU	= 0X3C,	OFFSET_RCVMISSED			= 0X3F,};// NetAddresstypedef struct _WTWLAN_SYSCFG{//system	UCHAR				ChipFreq;    //default 40	UCHAR				Resv000[3];	//UCHAR				BusFreq;	 // default 33 / Addr 0x1bc		UCHAR				TestSignSel;	UCHAR				Resv00;	UCHAR				TestSign;	 	UCHAR				Resv01;	//8	USHORT				TxHeadAddrBank0;     	UCHAR				Resv2[2];		USHORT				TxBodyAddrBank0;	UCHAR				Resv3[2];	//10	USHORT				TxHeadAddrBank1;	UCHAR				Resv4[2];		USHORT				TxBodyAddrBank1;	UCHAR				Resv5[2];	//18	USHORT				TxHeadAddrBank2;	UCHAR				Resv6[2];		USHORT				TxBodyAddrBank2;	UCHAR				Resv7[2];	//20	USHORT				TxHeadAddrBank3;	UCHAR				Resv8[2];		USHORT				TxBodyAddrBank3;	UCHAR				Resv9[2];	//28	USHORT				TxHeadAddrBank4;	UCHAR				Resv10[2];		USHORT				TxBodyAddrBank4;	UCHAR				Resv11[2];	//30	USHORT				RxHeadAddrBank0;	UCHAR				Resv12[2];		USHORT				RxBodyAddrBank0;	UCHAR				Resv13[2];	//38	USHORT				RxHeadAddrBank1;	UCHAR				Resv14[2];		USHORT				RxBodyAddrBank1;	UCHAR				Resv15[2];	//40	USHORT				RxHeadAddrBank2;	UCHAR				Resv16[2];		USHORT				RxBodyAddrBank2;	UCHAR				Resv17[2];	//48	USHORT				RxHeadAddrBank3;	UCHAR				Resv18[2];		USHORT				RxBodyAddrBank3;	UCHAR				Resv19[2];	USHORT				KeyMapAddr;	UCHAR				Resv20[2];	UCHAR				KeyMapLen;	UCHAR				Resv21[3];//------------------------------------------------	UCHAR				ProtocolVer; //0x00	UCHAR				Resv22[3];	//---------------------------------------------------	UCHAR				aSlotTime;	UCHAR				Resv24[3];	UCHAR				aSIFSTime;	UCHAR				Resv25[3];	UCHAR				TrspTime;	UCHAR				Resv26[3];	UCHAR				aPlcpHeadLenBB;	UCHAR				Resv31[3];	UCHAR				aPreambleLenBB;	UCHAR				Resv32[3];	UCHAR				aPlcpHeadLenOFDM;	UCHAR				Resv33[3];	ULONG               PktRcvdLifeTime;	}__WLAN_ATTRIB_PACK__ WTWLAN_SYSCFG, *PWTWLAN_SYSCFG;// NetAddresstypedef struct _WTWLAN_MACADDR{	UCHAR				MacAddress[6];	UCHAR				Resv36[2];		UCHAR				NetAddress[6];	UCHAR				Resv37[2];		UCHAR				MultiCastAddress0[6];	UCHAR				Resv38[2];		UCHAR				MultiCastAddress1[6];	UCHAR				Resv39[2];		UCHAR				MultiCastAddress2[6];	UCHAR				Resv40[2];		UCHAR				MultiCastAddress3[6];	UCHAR				Resv41[2];	}__WLAN_ATTRIB_PACK__ WTWLAN_MACADDR, *PWTWLAN_MACADDR;// ProtocolParmtypedef struct _WTWLAN_PROTOPARAM{	ULONGLONG			SystemTime;	ULONG				HwBeaconTime;		ULONG				HwAtimTime;		USHORT				HwNavTime;	UCHAR				Resv42[2];		USHORT				FrmSN;	UCHAR				Resv43[2];	UCHAR				FrmSeqStep;	UCHAR				Resv44[3];	ULONG				MsduTTL; //3byte	//UCHAR				Resv944[1];	}__WLAN_ATTRIB_PACK__ WTWLAN_PROTOPARAM, *PWTWLAN_PROTOPARAM;// En/Decrypttypedef struct _WTWLAN_ENCRYPTCSMEM{	UCHAR				DecryptModeUnicast;	UCHAR				Resv45[3];					UCHAR				DecryptModeMulticast;	UCHAR				Resv46[3];		USHORT				DecryptKeyAddrUnicast;	UCHAR				Resv47[2];		USHORT				DefaultAddrKey0;	UCHAR				Resv48[2];		USHORT				DefaultAddrKey1;	UCHAR				Resv49[2];		USHORT				DefaultAddrKey2;	UCHAR				Resv50[2];		USHORT				DefaultAddrKey3;	UCHAR				Resv51[2];		UCHAR				NetType; // IBSS 0; BSS 1; WDS 2	UCHAR				Resv52[3];		UCHAR				PNUnicastStep;	UCHAR				Resv53[3];	UCHAR				PNMulticastStep;	UCHAR				Resv54[3];	UCHAR				PNUnicast[16];	UCHAR				PNBroadcast[16];	}__WLAN_ATTRIB_PACK__ WTWLAN_ENCRYPTCSMEM, *PWTWLAN_ENCRYPTCSMEM;//

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -