These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / staging / vt6655 / device.h
index 440537e..55405e0 100644 (file)
 
 #include <linux/module.h>
 #include <linux/types.h>
-#include <linux/mm.h>
-#include <linux/errno.h>
-#include <linux/ioport.h>
 #include <linux/pci.h>
-#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/string.h>
-#include <linux/wait.h>
-#include <linux/if_arp.h>
-#include <linux/sched.h>
-#include <linux/io.h>
-#include <linux/if.h>
 #include <linux/crc32.h>
-#include <linux/uaccess.h>
-#include <linux/proc_fs.h>
-#include <linux/inetdevice.h>
-#include <linux/reboot.h>
-#include <linux/ethtool.h>
-/* Include Wireless Extension definition and check version - Jean II */
 #include <net/mac80211.h>
-#include <linux/wireless.h>
-#include <net/iw_handler.h>    /* New driver API */
-
-#ifndef WPA_SUPPLICANT_DRIVER_WEXT_SUPPORT
-#define WPA_SUPPLICANT_DRIVER_WEXT_SUPPORT
-#endif
 
 /* device specific */
 
 #include "device_cfg.h"
 #include "card.h"
-#include "mib.h"
 #include "srom.h"
 #include "desc.h"
 #include "key.h"
 #define RATE_36M       9
 #define RATE_48M       10
 #define RATE_54M       11
-#define RATE_AUTO      12
 #define MAX_RATE       12
 
-#define MAC_MAX_CONTEXT_REG     (256+128)
-
-#define MAX_MULTICAST_ADDRESS_NUM       32
-#define MULTICAST_ADDRESS_LIST_SIZE     (MAX_MULTICAST_ADDRESS_NUM * ETH_ALEN)
-
-#define DUPLICATE_RX_CACHE_LENGTH       5
-
-#define NUM_KEY_ENTRY                   11
-
-#define TX_WEP_NONE                     0
-#define TX_WEP_OTF                      1
-#define TX_WEP_SW                       2
-#define TX_WEP_SWOTP                    3
-#define TX_WEP_OTPSW                    4
-#define TX_WEP_SW232                    5
-
-#define KEYSEL_WEP40                    0
-#define KEYSEL_WEP104                   1
-#define KEYSEL_TKIP                     2
-#define KEYSEL_CCMP                     3
-
 #define AUTO_FB_NONE            0
 #define AUTO_FB_0               1
 #define AUTO_FB_1               2
 #define ANT_RXD_TXB             4
 #define ANT_UNKNOWN             0xFF
 
-#define MAXCHECKHANGCNT         4
-
 #define BB_VGA_LEVEL            4
 #define BB_VGA_CHANGE_THRESHOLD 16
 
-#ifndef RUN_AT
-#define RUN_AT(x)                       (jiffies+(x))
-#endif
-
 #define MAKE_BEACON_RESERVED   10  /* (us) */
 
-/* DMA related */
-#define RESERV_AC0DMA                   4
-
 /* BUILD OBJ mode */
 
-#define        AVAIL_TD(p, q)  ((p)->sOpts.nTxDescs[(q)] - ((p)->iTDUsed[(q)]))
-
-#define        NUM                             64
+#define        AVAIL_TD(p, q)  ((p)->opts.tx_descs[(q)] - ((p)->iTDUsed[(q)]))
 
 /* 0:11A 1:11B 2:11G */
 #define BB_TYPE_11A    0
 #define PK_TYPE_11GB    2
 #define PK_TYPE_11GA    3
 
-typedef struct __chip_info_tbl {
-       CHIP_TYPE   chip_id;
-       char *name;
-       int         io_size;
-       int         nTxQueue;
-       u32         flags;
-} CHIP_INFO, *PCHIP_INFO;
-
-typedef enum {
-       OWNED_BY_HOST = 0,
-       OWNED_BY_NIC = 1
-} DEVICE_OWNER_TYPE, *PDEVICE_OWNER_TYPE;
-
-/* flags for options */
-#define     DEVICE_FLAGS_IP_ALIGN        0x00000001UL
-#define     DEVICE_FLAGS_PREAMBLE_TYPE   0x00000002UL
-#define     DEVICE_FLAGS_OP_MODE         0x00000004UL
-#define     DEVICE_FLAGS_PS_MODE         0x00000008UL
-#define                DEVICE_FLAGS_80211h_MODE         0x00000010UL
-#define                DEVICE_FLAGS_DiversityANT        0x00000020UL
-
-/* flags for driver status */
-#define     DEVICE_FLAGS_OPENED          0x00010000UL
-#define     DEVICE_FLAGS_WOL_ENABLED     0x00080000UL
-/* flags for capabilities */
-#define     DEVICE_FLAGS_TX_ALIGN        0x01000000UL
-#define     DEVICE_FLAGS_HAVE_CAM        0x02000000UL
-#define     DEVICE_FLAGS_FLOW_CTRL       0x04000000UL
-
-/* flags for MII status */
-#define     DEVICE_LINK_FAIL             0x00000001UL
-#define     DEVICE_SPEED_10              0x00000002UL
-#define     DEVICE_SPEED_100             0x00000004UL
-#define     DEVICE_SPEED_1000            0x00000008UL
-#define     DEVICE_DUPLEX_FULL           0x00000010UL
-#define     DEVICE_AUTONEG_ENABLE        0x00000020UL
-#define     DEVICE_FORCED_BY_EEPROM      0x00000040UL
-/* for device_set_media_duplex */
-#define     DEVICE_LINK_CHANGE           0x00000001UL
-
-typedef struct __device_opt {
-       int         nRxDescs0;          /* Number of RX descriptors0 */
-       int         nRxDescs1;          /* Number of RX descriptors1 */
-       int         nTxDescs[2];        /* Number of TX descriptors 0, 1 */
-       int         int_works;          /* interrupt limits */
-       int         short_retry;
-       int         long_retry;
-       int         bbp_type;
-       u32         flags;
-} OPTIONS, *POPTIONS;
+#define OWNED_BY_HOST  0
+#define        OWNED_BY_NIC    1
+
+struct vnt_options {
+       int rx_descs0;          /* Number of RX descriptors0 */
+       int rx_descs1;          /* Number of RX descriptors1 */
+       int tx_descs[2];        /* Number of TX descriptors 0, 1 */
+       int int_works;          /* interrupt limits */
+       int short_retry;
+       int long_retry;
+       int bbp_type;
+       u32 flags;
+};
 
 struct vnt_private {
        struct pci_dev *pcid;
@@ -236,41 +139,32 @@ struct vnt_private {
        unsigned char *tx1_bufs;
        unsigned char *tx_beacon_bufs;
 
-       CHIP_TYPE                   chip_id;
-
        void __iomem                *PortOffset;
-       unsigned long dwIsr;
        u32                         memaddr;
        u32                         ioaddr;
-       u32                         io_size;
 
-       unsigned char byRevId;
        unsigned char byRxMode;
-       unsigned short SubSystemID;
-       unsigned short SubVendorID;
 
        spinlock_t                  lock;
 
-       int                         nTxQueues;
        volatile int                iTDUsed[TYPE_MAXTD];
 
-       volatile PSTxDesc           apCurrTD[TYPE_MAXTD];
-       volatile PSTxDesc           apTailTD[TYPE_MAXTD];
+       struct vnt_tx_desc *apCurrTD[TYPE_MAXTD];
+       struct vnt_tx_desc *apTailTD[TYPE_MAXTD];
 
-       volatile PSTxDesc           apTD0Rings;
-       volatile PSTxDesc           apTD1Rings;
+       struct vnt_tx_desc *apTD0Rings;
+       struct vnt_tx_desc *apTD1Rings;
 
-       volatile PSRxDesc           aRD0Ring;
-       volatile PSRxDesc           aRD1Ring;
-       volatile PSRxDesc           pCurrRD[TYPE_MAXRD];
+       struct vnt_rx_desc *aRD0Ring;
+       struct vnt_rx_desc *aRD1Ring;
+       struct vnt_rx_desc *pCurrRD[TYPE_MAXRD];
 
-       OPTIONS                     sOpts;
+       struct vnt_options opts;
 
        u32                         flags;
 
        u32                         rx_buf_sz;
        u8 rx_rate;
-       int                         multicast_limit;
 
        u32                         rx_bytes;
 
@@ -286,11 +180,6 @@ struct vnt_private {
        unsigned char abyCurrentNetAddr[ETH_ALEN]; __aligned(2)
        bool bLinkPass;          /* link status: OK or fail */
 
-       /* Adapter statistics */
-       SStatCounter                scStatistic;
-       /* 802.11 counter */
-       SDot11Counters              s802_11Counter;
-
        unsigned int    uCurrRSSI;
        unsigned char byCurrSQ;
 
@@ -410,15 +299,11 @@ struct vnt_private {
        unsigned char abyEEPROM[EEP_MAX_CONTEXT_SIZE]; /* unsigned long alignment */
 
        unsigned short wBeaconInterval;
-};
+       u16 wake_up_count;
 
-static inline PDEVICE_RD_INFO alloc_rd_info(void)
-{
-       return kzalloc(sizeof(DEVICE_RD_INFO), GFP_ATOMIC);
-}
+       struct work_struct interrupt_work;
+
+       struct ieee80211_low_level_stats low_stats;
+};
 
-static inline PDEVICE_TD_INFO alloc_td_info(void)
-{
-       return kzalloc(sizeof(DEVICE_TD_INFO), GFP_ATOMIC);
-}
 #endif