📄 zd1205.h
字号:
#ifndef _ZD1205_H_#define _ZD1205_H_#include <linux/module.h>#include <linux/types.h>#include <linux/init.h>#include <linux/mm.h>#include <linux/errno.h>#include <linux/ioport.h>#include <linux/pci.h>#ifdef HOST_IF_USB #include <linux/usb.h>#endif#include <linux/kernel.h>#include <linux/netdevice.h>#include <linux/etherdevice.h>#include <linux/skbuff.h>#include <linux/delay.h>#include <linux/timer.h>#include <linux/slab.h>#include <linux/interrupt.h>#include <linux/version.h>#include <linux/string.h>#include <linux/wait.h>#include <linux/reboot.h>#include <asm/io.h>#include <asm/unaligned.h>#include <asm/processor.h>#include <linux/ethtool.h>#include <linux/inetdevice.h>#include <linux/bitops.h>#include <linux/if.h>#include <asm/uaccess.h>#include <linux/proc_fs.h>#include <linux/ip.h>#include <linux/wireless.h>#include <linux/if_arp.h>#include <linux/unistd.h>#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,5,0)) #include <linux/workqueue.h>#endif#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)) #include <asm/div64.h>#endif#include "zdcompat.h"#include "zdequates.h"#include "zdapi.h"#include "zydas_common.h"#include "zd1211_wext.h"#ifdef HOST_IF_USB#define fANT_DIVERSITY 0#define fTX_PWR_CTRL 1#define fZD1211_LOOPBACK 1#define fDUMP_LOOPBACK_DATA (0 && fZD1211_LOOPBACK)#define fLOAD_BOOTCODE 1#define fPROG_FLASH (1 && fWRITE_WORD_REG)#define fPROG_FLASH_BY_FW (1 && fPROG_FLASH)#define fDRV_WRITE_RF_REG (1 && fWRITE_WORD_REG)#define fMERGE_RX_FRAME (ENHANCE_RX && fDRV_WRITE_RF_REG)#define fDRV_UPDATE_EEP (1 && fWRITE_WORD_REG)//#define fQuickPhySet 0 //(fREAD_MUL_REG && fWRITE_WORD_REG)#endifenum zd1205_device_type { ZD_1202 = 1, ZD_1205,};#define ASOC_RSP 0x10#define REASOC_RSP 0x30#define PROBE_RSP 0x50#define DISASOC 0xA0#define AUTH 0xB0#define DEAUTH 0xC0#define DATA 0x08#define PS_POLL 0xA4#define MANAGEMENT 0x00#define PROBE_REQ 0x40#define BEACON 0x80#define ACK 0xD4#define CONTROL 0x04#define NULL_FUNCTION 0x48#define LB_DATA 0x88#define VLAN_SIZE 4#define CHKSUM_SIZE 2#define false (0)#define true (1)/**************************************************************************** Register Offset Definitions****************************************************************************/#define ZD1205_CR0 0x0000#define ZD1205_CR1 0x0004#define ZD1205_CR2 0x0008#define ZD1205_CR3 0x000C#define ZD1205_CR5 0x0010#define ZD1205_CR6 0x0014#define ZD1205_CR7 0x0018#define ZD1205_CR8 0x001C#define ZD1205_CR4 0x0020#define ZD1205_CR9 0x0024#define ZD1205_CR10 0x0028#define ZD1205_CR11 0x002C#define ZD1205_CR12 0x0030#define ZD1205_CR13 0x0034#define ZD1205_CR14 0x0038#define ZD1205_CR15 0x003C#define ZD1205_CR16 0x0040#define ZD1205_CR17 0x0044#define ZD1205_CR18 0x0048#define ZD1205_CR19 0x004C#define ZD1205_CR20 0x0050#define ZD1205_CR21 0x0054#define ZD1205_CR22 0x0058#define ZD1205_CR23 0x005C#define ZD1205_CR24 0x0060#define ZD1205_CR25 0x0064#define ZD1205_CR26 0x0068#define ZD1205_CR27 0x006C#define ZD1205_CR28 0x0070#define ZD1205_CR29 0x0074#define ZD1205_CR30 0x0078#define ZD1205_CR31 0x007C#define ZD1205_CR32 0x0080#define ZD1205_CR33 0x0084#define ZD1205_CR34 0x0088#define ZD1205_CR35 0x008C#define ZD1205_CR36 0x0090#define ZD1205_CR37 0x0094#define ZD1205_CR38 0x0098#define ZD1205_CR39 0x009C#define ZD1205_CR40 0x00A0#define ZD1205_CR41 0x00A4#define ZD1205_CR42 0x00A8#define ZD1205_CR43 0x00AC#define ZD1205_CR44 0x00B0#define ZD1205_CR45 0x00B4#define ZD1205_CR46 0x00B8#define ZD1205_CR47 0x00BC#define ZD1205_CR48 0x00C0#define ZD1205_CR49 0x00C4#define ZD1205_CR50 0x00C8#define ZD1205_CR51 0x00CC#define ZD1205_CR52 0x00D0#define ZD1205_CR53 0x00D4#define ZD1205_CR54 0x00D8#define ZD1205_CR55 0x00DC#define ZD1205_CR56 0x00E0#define ZD1205_CR57 0x00E4#define ZD1205_CR58 0x00E8#define ZD1205_CR59 0x00EC#define ZD1205_CR60 0x00F0#define ZD1205_CR61 0x00F4#define ZD1205_CR62 0x00F8#define ZD1205_CR63 0x00FC#define ZD1205_CR64 0x0100#define ZD1205_CR65 0x0104#define ZD1205_CR66 0x0108#define ZD1205_CR67 0x010C#define ZD1205_CR68 0x0110#define ZD1205_CR69 0x0114#define ZD1205_CR70 0x0118#define ZD1205_CR71 0x011C#define ZD1205_CR72 0x0120#define ZD1205_CR73 0x0124#define ZD1205_CR74 0x0128#define ZD1205_CR75 0x012C#define ZD1205_CR76 0x0130#define ZD1205_CR77 0x0134#define ZD1205_CR78 0x0138#define ZD1205_CR79 0x013C#define ZD1205_CR80 0x0140#define ZD1205_CR81 0x0144#define ZD1205_CR82 0x0148#define ZD1205_CR83 0x014C#define ZD1205_CR84 0x0150#define ZD1205_CR85 0x0154#define ZD1205_CR86 0x0158#define ZD1205_CR87 0x015C#define ZD1205_CR88 0x0160#define ZD1205_CR89 0x0164#define ZD1205_CR90 0x0168#define ZD1205_CR91 0x016C#define ZD1205_CR92 0x0170#define ZD1205_CR93 0x0174#define ZD1205_CR94 0x0178#define ZD1205_CR95 0x017C#define ZD1205_CR96 0x0180#define ZD1205_CR97 0x0184#define ZD1205_CR98 0x0188#define ZD1205_CR99 0x018C#define ZD1205_CR100 0x0190#define ZD1205_CR101 0x0194#define ZD1205_CR102 0x0198#define ZD1205_CR103 0x019C#define ZD1205_CR104 0x01A0#define ZD1205_CR105 0x01A4#define ZD1205_CR106 0x01A8#define ZD1205_CR107 0x01AC#define ZD1205_CR108 0x01B0#define ZD1205_CR109 0x01B4#define ZD1205_CR110 0x01B8#define ZD1205_CR111 0x01BC#define ZD1205_CR112 0x01C0#define ZD1205_CR113 0x01C4#define ZD1205_CR114 0x01C8#define ZD1205_CR115 0x01CC#define ZD1205_CR116 0x01D0#define ZD1205_CR117 0x01D4#define ZD1205_CR118 0x01D8#define ZD1205_CR119 0x01EC#define ZD1205_CR120 0x01E0#define ZD1205_CR121 0x01E4#define ZD1205_CR122 0x01E8#define ZD1205_CR123 0x01EC#define ZD1205_CR124 0x01F0#define ZD1205_CR125 0x01F4#define ZD1205_CR126 0x01F8#define ZD1205_CR127 0x01FC#define ZD1205_CR128 0x0200#define ZD1205_CR129 0x0204#define ZD1205_CR130 0x0208#define ZD1205_CR131 0x020C#define ZD1205_CR132 0x0210#define ZD1205_CR133 0x0214#define ZD1205_CR134 0x0218#define ZD1205_CR135 0x021C#define ZD1205_CR136 0x0220#define ZD1205_CR137 0x0224#define ZD1205_CR138 0x0228#define ZD1205_CR139 0x022C#define ZD1205_CR140 0x0230#define ZD1205_CR141 0x0234#define ZD1205_CR142 0x0238#define ZD1205_CR143 0x023C#define ZD1205_CR144 0x0240#define ZD1205_CR145 0x0244#define ZD1205_CR146 0x0248#define ZD1205_CR147 0x024C#define ZD1205_CR148 0x0250#define ZD1205_CR149 0x0254#define ZD1205_CR150 0x0258#define ZD1205_CR151 0x025C#define ZD1205_CR152 0x0260#define ZD1205_CR153 0x0264#define ZD1205_CR154 0x0268#define ZD1205_CR155 0x026C#define ZD1205_CR156 0x0270#define ZD1205_CR157 0x0274#define ZD1205_CR158 0x0278#define ZD1205_CR159 0x027C#define ZD1205_CR160 0x0280#define ZD1205_CR161 0x0284#define ZD1205_CR162 0x0288#define ZD1205_CR163 0x028C#define ZD1205_CR164 0x0290#define ZD1205_CR165 0x0294#define ZD1205_CR166 0x0298#define ZD1205_CR167 0x029C#define ZD1205_CR168 0x02A0#define ZD1205_CR169 0x02A4#define ZD1205_CR170 0x02A8#define ZD1205_CR171 0x02AC#define ZD1205_CR172 0x02B0#define ZD1205_CR173 0x02B4#define ZD1205_CR174 0x02B8#define ZD1205_CR175 0x02BC#define ZD1205_CR176 0x02C0#define ZD1205_CR177 0x02C4#define ZD1205_CR178 0x02C8#define ZD1205_CR179 0x02CC#define ZD1205_CR180 0x02D0#define ZD1205_CR181 0x02D4#define ZD1205_CR182 0x02D8#define ZD1205_CR183 0x02DC#define ZD1205_CR184 0x02E0#define ZD1205_CR185 0x02E4#define ZD1205_CR186 0x02E8#define ZD1205_CR187 0x02EC#define ZD1205_CR188 0x02F0#define ZD1205_CR189 0x02F4#define ZD1205_CR190 0x02F8#define ZD1205_CR191 0x02FC#define ZD1205_CR192 0x0300#define ZD1205_CR193 0x0304#define ZD1205_CR194 0x0308#define ZD1205_CR195 0x030C#define ZD1205_CR196 0x0310#define ZD1205_CR197 0x0314#define ZD1205_CR198 0x0318#define ZD1205_CR199 0x031C#define ZD1205_CR200 0x0320#define ZD1205_CR201 0x0324#define ZD1205_CR202 0x0328#define ZD1205_CR203 0x032C#define ZD1205_CR204 0x0330#define ZD1205_CR205 0x0334#define ZD1205_CR206 0x0338#define ZD1205_CR207 0x033C#define ZD1205_CR208 0x0340#define ZD1205_CR209 0x0344#define ZD1205_CR210 0x0348#define ZD1205_CR211 0x034C#define ZD1205_CR212 0x0350#define ZD1205_CR213 0x0354#define ZD1205_CR214 0x0358#define ZD1205_CR215 0x035C#define ZD1205_CR216 0x0360#define ZD1205_CR217 0x0364#define ZD1205_CR218 0x0368#define ZD1205_CR219 0x036C#define ZD1205_CR220 0x0370#define ZD1205_CR221 0x0374#define ZD1205_CR222 0x0378#define ZD1205_CR223 0x037C#define ZD1205_CR224 0x0380#define ZD1205_CR225 0x0384#define ZD1205_CR226 0x0388#define ZD1205_CR227 0x038C#define ZD1205_CR228 0x0390#define ZD1205_CR229 0x0394#define ZD1205_CR230 0x0398#define ZD1205_CR231 0x039C#define ZD1205_CR232 0x03A0#define ZD1205_CR233 0x03A4#define ZD1205_CR234 0x03A8#define ZD1205_CR235 0x03AC#define ZD1205_CR236 0x03B0#define ZD1205_CR240 0x03C0#define ZD1205_CR241 0x03C4#define ZD1205_CR242 0x03C8#define ZD1205_CR243 0x03CC#define ZD1205_CR244 0x03D0#define ZD1205_CR245 0x03D4#define ZD1205_CR251 0x03EC#define ZD1205_CR252 0x03F0#define ZD1205_CR253 0x03F4#define ZD1205_CR254 0x03F8#define ZD1205_CR255 0x03FC#define ZD1205_PHY_END 0x03fc#define RF_IF_CLK 0x0400#define RF_IF_DATA 0x0404#define PE1_PE2 0x0408#define PE2_DLY 0x040C#define LE1 0x0410#define LE2 0x0414#define GPI_EN 0x0418#define RADIO_PD 0x042C#define RF2948_PD 0x042C#ifndef HOST_IF_USB #define LED1 0x0430 #define LED2 0x0434#else #define rLED_CTRL 0x0644 #define LED2 BIT_8 // Note: this is really LED1 #define LED1 BIT_9 // Note: this is really LED2#endif#define EnablePSManualAGC 0x043C // 1: enable#define CONFIGPhilips 0x0440#define SA2400_SER_AP 0x0444#define I2C_WRITE 0x0444 // Same as SA2400_SER_AP (for compatible with ZD1201)#define SA2400_SER_RP 0x0448#define RADIO_PE 0x0458#define RstBusMaster 0x045C#define RFCFG 0x0464#define HSTSCHG 0x046C#define PHY_ON 0x0474#define RX_DELAY 0x0478#define RX_PE_DELAY 0x047C#define GPIO_1 0x0490#define GPIO_2 0x0494#define EncryBufMux 0x04A8#define PS_Ctrl 0x0500#define ADDA_MBIAS_WarmTime 0x0508#define InterruptCtrl 0x0510#define TSF_LowPart 0x0514#define TSF_HighPart 0x0518#define ATIMWndPeriod 0x051C#define BCNInterval 0x0520#define Pre_TBTT 0x0524 //In unit of TU(1024us)#define PCI_TxAddr_p1 0x0600#define PCI_TxAddr_p2 0x0604#define PCI_RxAddr_p1 0x0608#define PCI_RxAddr_p2 0x060C#define MACAddr_P1 0x0610#define MACAddr_P2 0x0614#define BSSID_P1 0x0618#define BSSID_P2 0x061C#define BCNPLCPCfg 0x0620#define GroupHash_P1 0x0624#define GroupHash_P2 0x0628#define WEPTxIV 0x062C#define BasicRateTbl 0x0630#define MandatoryRateTbl 0x0634#define RTS_CTS_Rate 0x0638#define Wep_Protect 0x063C#define RX_THRESHOLD 0x0640#define TX_PE_CTRL 0x0644#if defined(AMAC) #define AfterPNP 0x0648#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -