3 #define SLSI_WIFI_HAL_NAN_VERSION 1
5 #define CHECK_WIFI_STATUS_RETURN_FAIL(result, LOGSTR) \
6 if (result != WIFI_SUCCESS) {\
7 ALOGE(LOGSTR" [result:%d]", result);\
11 #define CHECK_CONFIG_PUT_8_RETURN_FAIL(config, val, nan_attribute, request, result, FAIL_STR) \
13 result = request.put_u8(nan_attribute, val); \
14 if (result != WIFI_SUCCESS) {\
15 ALOGE(FAIL_STR" [result:%d]", result);\
20 #define CHECK_CONFIG_PUT_16_RETURN_FAIL(config, val, nan_attribute, request, result, FAIL_STR) \
22 result = request.put_u16(nan_attribute, val); \
23 if (result != WIFI_SUCCESS) {\
24 ALOGE(FAIL_STR" [result:%d]", result);\
30 #define CHECK_CONFIG_PUT_32_RETURN_FAIL(config, val, nan_attribute, request, result, FAIL_STR) \
32 result = request.put_u32(nan_attribute, val); \
33 if (result != WIFI_SUCCESS) {\
34 ALOGE(FAIL_STR" [result:%d]", result);\
39 #define CHECK_CONFIG_PUT_RETURN_FAIL(config, valptr, len, nan_attribute, request, result, FAIL_STR) \
41 result = request.put(nan_attribute, valptr, len); \
42 if (result != WIFI_SUCCESS) {\
43 ALOGE(FAIL_STR" [result:%d]", result);\
49 NAN_REQ_ATTR_MASTER_PREF
,
50 NAN_REQ_ATTR_CLUSTER_LOW
,
51 NAN_REQ_ATTR_CLUSTER_HIGH
,
52 NAN_REQ_ATTR_HOP_COUNT_LIMIT_VAL
,
53 NAN_REQ_ATTR_SID_BEACON_VAL
,
55 NAN_REQ_ATTR_SUPPORT_2G4_VAL
,
56 NAN_REQ_ATTR_SUPPORT_5G_VAL
,
58 NAN_REQ_ATTR_RSSI_CLOSE_2G4_VAL
,
59 NAN_REQ_ATTR_RSSI_MIDDLE_2G4_VAL
,
60 NAN_REQ_ATTR_RSSI_PROXIMITY_2G4_VAL
,
61 NAN_REQ_ATTR_BEACONS_2G4_VAL
,
62 NAN_REQ_ATTR_SDF_2G4_VAL
,
63 NAN_REQ_ATTR_CHANNEL_2G4_MHZ_VAL
,
64 NAN_REQ_ATTR_RSSI_PROXIMITY_VAL
,
67 NAN_REQ_ATTR_RSSI_CLOSE_5G_VAL
,
68 NAN_REQ_ATTR_RSSI_CLOSE_PROXIMITY_5G_VAL
,
69 NAN_REQ_ATTR_RSSI_MIDDLE_5G_VAL
,
70 NAN_REQ_ATTR_RSSI_PROXIMITY_5G_VAL
,
71 NAN_REQ_ATTR_BEACON_5G_VAL
,
72 NAN_REQ_ATTR_SDF_5G_VAL
,
73 NAN_REQ_ATTR_CHANNEL_5G_MHZ_VAL
,
75 NAN_REQ_ATTR_RSSI_WINDOW_SIZE_VAL
,
77 NAN_REQ_ATTR_MAC_ADDR_VAL
,
78 NAN_REQ_ATTR_CLUSTER_VAL
,
79 NAN_REQ_ATTR_SOCIAL_CH_SCAN_DWELL_TIME
,
80 NAN_REQ_ATTR_SOCIAL_CH_SCAN_PERIOD
,
81 NAN_REQ_ATTR_RANDOM_FACTOR_FORCE_VAL
,
82 NAN_REQ_ATTR_HOP_COUNT_FORCE_VAL
,
83 NAN_REQ_ATTR_CONN_CAPABILITY_PAYLOAD_TX
,
84 NAN_REQ_ATTR_CONN_CAPABILITY_IBSS
,
85 NAN_REQ_ATTR_CONN_CAPABILITY_WFD
,
86 NAN_REQ_ATTR_CONN_CAPABILITY_WFDS
,
87 NAN_REQ_ATTR_CONN_CAPABILITY_TDLS
,
88 NAN_REQ_ATTR_CONN_CAPABILITY_MESH
,
89 NAN_REQ_ATTR_CONN_CAPABILITY_WLAN_INFRA
,
90 NAN_REQ_ATTR_DISCOVERY_ATTR_NUM_ENTRIES
,
91 NAN_REQ_ATTR_DISCOVERY_ATTR_VAL
,
92 NAN_REQ_ATTR_CONN_TYPE
,
93 NAN_REQ_ATTR_NAN_ROLE
,
94 NAN_REQ_ATTR_TRANSMIT_FREQ
,
95 NAN_REQ_ATTR_AVAILABILITY_DURATION
,
96 NAN_REQ_ATTR_AVAILABILITY_INTERVAL
,
97 NAN_REQ_ATTR_MESH_ID_LEN
,
99 NAN_REQ_ATTR_INFRASTRUCTURE_SSID_LEN
,
100 NAN_REQ_ATTR_INFRASTRUCTURE_SSID
,
101 NAN_REQ_ATTR_FURTHER_AVAIL_NUM_ENTRIES
,
102 NAN_REQ_ATTR_FURTHER_AVAIL_VAL
,
103 NAN_REQ_ATTR_FURTHER_AVAIL_ENTRY_CTRL
,
104 NAN_REQ_ATTR_FURTHER_AVAIL_CHAN_CLASS
,
105 NAN_REQ_ATTR_FURTHER_AVAIL_CHAN
,
106 NAN_REQ_ATTR_FURTHER_AVAIL_CHAN_MAPID
,
107 NAN_REQ_ATTR_FURTHER_AVAIL_INTERVAL_BITMAP
,
108 NAN_REQ_ATTR_PUBLISH_ID
,
109 NAN_REQ_ATTR_PUBLISH_TTL
,
110 NAN_REQ_ATTR_PUBLISH_PERIOD
,
111 NAN_REQ_ATTR_PUBLISH_TYPE
,
112 NAN_REQ_ATTR_PUBLISH_TX_TYPE
,
113 NAN_REQ_ATTR_PUBLISH_COUNT
,
114 NAN_REQ_ATTR_PUBLISH_SERVICE_NAME_LEN
,
115 NAN_REQ_ATTR_PUBLISH_SERVICE_NAME
,
116 NAN_REQ_ATTR_PUBLISH_MATCH_ALGO
,
117 NAN_REQ_ATTR_PUBLISH_SERVICE_INFO_LEN
,
118 NAN_REQ_ATTR_PUBLISH_SERVICE_INFO
,
119 NAN_REQ_ATTR_PUBLISH_RX_MATCH_FILTER_LEN
,
120 NAN_REQ_ATTR_PUBLISH_RX_MATCH_FILTER
,
121 NAN_REQ_ATTR_PUBLISH_TX_MATCH_FILTER_LEN
,
122 NAN_REQ_ATTR_PUBLISH_TX_MATCH_FILTER
,
123 NAN_REQ_ATTR_PUBLISH_RSSI_THRESHOLD_FLAG
,
124 NAN_REQ_ATTR_PUBLISH_CONN_MAP
,
125 NAN_REQ_ATTR_PUBLISH_RECV_IND_CFG
,
126 NAN_REQ_ATTR_SUBSCRIBE_ID
,
127 NAN_REQ_ATTR_SUBSCRIBE_TTL
,
128 NAN_REQ_ATTR_SUBSCRIBE_PERIOD
,
129 NAN_REQ_ATTR_SUBSCRIBE_TYPE
,
130 NAN_REQ_ATTR_SUBSCRIBE_RESP_FILTER_TYPE
,
131 NAN_REQ_ATTR_SUBSCRIBE_RESP_INCLUDE
,
132 NAN_REQ_ATTR_SUBSCRIBE_USE_RESP_FILTER
,
133 NAN_REQ_ATTR_SUBSCRIBE_SSI_REQUIRED
,
134 NAN_REQ_ATTR_SUBSCRIBE_MATCH_INDICATOR
,
135 NAN_REQ_ATTR_SUBSCRIBE_COUNT
,
136 NAN_REQ_ATTR_SUBSCRIBE_SERVICE_NAME_LEN
,
137 NAN_REQ_ATTR_SUBSCRIBE_SERVICE_NAME
,
138 NAN_REQ_ATTR_SUBSCRIBE_SERVICE_INFO_LEN
,
139 NAN_REQ_ATTR_SUBSCRIBE_SERVICE_INFO
,
140 NAN_REQ_ATTR_SUBSCRIBE_RX_MATCH_FILTER_LEN
,
141 NAN_REQ_ATTR_SUBSCRIBE_RX_MATCH_FILTER
,
142 NAN_REQ_ATTR_SUBSCRIBE_TX_MATCH_FILTER_LEN
,
143 NAN_REQ_ATTR_SUBSCRIBE_TX_MATCH_FILTER
,
144 NAN_REQ_ATTR_SUBSCRIBE_RSSI_THRESHOLD_FLAG
,
145 NAN_REQ_ATTR_SUBSCRIBE_CONN_MAP
,
146 NAN_REQ_ATTR_SUBSCRIBE_NUM_INTF_ADDR_PRESENT
,
147 NAN_REQ_ATTR_SUBSCRIBE_INTF_ADDR
,
148 NAN_REQ_ATTR_SUBSCRIBE_RECV_IND_CFG
,
149 NAN_REQ_ATTR_FOLLOWUP_ID
,
150 NAN_REQ_ATTR_FOLLOWUP_REQUESTOR_ID
,
151 NAN_REQ_ATTR_FOLLOWUP_ADDR
,
152 NAN_REQ_ATTR_FOLLOWUP_PRIORITY
,
153 NAN_REQ_ATTR_FOLLOWUP_SERVICE_NAME_LEN
,
154 NAN_REQ_ATTR_FOLLOWUP_SERVICE_NAME
,
155 NAN_REQ_ATTR_FOLLOWUP_TX_WINDOW
,
156 NAN_REQ_ATTR_FOLLOWUP_RECV_IND_CFG
,
157 NAN_REQ_ATTR_SUBSCRIBE_SID_BEACON_VAL
,
158 NAN_REQ_ATTR_DW_2G4_INTERVAL
,
159 NAN_REQ_ATTR_DW_5G_INTERVAL
,
160 NAN_REQ_ATTR_DISC_MAC_ADDR_RANDOM_INTERVAL
,
161 NAN_REQ_ATTR_PUBLISH_SDEA_LEN
,
162 NAN_REQ_ATTR_PUBLISH_SDEA
,
164 NAN_REQ_ATTR_RANGING_AUTO_RESPONSE
,
165 NAN_REQ_ATTR_SDEA_PARAM_NDP_TYPE
,
166 NAN_REQ_ATTR_SDEA_PARAM_SECURITY_CFG
,
167 NAN_REQ_ATTR_SDEA_PARAM_RANGING_STATE
,
168 NAN_REQ_ATTR_SDEA_PARAM_RANGE_REPORT
,
169 NAN_REQ_ATTR_SDEA_PARAM_QOS_CFG
,
170 NAN_REQ_ATTR_RANGING_CFG_INTERVAL
,
171 NAN_REQ_ATTR_RANGING_CFG_INDICATION
,
172 NAN_REQ_ATTR_RANGING_CFG_INGRESS_MM
,
173 NAN_REQ_ATTR_RANGING_CFG_EGRESS_MM
,
174 NAN_REQ_ATTR_CIPHER_TYPE
,
175 NAN_REQ_ATTR_SCID_LEN
,
177 NAN_REQ_ATTR_SECURITY_KEY_TYPE
,
178 NAN_REQ_ATTR_SECURITY_PMK_LEN
,
179 NAN_REQ_ATTR_SECURITY_PMK
,
180 NAN_REQ_ATTR_SECURITY_PASSPHRASE_LEN
,
181 NAN_REQ_ATTR_SECURITY_PASSPHRASE
,
182 NAN_REQ_ATTR_RANGE_RESPONSE_CFG_PUBLISH_ID
,
183 NAN_REQ_ATTR_RANGE_RESPONSE_CFG_REQUESTOR_ID
,
184 NAN_REQ_ATTR_RANGE_RESPONSE_CFG_PEER_ADDR
,
185 NAN_REQ_ATTR_RANGE_RESPONSE_CFG_RANGING_RESPONSE
,
186 NAN_REQ_ATTR_REQ_INSTANCE_ID
,
187 NAN_REQ_ATTR_NDP_INSTANCE_ID
,
188 NAN_REQ_ATTR_CHAN_REQ_TYPE
,
190 NAN_REQ_ATTR_DATA_INTERFACE_NAME_LEN
,
191 NAN_REQ_ATTR_DATA_INTERFACE_NAME
,
192 NAN_REQ_ATTR_APP_INFO_LEN
,
193 NAN_REQ_ATTR_APP_INFO
,
194 NAN_REQ_ATTR_SERVICE_NAME_LEN
,
195 NAN_REQ_ATTR_SERVICE_NAME
,
196 NAN_REQ_ATTR_NDP_RESPONSE_CODE
,
197 NAN_REQ_ATTR_USE_NDPE_ATTR
198 } NAN_REQ_ATTRIBUTES
;
201 NAN_REPLY_ATTR_STATUS_TYPE
,
202 NAN_REPLY_ATTR_VALUE
,
203 NAN_REPLY_ATTR_RESPONSE_TYPE
,
204 NAN_REPLY_ATTR_PUBLISH_SUBSCRIBE_TYPE
,
205 NAN_REPLY_ATTR_CAP_MAX_CONCURRENT_CLUSTER
,
206 NAN_REPLY_ATTR_CAP_MAX_PUBLISHES
,
207 NAN_REPLY_ATTR_CAP_MAX_SUBSCRIBES
,
208 NAN_REPLY_ATTR_CAP_MAX_SERVICE_NAME_LEN
,
209 NAN_REPLY_ATTR_CAP_MAX_MATCH_FILTER_LEN
,
210 NAN_REPLY_ATTR_CAP_MAX_TOTAL_MATCH_FILTER_LEN
,
211 NAN_REPLY_ATTR_CAP_MAX_SERVICE_SPECIFIC_INFO_LEN
,
212 NAN_REPLY_ATTR_CAP_MAX_VSA_DATA_LEN
,
213 NAN_REPLY_ATTR_CAP_MAX_MESH_DATA_LEN
,
214 NAN_REPLY_ATTR_CAP_MAX_NDI_INTERFACES
,
215 NAN_REPLY_ATTR_CAP_MAX_NDP_SESSIONS
,
216 NAN_REPLY_ATTR_CAP_MAX_APP_INFO_LEN
,
217 NAN_REPLY_ATTR_NDP_INSTANCE_ID
,
218 NAN_REPLY_ATTR_CAP_MAX_QUEUED_TRANSMIT_FOLLOWUP_MGS
,
219 NAN_REPLY_ATTR_CAP_MAX_NDP_SUPPORTED_BANDS
,
220 NAN_REPLY_ATTR_CAP_MAX_CIPHER_SUITES_SUPPORTED
,
221 NAN_REPLY_ATTR_CAP_MAX_SCID_LEN
,
222 NAN_REPLY_ATTR_CAP_NDP_SECURITY_SUPPORTED
,
223 NAN_REPLY_ATTR_CAP_MAX_SDEA_SERVICE_SPECIFIC_INFO_LEN
,
224 NAN_REPLY_ATTR_CAP_MAX_SUBSCRIBE_ADDRESS
,
225 NAN_REPLY_ATTR_CAP_NDPE_ATTR_SUPPORTED
226 } NAN_RESP_ATTRIBUTES
;
229 NAN_EVT_ATTR_MATCH_PUBLISH_SUBSCRIBE_ID
= 0,
230 NAN_EVT_ATTR_MATCH_REQUESTOR_INSTANCE_ID
,
231 NAN_EVT_ATTR_MATCH_ADDR
,
232 NAN_EVT_ATTR_MATCH_SERVICE_SPECIFIC_INFO_LEN
,
233 NAN_EVT_ATTR_MATCH_SERVICE_SPECIFIC_INFO
,
234 NAN_EVT_ATTR_MATCH_SDF_MATCH_FILTER_LEN
,
235 NAN_EVT_ATTR_MATCH_SDF_MATCH_FILTER
,
236 NAN_EVT_ATTR_MATCH_MATCH_OCCURED_FLAG
,
237 NAN_EVT_ATTR_MATCH_OUT_OF_RESOURCE_FLAG
,
238 NAN_EVT_ATTR_MATCH_RSSI_VALUE
,
240 NAN_EVT_ATTR_MATCH_CONN_CAPABILITY_IS_WFD_SUPPORTED
= 10,
241 NAN_EVT_ATTR_MATCH_CONN_CAPABILITY_IS_WFDS_SUPPORTED
,
242 NAN_EVT_ATTR_MATCH_CONN_CAPABILITY_IS_TDLS_SUPPORTED
,
243 NAN_EVT_ATTR_MATCH_CONN_CAPABILITY_IS_IBSS_SUPPORTED
,
244 NAN_EVT_ATTR_MATCH_CONN_CAPABILITY_IS_MESH_SUPPORTED
,
245 NAN_EVT_ATTR_MATCH_CONN_CAPABILITY_WLAN_INFRA_FIELD
,
246 NAN_EVT_ATTR_MATCH_NUM_RX_DISCOVERY_ATTR
,
247 NAN_EVT_ATTR_MATCH_RX_DISCOVERY_ATTR
,
248 /*NANRECEIVEPOSTDISCOVERY DISCOVERY_ATTR,*/
249 NAN_EVT_ATTR_MATCH_DISC_ATTR_TYPE
,
250 NAN_EVT_ATTR_MATCH_DISC_ATTR_ROLE
,
251 NAN_EVT_ATTR_MATCH_DISC_ATTR_DURATION
= 20,
252 NAN_EVT_ATTR_MATCH_DISC_ATTR_AVAIL_INTERVAL_BITMAP
,
253 NAN_EVT_ATTR_MATCH_DISC_ATTR_MAPID
,
254 NAN_EVT_ATTR_MATCH_DISC_ATTR_ADDR
,
255 NAN_EVT_ATTR_MATCH_DISC_ATTR_MESH_ID_LEN
,
256 NAN_EVT_ATTR_MATCH_DISC_ATTR_MESH_ID
,
257 NAN_EVT_ATTR_MATCH_DISC_ATTR_INFRASTRUCTURE_SSID_LEN
,
258 NAN_EVT_ATTR_MATCH_DISC_ATTR_INFRASTRUCTURE_SSID_VAL
,
260 NAN_EVT_ATTR_MATCH_NUM_CHANS
,
261 NAN_EVT_ATTR_MATCH_FAMCHAN
,
263 NAN_EVT_ATTR_MATCH_FAM_ENTRY_CONTROL
= 30,
264 NAN_EVT_ATTR_MATCH_FAM_CLASS_VAL
,
265 NAN_EVT_ATTR_MATCH_FAM_CHANNEL
,
266 NAN_EVT_ATTR_MATCH_FAM_MAPID
,
267 NAN_EVT_ATTR_MATCH_FAM_AVAIL_INTERVAL_BITMAP
,
268 NAN_EVT_ATTR_MATCH_CLUSTER_ATTRIBUTE_LEN
,
269 NAN_EVT_ATTR_MATCH_CLUSTER_ATTRIBUTE
,
270 NAN_EVT_ATTR_PUBLISH_ID
,
271 NAN_EVT_ATTR_PUBLISH_REASON
,
272 NAN_EVT_ATTR_SUBSCRIBE_ID
,
273 NAN_EVT_ATTR_SUBSCRIBE_REASON
= 40,
274 NAN_EVT_ATTR_DISABLED_REASON
,
275 NAN_EVT_ATTR_FOLLOWUP_PUBLISH_SUBSCRIBE_ID
,
276 NAN_EVT_ATTR_FOLLOWUP_REQUESTOR_INSTANCE_ID
,
277 NAN_EVT_ATTR_FOLLOWUP_ADDR
,
278 NAN_EVT_ATTR_FOLLOWUP_DW_OR_FAW
,
279 NAN_EVT_ATTR_FOLLOWUP_SERVICE_SPECIFIC_INFO_LEN
,
280 NAN_EVT_ATTR_FOLLOWUP_SERVICE_SPECIFIC_INFO
,
281 NAN_EVT_ATTR_DISCOVERY_ENGINE_EVT_TYPE
,
282 NAN_EVT_ATTR_DISCOVERY_ENGINE_MAC_ADDR
,
283 NAN_EVT_ATTR_DISCOVERY_ENGINE_CLUSTER
= 50,
285 NAN_EVT_ATTR_SDEA_LEN
,
287 NAN_EVT_ATTR_SCID_LEN
,
288 NAN_EVT_ATTR_SDEA_PARAM_CONFIG_NAN_DATA_PATH
,
289 NAN_EVT_ATTR_SDEA_PARAM_NDP_TYPE
,
290 NAN_EVT_ATTR_SDEA_PARAM_SECURITY_CONFIG
,
291 NAN_EVT_ATTR_SDEA_PARAM_RANGE_STATE
,
292 NAN_EVT_ATTR_SDEA_PARAM_RANGE_REPORT
,
293 NAN_EVT_ATTR_SDEA_PARAM_QOS_CFG
= 60,
294 NAN_EVT_ATTR_RANGE_MEASUREMENT_MM
,
295 NAN_EVT_ATTR_RANGEING_EVENT_TYPE
,
296 NAN_EVT_ATTR_SECURITY_CIPHER_TYPE
,
298 NAN_EVT_ATTR_SERVICE_INSTANCE_ID
,
299 NAN_EVT_ATTR_NDP_INSTANCE_ID
,
300 NAN_EVT_ATTR_NDP_RSP_CODE
,
301 NAN_EVT_ATTR_STATUS_CODE
,
302 NAN_EVT_ATTR_CHANNEL_INFO
,
303 NAN_EVT_ATTR_APP_INFO_LEN
= 70,
304 NAN_EVT_ATTR_APP_INFO
,
305 NAN_EVT_ATTR_CHANNEL
,
306 NAN_EVT_ATTR_CHANNEL_BW
,
307 NAN_EVT_ATTR_CHANNEL_NSS
308 } NAN_EVT_ATTRIBUTES
;