Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso...
[cascardo/linux.git] / drivers / staging / csr / csr_wifi_hip_signals.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 /*
12  *****************************************************************************
13  *
14  * FILE: csr_wifi_hip_signals.h
15  *
16  * PURPOSE:
17  *      Header file wrapping the auto-generated code in csr_wifi_hip_sigs.h
18  *      and csr_wifi_hip_signals.c -
19  *      csr_wifi_hip_sigs.h provides structures defining UniFi signals and
20  *      csr_wifi_hip_signals.c provides SigGetSize() and SigGetDataRefs().
21  *
22  *****************************************************************************
23  */
24 #ifndef __CSR_WIFI_HIP_SIGNALS_H__
25 #define __CSR_WIFI_HIP_SIGNALS_H__
26
27 #include <linux/types.h>
28 #include "csr_wifi_hip_sigs.h"
29
30
31 /****************************************************************************/
32 /* INFORMATION ELEMENTS */
33 /****************************************************************************/
34
35 /* Information Element ID's - shouldn't be in here, but nowhere better yet */
36 #define IE_SSID_ID                       0
37 #define IE_SUPPORTED_RATES_ID            1
38 #define IE_FH_PARAM_SET_ID               2
39 #define IE_DS_PARAM_SET_ID               3
40 #define IE_CF_PARAM_SET_ID               4
41 #define IE_TIM_ID                        5
42 #define IE_IBSS_PARAM_SET_ID             6
43 #define IE_COUNTRY_ID                    7
44 #define IE_HOPPING_PATTERN_PARAMS_ID     8
45 #define IE_HOPPING_PATTERN_TABLE_ID      9
46 #define IE_REQUEST_ID                    10
47 #define IE_QBSS_LOAD_ID                  11
48 #define IE_EDCA_PARAM_SET_ID             12
49 #define IE_TRAFFIC_SPEC_ID               13
50 #define IE_TRAFFIC_CLASS_ID              14
51 #define IE_SCHEDULE_ID                   15
52 #define IE_CHALLENGE_TEXT_ID             16
53 #define IE_POWER_CONSTRAINT_ID           32
54 #define IE_POWER_CAPABILITY_ID           33
55 #define IE_TPC_REQUEST_ID                34
56 #define IE_TPC_REPORT_ID                 35
57 #define IE_SUPPORTED_CHANNELS_ID         36
58 #define IE_CHANNEL_SWITCH_ANNOUNCE_ID    37
59 #define IE_MEASUREMENT_REQUEST_ID        38
60 #define IE_MEASUREMENT_REPORT_ID         39
61 #define IE_QUIET_ID                      40
62 #define IE_IBSS_DFS_ID                   41
63 #define IE_ERP_INFO_ID                   42
64 #define IE_TS_DELAY_ID                   43
65 #define IE_TCLAS_PROCESSING_ID           44
66 #define IE_QOS_CAPABILITY_ID             46
67 #define IE_RSN_ID                        48
68 #define IE_EXTENDED_SUPPORTED_RATES_ID   50
69 #define IE_AP_CHANNEL_REPORT_ID          52
70 #define IE_RCPI_ID                       53
71 #define IE_WPA_ID                       221
72
73
74 /* The maximum number of data references in a signal structure */
75 #define UNIFI_MAX_DATA_REFERENCES 2
76
77 /* The space to allow for a wire-format signal structure */
78 #define UNIFI_PACKED_SIGBUF_SIZE   64
79
80
81 /******************************************************************************/
82 /* SIGNAL PARAMETER VALUES */
83 /******************************************************************************/
84
85 /* ifIndex */
86 #define UNIFI_IF_2G4 1
87 #define UNIFI_IF_5G  2
88
89 /* SendProcessId */
90 #define HOST_PROC_ID 0xc000
91
92 #define SIG_CAP_ESS             0x0001
93 #define SIG_CAP_IBSS            0x0002
94 #define SIG_CAP_CF_POLLABLE     0x0004
95 #define SIG_CAP_CF_POLL_REQUEST 0x0008
96 #define SIG_CAP_PRIVACY         0x0010
97 #define SIG_CAP_SHORT_PREAMBLE  0x0020
98 #define SIG_CAP_DSSSOFDM        0x2000
99
100 /******************************************************************************/
101 /* FUNCTION DECLARATIONS */
102 /******************************************************************************/
103
104 #ifdef __cplusplus
105 extern "C" {
106 #endif /* __cplusplus */
107
108 /******************************************************************************
109  * SigGetNumDataRefs - Retrieve pointers to data-refs from a signal.
110  *
111  * PARAMETERS:
112  *   aSignal  - Pointer to signal to retrieve the data refs of.
113  *   aDataRef - Address of a pointer to the structure that the data refs
114  *              pointers will be stored.
115  *
116  * RETURNS:
117  *   The number of data-refs in the signal.
118  */
119 s32 SigGetDataRefs(CSR_SIGNAL *aSignal, CSR_DATAREF **aDataRef);
120
121 /******************************************************************************
122  * SigGetSize - Retrieve the size (in bytes) of a given signal.
123  *
124  * PARAMETERS:
125  *   aSignal  - Pointer to signal to retrieve size of.
126  *
127  * RETURNS:
128  *   The size (in bytes) of the given signal.
129  */
130 s32 SigGetSize(const CSR_SIGNAL *aSignal);
131
132 #ifdef __cplusplus
133 }
134 #endif /* __cplusplus */
135
136
137 #endif /* __CSR_WIFI_HIP_SIGNALS_H__ */