📄 zd1205.h
字号:
u8 ep4isIntOut;
u8 cmd_end;
u8 read_end;
u16 wMaxPacketSize;
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0))
unsigned int flags;
unsigned int kevent_flags;
#else
unsigned long flags;
unsigned long kevent_flags;
#endif
int release; /* release number */
int total_rx_cnt;
int end;
u32 usbTxCnt;
u32 usbTxCompCnt;
struct rx_list_elem **rx_struct_array;
struct tasklet_struct zd1211_rx_tasklet;
struct tasklet_struct zd1211_tx_tasklet;
struct tasklet_struct rx_buff_tasklet;
struct work_struct scan_tout_event;
struct work_struct kevent;
struct zdap_ioctl zdreq;
struct ifreq ifreq;
struct zydas_wlan_param zd_wpa_req;
int ifcmd;
//debug counter
u32 regWaitRCompCnt;
u32 regWaitWCompCnt;
u32 regRWCompCnt;
u32 regWaitRspCnt;
u32 regRspCompCnt;
u32 regUnCompCnt;
u32 regRdSleepCnt;
#else
struct pci_dev *pdev;
#endif
struct driver_stats drv_stats;
#if ZDCONF_WE_STAT_SUPPORT == 1
struct iw_statistics iwstats;
#elif !defined(ZDCONF_WE_STAT_SUPPORT)
#error "Undefine ZDCONF_WE_STAT_SUPPORT"
#endif
struct timer_list watchdog_timer; /* watchdog timer id */
struct timer_list tm_chal_id;
struct timer_list tm_scan_id;
struct timer_list tm_auth_id;
struct timer_list tm_asoc_id;
struct timer_list tm_hking_id;
struct timer_list tm_mgt_id;
#if ZDCONF_LP_SUPPORT == 1
struct timer_list tm_lp_poll_id;
#endif
char ifname[IFNAMSIZ];
spinlock_t bd_lock; /* board lock */
spinlock_t bd_non_tx_lock; /* Non transmit command lock */
spinlock_t q_lock;
spinlock_t cs_lock;
spinlock_t conf_lock;
int using_dac;
struct tasklet_struct zd1205_tasklet;
struct tasklet_struct zd1205_ps_tasklet;
struct tasklet_struct zd1205_tx_tasklet;
struct proc_dir_entry *proc_parent;
struct list_head active_rx_list; /* list of rx buffers */
struct list_head rx_struct_pool; /* pool of rx buffer struct headers */
u16 rfd_size;
u8 rev_id; /* adapter PCI revision ID */
u8 sniffer_on;
int skb_req; /* number of skbs neede by the adapter */
rwlock_t isolate_lock;
int driver_isolated;
char *cable_status;
void *regp;
u8 macAdr[8];
u8 mcastAdr[8];
u32 intrMask;
zd1205_SwTcbQ_t *freeTxQ;
zd1205_SwTcbQ_t *activeTxQ;
u32 txCachedSize;
u8 *txCached;
u16 dtimCount;
u8 numTcb;
u16 numTbd;
u8 numRfd;
u8 numTbdPerTcb;
u32 rxOffset;
u32 debugflag;
card_Setting_t cardSetting;
u8 BSSID[8];
u32 dbg_flag;
//debug counter
u32 bcnCnt;
u32 dtimCnt;
u32 txCmpCnt;
u32 rxCnt;
u32 retryFailCnt;
u32 txCnt;
u32 txIdleCnt;
u32 rxIdleCnt;
u32 rxDupCnt;
u32 DriverDiscardedFrmCauseByMulticastList;
u32 DriverDiscardedFrmCauseByFrmCtrl;
u32 DriverReceivedFrm;
u32 DriverRxMgtFrmCnt;
u32 ErrLongFrmCnt;
u32 ErrShortFrmCnt;
u32 ErrToHostFrmCnt;
u32 ErrZeroLenFrmCnt;
u32 ArFreeFailCnt;
u32 ArSearchFailCnt;
u32 ArAgedCnt;
u32 DropFirstFragCnt;
u32 rxNeedFragCnt;
u32 rxCompFragCnt;
u32 AllocSkbFailCnt;
u32 txQueToUpCnt;
u32 txQueSetCnt;
u32 sleepCnt;
u32 wakeupCnt;
//HMAC counter
u32 hwTotalRxFrm;
u32 hwCRC32Cnt;
u32 hwCRC16Cnt;
u32 hwDecrypErr_UNI;
u32 hwDecrypErr_Mul;
u32 hwRxFIFOOverrun;
u32 hwTotalTxFrm;
u32 hwUnderrunCnt;
u32 hwRetryCnt;
u32 TxStartTime;
u32 HMAC_TxTimeout;
u8 bTraceSetPoint;
u8 bEnableTxPwrCtrl;
u8 TxOFDMCnt;
u8 TxOFDMType;
u8 TxPwrCCK;
u8 TxPwrOFDM; // 6M - 36M
u8 bFixedRate;
u8 bContinueTx;
u8 bDataTrafficLight;
u8 NoBcnDetectedCnt;
u8 LinkTimer;
u32 LinkLEDn;
u32 LinkLED_OnDur;
u32 LinkLED_OffDur;
u32 DataLED;
u16 AddrEntryTable;
u8 bAllowAccessRegister;
U8 FlashType;
u16 ReadRegCount;
u16 SetPoint;
u8 dtim_notify_en;
u8 config_next_bcn_en;
u32 invalid_frame_good_crc;
u8 bGkInstalled;
u8 rxSignalQuality;
u8 rxSignalStrength;
u8 rxSignalQualityIndB;
u8 rxSignalQuality1;
u8 rxSignalQuality2;
u16 EepSetPoint[14];
u16 SetPointOFDM[3][14];//JWEI 2003/12/31
u32 RegionCode;
u32 RF_Mode;
u8 PA_Type;
u8 MaxTxPwrSet;
u8 MinTxPwrSet;
u8 bss_index;
bss_info_t BSSInfo[BSS_INFO_NUM];
tuple_Cache_t cache;
defrag_Array_t defragArray;
rxInfo_t rxInfo;
//added for STA
atomic_t DoNotSleep;
u8 bSurpriseRemoved;
u8 bAssoc;
u8 PwrState;
u8 SuggestionMode;
u8 bPSMSupported;
u8 bAPAlive;
u8 BSS_Members;
u8 Notification;
u8 WorseSQThr;
u8 bIBSS_Wakeup_Dest;
u8 bFrmRxed1;
u8 bAnyActivity;
u8 NiceSQThr;
u8 NiceSQThr_OFDM;
u8 bEnableSwAntennaDiv;
u8 Ant_MonitorDur1;
u8 Ant_MonitorDur2;
u8 CR138Flag;
u8 MulticastAddr[194]; // the first byte is the number of multicast addresses
u32 TotalTxDataFrmBytes;
u32 TotalRxDataFrmBytes;
u32 txMulticastFrm;
u32 txMulticastOctets;
u32 txUnicastFrm;
u32 txUnicastOctets;
u32 NormalBackoff;
u32 UrgentBackoff;
u32 LooseBackoff;
u32 Acc_Num_OFDM;
u32 Acc_SQ_OFDM;
u32 Bcn_Acc_Num;
u32 Bcn_Acc_SQ;
u32 CheckForHangLoop;
u16 SequenceNum;
u16 iv16;
u32 iv32;
u32 Acc_Num;
u32 Acc_SQ;
u32 GroupHashP1;
u32 GroupHashP2;
u32 PSThreshhold;
u8 rxDecryType;
u32 rx11bDataFrame;
u32 rxOFDMDataFrame;
#ifdef OFDM
u8 bTxBurstEnable;
int TxBurstCount;
#endif
#ifdef HOST_IF_USB
u32 USBCSRAddress;
u8 bUSBDeveiceAttached;
u8 bUSBDeveiceResetting;
u8 bHandleNonRxTxRunning;
u32 REG_6e4_Add;
u32 Continue2Rx;
u8 LastZDContinuousTxRate;
u32 WaitLenInfoCnt;
u32 CompLenInfoCnt;
u32 NoMergedRxCnt;
u8 bFlashable;
#endif
u8 bDisableTx;
u8 PHYSettingFlag;
u8 PHYTestIndex;
u8 PHYTestTimer;
u8 PHYTestTimerCount;
u8 PHYTestRssiBound;
u8 PHYTestRssi;
u8 PHYLowPower;
u8 IPCFlag;
u8 AdapterMaxRate;
u8 PHYFreOFDMframe;
u8 EnableTxPwrCtrl;
u32 PHYTestTotal;
u32 TrafficBound;
u32 DriverRxFrmCnt;
u64 rxDataPerSec;
u64 txDataPerSec;
U8 bContinueTxMode;
U32 AllowRateArrayCount;
// counter
U32 rxMulticastFrm;
U32 rxMulticastOctets;
U32 rxBroadcastFrm;
U32 rxBroadcastOctets;
U32 rxUnicastFrm;
U32 rxUnicastOctets;
U32 rxNeedFrag;
U32 rxMgtFrm;
U32 txFrmDrvMgt;
// debug counter
U32 rxDiscardByNotPIBSS;
U32 rxDiscardByAllocateBuf;
U16 SetPointLevel;
U8 bPseudoIBSSMode;
u32 txUnCachedSize;
dma_addr_t txUnCachedPhys;
void *txUnCached;
//Modified for Supplicant
int bDefaultIbssMacMode;
u32 bOLBC;
u32 nOLBC_CounterInSec;
};
typedef struct _ZDTYPE_UWTxGain
{
U8 UWTxGainLevel;
U32 UWTxGainValue;
} ZDTYPE_UWTxGain, *PZDTYPE_UWTxGain;
typedef struct zd1205_private zd1205_private_t;
struct usb_eth_dev {
char *name;
__u16 vendor;
__u16 device;
__u32 private; /* LSB is gpio reset value */
};
#define ZD_IOCTL_REG_READ 0x01
#define ZD_IOCTL_REG_WRITE 0x02
#define ZD_IOCTL_MEM_DUMP 0x03
#define ZD_IOCTL_RATE 0x04
#define ZD_IOCTL_SNIFFER 0x05
#define ZD_IOCTL_CAM_DUMP 0x06
#define ZD_IOCTL_DUMP_PHY 0x07
#define ZD_IOCTL_CARD_SETTING 0x08
#define ZD_IOCTL_HASH_DUMP 0x09
#define ZD_IOCTL_RFD_DUMP 0x0A
#define ZD_IOCTL_MEM_READ 0x0B
#define ZD_IOCTL_MEM_WRITE 0x0C
//for STA
#define ZD_IOCTL_TX_RATE 0x0D
#define ZD_IOCTL_EEPROM 0x0E
//for debug purposes
#define ZD_IOCTL_BCN 0x10
#define ZD_IOCTL_REG_READ16 0x11
#define ZD_IOCTL_REG_WRITE16 0x12
//for CAM Test
#define ZD_IOCTL_CAM_READ 0x13
#define ZD_IOCTL_CAM_WRITE 0x14
#define ZD_IOCTL_CAM_RESET 0x15
#define ZD_IOCTL_READ_PHY 0x16
#define ZD_IOCTL_WRITE_PHY 0x17
#define ZD_IOCTL_CONT_TX 0x18
#define ZD_IOCTL_SET_MIC_CNT_ENABLE 0x19
#define ZD_IOCTL_GET_MIC_CNT_ENABLE 0x1A
#define ZD_IOCTL_DEBUG_FLAG 0x21
#define ZD_IOCTL_UW_PWR 0x29
#define ZDAPIOCTL SIOCDEVPRIVATE
#define ZDPRODUCTIOCTL 0x89FA
/**************************************************************************
** Function Declarations
***************************************************************************
*/
void zd1205_sleep_reset(struct zd1205_private *macp);
void zd1205_sw_reset(struct zd1205_private *macp);
void zd1205_watchdog_cb(struct net_device *);
void zd1205_dump_data(char *info, u8 *data, u32 data_len);
void zd1205_init_card_setting(struct zd1205_private *macp);
void zd1205_load_card_setting(struct zd1205_private *macp, u8 bInit);
void zd1205_save_card_setting(struct zd1205_private *macp);
zd1205_SwTcb_t * zd1205_first_txq(struct zd1205_private *macp, zd1205_SwTcbQ_t *Q);
u32 zd_readl(u32 offset);
void zd_writel(u32 value, u32 offset);
void zd1205_disable_int(void);
void zd1205_enable_int(void);
void zd1205_lock(struct zd1205_private *macp);
void zd1205_unlock(struct zd1205_private *macp);
void zd1205_device_reset(struct zd1205_private *macp);
void zd1205_config_wep_keys(struct zd1205_private *macp);
struct sk_buff* zd1205_prepare_tx_data(struct zd1205_private *macp, u16 bodyLen);
void zd1205_tx_test(struct zd1205_private *macp, u16 size);
void zd1205_qlast_txq(struct zd1205_private *macp, zd1205_SwTcbQ_t *Q, zd1205_SwTcb_t *signal);
int zd1205_DestPowerSave(struct zd1205_private *macp, u8 *pDestAddr);
int zd1205_found1(struct pci_dev *pcid, const struct pci_device_id *ent);
void zd1205_remove1(struct pci_dev *pcid);
BOOLEAN a_OSC_get_cal_int( u8 ch, u32 rate, u8 *intValue, u8 *calValue);
void zd1205_tx_isr(struct zd1205_private *);
u32 zd1205_rx_isr(struct zd1205_private *macp);
void zd1205_clear_structs(struct net_device *dev);
unsigned char zd1205_init(struct zd1205_private *);
int zd1205_open(struct net_device *);
int zd1205_close(struct net_device *);
int zd1205_change_mtu(struct net_device *, int);
int zd1205_set_mac(struct net_device *, void *);
void zd1205_set_multi(struct net_device *);
void zd1205_IncreaseTxPower(struct zd1205_private *macp, u8 TxPwrType);
void zd1205_DecreaseTxPower(struct zd1205_private *macp, u8 TxPwrType);
void iLED_ON(struct zd1205_private *macp, u32 LEDn);
void iLED_OFF(struct zd1205_private *macp, u32 LEDn);
void iLED_SWITCH(struct zd1205_private *macp, u32 LEDn);
void HKeepingCB(struct net_device *dev);
void zd1205_mgt_mon_cb(struct net_device *dev);
void zd1205_lp_poll_cb(struct net_device *dev);
int zd1205_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd);
int zd1205_xmit_frame(struct sk_buff *skb, struct net_device *dev);
struct net_device_stats *zd1205_get_stats(struct net_device *);
void hostap_michael_mic_failure(struct zd1205_private *macp,
struct hostap_ieee80211_hdr *hdr, int keyidx);
#ifndef HOST_IF_USB
void zd1205_start_ru(struct zd1205_private *);
#else
struct rx_list_elem *zd1205_start_ru(struct zd1205_private *);
#endif
void zd1205_process_wakeup(struct zd1205_private *macp);
void zd1205_connect_mon(struct zd1205_private *macp);
void zd1205_watchdog(struct zd1205_private *macp);
void zd1205_house_keeping(struct zd1205_private *macp);
void zd1211_set_multicast(struct zd1205_private *macp);
int zd1205_dis_connect(struct zd1205_private *macp);
void ChangeMacMode(u8 MAC_Mode, u8 Channel);
void zd1205_alloc_skbs(struct zd1205_private *macp);
BssInfo_t *zd1212_bssid_to_BssInfo(U8 *bssid);
#if ZDCONF_WE_STAT_SUPPORT == 1
struct iw_statistics * zd1205_iw_getstats(struct net_device *dev);
#elif !defined(ZDCONF_WE_STAT_SUPPORT)
#error "Undefine ZDCONF_WE_STAT_SUPPORT"
#endif
#endif /* _ZD1205_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -