staging: wilc1000: wilc_wfi_cfgoperations.h: align defines
[firefly-linux-kernel-4.4.55.git] / drivers / staging / wilc1000 / wilc_wfi_cfgoperations.h
1 /*!
2  *  @file       wilc_wfi_cfgoperations.h
3  *  @brief      Definitions for the network module
4  *  @author     syounan
5  *  @sa         wilc_oswrapper.h top level OS wrapper file
6  *  @date       31 Aug 2010
7  *  @version    1.0
8  */
9 #ifndef NM_WFI_CFGOPERATIONS
10 #define NM_WFI_CFGOPERATIONS
11 #include "wilc_wfi_netdevice.h"
12
13 /* The following macros describe the bitfield map used by the firmware to determine its 11i mode */
14 #define NO_ENCRYPT              0
15 #define ENCRYPT_ENABLED         BIT(0)
16 #define WEP                     BIT(1)
17 #define WEP_EXTENDED            BIT(2)
18 #define WPA                     BIT(3)
19 #define WPA2                    BIT(4)
20 #define AES                     BIT(5)
21 #define TKIP                    BIT(6)
22
23 #ifdef WILC_P2P
24
25 /*Public action frame index IDs*/
26 #define FRAME_TYPE_ID                   0
27 #define ACTION_CAT_ID                   24
28 #define ACTION_SUBTYPE_ID               25
29 #define P2P_PUB_ACTION_SUBTYPE          30
30
31 /*Public action frame Attribute IDs*/
32 #define ACTION_FRAME                    0xd0
33 #define GO_INTENT_ATTR_ID               0x04
34 #define CHANLIST_ATTR_ID                0x0b
35 #define OPERCHAN_ATTR_ID                0x11
36 #define PUB_ACTION_ATTR_ID              0x04
37 #define P2PELEM_ATTR_ID                 0xdd
38
39 /*Public action subtype values*/
40 #define GO_NEG_REQ                      0x00
41 #define GO_NEG_RSP                      0x01
42 #define GO_NEG_CONF                     0x02
43 #define P2P_INV_REQ                     0x03
44 #define P2P_INV_RSP                     0x04
45 #define PUBLIC_ACT_VENDORSPEC           0x09
46 #define GAS_INTIAL_REQ                  0x0a
47 #define GAS_INTIAL_RSP                  0x0b
48
49 #define INVALID_CHANNEL                 0
50 #endif
51
52 #define nl80211_SCAN_RESULT_EXPIRE      (3 * HZ)
53 #define SCAN_RESULT_EXPIRE              (40 * HZ)
54
55 static const u32 cipher_suites[] = {
56         WLAN_CIPHER_SUITE_WEP40,
57         WLAN_CIPHER_SUITE_WEP104,
58         WLAN_CIPHER_SUITE_TKIP,
59         WLAN_CIPHER_SUITE_CCMP,
60         WLAN_CIPHER_SUITE_AES_CMAC,
61 };
62
63 static const struct ieee80211_txrx_stypes
64         wilc_wfi_cfg80211_mgmt_types[NUM_NL80211_IFTYPES] = {
65         [NL80211_IFTYPE_STATION] = {
66                 .tx = 0xffff,
67                 .rx = BIT(IEEE80211_STYPE_ACTION >> 4) |
68                         BIT(IEEE80211_STYPE_PROBE_REQ >> 4)
69         },
70         [NL80211_IFTYPE_AP] = {
71                 .tx = 0xffff,
72                 .rx = BIT(IEEE80211_STYPE_ASSOC_REQ >> 4) |
73                         BIT(IEEE80211_STYPE_REASSOC_REQ >> 4) |
74                         BIT(IEEE80211_STYPE_PROBE_REQ >> 4) |
75                         BIT(IEEE80211_STYPE_DISASSOC >> 4) |
76                         BIT(IEEE80211_STYPE_AUTH >> 4) |
77                         BIT(IEEE80211_STYPE_DEAUTH >> 4) |
78                         BIT(IEEE80211_STYPE_ACTION >> 4)
79         },
80         [NL80211_IFTYPE_P2P_CLIENT] = {
81                 .tx = 0xffff,
82                 .rx = BIT(IEEE80211_STYPE_ACTION >> 4) |
83                         BIT(IEEE80211_STYPE_PROBE_REQ >> 4) |
84                         BIT(IEEE80211_STYPE_ASSOC_REQ >> 4) |
85                         BIT(IEEE80211_STYPE_REASSOC_REQ >> 4) |
86                         BIT(IEEE80211_STYPE_PROBE_REQ >> 4) |
87                         BIT(IEEE80211_STYPE_DISASSOC >> 4) |
88                         BIT(IEEE80211_STYPE_AUTH >> 4) |
89                         BIT(IEEE80211_STYPE_DEAUTH >> 4)
90         }
91 };
92
93 /* Time to stay on the channel */
94 #define WILC_WFI_DWELL_PASSIVE 100
95 #define WILC_WFI_DWELL_ACTIVE  40
96
97 struct wireless_dev *WILC_WFI_CfgAlloc(void);
98 struct wireless_dev *WILC_WFI_WiphyRegister(struct net_device *net);
99 void WILC_WFI_WiphyFree(struct net_device *net);
100 int WILC_WFI_update_stats(struct wiphy *wiphy, u32 pktlen, u8 changed);
101 int WILC_WFI_DeInitHostInt(struct net_device *net);
102 int WILC_WFI_InitHostInt(struct net_device *net);
103 void WILC_WFI_monitor_rx(u8 *buff, u32 size);
104 int WILC_WFI_deinit_mon_interface(void);
105 struct net_device *WILC_WFI_init_mon_interface(const char *name, struct net_device *real_dev);
106
107 #ifdef TCP_ENHANCEMENTS
108 #define TCP_ACK_FILTER_LINK_SPEED_THRESH        54
109 #define DEFAULT_LINK_SPEED                      72
110 void Enable_TCP_ACK_Filter(bool value);
111 #endif
112
113 #endif