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

📄 zdequates.h

📁 ZYDAS zd1211b driver for Linux2.4
💻 H
字号:
/****************************************************************************** COPYRIGHT (C) 2002 ZYDAS CORPORATION                                    **** HTTP://WWW.ZYDAS.COM.TW/                                                ******************************************************************************/#ifndef _ZDEQUATES_H#define _ZDEQUATES_H//-------------------------------------------------------------------------// Ethernet Frame_t Sizes//-------------------------------------------------------------------------#define ETHERNET_ADDRESS_LENGTH         6#define ETHERNET_HEADER_SIZE            14#define MINIMUM_ETHERNET_PACKET_SIZE    60#define MAXIMUM_ETHERNET_PACKET_SIZE    1514#if 1//fMERGE_RX_FRAME    #define	MAX_WLAN_SIZE				4800    #define ZD_MAX_WLAN_SIZE			4800#else    #define	MAX_WLAN_SIZE               2432    #define ZD_MAX_WLAN_SIZE			1600#endif#define WLAN_HEADER						24#define CRC32_LEN						4#define IV_SIZE							4#define ICV_SIZE						4#if defined(HOST_IF_USB)#define PLCP_HEADER						5#define EXTRA_INFO_LEN					5 	//8 for ZD1212#else#define PLCP_HEADER						4#define EXTRA_INFO_LEN					4#endif#define EXTEND_IV_LEN					4#define MIC_LENGTH						8#define WDS_ADD_HEADER					6#define EAPOL_TYPE						0x888e#define BCN_INTERVAL_OFFSET				8#define CAP_OFFSET						10#define SSID_OFFSET						12#define	NUM_SUPPORTED_RATE				32#define BSS_INFO_NUM					64#define TUPLE_CACHE_SIZE				16#define MAX_DEFRAG_NUM					8#if defined(HOST_IF_USB)    #define MAX_RX_TIMEOUT				(100)#else    #define MAX_RX_TIMEOUT				(512*10*1000)#endif#define MAXIM2_MAX_TX_PWR_SET       	0x7F#define MAXIM2_MIN_TX_PWR_SET       	0x0#define RFMD_MAX_TX_PWR_SET         	0xF0#define RFMD_MIN_TX_PWR_SET        		0x60#define	GCT_MAX_TX_PWR_SET				0x3f#define	GCT_MIN_TX_PWR_SET				0x0#define	AL2210_MAX_TX_PWR_SET			0xff#define	AL2210_MIN_TX_PWR_SET			0x80#define MAX_TX_PWR_READING              0xf0#define MIN_TX_PWR_READING              0x30#define AL2230_MAX_TX_PWR_SET       	(0x7F-1)#define AL2230_MIN_TX_PWR_SET       	(0x00+1)#define	TRACKING_NUM					20//10//for USB#define cTX_CCK                     	1#define cTX_OFDM                    	2       // 6M - 36M#define cTX_48M                     	3#define cTX_54M                     	4#define cPWR_CTRL_GUARD             	4       // CR57: 4 -> 0.5 dB#define cPWR_INT_VALUE_GUARD        	8       // CR31: 4 -> 1 dB; 8 -> 2 dB#define cPWR_STRONG_SIG_DROP        	(0x18 - cPWR_INT_VALUE_GUARD)#define cLBTEST_COUNT               	1000#define cLBTEST_PATN                	0x55#define cMAX_MULTI_WRITE_REG_NUM    	15#define cMIN_MULTI_WRITE_REG_NUM    	0#define cMAX_MULTI_RF_REG_NUM       	28#define cMAX_MULTI_READ_REG_NUM     	15/* Firmware Interface */#define cTX_QUEUE_LEN               	4// make sure already Tx by HMAC (for UMAC System)// 1.Host->UMAC, 2.In UMAC Queue, 3.HMAC Sent#define cTX_SENT_LEN                	(cTX_QUEUE_LEN + 2)#define cFIRMWARE_OLD_ADDR          	0xEC00#define cFIRMWARE_START_ADDR        	0xEE00#define cFIRMWARE_EXT_CODE          	0x1000#define cADDR_ENTRY_TABLE           	(cFIRMWARE_START_ADDR + 0x1D)#define cBOOTCODE_START_ADDR        	0xF800#define cINT_VECT_ADDR              	0xFFF5#define cEEPROM_SIZE                	0x800   // 2k word (4k byte)// in word (16 bit width)#define cLOAD_CODE_LEN              	0xE#define cLOAD_VECT_LEN              	(0x10000 - 0xFFF7)#define cEPDATA_OFFSET              	(cLOAD_CODE_LEN + cLOAD_VECT_LEN)#define USB_BASE_ADDR_EEPROM        	0x9900#ifdef ZD1211B	#define USB_BASE_ADDR_HOST         	0x9F00#elif defined(ZD1211)	#define USB_BASE_ADDR_HOST			0x9B00#else	#error	"***** You Need To Specified ZD1211 or ZD1211B *****"#endif#define BASE_ADDR_MASK_HOST         	(~0x00FF)#define cFIRMWARE_EEPROM_OFFSET     	(cBOOTCODE_START_ADDR + cEPDATA_OFFSET)//end of USB// For Rate Adaption#define FALL_RATE						0x0#define	RISE_RATE						0x1#define PS_CAM							0x0#define	PS_PSM							0x1#define	ACC_1							0x0#define	ACC_2							0x1// MAC_PA_STATE#define	MAC_INI						0x0#define	MAC_OPERATION					0x1#define MAC_PS_OPERATION                                0x1#define MAC_PS_SLEEP					0x2// RF TYPE#define UW2451_RF					0x2#define uChip_RF					0x3#define	AL2230_RF					0x4#define	AL2210MPVB_RF				0x4#define AL7230B_RF					0x5 //a,b,g RF#define	THETA_RF					0x6#define	AL2210_RF					0x7#define	MAXIM_NEW_RF				0x8#define	GCT_RF						0x9#define	AL2230S_RF                  0xA#define	RALINK_RF					0xB#define	INTERSIL_RF					0xC#define	RFMD_RF						0xD#define	MAXIM_NEW_RF2				0xE#define	PHILIPS_RF					0xF#define ELEID_SSID					0#define	ELEID_SUPRATES				1#define ELEID_DSPARMS				3#define ELEID_TIM					5#define ELEID_ERP_INFO				42#define ELEID_EXT_RATES				50//-------------------------------------------------------------------------//- Miscellaneous Equates//-------------------------------------------------------------------------#ifndef FALSE#define FALSE       0#define TRUE        1#endif#define DRIVER_NULL ((u32)0xffffffff)//-------------------------------------------------------------------------// Bit Mask definitions//-------------------------------------------------------------------------#define BIT_0       		0x0001#define BIT_1       		0x0002#define BIT_2       		0x0004#define BIT_3       		0x0008#define BIT_4       		0x0010#define BIT_5       		0x0020#define BIT_6       		0x0040#define BIT_7       		0x0080#define BIT_8       		0x0100#define BIT_9       		0x0200#define BIT_10      		0x0400#define BIT_11      		0x0800#define BIT_12      		0x1000#define BIT_13      		0x2000#define BIT_14      		0x4000#define BIT_15      		0x8000#define BIT_16      		0x00010000#define BIT_17      		0x00020000#define BIT_18      		0x00040000#define BIT_19      		0x00080000#define BIT_20      		0x00100000#define BIT_21				0x00200000#define BIT_22				0x00400000#define BIT_23				0x00800000#define BIT_24      		0x01000000#define BIT_25				0x02000000#define BIT_26				0x04000000#define BIT_27				0x08000000#define BIT_28      		0x10000000#define BIT_29      		0x20000000#define BIT_30      		0x40000000#define BIT_31      		0x80000000#define BIT_0_1				0x0003#define BIT_0_2     		0x0007#define BIT_0_3     		0x000F#define BIT_0_4    			0x001F#define BIT_0_5     		0x003F#define BIT_0_6     		0x007F#define BIT_0_7     		0x00FF#define BIT_0_8    			0x01FF#define BIT_0_13    		0x3FFF#define BIT_0_15    		0xFFFF#define BIT_1_2    			0x0006#define BIT_1_3     		0x000E#define BIT_2_5     		0x003C#define BIT_3_4     		0x0018#define BIT_4_5     		0x0030#define BIT_4_6     		0x0070#define BIT_4_7     		0x00F0#define BIT_5_7     		0x00E0#define BIT_5_9     		0x03E0#define BIT_5_12    		0x1FE0#define BIT_5_15    		0xFFE0#define BIT_6_7     		0x00c0#define BIT_7_11    		0x0F80#define BIT_8_10    		0x0700#define BIT_9_13    		0x3E00#define BIT_12_15   		0xF000#define BIT_16_20   		0x001F0000#define BIT_21_25   		0x03E00000#define BIT_26_27   		0x0C000000#define RANDOM				0x0#define INCREMENT			0x1// Device Bus-Master (Tx) state#define TX_IDLE					0x00#define TX_READ_TBD				0x01#define TX_READ_DATA0			0x02#define TX_READ_DATA1			0x03#define TX_CHK_TBD_CNT			0x04#define TX_READ_TCB				0x05#define TX_CHK_TCB				0x06#define TX_WAIT_DATA			0x07#define TX_RETRYFAILURE			0x08#define TX_REDOWNLOAD			0x09// Device Bus-Master (Rx) state#define RX_IDLE					0x00#define RX_WAIT_DATA			0x10#define RX_DATA0				0x20#define RX_DATA1				0x30#define RX_READ_RCB				0x50#define RX_CHK_RCB				0x60#define RX_WAIT_STS				0x70#define RX_FRM_ERR				0x80#define RX_CHK_DATA				0x90#define MAX_SSID_LEN			32#define HOST_PEND				BIT_31#define CAM_WRITE				BIT_31#define MAC_LENGTH				6#define RX_MIC_ERROR_IND	    BIT_4 // Bit4 of ExtraInfo[6], its Bit3-Bit0 indicates the encryption type.#define RX_HW_MIC_ENABLE	    BIT_25 // The subfield of ZD_SnifferOn#define MIC_FINISH				BIT_0#define RX_MIC_ERROR_IND		BIT_4#define HW_MIC_ENABLE			BIT_25enum Frame_Control_Bit {        TO_DS = BIT_0,        FROM_DS = BIT_1,        MORE_FRAG = BIT_2,        RETRY_BIT = BIT_3,        PWR_BIT = BIT_4,        MORE_DATA = BIT_5,        ENCRY_BIT = BIT_6,        ODER_BIT = BIT_7};#define MAX_USER				40#define MAX_KEY_LENGTH			16#define ENCRY_TYPE_START_ADDR	60#define DEFAULT_ENCRY_TYPE		65#define KEY_START_ADDR			66#define STA_KEY_START_ADDR		386#define COUNTER_START_ADDR		418#define STA_COUNTER_START_ADDR	423#define EXTENDED_IV				BIT_5#define QoS_DATA				BIT_7#define TO_DS_FROM_DS			BIT_0_1#define AP_MODE					BIT_24#define IBSS_MODE				BIT_25#define POWER_MNT				BIT_26#define STA_PS					BIT_27#define NON_ERP_PRESENT_BIT		BIT_0#define USE_PROTECTION_BIT		BIT_1#define BARKER_PREAMBLE_BIT		BIT_2#define HOST_BIG_ENDIAN			BIT_0#define MEMBER_ZD1202			BIT_0#define MEMBER_OTHERS			BIT_1#define	BEACON_TIME				1#define REG_MAX_WAIT			500//for UART support/* * These are the definitions for the Line Control Register */#define UART_LCR_SBC			BIT_6	/* Set break control */#define UART_LCR_DLAB			BIT_7	/* Divisor latch access bit *//* * These are the definitions for the Line Status Register */#define UART_LSR_DR				BIT_0	/* Receiver data ready */#define UART_LSR_OE				BIT_1	/* Overrun error indicator */#define UART_LSR_BI				BIT_4	/* Break interrupt indicator */#define UART_LSR_THRE			BIT_5	/* Transmit-hold-register empty */#define UART_LSR_TEMT			BIT_6	/* Transmitter empty *//* * These are the definitions for the Interrupt Identification Register */#define UART_IIR_ID_MASK		0x0E	/* Mask for the interrupt ID */#define UART_IIR_MSI			0x00	/* Modem status interrupt */#define UART_IIR_NO_INT			BIT_0	/* No interrupts pending */#define UART_IIR_THRI			BIT_1	/* Transmitter holding register empty */#define UART_IIR_RDI			BIT_2	/* Receiver data interrupt */#define UART_IIR_RLSI			0x06	/* Receiver line status interrupt */#define UART_IIR_RX_TIMEOUT		0x0C	/* Rx timeout interrupt *//*   * These are the definitions for the Interrupt Enable Register */#define UART_IER_RDI			BIT_0	/* Enable receiver data interrupt */#define UART_IER_THRI			BIT_1	/* Enable Transmitter holding register int. */#define UART_IER_RLSI			BIT_2	/* Enable receiver line status interrupt */#define UART_IER_MSI			BIT_3	/* Enable Modem status interrupt *//* * These are the definitions for the Modem Control Register */#define UART_MCR_DTR			BIT_0	/* DTR complement */#define UART_MCR_RTS			BIT_1	/* RTS complement */#define UART_MCR_TAFC			BIT_5	/* Tx auto flow control */#define UART_MCR_RAFC			BIT_6	/* Rx auot flow control *//* * These are the definitions for the Modem Status Register */#define UART_MSR_DCTS			BIT_0	/* Delta CTS */#define UART_MSR_DDCD			BIT_3	/* Delta DCD */#define UART_MSR_CTS			BIT_4	/* Clear to Send */#define UART_MSR_DCD			BIT_7	/* Data Carrier Detect */#define UART_MSR_ANY_DELTA 		0x09	/* Any of the delta bits! *//* * These are the definitions for the FIFO Control Register *  */#define UART_FCR_CLEAR_RCVR		BIT_1 	/* Clear the RCVR FIFO */#define UART_FCR_CLEAR_XMIT		BIT_2 	/* Clear the XMIT FIFO */#define UART_FCR_TX_TRIGGER_1	0x00 /* Mask for tx trigger set at 1 */#define UART_FCR_TX_TRIGGER_2	0x10 /* Mask for tx trigger set at 2 */#define UART_FCR_TX_TRIGGER_4	0x20 /* Mask for tx trigger set at 4 */#define UART_FCR_TX_TRIGGER_8	0x30 /* Mask for tx trigger set at 8 */#define UART_FCR_RX_TRIGGER_1	0x00 /* Mask for rx trigger set at 1 */#define UART_FCR_RX_TRIGGER_4	0x40 /* Mask for rx trigger set at 4 */#define UART_FCR_RX_TRIGGER_8	0x80 /* Mask for rx trigger set at 8 */#define UART_FCR_RX_TRIGGER_14	0xC0 /* Mask for rx trigger set at 14 *///Extra Control register#define UART_ECR_BREAK_LEN_11_BAUD	0x00 	/* Break length 11 baud clocks */#define UART_ECR_BREAK_LEN_12_BAUD	0x01 	/* Break length 12 baud clocks */#define UART_ECR_BREAK_LEN_23_BAUD	0x02 	/* Break length 23 baud clocks */#define UART_ECR_BREAK_LEN_25_BAUD	0x03 	/* Break length 25 baud clocks */#define UART_ECR_BREAK_DETECTION 	BIT_2	/* Break detection */#define UART_ECR_BREAK_ENABLE 		BIT_3	/* Break enable */#define UART_ECR_RX_TOUT_10_BAUD	0x00	/* Rx fifo timeout 10 baud cloacks */#define UART_ECR_RX_TOUT_20_BAUD	0x10	/* Rx fifo timeout 20 baud cloacks */#define UART_ECR_RX_TOUT_40_BAUD	0x20	/* Rx fifo timeout 40 baud cloacks */#define UART_ECR_RX_TOUT_80_BAUD	0x30	/* Rx fifo timeout 80 baud cloacks */#define UART_ECR_ENABLE 			BIT_7	/* UART enable *///Baud rate definition#define	BAUD_RATE_2400			0xBF#define BAUD_RATE_4800 			0x5F#define BAUD_RATE_9600 			0x2F#define BAUD_RATE_19200 		0x17#define BAUD_RATE_38400			0x0B#define BAUD_RATE_57600 		0x07#define BAUD_RATE_115200		0x03#define BAUD_RATE_230400		0x01#define BAUD_RATE_460800		0x00// for EEPROM support#define EEPROM_BASE_ADDRESS		0x900#define EEPROM_WRITE_ACCESS		BIT_15#define EEPROM_BUSY_FLAG		BIT_15#define EEPROM_ACCESS_WRITE		0x01#define EEPROM_ACCESS_READ		0x00#define mBIT(b)                 (1 << (b))#define mMASK(w)                (mBIT(w) - 1)#define mSET_MASK(a, b)         ((a) | (b))#define mCLR_MASK(a, b)         ((a) & (~(b)))#define mSET_BIT(a, b)          mSET_MASK(a, mBIT(b))#define mCLR_BIT(a, b)          mCLR_MASK(a, mBIT(b))#define mCHK_BIT1(a, b)         ((a) & mBIT(b))#define mTEST_BIT(a, b)         mCHK_BIT1(a, b)#endif      // _EQUATES_H

⌨️ 快捷键说明

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