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

📄 i2220mgmt.h

📁 Driver for IPN2220 for Linux
💻 H
📖 第 1 页 / 共 2 页
字号:
/*** $Id: i2220mgmt.h 1.100 2004/08/19 16:38:39 cmchang Exp $*//******************************************************************************Copyright (c) 2002-2003 Integrated Programmable Communications, Inc.All rights reserved. Copying, compilation, modification, distributionor any other use whatsoever of this material is strictly prohibitedexcept in accordance with a Software License Agreement withIntegrated Programmable Communications, Inc.******************************************************************************/#ifndef _IPN2220MGMT_H#define _IPN2220MGMT_H/*************************************************************************                     C O M P I L E R   F L A G S**************************************************************************//*************************************************************************                E X T E R N A L   R E F E R E N C E S**************************************************************************//*************************************************************************                          C O N S T A N T S**************************************************************************//* * flags for env_MSDU_from_LLC() */#define MaUdat_ORDER            BIT(0)  /* (1/0 strictlyOrdered / reorderable) */#define MaUdat_CONTENTION       BIT(1)  /* (1/0 contentionFree / contention) *//* max number of RF channels */#define MAX_NUM_RF_CHANNELS     14#define WLAN_STATE_STOPPED      0   /* Network is not active. */#define WLAN_STATE_STARTED      1   /* Network has been started. */#define WLAN_AUTH_MAX           60  /* Max. # of authenticated stations. */#define WLAN_ACCESS_MAX         60  /* Max. # of stations in an access list. */#define WLAN_ACCESS_NONE        0   /* No stations may be authenticated. */#define WLAN_ACCESS_ALL         1   /* All stations may be authenticated. */#define WLAN_ACCESS_ALLOW       2   /* Authenticate only "allowed" stations. */#define WLAN_ACCESS_DENY        3   /* Do not authenticate "denied" stations. */#define WLAN_COMMENT_MAX        80  /* Max. length of user comment string. */#define WDS_MAX_NUM             8   /* Max. number of WDS networks (remote APs) */#define BSS_MAX_NUM_PER_CHNL    30  /* Max. number of BSS per channel for scanning */#define CTS_PROTECT_AUTO        0   /* ERP CTS protection mode: auto */#define CTS_PROTECT_MUST        1   /* ERP CTS protection mode: always */#define CTS_PROTECT_NONE        2   /* ERP CTS protection mode: none *//* Definition of stop_accept_station in priv_p */#define AP_MODE_ENABLED         0   /* Normal mode, enabled */#define AP_MODE_DISABLED        1   /* AP function is disabled */#define AP_MODE_BLOCKED         2   /* AP function is blocked temporarily *//* Definition of preambleMode in priv_p */#define PREAMBLE_MODE_AUTO      0#define PREAMBLE_MODE_LONG      1#define PREAMBLE_MODE_SHORT     2/*************************************************************************                         D A T A   T Y P E S**************************************************************************/typedef chain_list_t SduQueue_t;typedef enum _IPN2220_PHY_PREAMBLE_TYPE {    phyLongPreamble,    phyShortPreamble} IPN2220_PHY_PREAMBLE_TYPE, *PIPN2220_PHY_PREAMBLE_TYPE;typedef enum _IPN2220_PHY_SLOT_TYPE {    phyLongSlot,    phyShortSlot} IPN2220_PHY_SLOT_TYPE, *PIPN2220_PHY_SLOT_TYPE;/* S/W security engine */typedef struct _IPN2220_SW_SECURITY_ENGINE {    UINT8 swEncryptionEnabled;    UINT8 swDecryptionEnabled;} IPN2220_SW_SECURITY_ENGINE, *PIPN2220_SW_SECURITY_ENGINE;typedef enum _IPN2220_SECURITY_ENGINE {    SECURITY_ENGINE_HW, /* H/W WEP Decryption engine */    SECURITY_ENGINE_SW  /* S/W WEP Decryption engine */} IPN2220_SECURITY_ENGINE;typedef enum _IPN2220_SECURITY_OPERATION {    ENCRYPTION, /* WEP ENCRYPTION */    DECRYPTION  /* WEP DECRYPTION */} IPN2220_SECURITY_OPERATION;typedef struct i2220hw_stats_s {    UINT                txTfcbTxOkCounter;    UINT                txTfcbTxErrCounter;    //ULONGLONG           rxMdRdyCounter;    UINT                rxRfbRxOkCounter;    UINT                rxRfbRxFcsErrCounter;    UINT                rxRfbRxWepKeyDisabledErrCounter;    UINT                rxRfbRxWepIcvErrCounter;    UINT                freeRfbCount;    UINT                usedSKBCount;    UINT                usedMEMCount;    ULONGLONG           rxFcsErrorCount;    ULONGLONG           rxFifoFullCount;    ULONGLONG           rxPacketCount;    ULONGLONG           channelIdleCount;    ULONGLONG           ccaActiveCount;    ULONGLONG           ccaSampledActiveCount;    ULONGLONG           rtsRetryCount;    ULONGLONG           frameRetryCount;    ULONGLONG           txFrameCount;    ULONGLONG           txBeaconCount;    UINT                RcvFifoFulls;} i2220hw_stats_t;/* WEP counters */typedef struct _IPN2220_WEP_COUNTERS {        ULONG length;   /* Length of the IPN2220_WEP_COUNTERS structure in bytes */        ULONG wepIcvErrorCount;        ULONG wepExcludedCount;        ULONG wepUndecryptableCount;} wep_counters_t;typedef struct _IPN2220_WEP_ENGINE {        bool swWepEngineEncryptEnable;        bool swWepEngineDecryptEnable;} wep_engine_t;/* structure of BSSDescription */typedef struct _BSS_DESCRIPTION {    UCHAR bssid[6];} BSS_DESCRIPTION, *PBSS_DESCRIPTION;#if 0// ivan modify, 0714typedef struct _RX_STATUS_STRUC {        UINT    intRxOk;   // number of packets that Rx ok from interrupt        UINT    intCrcErr; // number of packets that CRC error from interrupt        UINT    intShort;  // number of packets that is short preamble from interrupt        UINT    intLong;   // number of packets that is long preamble from interrupt        UINT    pauRxPktCount;       // number of packets that Rx ok from PAU        UINT    pauCrcErrCount;      // number of packets that CRC error from PAU        UINT    pauRxFifoFullCount;  // number of packets that is short preamble from PAU} rx_status_struc_t;#endif/* added by CMC venus 8/21 */typedef struct chnl_info_s {        UINT32          bss_nonERP;        UINT32          bss_ERP;        UINT32          CCA_activeTime;         /* traffic indication */        UINT32          rxChannelPower;         /* BB_CR116 */        sta_info_t      *bss[BSS_MAX_NUM_PER_CHNL];} chnl_info_t;/* structure for channel TX Power gain */typedef struct channel_power_s {        UINT8           cckPower;        UINT8           ofdmPower;} channel_power_t;/* structure RF Calibration */typedef struct _MP_RF_CALIBRATION_TX {    BOOLEAN             isCal;    UINT_8              txClaSet[RF_CAL_TX_CR_NO];} rfCalibration_tx_t;typedef struct _MP_RF_CALIBRATION_RX {    BOOLEAN             isCal;    UINT_8              rxClaSet[RF_CAL_RX_CR_NO];} rfCalibration_rx_t;/* the management control structure for IPN2220 STA * the corresponding object pointer will often named as *    : when refered by code directly transfered from WINDOWS *    : when refered by code specific to this LINUX driver */struct i2220mgmt_{        /**** Hareware Control Related ****/        /* Prepared TFCB, TBB and RFB list chains */        chain_list_t            tfcb_chain;        chain_list_t            sec_tfcb_chain;        chain_list_t            tbb_chain;        chain_list_t            rfb_chain;        tdma_parameters_t       tdma[NUM_TDMA_CHANNELS];        /* Interrupt enable and status used for interrupt handlers. */        UINT32                  interruptEnable;        UINT32                  interruptStatus;        UINT32                  qInterruptEnable;        UINT16                  seqnum;        UINT8                   dtimCount;        UINT8                   hw_state;       /* INIT, RUNNING, STOP */        /* Resource configuration */        UINT32                  membase;        /* Linux net_device and support */        kal_net_device_t        *netdev;        /* ptr to linux netdevice */        //struct net_device_stats *linux_stats;        kal_pci_dev_t           *pcidev;        /* pointer to PCI device */        channel_power_t         channelPower[MAX_NUM_RF_CHANNELS]; /* used to record the Tx power per channel read from EEPROM  */        /* RF Callibration setting */        rfCalibration_tx_t      rfCalTx[MAX_NUM_RF_CHANNELS];        rfCalibration_rx_t      rfCalRx[MAX_NUM_RF_CHANNELS];        /* Store the RF chipset information (control mode) */        UINT8                   rfCtrlMode;        UINT8                   txPowerForOFDM;        UINT8                   txPowerForCCK;        UINT8                   primaryTxAntenna; /* primary Tx antenna number */        UINT8                   primaryRxAntenna; /* primary Rx antenna number */        UINT8                   currentTxAntenna; /* current Tx antenna number */        /* EEPRom Data */        UINT8                   permanentMacAddress[MAC_ADDR_LEN];        ULONG                   swKeyTableSize;        IPN2220_SW_KEY_TABLE_ENTRY  swKeyTable[IPN2220_KEY_TABLE_SIZE]; /* S/W key table */        /* Switch of S/W security engine */        IPN2220_SW_SECURITY_ENGINE  swSecurityEngine;#if WLAN_INCLUDE_PROC        struct proc_dir_entry   *proc_root_dir;        struct proc_dir_entry   *proc_hw_dir;#if WLAN_INCLUDE_DEBUG        struct proc_dir_entry   *proc_STA_dir;#endif#endif        /* IEEE 802.11 MIB */        IEEE_802_11_MIB         mib;        /*for linux device records*/        struct ipn_net_device_stats     ap_statistics;        /* The PHY preamble type */        IPN2220_PHY_PREAMBLE_TYPE       phyPreambleType;        IPN2220_PHY_SLOT_TYPE           phySlotType;        UINT32                  supportRates;   /* supported rates (bitwise) */        UINT32                  basicRates;     /* basic rates (bitwise) */        txRate_info_t           *txRates_p;     /* global rates info */        txRate_info_t           *lowestBRate_p; /* lowest basic rate */        txRate_info_t           *protectRate_p; /* RTS/CTS protection tx rate */        /* User defined fields 2003/9/5 */        txRate_info_t           *fixedTxRate_p; /* NULL is auto, else fixed data rate */        /* The hardware statistics structure to be queried. */        i2220hw_stats_t         hwStatistics;

⌨️ 快捷键说明

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