| /*! |
| * @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 |