These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / staging / wilc1000 / wilc_wfi_cfgoperations.h
diff --git a/kernel/drivers/staging/wilc1000/wilc_wfi_cfgoperations.h b/kernel/drivers/staging/wilc1000/wilc_wfi_cfgoperations.h
new file mode 100644 (file)
index 0000000..39cd8e1
--- /dev/null
@@ -0,0 +1,109 @@
+/*!
+ *  @file      wilc_wfi_cfgoperations.h
+ *  @brief     Definitions for the network module
+ *  @author    syounan
+ *  @sa                wilc_oswrapper.h top level OS wrapper file
+ *  @date      31 Aug 2010
+ *  @version   1.0
+ */
+#ifndef NM_WFI_CFGOPERATIONS
+#define NM_WFI_CFGOPERATIONS
+#include "wilc_wfi_netdevice.h"
+
+/* The following macros describe the bitfield map used by the firmware to determine its 11i mode */
+#define NO_ENCRYPT             0
+#define ENCRYPT_ENABLED                BIT(0)
+#define WEP                    BIT(1)
+#define WEP_EXTENDED           BIT(2)
+#define WPA                    BIT(3)
+#define WPA2                   BIT(4)
+#define AES                    BIT(5)
+#define TKIP                   BIT(6)
+
+/*Public action frame index IDs*/
+#define FRAME_TYPE_ID                  0
+#define ACTION_CAT_ID                  24
+#define ACTION_SUBTYPE_ID              25
+#define P2P_PUB_ACTION_SUBTYPE         30
+
+/*Public action frame Attribute IDs*/
+#define ACTION_FRAME                   0xd0
+#define GO_INTENT_ATTR_ID              0x04
+#define CHANLIST_ATTR_ID               0x0b
+#define OPERCHAN_ATTR_ID               0x11
+#define PUB_ACTION_ATTR_ID             0x04
+#define P2PELEM_ATTR_ID                        0xdd
+
+/*Public action subtype values*/
+#define GO_NEG_REQ                     0x00
+#define GO_NEG_RSP                     0x01
+#define GO_NEG_CONF                    0x02
+#define P2P_INV_REQ                    0x03
+#define P2P_INV_RSP                    0x04
+#define PUBLIC_ACT_VENDORSPEC          0x09
+#define GAS_INTIAL_REQ                 0x0a
+#define GAS_INTIAL_RSP                 0x0b
+
+#define INVALID_CHANNEL                        0
+
+#define nl80211_SCAN_RESULT_EXPIRE     (3 * HZ)
+#define SCAN_RESULT_EXPIRE             (40 * HZ)
+
+static const u32 cipher_suites[] = {
+       WLAN_CIPHER_SUITE_WEP40,
+       WLAN_CIPHER_SUITE_WEP104,
+       WLAN_CIPHER_SUITE_TKIP,
+       WLAN_CIPHER_SUITE_CCMP,
+       WLAN_CIPHER_SUITE_AES_CMAC,
+};
+
+static const struct ieee80211_txrx_stypes
+       wilc_wfi_cfg80211_mgmt_types[NUM_NL80211_IFTYPES] = {
+       [NL80211_IFTYPE_STATION] = {
+               .tx = 0xffff,
+               .rx = BIT(IEEE80211_STYPE_ACTION >> 4) |
+                       BIT(IEEE80211_STYPE_PROBE_REQ >> 4)
+       },
+       [NL80211_IFTYPE_AP] = {
+               .tx = 0xffff,
+               .rx = BIT(IEEE80211_STYPE_ASSOC_REQ >> 4) |
+                       BIT(IEEE80211_STYPE_REASSOC_REQ >> 4) |
+                       BIT(IEEE80211_STYPE_PROBE_REQ >> 4) |
+                       BIT(IEEE80211_STYPE_DISASSOC >> 4) |
+                       BIT(IEEE80211_STYPE_AUTH >> 4) |
+                       BIT(IEEE80211_STYPE_DEAUTH >> 4) |
+                       BIT(IEEE80211_STYPE_ACTION >> 4)
+       },
+       [NL80211_IFTYPE_P2P_CLIENT] = {
+               .tx = 0xffff,
+               .rx = BIT(IEEE80211_STYPE_ACTION >> 4) |
+                       BIT(IEEE80211_STYPE_PROBE_REQ >> 4) |
+                       BIT(IEEE80211_STYPE_ASSOC_REQ >> 4) |
+                       BIT(IEEE80211_STYPE_REASSOC_REQ >> 4) |
+                       BIT(IEEE80211_STYPE_DISASSOC >> 4) |
+                       BIT(IEEE80211_STYPE_AUTH >> 4) |
+                       BIT(IEEE80211_STYPE_DEAUTH >> 4)
+       }
+};
+
+/* Time to stay on the channel */
+#define WILC_WFI_DWELL_PASSIVE 100
+#define WILC_WFI_DWELL_ACTIVE  40
+
+struct wireless_dev *WILC_WFI_CfgAlloc(void);
+struct wireless_dev *wilc_create_wiphy(struct net_device *net);
+void wilc_free_wiphy(struct net_device *net);
+int WILC_WFI_update_stats(struct wiphy *wiphy, u32 pktlen, u8 changed);
+int wilc_deinit_host_int(struct net_device *net);
+int wilc_init_host_int(struct net_device *net);
+void WILC_WFI_monitor_rx(u8 *buff, u32 size);
+int WILC_WFI_deinit_mon_interface(void);
+struct net_device *WILC_WFI_init_mon_interface(const char *name, struct net_device *real_dev);
+void wilc_mgmt_frame_register(struct wiphy *wiphy, struct wireless_dev *wdev,
+                             u16 frame_type, bool reg);
+
+#define TCP_ACK_FILTER_LINK_SPEED_THRESH       54
+#define DEFAULT_LINK_SPEED                     72
+void Enable_TCP_ACK_Filter(bool value);
+
+#endif