]> Pileus Git - ~andy/linux/blob - drivers/staging/csr/csr_wifi_private_common.h
Merge branch 'stable/128gb.v5.1' into stable/for-linus-3.7
[~andy/linux] / drivers / staging / csr / csr_wifi_private_common.h
1 /*****************************************************************************
2
3             (c) Cambridge Silicon Radio Limited 2011
4             All rights reserved and confidential information of CSR
5
6             Refer to LICENSE.txt included with this source for details
7             on the license terms.
8
9 *****************************************************************************/
10
11 #ifndef CSR_WIFI_PRIVATE_COMMON_H__
12 #define CSR_WIFI_PRIVATE_COMMON_H__
13
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17
18 /**
19  * @brief maximum number of STAs allowed to be connected
20  *
21  * @par Description
22  *   min & max Beacon Interval
23  */
24 #define CSR_WIFI_AP_MAX_ASSOC_STA   8
25
26 /** Number of only b rates */
27 #define CSR_WIFI_SME_AP_MAX_ONLY_B_RATES        4
28
29
30 /** Number of mandatory b rates */
31 #define CSR_WIFI_SME_AP_MAX_MANDATORY_B_RATES   2
32
33
34 /** Number of mandatory bg rates */
35 #define CSR_WIFI_SME_AP_MAX_MANDATORY_BG_RATES  4
36
37
38 /** Number of bg rates */
39 #define CSR_WIFI_SME_AP_MAX_BG_RATES            12
40
41
42 /** Number of no b only g rates */
43 #define CSR_WIFI_SME_AP_MAX_NO_B_ONLY_G_RATES   8
44
45
46 /** Number of mandatory g rates */
47 #define CSR_WIFI_SME_AP_MAX_MANDATORY_G_RATES   7
48
49
50 /* Number of g mandatory rates */
51 #define CSR_WIFI_SME_AP_G_MANDATORY_RATES_NUM   7
52
53
54 /* Number of b mandatory rates */
55 #define CSR_WIFI_SME_AP_B_MANDATORY_RATES_NUM   2
56
57
58 /* Number of b/g mandatory rates */
59 #define CSR_WIFI_SME_AP_BG_MANDATORY_RATES_NUM   4
60
61
62 /* The maximum allowed length of SSID */
63 #define CSR_WIFI_SME_AP_SSID_MAX_LENGTH         32
64
65 /* Refer 8.4.2.27 RSN element - we support TKIP, WPA2, WAPI and PSK only, no pmkid, group cipher suite */
66 #define CSR_WIFI_SME_RSN_PACKED_SIZE (1 + 1 + 2 + 4 + 2 + 4 * 2 + 2 + 4 * 1 + 2 + 24)
67
68 /* Refer 7.3.2.9 (ISO/IEC 8802-11:2006) WAPI element - we support WAPI PSK only, no bkid, group cipher suite */
69 #define CSR_WIFI_SME_WAPI_PACKED_SIZE (1 + 1 + 2 + 2 + 4 * 1 + 2 + 4 * 1 + 4 + 2 + 24)
70
71
72 /* Common structure for NME and SME to maintain Interface mode*/
73 typedef u8 CsrWifiInterfaceMode;
74 #define  CSR_WIFI_MODE_NONE                             ((CsrWifiInterfaceMode) 0xFF)
75 #define  CSR_WIFI_MODE_STA                              ((CsrWifiInterfaceMode) 0x00)
76 #define  CSR_WIFI_MODE_AP                               ((CsrWifiInterfaceMode) 0x01)
77 #define  CSR_WIFI_MODE_P2P_DEVICE                       ((CsrWifiInterfaceMode) 0x02)
78 #define  CSR_WIFI_MODE_P2P_CLI                          ((CsrWifiInterfaceMode) 0x03)
79 #define  CSR_WIFI_MODE_P2P_GO                           ((CsrWifiInterfaceMode) 0x04)
80 #define  CSR_WIFI_MODE_AMP                              ((CsrWifiInterfaceMode) 0x05)
81 #define  CSR_WIFI_MODE_WPS_ENROLLEE                     ((CsrWifiInterfaceMode) 0x06)
82 #define  CSR_WIFI_MODE_IBSS                             ((CsrWifiInterfaceMode) 0x07)
83
84 #ifdef __cplusplus
85 }
86 #endif
87
88 #endif
89