]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - drivers/staging/vt6656/device.h
Merge branch 'component-for-staging' of git://ftp.arm.linux.org.uk/~rmk/linux-arm...
[karo-tx-linux.git] / drivers / staging / vt6656 / device.h
index 6696365916bb9e7c1097ba16c910c4cafbe8295b..f1ed43e19b9ce00b13f7e2b209ce6a83c9fe5750 100644 (file)
 #include <linux/delay.h>
 #include <linux/device.h>
 #include <linux/firmware.h>
-#include <linux/etherdevice.h>
 #include <linux/suspend.h>
 #include <linux/if_arp.h>
 #include <linux/wireless.h>
-#include <net/iw_handler.h>
-#include <net/cfg80211.h>
 #include <linux/timer.h>
 #include <linux/usb.h>
 #include <linux/crc32.h>
  * device specific
  */
 
-#include "80211hdr.h"
-#include "tether.h"
-#include "wmgr.h"
 #include "wcmd.h"
-#include "rc4.h"
 #include "desc.h"
 #include "key.h"
 #include "card.h"
 /* USB registers */
 #define USB_REG4                       0x604
 
-#ifndef RUN_AT
-#define RUN_AT(x)                       (jiffies+(x))
-#endif
-
-#define PRIVATE_Message                 0
-
 #define DBG_PRT(l, p, args...) { if (l <= msglevel) printk(p, ##args); }
-#define PRINT_K(p, args...) { if (PRIVATE_Message) printk(p, ##args); }
 
 typedef enum __device_msg_level {
        MSG_LEVEL_ERR = 0,            /* Errors causing abnormal operation */
@@ -247,7 +233,6 @@ struct vnt_rcb {
        signed long Ref;
        void *pDevice;
        struct urb *pUrb;
-       struct vnt_rx_mgmt sMngPacket;
        struct sk_buff *skb;
        int bBoolInUse;
 };
@@ -271,16 +256,6 @@ struct vnt_tx_pkt_info {
        u8 dest_addr[ETH_ALEN];
 };
 
-/* structure got from configuration file as user-desired default settings */
-typedef struct _DEFAULT_CONFIG {
-       signed int    ZoneType;
-       signed int    eConfigMode;
-       signed int    eAuthenMode;        /* open/wep/wpa */
-       signed int    bShareKeyAlgorithm; /* open-open/{open,wep}-sharekey */
-       signed int    keyidx;             /* wepkey index */
-       signed int    eEncryptionStatus;
-} DEFAULT_CONFIG, *PDEFAULT_CONFIG;
-
 /*
  * Structure to keep track of USB interrupt packets
  */
@@ -298,94 +273,6 @@ typedef enum __DEVICE_NDIS_STATUS {
     STATUS_PENDING,
 } DEVICE_NDIS_STATUS, *PDEVICE_NDIS_STATUS;
 
-#define MAX_BSSIDINFO_4_PMKID   16
-#define MAX_PMKIDLIST           5
-/* flags for PMKID Candidate list structure */
-#define NDIS_802_11_PMKID_CANDIDATE_PREAUTH_ENABLED    0x01
-
-/* PMKID Structures */
-typedef unsigned char   NDIS_802_11_PMKID_VALUE[16];
-
-typedef enum _NDIS_802_11_WEP_STATUS
-{
-    Ndis802_11WEPEnabled,
-    Ndis802_11Encryption1Enabled = Ndis802_11WEPEnabled,
-    Ndis802_11WEPDisabled,
-    Ndis802_11EncryptionDisabled = Ndis802_11WEPDisabled,
-    Ndis802_11WEPKeyAbsent,
-    Ndis802_11Encryption1KeyAbsent = Ndis802_11WEPKeyAbsent,
-    Ndis802_11WEPNotSupported,
-    Ndis802_11EncryptionNotSupported = Ndis802_11WEPNotSupported,
-    Ndis802_11Encryption2Enabled,
-    Ndis802_11Encryption2KeyAbsent,
-    Ndis802_11Encryption3Enabled,
-    Ndis802_11Encryption3KeyAbsent
-} NDIS_802_11_WEP_STATUS, *PNDIS_802_11_WEP_STATUS,
-  NDIS_802_11_ENCRYPTION_STATUS, *PNDIS_802_11_ENCRYPTION_STATUS;
-
-typedef enum _NDIS_802_11_STATUS_TYPE
-{
-       Ndis802_11StatusType_Authentication,
-       Ndis802_11StatusType_MediaStreamMode,
-       Ndis802_11StatusType_PMKID_CandidateList,
-       Ndis802_11StatusTypeMax, /* not a real type, defined as upper bound */
-} NDIS_802_11_STATUS_TYPE, *PNDIS_802_11_STATUS_TYPE;
-
-/* added new types for PMKID Candidate lists */
-typedef struct _PMKID_CANDIDATE {
-    NDIS_802_11_MAC_ADDRESS BSSID;
-    unsigned long Flags;
-} PMKID_CANDIDATE, *PPMKID_CANDIDATE;
-
-typedef struct _BSSID_INFO
-{
-    NDIS_802_11_MAC_ADDRESS BSSID;
-    NDIS_802_11_PMKID_VALUE PMKID;
-} BSSID_INFO, *PBSSID_INFO;
-
-typedef struct tagSPMKID {
-    unsigned long Length;
-    unsigned long BSSIDInfoCount;
-    BSSID_INFO BSSIDInfo[MAX_BSSIDINFO_4_PMKID];
-} SPMKID, *PSPMKID;
-
-typedef struct tagSPMKIDCandidateEvent {
-    NDIS_802_11_STATUS_TYPE     StatusType;
-       unsigned long Version;       /* Version of the structure */
-       unsigned long NumCandidates; /* No. of pmkid candidates */
-    PMKID_CANDIDATE CandidateList[MAX_PMKIDLIST];
-} SPMKIDCandidateEvent, *PSPMKIDCandidateEvent;
-
-/* The receive duplicate detection cache entry */
-typedef struct tagSCacheEntry{
-       __le16 wFmSequence;
-       u8 abyAddr2[ETH_ALEN];
-       __le16 wFrameCtl;
-} SCacheEntry, *PSCacheEntry;
-
-typedef struct tagSCache{
-/* The receive cache is updated circularly.  The next entry to be written is
- * indexed by the "InPtr".
- */
-       unsigned int uInPtr; /* Place to use next */
-    SCacheEntry     asCacheEntry[DUPLICATE_RX_CACHE_LENGTH];
-} SCache, *PSCache;
-
-#define CB_MAX_RX_FRAG                 64
-/*
- * DeFragment Control Block, used for collecting fragments prior to reassembly
- */
-typedef struct tagSDeFragControlBlock
-{
-    u16            wSequence;
-    u16            wFragNum;
-    u8            abyAddr2[ETH_ALEN];
-       unsigned int            uLifetime;
-    struct sk_buff* skb;
-    u8 *           pbyRxBuffer;
-    unsigned int            cbFrameLength;
-    bool            bInUse;
-} SDeFragControlBlock, *PSDeFragControlBlock;
 
 /* flags for options */
 #define     DEVICE_FLAGS_UNPLUG          0x00000001UL
@@ -393,20 +280,6 @@ typedef struct tagSDeFragControlBlock
 /* flags for driver status */
 #define     DEVICE_FLAGS_OPENED          0x00010000UL
 
-typedef struct __device_opt {
-       int nRxDescs0;  /* number of RX descriptors 0 */
-       int nTxDescs0;  /* number of TX descriptors 0, 1, 2, 3 */
-       int rts_thresh; /* RTS threshold */
-    int         frag_thresh;
-    int         OpMode;
-    int         data_rate;
-    int         channel_num;
-    int         short_retry;
-    int         long_retry;
-    int         bbp_type;
-    u32         flags;
-} OPTIONS, *POPTIONS;
-
 struct vnt_private {
        /* mac80211 */
        struct ieee80211_hw *hw;
@@ -414,54 +287,27 @@ struct vnt_private {
        u8 mac_hw;
        /* netdev */
        struct usb_device *usb;
-       struct net_device *dev;
        struct net_device_stats stats;
 
-       OPTIONS sOpts;
-
-       struct work_struct read_work_item;
-       struct work_struct rx_mng_work_item;
-
        u64 tsf_time;
        u8 rx_rate;
 
        u32 rx_buf_sz;
        int mc_list_count;
-       int multicast_limit;
-       u8 byRxMode;
 
        spinlock_t lock;
        struct mutex usb_lock;
 
-       u32 rx_bytes;
-
        u32 flags;
        unsigned long Flags;
 
-       SCache sDupRxCache;
-
-       SDeFragControlBlock sRxDFCB[CB_MAX_RX_FRAG];
-       u32 cbDFCB;
-       u32 cbFreeDFCB;
-       u32 uCurrentDFCBIdx;
-
        /* USB */
        struct urb *pInterruptURB;
        u32 int_interval;
 
        /* Variables to track resources for the BULK In Pipe */
-       struct vnt_rcb *pRCBMem;
        struct vnt_rcb *apRCB[CB_MAX_RX_DESC];
        u32 cbRD;
-       struct vnt_rcb *FirstRecvFreeList;
-       struct vnt_rcb *LastRecvFreeList;
-       u32 NumRecvFreeList;
-       struct vnt_rcb *FirstRecvMngList;
-       struct vnt_rcb *LastRecvMngList;
-       u32 NumRecvMngList;
-       int bIsRxWorkItemQueued;
-       int bIsRxMngWorkItemQueued;
-       unsigned long ulRcvRefCount; /* packets that have not returned back */
 
        /* Variables to track resources for the BULK Out Pipe */
        struct vnt_usb_send_context *apTD[CB_MAX_TX_DESC];
@@ -471,9 +317,6 @@ struct vnt_private {
        /* Variables to track resources for the Interrupt In Pipe */
        struct vnt_interrupt_buffer int_buf;
 
-       /* default config from file by user setting */
-       DEFAULT_CONFIG config_file;
-
        /* Version control */
        u16 wFirmwareVersion;
        u8 byLocalID;
@@ -481,11 +324,7 @@ struct vnt_private {
        u8 byBBRxConf;
 
        u8 byZoneType;
-       int bZoneRegExist;
 
-       u8 byOriginalZonetype;
-
-       int bLinkPass; /* link status: OK or fail */
        struct vnt_cmd_card_init init_command;
        struct vnt_rsp_card_init init_response;
        u8 abyCurrentNetAddr[ETH_ALEN];
@@ -493,20 +332,10 @@ struct vnt_private {
 
        int bExistSWNetAddr;
 
-       /* Maintain statistical debug info. */
-       unsigned long SendContextsInUse;
-       unsigned long RcvBuffersInUse;
-
-       /* 802.11 management */
-       struct vnt_manager vnt_mgmt;
-
        u64 qwCurrTSF;
-       u32 cbBulkInMax;
-       int bPSRxBeacon;
 
        /* 802.11 MAC specific */
        u32 uCurrRSSI;
-       u8 byCurrSQ;
 
        /* Antenna Diversity */
        int bTxRxAntInv;
@@ -526,13 +355,6 @@ struct vnt_private {
        u32 uCwMin; /* Current CwMin */
        u32 uCwMax; /* CwMax is fixed on 1023 */
 
-       /* PHY parameter */
-       u8  bySIFS;
-       u8  byDIFS;
-       u8  byEIFS;
-       u8  bySlot;
-       u8  byCWMaxMin;
-
        /* Rate */
        u8 byBBType; /* 0: 11A, 1:11B, 2:11G */
        u8 byPacketType; /* 0:11a 1:11b 2:11gb 3:11ga */
@@ -542,14 +364,7 @@ struct vnt_private {
 
        u8 abyEEPROM[EEP_MAX_CONTEXT_SIZE];  /*u32 alignment */
 
-       u8 byMinChannel;
-       u8 byMaxChannel;
-       u32 uConnectionRate;
-
        u8 byPreambleType;
-       u8 byShortPreamble;
-       /* CARD_PHY_TYPE */
-       u8 eConfigPHYMode;
 
        /* For RF Power table */
        u8 byCCKPwr;
@@ -564,59 +379,28 @@ struct vnt_private {
        u16 tx_rate_fb0;
        u16 tx_rate_fb1;
 
-       u16 wRTSThreshold;
-       u16 wFragmentationThreshold;
        u8 byShortRetryLimit;
        u8 byLongRetryLimit;
 
        enum nl80211_iftype op_mode;
 
-       int bBSSIDFilter;
-       u16 wMaxTransmitMSDULifetime;
-       u8 abyBSSID[ETH_ALEN];
-       u8 abyDesireBSSID[ETH_ALEN];
-
-       u32 dwMaxReceiveLifetime;  /* dot11MaxReceiveLifetime */
-
-       int bEncryptionEnable;
        int bShortSlotTime;
-       int bProtectMode;
-       int bNonERPPresent;
        int bBarkerPreambleMd;
 
-       u8 byERPFlag;
-       u16 wUseProtectCntDown;
-
        int bRadioControlOff;
        int bRadioOff;
 
        /* Power save */
        u16 current_aid;
-       int bEnablePSMode;
-       u16 wListenInterval;
-       int bPWBitOn;
-       WMAC_POWER_MODE ePSMode;
-       unsigned long ulPSModeWaitTx;
-       int bPSModeTxBurst;
 
        /* Beacon releated */
        u16 wSeqCounter;
-       int bBeaconBufReady;
-       int bBeaconSent;
-       int bFixRate;
-       u8 byCurrentCh;
 
        CMD_STATE eCommandState;
 
        CMD_CODE eCommand;
-       int bBeaconTx;
-       u8 byScanBBType;
 
-       int bStopBeacon;
        int bStopDataPkt;
-       int bStopTx0Pkt;
-       u32 uAutoReConnectTime;
-       u32 uIsroamingTime;
 
        /* 802.11 counter */
 
@@ -628,41 +412,10 @@ struct vnt_private {
        int bCmdClear;
        int bNeedRadioOFF;
 
-       int bEnableRoaming;
-       int bIsRoaming;
-       int bFastRoaming;
-       u8 bSameBSSMaxNum;
-       u8 bSameBSSCurNum;
-       int bRoaming;
-       int b11hEable;
-
-       /* Encryption */
-       NDIS_802_11_WEP_STATUS eEncryptionStatus;
-       int  bTransmitKey;
-       NDIS_802_11_WEP_STATUS eOldEncryptionStatus;
-       SKeyManagement sKey;
-       u32 dwIVCounter;
-
-       RC4Ext SBox;
-       u8 abyPRNG[WLAN_WEPMAX_KEYLEN+3];
-       u8 byKeyIndex;
-
-       u32 uKeyLength;
-       u8 abyKey[WLAN_WEP232_KEYLEN];
        unsigned long key_entry_inuse;
 
-       /* for AP mode */
-       u32 uAssocCount;
-       int bMoreData;
-
-       /* QoS */
-       int bGrpAckPolicy;
-
        u8 byAutoFBCtrl;
 
-       int bTxMICFail;
-       int bRxMICFail;
-
        /* For Update BaseBand VGA Gain Offset */
        u32 uBBVGADiffCount;
        u8 byBBVGANew;
@@ -677,69 +430,16 @@ struct vnt_private {
 
        /* command timer */
        struct delayed_work run_command_work;
-       /* One second callback */
-       struct delayed_work second_callback_work;
 
        u8 tx_data_time_out;
-       bool tx_trigger;
-       int fWPA_Authened; /*is WPA/WPA-PSK or WPA2/WPA2-PSK authen?? */
-       u8 byReAssocCount;
-       u8 byLinkWaitCount;
-
-       struct ethhdr sTxEthHeader;
-       struct ethhdr sRxEthHeader;
-       u8 abyBroadcastAddr[ETH_ALEN];
-       u8 abySNAP_RFC1042[ETH_ALEN];
-       u8 abySNAP_Bridgetunnel[ETH_ALEN];
-
-       /* Pre-Authentication & PMK cache */
-       SPMKID gsPMKID;
-       SPMKIDCandidateEvent gsPMKIDCandidate;
-
-       /* for 802.11h */
-       int b11hEnable;
 
        int bChannelSwitch;
        u8 byNewChannel;
        u8 byChannelSwitchCount;
 
-       /* WPA supplicant daemon */
-       int bWPADEVUp;
-       int bwextstep0;
-       int bwextstep1;
-       int bwextstep2;
-       int bwextstep3;
-       int bWPASuppWextEnabled;
-
-       u32 uChannel;
-
        struct iw_statistics wstats; /* wireless stats */
-
-       int bCommit;
-
 };
 
-#define EnqueueRCB(_Head, _Tail, _RCB)                  \
-{                                                       \
-    if (!_Head) {                                       \
-        _Head = _RCB;                                   \
-    }                                                   \
-    else {                                              \
-        _Tail->Next = _RCB;                             \
-    }                                                   \
-    _RCB->Next = NULL;                                  \
-    _Tail = _RCB;                                       \
-}
-
-#define DequeueRCB(Head, Tail)                          \
-{                                                       \
-    struct vnt_rcb *RCB = Head;                         \
-    if (!RCB->Next) {                                   \
-        Tail = NULL;                                    \
-    }                                                   \
-    Head = RCB->Next;                                   \
-}
-
 #define ADD_ONE_WITH_WRAP_AROUND(uVar, uModulo) {   \
     if ((uVar) >= ((uModulo) - 1))                  \
         (uVar) = 0;                                 \
@@ -757,8 +457,6 @@ struct vnt_private {
 
 #define MP_IS_READY(_M)        (((_M)->Flags & fMP_DISCONNECTED) == 0)
 
-int device_alloc_frag_buf(struct vnt_private *, PSDeFragControlBlock pDeF);
-void vnt_configure_filter(struct vnt_private *);
 int vnt_init(struct vnt_private *priv);
 
 #endif