RDK-B
wifi_hal_extender.h
Go to the documentation of this file.
1 /*
2  * If not stated otherwise in this file or this component's LICENSE file the
3  * following copyright and licenses apply:
4  *
5  * Copyright 2016 RDK Management
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  * http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18 */
19 
20 #ifndef __WIFI_HAL_EXTENDER_H__
21 #define __WIFI_HAL_EXTENDER_H__
22 
23 #ifdef __cplusplus
24 extern "C"{
25 #endif
26 
27 /**
28  * @addtogroup WIFI_HAL_TYPES
29  * @{
30  */
31 
32 typedef struct _wifi_channelStats {
33  INT ch_number; /**< each channel is only 20MHz bandwidth */
34  BOOL ch_in_pool; /**< If ch_in_pool is false, driver do not need to scan this channel */
35  INT ch_noise; /**< this is used to return the average noise floor in dbm */
36  BOOL ch_radar_noise; /**< if ch_number is in DFS channel, this is used to return if radar signal is present on DFS channel (5G only) */
37  INT ch_max_80211_rssi; /**< max RSSI from the neighbor AP in dbm on this channel. */
38  INT ch_non_80211_noise; /**< average non 802.11 noise */
39  INT ch_utilization; /**< this is used to return the 802.11 utilization in percent */
40  ULLONG ch_utilization_total; /**< Total time radio spent receiveing or transmitting on that channel (ch_utilization_active) */
41  ULLONG ch_utilization_busy; /**< Time radio detected that channel was busy (Busy = Rx + Tx + Interference) */
42  ULLONG ch_utilization_busy_tx; /**< Time time radio spent transmitting on channel */
43  ULLONG ch_utilization_busy_rx; /**< Time radio spent receiving on channel (Rx = Rx_obss + Rx_self + Rx_errr (self and obss errors) */
44  ULLONG ch_utilization_busy_self; /**< Time radio spend receiving on channel from its own connected clients */
45  ULLONG ch_utilization_busy_ext; /**< Time radio detected that extended channel was busy (40MHz extention channel busy */
46 } wifi_channelStats_t; //<!This data structure is for each channel
47 
48 /* MCS/NSS/BW rate table and indexes that shoul be used for supported rates
49 ----------------------------------------------
50 | type | bw | nss | mcs
51 ----------------------------------------------
52 | OFDM | 0 (20Mhz) | 0 (legacy) | 0 - 6M
53 | | | | 1 - 9M
54 | | | | 2 - 12M
55 | | | | 3 - 18M
56 | | | | 4 - 24M
57 | | | | 5 - 36M
58 | | | | 6 - 48M
59 | | | | 7 - 54M
60 ----------------------------------------------
61 | CCK | 0 (20Mhz) | 0 (legacy) | 8 - L1M
62 | | | | 9 - L2M
63 | | | | 10 - L5.5M
64 | | | | 11 - L11M
65 | | | | 12 - S2M
66 | | | | 13 - S5.5M
67 | | | | 14 - S11M"
68 ----------------------------------------------
69 | VHT | 0 (20Mhz) | 1 (chain1) | 1 - HT/VHT
70 | | 1 (40Mhz) | ... | 2 - HT/VHT
71 | | 2 (80MHz) | 8 (chain8) | 3 - HT/VHT
72 | | 2 (160MHz) | | 4 - HT/VHT
73 | | | | 5 - HT/VHT
74 | | | | 6 - HT/VHT
75 | | | | 7 - HT/VHT
76 | | | | 8 - VHT
77 | | | | 9 - VHT
78 ----------------------------------------------
79 NOTE: The size of this table on 4x4 can be big - we could send only non zero elements!
80 */
82  // rate table index see table above
83  UCHAR nss; /**< 0 equals legacy protocolss (OFDM, CCK) 1 - n spatial stream (HT, VHT) */
84  UCHAR mcs; /**< 0 - 7 (HT) - 9 (VHT) */
85  USHORT bw; /**< 20, 40, 80, 160 ... (to be considered 5 , 10, 80+80) ... */
86  ULLONG flags; /**< Flag indicating data validation that HAS_BYTES, HAS_MSDUS, HAS_MPDUS, HAS_PPDUS, HAS_BW_80P80, HAS_RSSI_COMB, HAS_RSSI_ARRAY */
87  ULLONG bytes; /**< number of bytes received for given rate */
88  ULLONG msdus; /**< number of MSDUs received for given rate */
89  ULLONG mpdus; /**< number of MPDUs received for given rate */
90  ULLONG ppdus; /**< number of PPDUs received for given rate */
91  ULLONG retries; /**< number of retries received for given rate */
92  UCHAR rssi_combined; /**< Last RSSI received on give rate */
93  /* Per antenna RSSI (above noise floor) for all widths (primary,secondary)
94  -----------------------------------------------
95  | chain_num | 20MHz [pri20 ]
96  | | 40MHZ [pri20,sec20 ]
97  | | 80MHz [pri20,sec20,sec40, ]
98  | | 160MHz [pri20,sec20,sec40,sec80 ]
99  -----------------------------------------------
100  | 1 | rssi [pri20,sec20,sec40,sec80 ]
101  | ... | ...
102  | 8 | rssi [pri20,sec20,sec40,sec80 ]
103  ----------------------------------------------- */
104  UCHAR rssi_array[8][4]; //<! 8=antennas, 4=20+20+40+80 extension rssi
106 
108  // rate table index see table above
109  UCHAR nss; /**< 0 equals legacy protocolss (OFDM, CCK) 1 - n spatial stream (HT, VHT) */
110  UCHAR mcs; /**< 0 - 7 (HT) - 9 (VHT) */
111  USHORT bw; /**< 20, 40, 80, 160 ... (to be considered 5 , 10, 80+80) ... */
112  ULLONG flags; /**< Flag indicating data validation that HAS_BYTES, HAS_MSDUS, HAS_MPDUS, HAS_PPDUS, HAS_BW_80P80, HAS_RSSI_COMB, HAS_RSSI_ARRAY */
113  ULLONG bytes; /**< number of bytes transmitted for given rate */
114  ULLONG msdus; /**< number of MSDUs transmitted for given rate */
115  ULLONG mpdus; /**< number of MPDUs transmitted for given rate */
116  ULLONG ppdus; /**< number of PPDUs transmitted for given rate */
117  ULLONG retries; /**< number of transmittion retries for given rate */
118  ULLONG attempts; /**< number of attempts trying transmitt on given rate */
120 
122 {
123  UCHAR ac; /**< BE, BK. VI, VO (wifi_radioQueueType_t) */
124  UCHAR tid; /**< 0 - 16 */
125  ULLONG ewma_time_ms; /**< Moving average value based on last couple of transmitted msdus */
126  ULLONG sum_time_ms; /**< Delta of cumulative msdus times over interval */
127  ULLONG num_msdus; /**< Number of msdus in given interval */
129 
131 {
134 
136  ULLONG cli_rx_bytes; /**< The total number of bytes received from the client device, including framing characters. */
137  ULLONG cli_tx_bytes; /**< The total number of bytes transmitted to the client device, including framing characters. */
138  ULLONG cli_rx_frames; /**< The total number of frames received from the client */
139  ULLONG cli_tx_frames; /**< The total number of frames transmitted to the client */
140  ULLONG cli_rx_retries; /**< Number of rx retries */
141  ULLONG cli_tx_retries; /**< Number of tx retries. cli_Retransmissions */
142  ULLONG cli_rx_errors; /**< Number of numer of rx error */
143  ULLONG cli_tx_errors; /**< Number of tx errors */
144  double cli_rx_rate; /**< average rx data rate used */
145  double cli_tx_rate; /**< average tx data rate used} wifi_associated_dev_t; */
146  wifi_rssi_snapshot_t cli_rssi_bcn; /**< RSSI from last 4 beacons received (STA) */
147  wifi_rssi_snapshot_t cli_rssi_ack; /**< RSSI from last 4 ack received (AP) */
149 
150 /**
151  * @brief Configuration per apIndex
152  *
153  * This defines the configuration for each @b apIndex added to a steering
154  * group
155  *
156  * Channel utilization is to be sampled every @b utilCheckIntervalSec seconds,
157  * and after collecting $b utilAvgCount samples, the steering event
158  * @b WIFI_STEERING_EVENT_CHAN_UTILIZATION should be sent with the averaged value.
159  *
160  * Client active/inactive checking is done every @b inactCheckIntervalSec seconds
161  * and if a given client is idle/inactive for @b inactCheckThresholdSec seconds then
162  * it should be marked as inactive. Whenever a client changes states between active
163  * and inactive, the steering event @b WIFI_STEERING_EVENT_CLIENT_ACTIVITY should be
164  * sent.
165  */
166 typedef struct {
168 
169  UINT utilCheckIntervalSec; /**< Channel utilization check interval */
170  UINT utilAvgCount; /**< Number of samples to average */
171 
172  UINT inactCheckIntervalSec; /**< Client inactive check internval */
173  UINT inactCheckThresholdSec; /**< Client inactive threshold */
175 
176 /**
177  * @brief Configuration per Client
178  *
179  * This defines the per-client, per-apIndex configuration settings. The
180  * high water mark + low water mark pairs define RSSI ranges, in which
181  * given packet types (probe or auth) are responded to as long as the RSSI
182  * of the request packet is within the defined range.
183  *
184  * The RSSI crossings define thresholds which result in steering events
185  * being generated when a connected clients RSSI crosses above or below
186  * the given threshold.
187  *
188  * authRejectReason, when non-zero, results in auth requests being
189  * rejected with the given reason code. When set to zero, auth requests
190  * that do not fall in the RSSI hwm+lwm range will be silently ignored.
191  *
192  * @see https://supportforums.cisco.com/document/141136/80211-association-status-80211-deauth-reason-codes
193  */
194 typedef struct {
195  UINT rssiProbeHWM; /**< Probe response RSSI high water mark */
196  UINT rssiProbeLWM; /**< Probe response RSSI low water mark */
197  UINT rssiAuthHWM; /**< Auth response RSSI high water mark */
198  UINT rssiAuthLWM; /**< Auth response RSSI low water mark */
199  UINT rssiInactXing; /**< Inactive RSSI crossing threshold */
200  UINT rssiHighXing; /**< High RSSI crossing threshold */
201  UINT rssiLowXing; /**< Low RSSI crossing threshold */
202  UINT authRejectReason; /**< Inactive RSSI crossing threshold */
204 
205 /**
206  * @brief Wifi Disconnect Sources
207  *
208  * These are the possible sources of a wifi disconnect.
209  * If the disconnect was initiated by the client, then @b DISCONNECT_SOURCE_REMOTE
210  * should be used.
211  * If initiated by the local AP, then @b DISCONNECT_SOURCE_LOCAL should be used.
212  * If this information is not available, then @b DISCONNECT_SOURCE_UNKNOWN should be used.
213  */
214 typedef enum {
215  DISCONNECT_SOURCE_UNKNOWN = 0, /**< Unknown source */
216  DISCONNECT_SOURCE_LOCAL, /**< Initiated locally */
217  DISCONNECT_SOURCE_REMOTE /**< Initiated remotely */
219 
220 /**
221  * @brief Wifi Disconnect Types
222  * These are the types of wifi disconnects.
223  */
224 typedef enum {
225  DISCONNECT_TYPE_UNKNOWN = 0, /**< Unknown type */
226  DISCONNECT_TYPE_DISASSOC, /**< Disassociation */
227  DISCONNECT_TYPE_DEAUTH /**< Deauthentication */
229 
230 /**
231  * @brief Wifi Steering Event Types
232  * These are the different steering event types that are sent by the wifi_hal
233  * steering library.
234  */
235 typedef enum {
236  WIFI_STEERING_EVENT_PROBE_REQ = 1, /**< Probe Request Event */
237  WIFI_STEERING_EVENT_CLIENT_CONNECT, /**< Client association completed successfully Event */
238  WIFI_STEERING_EVENT_CLIENT_DISCONNECT, /**< Client Disconnect Event */
239  WIFI_STEERING_EVENT_CLIENT_ACTIVITY, /**< Client Active Change Event */
240  WIFI_STEERING_EVENT_CHAN_UTILIZATION, /**< Channel Utilization Event */
241  WIFI_STEERING_EVENT_RSSI_XING, /**< Client RSSI Crossing Event */
242  WIFI_STEERING_EVENT_RSSI, /**< Instant Measurement Event */
243  WIFI_STEERING_EVENT_AUTH_FAIL /**< Client Auth Failure Event */
245 
246 /**
247  * @brief RSSI Crossing Values
248  * These are the RSSI crossing values provided in RSSI crossing events
249  */
250 typedef enum {
251  WIFI_STEERING_RSSI_UNCHANGED = 0, /**< RSSI hasn't crossed */
252  WIFI_STEERING_RSSI_HIGHER, /**< RSSI went higher */
253  WIFI_STEERING_RSSI_LOWER /**< RSSI went lower */
255 
256 /**
257  * @brief STA datarate information
258  * These are STA capabilities values
259  */
260 typedef struct {
261  UINT maxChwidth; /**< Max bandwidth supported */
262  UINT maxStreams; /**< Max spatial streams supported */
263  UINT phyMode; /**< PHY Mode supported */
264  UINT maxMCS; /**< Max MCS supported */
265  UINT maxTxpower; /**< Max TX power supported */
266  UINT isStaticSmps; /**< Operating in Static SM Power Save Mode */
267  UINT isMUMimoSupported; /**< Supports MU-MIMO */
269 
270 typedef struct {
271  BOOL linkMeas; /**< Supports link measurement */
272  BOOL neighRpt; /**< Supports neighbor reports */
273  BOOL bcnRptPassive; /**< Supports Passive 11k scans */
274  BOOL bcnRptActive; /**< Supports Active 11k scans */
275  BOOL bcnRptTable; /**< Supports beacon report table */
276  BOOL lciMeas; /**< Supports LCI measurement */
277  BOOL ftmRangeRpt; /**< Supports FTM Range report */
279 
280 /**
281  * @brief Probe Request Event Data
282  * This data is provided with @b WIFI_STEERING_EVENT_PROBE_REQ
283  */
284 typedef struct {
285  mac_address_t client_mac; /**< Client MAC Address */
286  UINT rssi; /**< RSSI of probe frame */
287  BOOL broadcast; /**< True if broadcast probe */
288  BOOL blocked; /**< True if response blocked */
290 
291 #ifdef WIFI_HAL_VERSION_3_PHASE2
292 
293 /**
294  * @brief Client Connect Event Data
295  * This data is provided with @b WIFI_STEERING_EVENT_CLIENT_CONNECT
296  */
297 typedef struct {
298  mac_address_t client_mac; /**< Client MAC Address */
299  UINT isBTMSupported; /**< Client supports BSS TM */
300  UINT isRRMSupported; /**< Client supports RRM */
301  wifi_freq_bands_t bandsCap; /**< Bitmask with the frequencies that the Client is capable */
302  wifi_steering_datarateInfo_t datarateInfo; /**< Client supported datarate information */
303  wifi_steering_rrmCaps_t rrmCaps; /**< Client supported RRM capabilites */
305 
306 #else
307 /**
308  * @brief Client Connect Event Data
309  * This data is provided with @b WIFI_STEERING_EVENT_CLIENT_CONNECT
310  */
311 typedef struct {
312  mac_address_t client_mac; /**< Client MAC Address */
313  UINT isBTMSupported; /**< Client supports BSS TM */
314  UINT isRRMSupported; /**< Client supports RRM */
315  BOOL bandCap2G; /**< Client is 2.4GHz capable */
316  BOOL bandCap5G; /**< Client is 5GHz capable */
317  BOOL bandCap6G; /**< Client is 6GHz capable */
318  wifi_steering_datarateInfo_t datarateInfo; /**< Client supported datarate information */
319  wifi_steering_rrmCaps_t rrmCaps; /**< Client supported RRM capabilites */
321 #endif
322 
323 /**
324  * @brief Client Disconnect Event Data
325  * This data is provided with @b WIFI_STEERING_EVENT_CLIENT_DISCONNECT
326  */
327 typedef struct {
328  mac_address_t client_mac; /**< Client MAC Address */
329  UINT reason; /**< Reason code of disconnect */
330  wifi_disconnectSource_t source; /**< Source of disconnect */
331  wifi_disconnectType_t type; /**< Disconnect Type */
333 
334 /**
335  * @brief Client Activity Change Event Data
336  * This data is provided with @b WIFI_STEERING_EVENT_CLIENT_ACTIVITY
337  */
338 typedef struct {
339  mac_address_t client_mac; /**< Client MAC Address */
340  BOOL active; /**< True if client is active */
342 
343 /**
344  * @brief Channel Utilization Event Data
345  * This data is provided with @b WIFI_STEERING_EVENT_CHAN_UTILIZATION
346  */
347 typedef struct {
348  UINT utilization; /**< Channel Utilization 0-100 */
350 
351 /**
352  * @brief Client RSSI Crossing Event Data
353  * This data is provided with @b WIFI_STEERING_EVENT_RSSI_XING
354  */
355 typedef struct {
356  mac_address_t client_mac; /**< Client MAC Address */
357  UINT rssi; /**< Clients current RSSI */
358  wifi_steering_rssiChange_t inactveXing; /**< Inactive threshold Value */
359  wifi_steering_rssiChange_t highXing; /**< High threshold Value */
360  wifi_steering_rssiChange_t lowXing; /**< Low threshold value */
362 
363 /**
364  * @brief Client RSSI Measurement Event Data
365  * This data is provided with @b WIFI_STEERING_EVENT_RSSI, which is sent in
366  * response to a requset for the client's current RSSI measurement
367  */
368 typedef struct {
369  mac_address_t client_mac; /**< Client MAC Address */
370  UINT rssi; /**< Clients current RSSI */
372 
373 /**
374  * @brief Auth Failure Event Data
375  * This data is provided with @b WIFI_STEERING_EVENT_AUTH_FAIL
376  */
377 typedef struct {
378  mac_address_t client_mac; /**< Client MAC Address */
379  UINT rssi; /**< RSSI of auth frame */
380  UINT reason; /**< Reject Reason */
381  BOOL bsBlocked; /**< True if purposely blocked */
382  BOOL bsRejected; /**< True if rejection sent */
384 
385 /**
386  * @brief Wifi Steering Event
387  * This is the data containing a single steering event.
388  */
389 typedef struct {
390  wifi_steering_eventType_t type; /**< Event Type */
391  INT apIndex; /**< apIndex event is from */
392  ULLONG timestamp_ms; /**< Optional: Event Timestamp */
393  union {
394  wifi_steering_evProbeReq_t probeReq; /**< Probe Request Data */
395  wifi_steering_evConnect_t connect; /**< Client Connect Data */
396  wifi_steering_evDisconnect_t disconnect; /**< Client Disconnect Data */
397  wifi_steering_evActivity_t activity; /**< Client Active Change Data */
398  wifi_steering_evChanUtil_t chanUtil; /**< Channel Utilization Data */
399  wifi_steering_evRssiXing_t rssiXing; /**< Client RSSI Crossing Data */
400  wifi_steering_evRssi_t rssi; /**< Client Measured RSSI Data */
401  wifi_steering_evAuthFail_t authFail; /**< Auth Failure Data */
402  } data;
404 
405 // 802.11v BSS Transition Management Definitions
406 #define MAX_BTM_DEVICES 64
407 #define MAX_URL_LEN 512
408 #define MAX_CANDIDATES 64
409 #define MAX_VENDOR_SPECIFIC 32
410 
411 // BSS Termination Duration subelement, ID = 4, 802.11 section 9.4.2.2.
412 // This is a subelement because it is specific to Neighbor Report, and BTM
413 // Request Frame.
414 typedef struct {
415  ULONG tsf; // 8 octet TSF timer value.
418 
419 typedef struct {
420  CHAR condensedStr[3]; // 2 char country code from do11CountryString.
422 
423 typedef struct {
427 
428 typedef struct {
431 
432 typedef struct {
437 
438 // Wide Bandwidth Channel Element, ID = 194. 802.11-2016 section 9.4.2.161.
439 typedef struct {
444 
445 typedef struct {
449  union {
452  } u;
454 
455 // HT Capabilities Element, ID = 45. 802.11-2016 section 9.4.2.56.
456 typedef struct {
457 
458  USHORT info; // Bitfield where bit 0 is info[0] bit 0.
460  UCHAR mcs[16]; // Bitfield where bit 0 is mcs[0] bit 0.
461  USHORT extended; // Bitfield where bit 0 is ele_HTExtendedCapabilities[0] bit 0.
462  UINT txBeamCaps; // Bitfield where bit 0 is ele_TransmitBeamFormingCapabilities[0] bit 0.
465 
466 // VHT Capabilities Element, ID = 191. 802.11-2016 section 9.4.2.158.
467 typedef struct {
469  // The Supported VHT-MCS and NSS Set field is 64 bits long, but is broken
470  // into 4 16 bit fields for convenience.
476 
477 // HT OperationElement, ID = 61, 802.11-2016 section 9.4.2.57.
478 typedef struct {
480  UCHAR opInfo[5]; // Bitfield where bit 0 is ele_HTOperationInfo[0] bit 0;
481  UCHAR mcs[16];
483 
484 // VHT Operation Element, ID = 192. 802.11-2016 section 9.4.2.159.
485 typedef struct {
486  wifi_WideBWChannel_t opInfo; // channel width, center of seg0, center of seg1
487  USHORT mcs_nss; // Bit field.
489 
490 // Secondary Channel Offset Element, ID = 62, 802.11-2016 section
491 // 9.4.2.20.
492 typedef struct {
495 
496 // RM Enabled Capabilities Element, ID = 70, 802.11-2016 section
497 // 9.4.2.45.
498 typedef struct {
499  // This is a bit field defined by table 9-157. Bit 0 for all of the
500  // capabilities is ele_RMEnabledCapabilities[5] bit 0.
501  UCHAR capabilities[5];
503 
504 // Vendor Specific Element, ID = 221. 802.11-2016 section 9.4.2.26.
505 typedef struct {
506  // 3 or 5 octet OUI depending on format; see 802.11-2016 section 9.4.1.32.
507  UCHAR oui[5];
508  // Vendor specific content.
511 
512 // Measurement Pilot Transmission Element, ID = 66, 802.11-2016 section
513 // 9.4.2.42.
514 typedef struct {
516  // Series of (sub)elements. Table 9-155 only lists vendor specific.
519 
520 
521 typedef struct {
523  // 32 bit optional value, bit fileds are
524  // b0, b1 for reachability
525  // b2 security
526  // b3 key scope
527  // b4 to b9 capabilities
528  // b10 mobility domain
529  // b11 high troughput
530  // b12 very high throughput
531  // b13 ftm
532  // b14 to b31 reserved
567 
568 // BSS Transition Management Request Frame, 802.11-2016 section 9.6.14.9.
569 typedef struct {
570  UCHAR token; /**< set by STA to relate reports */
571  UCHAR requestMode; /**< Requested instructions for the STA. */
574  // The optional fields may include:
575  // 1. BSS Termination Duration Subelement, ID = 4. 802.11-2016 Figure 9-300.
576  // 2. Session Information URL.
577  // 3. BSS Transition Candidate List Entries
585 
586 // BSS Transition Management Query Frame, 802.11-2016 section 9.6.14.8.
587 // Received from non-AP STA.
588 typedef struct {
589  UCHAR token; /**< set by STA to relate reports */
594 
595 // BSS Transition Management Response Frame, 802.11-2016 section 9.6.14.10.
596 // Received from non-AP STA.
597 typedef struct {
598  UCHAR token; /**< set by STA to relate reports */
605 
606 // 802.11-2016 section 9.6.7.6
607 typedef struct {
608  UCHAR token; /**< set by STA to relate reports */
609  UCHAR ssidLen; /**< set length to 0 if ssid is not present, otherwise to length of ssid field */
611  UCHAR measCount; /**< Request for LCI/LCR may come in any order */
612  wifi_Measurement_t measurements[2];
614 
615 // 802.11k Beacon request & report structures and function prototypes
616 #define MAX_REQUESTED_ELEMS 8
617 #define MAX_CHANNELS_REPORT 16
618 
619 typedef struct {
623 
624 typedef struct {
627 
629 
630 // AP Channel Report Element, ID = 51, 802.11-2016 section 9.4.2.36.
631 typedef struct {
635 
636 // 802.11-2016 section 9.4.2.21.7
637 typedef struct {
662 
663 // 802.11-2016 section 9.4.2.22.7
664 typedef struct {
679 
680 /** @} */ //END OF GROUP WIFI_HAL_TYPES
681 
682 /**
683  * @addtogroup WIFI_HAL_APIS
684  * @{
685  */
686 
687 //SURVEY CHANNEL
688 /* wifi_getWifiChannelStats() function */
689 /**
690 * @brief Get the channels utilization status.
691 *
692 * @param[in] radioIndex The index of the radio
693 * @param[in, out] input_output_channelStats_array The array initially filled with requested channel numbers.
694 * The same array is used as an output with channel statistics
695 * details. Data for each channel must be written to the corresponding
696 * element of the array. When array_size = 0, the API returns ONCHAN
697 * stats in a single wifi_channelStats_t element.
698 * @param[out] array_size The length of the output array
699 *
700 *
701 * @return The status of the operation
702 * @retval RETURN_OK if successful
703 * @retval RETURN_ERR if any error is detected
704 *
705 * @execution Synchronous
706 * @sideeffect None
707 *
708 * @note This function must not suspend and must not invoke any blocking system
709 * calls. It should probably just send a message to a driver event handler task.
710 *
711 */
712 //Get the basic Radio channel traffic static info
713 INT wifi_getRadioChannelStats(INT radioIndex, wifi_channelStats_t *input_output_channelStats_array, INT array_size);
714 
715 /* wifi_getApAssociatedDeviceRxStatsResult() function */
716 /**
717 * @brief Get the associated client per rate receive status.
718 *
719 * @param [in] radioIndex The index of radio array.
720 * @param [in] clientMacAddress Client mac address UCHAR[6]
721 * @param [out] stats_array Client receive status
722 * @param [out] output_array_size The length of output array
723 * @param [out] handle Status validation handle used to determine reconnects;
724 * increases for every association.
725 *
726 * @return The status of the operation
727 * @retval RETURN_OK if successful
728 * @retval RETURN_ERR if any error is detected
729 *
730 * @execution Synchronous
731 * @sideeffect None
732 *
733 * @note This function must not suspend and must not invoke any blocking system
734 * calls. It should probably just send a message to a driver event handler task.
735 *
736 */
737 INT wifi_getApAssociatedDeviceRxStatsResult(INT radioIndex, mac_address_t *clientMacAddress, wifi_associated_dev_rate_info_rx_stats_t **stats_array, UINT *output_array_size, ULLONG *handle);
738 
739 /**
740 * @brief Get the associated client per rate transmission status.
741 *
742 * @param [in] radioIndex The index of radio array.
743 * @param [in] clientMacAddress Client mac address UCHAR[6]
744 * @param [out] stats_array Client transmission status
745 * @param [out] output_array_size The length of output array
746 * @param [out] handle Status validation handle used to determine reconnects;
747 * increases for every association.
748 *
749 * @return The status of the operation
750 * @retval RETURN_OK if successful
751 * @retval RETURN_ERR if any error is detected
752 *
753 * @execution Synchronous
754 * @sideeffect None
755 *
756 * @note This function must not suspend and must not invoke any blocking system
757 * calls. It should probably just send a message to a driver event handler task.
758 *
759 */
760 INT wifi_getApAssociatedDeviceTxStatsResult(INT radioIndex, mac_address_t *clientMacAddress, wifi_associated_dev_rate_info_tx_stats_t **stats_array, UINT *output_array_size, ULLONG *handle);
761 
762 /* wifi_getApAssociatedDeviceTidStatsResult() function */
763 /**
764 * @brief Get the associated client per rate transmission status.
765 *
766 * @param [in] radioIndex The index of radio array
767 * @param [in] clientMacAddress client mac address UCHAR[6]
768 * @param [out] stats wifi_associated_dev_tid_stats_t *stats, client status
769 * @param [in] handle Status validation handle used to determine reconnects
770 * incremented for every association
771 *
772 * @return The status of the operation
773 * @retval RETURN_OK if successful
774 * @retval RETURN_ERR if any error is detected
775 *
776 * @execution Synchronous
777 * @sideeffect None
778 *
779 * @note This function must not suspend and must not invoke any blocking system
780 * calls. It should probably just send a message to a driver event handler task.
781 *
782 */
783 INT wifi_getApAssociatedDeviceTidStatsResult(INT radioIndex, mac_address_t *clientMacAddress, wifi_associated_dev_tid_stats_t *tid_stats, ULLONG *handle);
784 
785 /**
786 * @brief Get the associated device status.
787 *
788 * @param [in] apIndex The index of access point array
789 * @param [in] clientMacAddress client mac address UCHAR[6]
790 * @param [out] associated_dev_stats Associated device status
791 * @param [in] handle Status validation handle used to determine reconnects;
792 * increases for every association
793 *
794 * @return The status of the operation
795 * @retval RETURN_OK if successful
796 * @retval RETURN_ERR if any error is detected
797 *
798 * @execution Synchronous
799 * @sideeffect None
800 *
801 * @note This function must not suspend and must not invoke any blocking system
802 * calls. It should probably just send a message to a driver event handler task.
803 *
804 */
805 INT wifi_getApAssociatedDeviceStats(INT apIndex, mac_address_t *clientMacAddress, wifi_associated_dev_stats_t *associated_dev_stats, ULLONG *handle);
806 
807 /* wifi_getSSIDRadioIndex() function */
808 /**
809 * @brief Get the radio index associated with the SSID entry.
810 *
811 * @param[in] ssidIndex SSID index
812 * @param[out] radioIndex Radio index, to be returned
813 *
814 * @return The status of the operation
815 * @retval RETURN_OK if successful
816 * @retval RETURN_ERR if any error is detected
817 *
818 * @execution Synchronous
819 * @sideeffect None
820 *
821 * @note This function must not suspend and must not invoke any blocking system
822 * calls. It should probably just send a message to a driver event handler task.
823 *
824 */
825 INT wifi_getSSIDRadioIndex(INT ssidIndex, INT *radioIndex);
826 
827 /* wifi_applySSIDSettings() function */
828 /**
829 * @brief Apply SSID and AP (in the case of Acess Point devices) to the hardware.
830 *
831 * Not all implementations may need this function.
832 * If not needed for a particular implementation simply return no-error (0).
833 *
834 * @param[in] ssidIndex SSID index
835 *
836 * @return The status of the operation
837 * @retval RETURN_OK if successful
838 * @retval RETURN_ERR if any error is detected
839 *
840 * @execution Synchronous
841 * @sideeffect None
842 *
843 * @note This function must not suspend and must not invoke any blocking system
844 * calls. It should probably just send a message to a driver event handler task.
845 *
846 */
847 INT wifi_applySSIDSettings(INT ssidIndex);
848 
849 /**
850 * @brief This API initates the scanning.
851 *
852 * @param[in] apIndex The index of access point array.
853 * @param[out] scan_mode Scan modes.
854 * @param[out] dwell_time Amount of time spent on each channel in the hopping sequence.
855 * @param[out] chan_num The channel number.
856 * @param[out] chan_list List of channels.
857 *
858 * @return The status of the operation
859 * @retval RETURN_OK if successful
860 * @retval RETURN_ERR if any error is detected
861 *
862 * @execution Synchronous
863 * @sideeffect None
864 *
865 * @note This function must not suspend and must not invoke any blocking system
866 * calls. It should probably just send a message to a driver event handler task.
867 *
868 */
869 INT wifi_startNeighborScan(INT apIndex, wifi_neighborScanMode_t scan_mode, INT dwell_time, UINT chan_num, UINT *chan_list);
870 
871 /**
872 * @brief This API set the CSA (Channel Switch Announcement) deauthentication to all clients before moving to a new channel,
873 * in the event some client doesn't support/react to CSA.
874 *
875 * This makes that client scan and re-connect faster then if we were to do nothing.
876 * This is an "automatic" kick-mac type of functionality, that happens during the CSA process.
877 * What happens is that after all clients should have moved to the new channel, and just before the radio moves to the new channel,
878 * it will broadcast (or unicast all clients) a deauth packet.
879 * This helps clients who don't understand or ignore CSA to quickly realize the ap is gone/moved channels, and to scan and
880 * reconnect quickly.
881 *
882 * @param[in] apIndex The index of access point array
883 * @param[in] mode Enum value indicates none, unicast, broadcast
884 *
885 * @return The status of the operation
886 * @retval RETURN_OK if successful
887 * @retval RETURN_ERR if any error is detected
888 *
889 * @execution Synchronous
890 * @sideeffect None
891 *
892 * @note This function must not suspend and must not invoke any blocking system
893 * calls. It should probably just send a message to a driver event handler task.
894 */
895 INT wifi_setApCsaDeauth(INT apIndex, INT mode); //mode(enum): none, ucast, bcast
896 
897 /**
898 * @brief Enable/Disable scan filter in the driver.
899 *
900 * When scanfilter is enabled in the driver, we configure two values: enable: yes/no, and essid : <string>.
901 * When essid is blank (apIndex==-1), the configured SSID on that interface is used.
902 * when it's not empty (apIndex==0 to 15), the filter will apply to whatever ssid is provided.
903 *
904 * @param[in] apIndex The index of access point array
905 * @param[in] mode Enum value indicates disabled/enabled
906 * @param[in] essid Extended Service Set Identifier
907 *
908 * @return The status of the operation
909 * @retval RETURN_OK if successful
910 * @retval RETURN_ERR if any error is detected
911 *
912 * @execution Synchronous
913 * @sideeffect None
914 *
915 * @note This function must not suspend and must not invoke any blocking system
916 * calls. It should probably just send a message to a driver event handler task.
917 */
918 INT wifi_setApScanFilter(INT apIndex, INT mode, CHAR *essid); //mode(enum): disabled, enabled, first; essid could be empty to get all matching ESSID
919 
920 #ifdef WIFI_HAL_VERSION_3_PHASE2
921 /**
922  * @brief Add a Steering Group.
923  *
924  * A steering group defines a group of apIndex's which can have steering done
925  * between them.
926  *
927  * @param[in] steeringGroupIndex Wifi Steering Group index
928  * @param[in] numElements Number of elements in the array
929  * @param[in] cfgArray Array with the settings for each frequency
930  *
931  * @return RETURN_OK on success, RETURN_ERR on failure
932  *
933  * @warning All apIndex's provided within a group must have the same SSID,
934  * encryption, and passphrase configured for steering to function properly.
935  *
936  * @note The hal need to allocate (no matter static or dynamic) to store those two config
937  * if cfgArray is NULL, this steering group will be removed
938  */
939 INT wifi_steering_setGroup(UINT steeringGroupIndex, UINT numElements, wifi_steering_apConfig_t * cfgArray);
940 #endif
941 
942 /** @} */ //END OF GROUP WIFI_HAL_APIS
943 
944 /**
945  * @addtogroup WIFI_HAL_TYPES
946  * @{
947  */
948 typedef enum {
956 typedef unsigned int wifi_steer_matching_condition_t;
957 
958 typedef struct {
966 
968 /** @} */ //END OF GROUP WIFI_HAL_TYPES
969 
970 /**
971  * @addtogroup WIFI_HAL_APIS
972  * @{
973  */
975 
976 /** @} */ //END OF GROUP WIFI_HAL_APIS
977 
978 /**
979  * @addtogroup WIFI_HAL_TYPES
980  * @{
981  */
982 
983 /**
984  * @brief Wifi Steering Event Callback Definition
985  *
986  * This is the definition of the event callback provided when upper layer
987  * registers for steering events.
988  *
989  * @warning the @b event passed to the callback is not dynamically
990  * allocated the call back function handler must allocate wifi_steering_event_t
991  * and copy the "event" into that
992  */
993 typedef void (*wifi_steering_eventCB_t)(UINT steeringgroupIndex, wifi_steering_event_t *event);
994 /** @} */ //END OF GROUP WIFI_HAL_TYPES
995 
996 /**
997  * @addtogroup WIFI_HAL_APIS
998  * @{
999  */
1000 /**
1001  * @brief Register for Steering Event Callbacks.
1002  *
1003  * This is called by the upper layer to register for steering event
1004  * callbacks.
1005  *
1006  * @param[in] event_cb Event callback function pointer.
1007  *
1008  * @return RETURN_OK on success, RETURN_ERR on failure.
1009  *
1010  * @warning the @b event passed to the callback should be a dynamically
1011  * allocated event which upper layer will free by calling wifi_steering_eventFree()
1012  */
1014 
1015 /**
1016  * @brief Unregister for Steering Event Callbacks.
1017  *
1018  * This is called by the upper layer to stop receiving event callbacks.
1019  *
1020  * @return RETURN_OK on success, RETURN_ERR on failure
1021  */
1023 
1024 /**
1025  * @brief Add Client Config to apIndex.
1026  *
1027  * The upper layer calls this funciton to @b add/modify per-client configuration @p config
1028  * of @p client_mac for @p apIndex
1029  *
1030  * @param[in] steeringgroupIndex Wifi Steering Group index
1031  * @param[in] apIndex Accesspoint index the client config should be added to
1032  * @param[in] client_mac The Client's MAC address.
1033  * If client_mac is not there, the hal need to add record,
1034  * else, the hal need to update the config
1035  * @param[in] config The client configuration
1036  *
1037  * @return RETURN_OK on success, RETURN_ERR on failure
1038  */
1040  UINT steeringgroupIndex,
1041  INT apIndex,
1042  mac_address_t client_mac,
1044 
1045 /**
1046  * @brief Remove Client Config from apIndex
1047  *
1048  * The upper layer calls this function to @b remove per-client configuration
1049  * of @p client_mac from @p apIndex
1050  *
1051  * @param[in] steeringgroupIndex Wifi Steering Group index
1052  * @param[in] apIndex Access point index, the client config to be removed.
1053  * @param[in] client_mac The Client's MAC address
1054  *
1055  * @return RETURN_OK on success, RETURN_ERR on failure
1056  */
1058  UINT steeringgroupIndex,
1059  INT apIndex,
1060  mac_address_t client_mac);
1061 
1062 /**
1063  * @brief Initiate Instant Client RSSI Measurement.
1064  *
1065  * This initiates an instant client RSSI measurement. The recommended method of
1066  * performing this measurement is to send five NUL wifi frames to the client, and
1067  * average the RSSI of the ACK frames returned. This averaged RSSI value should
1068  * be sent back using @b WIFI_STEERING_EVENT_RSSI steering event type.
1069  * Instant measurement improves user experience by not reacting to false-positive
1070  * RSSI crossings.
1071  * If for some reason instant measurement is not supported, the function should
1072  * return RETURN_ERR and set errno to @b ENOTSUP.
1073  *
1074  * @param[in] steeringgroupIndex Wifi Steering Group index
1075  * @param[in] apIndex Access point index, the client config should be added to
1076  * @param[in] client_mac The Client's MAC address
1077  *
1078  * @return RETURN_OK on success, RETURN_ERR on failure. Set errno to ENOTSUP if
1079  * instant measurement is not supported
1080  */
1082  UINT steeringgroupIndex,
1083  INT apIndex,
1084  mac_address_t client_mac);
1085 
1086 /**
1087  * @brief Initiate a Client Disconnect.
1088  *
1089  * This is used by the upper layer to kick off a client, for steering purposes.
1090  *
1091  * @param[in] steeringgroupIndex Wifi Steering Group index
1092  * @param[in] apIndex The access point index, the client config should be added to
1093  * @param[in] client_mac The Client's MAC address
1094  * @param[in] type Disconnect Type
1095  * @param[in] reason Reason code to provide in deauth/disassoc frame.
1096  *
1097  * @return RETURN_OK on success, RETURN_ERR on failure
1098  * @see https://supportforums.cisco.com/document/141136/80211-association-status-80211-deauth-reason-codes
1099  */
1101  UINT steeringgroupIndex,
1102  INT apIndex,
1103  mac_address_t client_mac,
1104  wifi_disconnectType_t type,
1105  UINT reason);
1106 
1107 /** @} */ //END OF GROUP WIFI_HAL_APIS
1108 
1109 /**
1110  * @addtogroup WIFI_HAL_TYPES
1111  * @{
1112  */
1113 
1114 #ifdef WIFI_HAL_VERSION_3_PHASE2
1115 /**
1116  * @brief This call back is invoked when a STA sends a BTM query
1117  * message to a vAP in the gateway. The driver will use the frame returned
1118  * from this function to process the response to the query.
1119  * A BTM transaction is started by a STA sending a query or by the AP sending
1120  * an autonomous request. This callback is used for the former.
1121  *
1122  * @param apIndex - Access Point Index.
1123  * @param peerMACAddress - MAC address of the peer STA the Query was received from.
1124  * @param inQueryFrame - Query frame received from a non-AP STA.
1125  * @param inMemSize - Size of the memory allocated by the callback. The caller
1126  * should set to max size for the request. Otherwise the callback may
1127  * drop elements or return an error.
1128  * @param inRequestFrame - Frame to use for the response. The caller
1129  * allocates the memory for the response. The caller may free the memory
1130  * when the callback returns and the response is sent to the STA.
1131  * @return The status of the operation.
1132  * @retval RETURN_OK if successful.
1133  * @retval RETURN_ERR if any error is detected.
1134  *
1135  * @execution Synchronous
1136  * @sideeffect None
1137  *
1138  * @note This function must not suspend and must not invoke any blocking system
1139  * calls.
1140  */
1141 typedef INT (* wifi_BTMQueryRequest_callback)(UINT apIndex,
1142  mac_address_t peerMac,
1143  wifi_BTMQuery_t *query,
1144  UINT inMemSize,
1145  wifi_BTMRequest_t *request);
1146 
1147 /**
1148  * @brief This call back is invoked when a STA responds to a BTM Request
1149  * from the gateway.
1150  *
1151  * @param apIndex - Access Point Index.
1152  * @param peerMACAddress - MAC address of the peer the response was received
1153  * from.
1154  * @param in_struct - Response frame received from a non-AP STA.
1155  * @return The status of the operation.
1156  * @retval RETURN_OK if successful.
1157  * @retval RETURN_ERR if any error is detected.
1158  *
1159  * @execution Synchronous
1160  * @sideeffect None
1161  *
1162  * @note This function must not suspend and must not invoke any blocking system
1163  * calls.
1164  */
1165 typedef INT (* wifi_BTMResponse_callback)(UINT apIndex,
1166  mac_address_t peerMac,
1167  wifi_BTMResponse_t *response);
1168 
1169 #else
1170 /**
1171  * @brief This call back is invoked when a STA sends a BTM query
1172  * message to a vAP in the gateway. The driver will use the frame returned
1173  * from this function to process the response to the query.
1174  * A BTM transaction is started by a STA sending a query or by the AP sending
1175  * an autonomous request. This callback is used for the former.
1176  *
1177  * @param apIndex - Access Point Index.
1178  * @param peerMACAddress - MAC address of the peer STA the Query was received from.
1179  * @param inQueryFrame - Query frame received from a non-AP STA.
1180  * @param inMemSize - Size of the memory allocated by the callback. The caller
1181  * should set to max size for the request. Otherwise the callback may
1182  * drop elements or return an error.
1183  * @param inRequestFrame - Frame to use for the response. The caller
1184  * allocates the memory for the response. The caller may free the memory
1185  * when the callback returns and the response is sent to the STA.
1186  * @return The status of the operation.
1187  * @retval RETURN_OK if successful.
1188  * @retval RETURN_ERR if any error is detected.
1189  *
1190  * @execution Synchronous
1191  * @sideeffect None
1192  *
1193  * @note This function must not suspend and must not invoke any blocking system
1194  * calls.
1195  */
1197  CHAR *peerMac,
1198  wifi_BTMQuery_t *query,
1199  UINT inMemSize,
1200  wifi_BTMRequest_t *request);
1201 
1202 
1203 /**
1204  * @brief This call back is invoked when a STA responds to a BTM Request
1205  * from the gateway.
1206  *
1207  * @param apIndex - Access Point Index.
1208  * @param peerMACAddress - MAC address of the peer the response was received
1209  * from.
1210  * @param in_struct - Response frame received from a non-AP STA.
1211  * @return The status of the operation.
1212  * @retval RETURN_OK if successful.
1213  * @retval RETURN_ERR if any error is detected.
1214  *
1215  * @execution Synchronous
1216  * @sideeffect None
1217  *
1218  * @note This function must not suspend and must not invoke any blocking system
1219  * calls.
1220  */
1221 typedef INT (* wifi_BTMResponse_callback)(UINT apIndex,
1222  CHAR *peerMac,
1223  wifi_BTMResponse_t *response);
1224 
1225 #endif
1226 /** @} */ //END OF GROUP WIFI_HAL_TYPES
1227 
1228 /**
1229  * @addtogroup WIFI_HAL_APIS
1230  * @{
1231  */
1232 /**
1233  * @brief BTM Query callback registration function.
1234  *
1235  * @param callback_proc - wifi_newApAssociatedDevice_callback callback function
1236  *
1237  * @return The status of the operation.
1238  * @retval RETURN_OK if successful.
1239  * @retval RETURN_ERR if any error is detected.
1240  * @return The status of the operation.
1241  * @retval RETURN_OK if successful.
1242  * @retval RETURN_ERR if any error is detected.
1243  *
1244  * @execution Synchronous
1245  * @sideeffect None
1246  *
1247  * @note This function must not suspend and must not invoke any blocking system
1248  * calls.
1249  */
1251  wifi_BTMQueryRequest_callback btmQueryCallback,
1252  wifi_BTMResponse_callback btmResponseCallback);
1253 
1254 #ifdef WIFI_HAL_VERSION_3_PHASE2
1255 /**
1256  * @brief Set a BTM Request to a non-AP STA. The callback register
1257  * function should be called first so that the response can be handled by the
1258  * application.
1259  *
1260  * @param apIndex; index of the vAP to send the request from.
1261  * @param peerMACAddress; MAC address of the peer device to send the request to.
1262  * @param in_struct; BTM Request Frame to send to the non-AP STA.
1263  * @return The status of the operation.
1264  * @retval RETURN_OK if successful.
1265  * @retval RETURN_ERR if any error is detected.
1266  *
1267  * @execution Synchronous
1268  * @sideeffect None
1269  *
1270  * @note This function must not suspend and must not invoke any blocking system
1271  * calls.
1272  */
1273 INT wifi_setBTMRequest(UINT apIndex,
1274  mac_address_t peerMac,
1275  wifi_BTMRequest_t *request);
1276 
1277 #endif
1278 
1279 /** @} */ //END OF GROUP WIFI_HAL_APIS
1280 
1281 /**
1282  * @addtogroup WIFI_HAL_TYPES
1283  * @{
1284  */
1285 /* @description This call back is invoked when a STA responds to a Beacon
1286  * Request from the gateway, or as a triggered autonomous report. Noting that
1287  * an autonomous report can be configured by a Beacon Request by setting the
1288  * enable, request, and report bits in the measurement request; 802.11-2016
1289  * Table 9-81 and section 11.11.8. When a triggered autonomous report
1290  * causes the callback to be called the dialog token and measurement token are
1291  * both set to 0.
1292  *
1293  * @return The status of the operation.
1294  * @retval RETURN_OK if successful.
1295  * @retval RETURN_ERR if any error is detected.
1296  *
1297  * @execution Synchronous
1298  * @sideeffect None
1299  *
1300  * @note This function must not suspend and must not invoke any blocking system
1301  * calls.
1302  */
1304  wifi_BeaconReport_t *out_struct,
1305  UINT *out_array_size,
1306  UCHAR *out_DialogToken);
1307 /** @} */ //END OF GROUP WIFI_HAL_TYPES
1308 
1309 /**
1310  * @addtogroup WIFI_HAL_APIS
1311  * @{
1312  */
1313 
1314 /* @description Register a callback for a Beacon Request. Called when a
1315  * response to a Beacon Request is received, or a Beacon Report is received
1316  * from an autonomous trigger.
1317  *
1318  * @param apIndex; index of the vAP the Beacon Report was received on.
1319  * @param beaconReportCallback; the callback function being registered.
1320  *
1321  * @return The status of the operation.
1322  * @retval RETURN_OK if successful.
1323  * @retval RETURN_ERR if any error is detected.
1324  */
1326  wifi_RMBeaconReport_callback beaconReportCallback);
1327 
1328 /* @description Unegister a callback for a Beacon Request. Returns an error
1329  * if the callback hasn't been registered.
1330  *
1331  * @param apIndex; index of the vAP the Beacon Report was received on.
1332  * @param beaconReportCallback; the callback function being unregistered.
1333  *
1334  * @return The status of the operation.
1335  * @retval RETURN_OK if successful.
1336  * @retval RETURN_ERR if any error is detected.
1337  */
1339  wifi_RMBeaconReport_callback beaconReportCallback);
1340 
1341 /* @description Cancel all of the currently cached beacon reports and ignore
1342  * reports received that match the dialog tokan
1343  * // @param apIndex; index of the vAP the beacon request was sent from.
1344  * @param dialogToken; token the STA assigned to the beacon request.
1345  */
1346 INT wifi_cancelRMBeaconRequest(UINT apIndex, UCHAR dialogToken);
1347 
1348 #ifdef WIFI_HAL_VERSION_3_PHASE2
1349 /* @description Set a radio measurement (RM) beacon request. Causes the
1350  * request to be sent based on the information in the request parameter.
1351  * Sent from the AP at apIndex. Returns an error if a callback has not been
1352  * registered for the AP.
1353  *
1354  * @param apIndex; index of the vAP to send the request from.
1355  * @param peerMACAddress, MAC address of the peer device to send the request
1356  * to. Must be an external device MAC address.
1357  * @param in_request; pointer to a Beacon Report request structure.
1358  * @param out_DialogToken; the token chosen by the STA for the requested
1359  * measurement(s);
1360  * @return The status of the operation.
1361  * @retval RETURN_OK if successful.
1362  * @retval RETURN_ERR if any error is detected. If the AP can determine that
1363  * the target device does not support Radio Measurement, then an error
1364  * is returned.
1365  */
1367  mac_address_t peer,
1368  wifi_BeaconRequest_t *in_request,
1369  UCHAR *out_DialogToken);
1370 
1371 
1372 /* @description Get the Radio Measurement Capabilities from another peer
1373  * device.
1374  *
1375  * @param peerMACAddress; MAC Address of the external peer device used to
1376  * determine if an Radio Measurement Capabiliites Element is available.
1377  * @param out_Capabilities; array formatted as defined in 802.11-2016
1378  * Table 9-157. The Beacon Report Capability is indicated by bit 7. The
1379  * Beacon Passive, Active, and Table Capabilities are indicated by bits
1380  * 4, 5, 6 respectively.
1381  *
1382  * @return The capabilities returned in a Radio Measurement Element if
1383  * received.
1384  * @retval RETURN_OK if successful.
1385  * @retval RETURN_ERR if any error is detected. If the AP has not received
1386  * a Radio Measurement Element from the peer, then an error is returned.
1387  */
1388 INT wifi_getRMCapabilities(mac_address_t peer, UCHAR out_Capabilities[5]);
1389 #endif
1390 /** @} */ //END OF GROUP WIFI_HAL_APIS
1391 
1392 #ifdef __cplusplus
1393 }
1394 #endif
1395 
1396 #endif
wifi_steering_apConfig_t
Configuration per apIndex.
Definition: wifi_hal_extender.h:166
wifi_steering_apConfig_t::inactCheckThresholdSec
UINT inactCheckThresholdSec
Definition: wifi_hal_extender.h:173
pre_assoc_probe_block
@ pre_assoc_probe_block
Definition: wifi_hal_extender.h:949
wifi_setRMBeaconRequest
INT wifi_setRMBeaconRequest(UINT apIndex, CHAR *peer, wifi_BeaconRequest_t *in_request, UCHAR *out_DialogToken)
wifi_BeaconRequest_t::requestedElementIDSPresent
BOOL requestedElementIDSPresent
Definition: wifi_hal_extender.h:652
wifi_steering_evAuthFail_t::bsRejected
BOOL bsRejected
Definition: wifi_hal_extender.h:382
wifi_BeaconRequest_t::vendorSpecific
wifi_VendorSpecific_t vendorSpecific
Definition: wifi_hal_extender.h:659
_wifi_associated_dev_rate_info_tx_stats::ppdus
ULLONG ppdus
Definition: wifi_hal_extender.h:116
post_assoc_active_kickmac
@ post_assoc_active_kickmac
Definition: wifi_hal_extender.h:954
_wifi_associated_dev_rate_info_tx_stats::msdus
ULLONG msdus
Definition: wifi_hal_extender.h:114
wifi_steering_evDisconnect_t::reason
UINT reason
Definition: wifi_hal_extender.h:329
wifi_steering_evDisconnect_t::client_mac
mac_address_t client_mac
Definition: wifi_hal_extender.h:328
wifi_BeaconReport_t::numRepetitions
USHORT numRepetitions
Definition: wifi_hal_extender.h:677
ULLONG
#define ULLONG
Definition: ccsp_hal_ethsw.h:100
wifi_steering_evRssiXing_t::inactveXing
wifi_steering_rssiChange_t inactveXing
Definition: wifi_hal_extender.h:358
wifi_steering_evConnect_t::isRRMSupported
UINT isRRMSupported
Definition: wifi_hal_extender.h:314
_wifi_associated_dev_rate_info_tx_stats::nss
UCHAR nss
Definition: wifi_hal_extender.h:109
wifi_NeighborReport_t::condensedCountrySringPresent
BOOL condensedCountrySringPresent
Definition: wifi_hal_extender.h:539
wifi_BTMRequest_t::urlLen
USHORT urlLen
Definition: wifi_hal_extender.h:580
_wifi_associated_dev_rate_info_rx_stats::bw
USHORT bw
Definition: wifi_hal_extender.h:85
MAX_VENDOR_SPECIFIC
#define MAX_VENDOR_SPECIFIC
Definition: wifi_hal_extender.h:409
WIFI_STEERING_RSSI_UNCHANGED
@ WIFI_STEERING_RSSI_UNCHANGED
Definition: wifi_hal_extender.h:251
wifi_BeaconRequest_t::ssidPresent
BOOL ssidPresent
Definition: wifi_hal_extender.h:644
wifi_steering_evRssiXing_t::client_mac
mac_address_t client_mac
Definition: wifi_hal_extender.h:356
wifi_steering_apConfig_t::utilCheckIntervalSec
UINT utilCheckIntervalSec
Definition: wifi_hal_extender.h:169
MAX_URL_LEN
#define MAX_URL_LEN
Definition: wifi_hal_extender.h:407
_wifi_associated_dev_stats::cli_rssi_ack
wifi_rssi_snapshot_t cli_rssi_ack
Definition: wifi_hal_extender.h:147
wifi_CondensedCountryString_t
Definition: wifi_hal_extender.h:419
wifi_WideBWChannel_t
Definition: wifi_hal_extender.h:439
wifi_NeighborRequestFrame_t::token
UCHAR token
Definition: wifi_hal_extender.h:608
ssid_t
char ssid_t[32]
Definition: wifi_hal_generic.h:215
_wifi_associated_dev_stats::cli_rx_frames
ULLONG cli_rx_frames
Definition: wifi_hal_extender.h:138
wifi_steering_evActivity_t
Client Activity Change Event Data This data is provided with WIFI_STEERING_EVENT_CLIENT_ACTIVITY.
Definition: wifi_hal_extender.h:338
wifi_VHTCapabilities_t
Definition: wifi_hal_extender.h:467
CHAR
#define CHAR
Definition: bt_hal.h:45
wifi_steer_matching_condition_t
unsigned int wifi_steer_matching_condition_t
Definition: wifi_hal_extender.h:956
wifi_associated_dev_tid_entry::num_msdus
ULLONG num_msdus
Definition: wifi_hal_extender.h:127
wifi_BTMQuery_t::numCandidates
UCHAR numCandidates
Definition: wifi_hal_extender.h:591
wifi_NeighborReport_t::htOpPresent
BOOL htOpPresent
Definition: wifi_hal_extender.h:553
wifi_steering_datarateInfo_t
STA datarate information These are STA capabilities values.
Definition: wifi_hal_extender.h:260
wifi_Bearing_t
Definition: wifi_hal_extender.h:432
wifi_steering_evConnect_t::datarateInfo
wifi_steering_datarateInfo_t datarateInfo
Definition: wifi_hal_extender.h:318
wifi_steering_rssiChange_t
wifi_steering_rssiChange_t
RSSI Crossing Values These are the RSSI crossing values provided in RSSI crossing events.
Definition: wifi_hal_extender.h:250
wifi_steering_evRssiXing_t
Client RSSI Crossing Event Data This data is provided with WIFI_STEERING_EVENT_RSSI_XING.
Definition: wifi_hal_extender.h:355
wifi_steering_evConnect_t::rrmCaps
wifi_steering_rrmCaps_t rrmCaps
Definition: wifi_hal_extender.h:319
wifi_BeaconReporting_t::threshold
UCHAR threshold
Definition: wifi_hal_extender.h:621
wifi_Measurement_t
Definition: wifi_hal_extender.h:445
wifi_steering_datarateInfo_t::maxTxpower
UINT maxTxpower
Definition: wifi_hal_extender.h:265
wifi_associated_dev_tid_entry::ewma_time_ms
ULLONG ewma_time_ms
Definition: wifi_hal_extender.h:125
_wifi_channelStats::ch_utilization
INT ch_utilization
Definition: wifi_hal_extender.h:39
wifi_steering_clientSet
INT wifi_steering_clientSet(UINT steeringgroupIndex, INT apIndex, mac_address_t client_mac, wifi_steering_clientConfig_t *config)
Add Client Config to apIndex.
wifi_BTMResponse_t::numCandidates
UCHAR numCandidates
Definition: wifi_hal_extender.h:602
wifi_steering_clientConfig_t::rssiAuthHWM
UINT rssiAuthHWM
Definition: wifi_hal_extender.h:197
wifi_steering_evRssi_t::client_mac
mac_address_t client_mac
Definition: wifi_hal_extender.h:369
_wifi_associated_dev_rate_info_rx_stats::mpdus
ULLONG mpdus
Definition: wifi_hal_extender.h:89
wifi_setApScanFilter
INT wifi_setApScanFilter(INT apIndex, INT mode, CHAR *essid)
Enable/Disable scan filter in the driver.
wifi_VHTOperation_t
Definition: wifi_hal_extender.h:485
post_assoc_idle_kick_mac
@ post_assoc_idle_kick_mac
Definition: wifi_hal_extender.h:952
wifi_NeighborReport_t::condensedCountryStr
wifi_CondensedCountryString_t condensedCountryStr
Definition: wifi_hal_extender.h:540
wifi_NeighborReport_t::tsfPresent
BOOL tsfPresent
Definition: wifi_hal_extender.h:537
DISCONNECT_SOURCE_REMOTE
@ DISCONNECT_SOURCE_REMOTE
Definition: wifi_hal_extender.h:217
wifi_steering_clientConfig_t
Configuration per Client.
Definition: wifi_hal_extender.h:194
_wifi_associated_dev_stats::cli_rx_rate
double cli_rx_rate
Definition: wifi_hal_extender.h:144
BOOL
#define BOOL
Definition: dhcpv4c_api.h:79
wifi_NeighborReport_t::wideBandwidthChannel
wifi_WideBWChannel_t wideBandwidthChannel
Definition: wifi_hal_extender.h:548
_wifi_associated_dev_stats::cli_tx_bytes
ULLONG cli_tx_bytes
Definition: wifi_hal_extender.h:137
WIFI_STEERING_EVENT_CHAN_UTILIZATION
@ WIFI_STEERING_EVENT_CHAN_UTILIZATION
Definition: wifi_hal_extender.h:240
wifi_HTCapabilities_t
Definition: wifi_hal_extender.h:456
wifi_WideBWChannel_t::centerSeg1
UCHAR centerSeg1
Definition: wifi_hal_extender.h:442
wifi_associated_dev_rate_info_tx_stats_t
struct _wifi_associated_dev_rate_info_tx_stats wifi_associated_dev_rate_info_tx_stats_t
wifi_NeighborReport_t::vbhtCaps
wifi_VHTCapabilities_t vbhtCaps
Definition: wifi_hal_extender.h:552
WIFI_STEERING_EVENT_AUTH_FAIL
@ WIFI_STEERING_EVENT_AUTH_FAIL
Definition: wifi_hal_extender.h:243
wifi_steering_evConnect_t::isBTMSupported
UINT isBTMSupported
Definition: wifi_hal_extender.h:313
_wifi_channelStats::ch_number
INT ch_number
Definition: wifi_hal_extender.h:33
wifi_getApAssociatedDeviceTidStatsResult
INT wifi_getApAssociatedDeviceTidStatsResult(INT radioIndex, mac_address_t *clientMacAddress, wifi_associated_dev_tid_stats_t *tid_stats, ULLONG *handle)
Get the associated client per rate transmission status.
wifi_NeighborReport_t::htCaps
wifi_HTCapabilities_t htCaps
Definition: wifi_hal_extender.h:550
wifi_steer_trigger_data_t::module
CHAR * module
Definition: wifi_hal_extender.h:959
wifi_NeighborReport_t::vhtOp
wifi_VHTOperation_t vhtOp
Definition: wifi_hal_extender.h:556
wifi_steering_eventCB_t
void(* wifi_steering_eventCB_t)(UINT steeringgroupIndex, wifi_steering_event_t *event)
Wifi Steering Event Callback Definition.
Definition: wifi_hal_extender.h:993
wifi_BTMResponse_t::target
bssid_t target
Definition: wifi_hal_extender.h:601
wifi_VHTCapabilities_t::info
UINT info
Definition: wifi_hal_extender.h:468
wifi_steering_evProbeReq_t
Probe Request Event Data This data is provided with WIFI_STEERING_EVENT_PROBE_REQ.
Definition: wifi_hal_extender.h:284
wifi_BeaconRequest_t::opClass
UCHAR opClass
Definition: wifi_hal_extender.h:638
wifi_SecondaryChannelOffset_t::secondaryChOffset
UCHAR secondaryChOffset
Definition: wifi_hal_extender.h:493
wifi_BeaconRequest_t::randomizationInterval
USHORT randomizationInterval
Definition: wifi_hal_extender.h:640
wifi_NeighborRequestFrame_t::ssidLen
UCHAR ssidLen
Definition: wifi_hal_extender.h:609
wifi_VHTOperation_t::opInfo
wifi_WideBWChannel_t opInfo
Definition: wifi_hal_extender.h:486
wifi_BeaconRequest_t::channelReport
wifi_ChannelReport_t channelReport
Definition: wifi_hal_extender.h:657
wifi_HTOperation_t::primary
UCHAR primary
Definition: wifi_hal_extender.h:479
wifi_HTCapabilities_t::txBeamCaps
UINT txBeamCaps
Definition: wifi_hal_extender.h:462
wifi_BeaconRequest_t::channel
UCHAR channel
Definition: wifi_hal_extender.h:639
wifi_TSFInfo_t::offset
USHORT offset
Definition: wifi_hal_extender.h:424
_wifi_associated_dev_rate_info_tx_stats::attempts
ULLONG attempts
Definition: wifi_hal_extender.h:118
wifi_BTMQuery_t::token
UCHAR token
Definition: wifi_hal_extender.h:589
wifi_associated_dev_tid_stats_t
struct wifi_associated_dev_tid_stats wifi_associated_dev_tid_stats_t
wifi_BeaconReport_t
Definition: wifi_hal_extender.h:664
wifi_steering_setGroup
INT wifi_steering_setGroup(UINT steeringgroupIndex, wifi_steering_apConfig_t *cfg_2, wifi_steering_apConfig_t *cfg_5)
Add a Steering Group.
wifi_BeaconRequest_t::ssid
ssid_t ssid
Definition: wifi_hal_extender.h:645
DISCONNECT_TYPE_UNKNOWN
@ DISCONNECT_TYPE_UNKNOWN
Definition: wifi_hal_extender.h:225
_wifi_associated_dev_rate_info_rx_stats::ppdus
ULLONG ppdus
Definition: wifi_hal_extender.h:90
wifi_steering_evActivity_t::client_mac
mac_address_t client_mac
Definition: wifi_hal_extender.h:339
wifi_ExtdRequestedElementIDS_t
wifi_RequestedElementIDS_t wifi_ExtdRequestedElementIDS_t
Definition: wifi_hal_extender.h:628
wifi_getRMCapabilities
INT wifi_getRMCapabilities(CHAR *peer, UCHAR out_Capabilities[5])
_wifi_rssi_snapshot
Definition: wifi_hal_telemetry.h:135
wifi_steering_evProbeReq_t::client_mac
mac_address_t client_mac
Definition: wifi_hal_extender.h:285
wifi_steering_event_t::connect
wifi_steering_evConnect_t connect
Definition: wifi_hal_extender.h:395
_wifi_associated_dev_rate_info_rx_stats::bytes
ULLONG bytes
Definition: wifi_hal_extender.h:87
_wifi_channelStats::ch_radar_noise
BOOL ch_radar_noise
Definition: wifi_hal_extender.h:36
_wifi_associated_dev_stats
Definition: wifi_hal_extender.h:135
wifi_NeighborReport_t::bssid
bssid_t bssid
Definition: wifi_hal_extender.h:522
wifi_steer_type_t
wifi_steer_type_t
Definition: wifi_hal_extender.h:948
wifi_BTMRequest_t::timer
USHORT timer
Definition: wifi_hal_extender.h:572
wifi_NeighborReport_t::vendorSpecificPresent
BOOL vendorSpecificPresent
Definition: wifi_hal_extender.h:563
wifi_associated_dev_stats_t
struct _wifi_associated_dev_stats wifi_associated_dev_stats_t
wifi_BeaconRequest_t::beaconReportingPresent
BOOL beaconReportingPresent
Definition: wifi_hal_extender.h:646
wifi_RequestedElementIDS_t
Definition: wifi_hal_extender.h:624
_wifi_associated_dev_rate_info_rx_stats::nss
UCHAR nss
Definition: wifi_hal_extender.h:83
WIFI_STEERING_RSSI_LOWER
@ WIFI_STEERING_RSSI_LOWER
Definition: wifi_hal_extender.h:253
wifi_channelStats_t
struct _wifi_channelStats wifi_channelStats_t
wifi_HTCapabilities_t::extended
USHORT extended
Definition: wifi_hal_extender.h:461
wifi_steering_eventUnregister
INT wifi_steering_eventUnregister(void)
Unregister for Steering Event Callbacks.
wifi_NeighborReport_t::rmEnabledCapsPresent
BOOL rmEnabledCapsPresent
Definition: wifi_hal_extender.h:559
wifi_BeaconRequest_t::bssid
bssid_t bssid
Definition: wifi_hal_extender.h:643
wifi_RMEnabledCapabilities_t
Definition: wifi_hal_extender.h:498
wifi_steering_evAuthFail_t
Auth Failure Event Data This data is provided with WIFI_STEERING_EVENT_AUTH_FAIL.
Definition: wifi_hal_extender.h:377
wifi_BTMRequest_t
Definition: wifi_hal_extender.h:569
wifi_steering_datarateInfo_t::maxMCS
UINT maxMCS
Definition: wifi_hal_extender.h:264
wifi_steering_datarateInfo_t::isMUMimoSupported
UINT isMUMimoSupported
Definition: wifi_hal_extender.h:267
wifi_ChannelReport_t
Definition: wifi_hal_extender.h:631
wifi_NeighborReport_t::bssTransitionCandidatePreference
wifi_BSSTransitionCandidatePreference_t bssTransitionCandidatePreference
Definition: wifi_hal_extender.h:542
wifi_freq_bands_t
wifi_freq_bands_t
Wifi Frequency Band Types.
Definition: wifi_hal_generic.h:266
wifi_getApAssociatedDeviceTxStatsResult
INT wifi_getApAssociatedDeviceTxStatsResult(INT radioIndex, mac_address_t *clientMacAddress, wifi_associated_dev_rate_info_tx_stats_t **stats_array, UINT *output_array_size, ULLONG *handle)
Get the associated client per rate transmission status.
INT
#define INT
Definition: bt_hal.h:65
wifi_BTMResponse_t::terminationDelay
UCHAR terminationDelay
Definition: wifi_hal_extender.h:600
wifi_steer_trigger_data_t::dst_bss
mac_address_t dst_bss
Definition: wifi_hal_extender.h:962
wifi_BeaconRequest_t::channelReportPresent
BOOL channelReportPresent
Definition: wifi_hal_extender.h:656
wifi_steering_rrmCaps_t
Definition: wifi_hal_extender.h:270
wifi_steering_evRssiXing_t::highXing
wifi_steering_rssiChange_t highXing
Definition: wifi_hal_extender.h:359
wifi_steering_rrmCaps_t::bcnRptActive
BOOL bcnRptActive
Definition: wifi_hal_extender.h:274
wifi_disconnectSource_t
wifi_disconnectSource_t
Wifi Disconnect Sources.
Definition: wifi_hal_extender.h:214
wifi_steering_evChanUtil_t::utilization
UINT utilization
Definition: wifi_hal_extender.h:348
_wifi_associated_dev_rate_info_rx_stats
Definition: wifi_hal_extender.h:81
wifi_associated_dev_tid_stats::tid_array
wifi_associated_dev_tid_entry_t tid_array[16]
Definition: wifi_hal_extender.h:132
wifi_steering_evAuthFail_t::reason
UINT reason
Definition: wifi_hal_extender.h:380
post_assoc_idle_80211v
@ post_assoc_idle_80211v
Definition: wifi_hal_extender.h:951
wifi_associated_dev_rate_info_rx_stats_t
struct _wifi_associated_dev_rate_info_rx_stats wifi_associated_dev_rate_info_rx_stats_t
wifi_BeaconRequest_t::mode
UCHAR mode
Definition: wifi_hal_extender.h:642
wifi_steering_datarateInfo_t::phyMode
UINT phyMode
Definition: wifi_hal_extender.h:263
_wifi_associated_dev_stats::cli_rx_errors
ULLONG cli_rx_errors
Definition: wifi_hal_extender.h:142
wifi_BeaconRequest_t::requestedElementIDS
wifi_RequestedElementIDS_t requestedElementIDS
Definition: wifi_hal_extender.h:653
wifi_SecondaryChannelOffset_t
Definition: wifi_hal_extender.h:492
wifi_BeaconRequest_t::extdRequestedElementIDS
wifi_ExtdRequestedElementIDS_t extdRequestedElementIDS
Definition: wifi_hal_extender.h:655
USHORT
#define USHORT
Definition: bt_hal.h:57
wifi_steering_evConnect_t::client_mac
mac_address_t client_mac
Definition: wifi_hal_extender.h:312
wifi_steering_eventRegister
INT wifi_steering_eventRegister(wifi_steering_eventCB_t event_cb)
Register for Steering Event Callbacks.
wifi_NeighborReport_t::target_ssid
ssid_t target_ssid
Definition: wifi_hal_extender.h:565
wifi_steering_evDisconnect_t
Client Disconnect Event Data This data is provided with WIFI_STEERING_EVENT_CLIENT_DISCONNECT.
Definition: wifi_hal_extender.h:327
wifi_VHTCapabilities_t::txVHTmcs
USHORT txVHTmcs
Definition: wifi_hal_extender.h:473
wifi_BeaconRequest_t
Definition: wifi_hal_extender.h:637
wifi_BeaconReport_t::bssid
bssid_t bssid
Definition: wifi_hal_extender.h:672
wifi_NeighborReport_t::bssTransitionCandidatePreferencePresent
BOOL bssTransitionCandidatePreferencePresent
Definition: wifi_hal_extender.h:541
wifi_steering_rrmCaps_t::bcnRptTable
BOOL bcnRptTable
Definition: wifi_hal_extender.h:275
WIFI_STEERING_RSSI_HIGHER
@ WIFI_STEERING_RSSI_HIGHER
Definition: wifi_hal_extender.h:252
_wifi_channelStats::ch_noise
INT ch_noise
Definition: wifi_hal_extender.h:35
wifi_BeaconRequest_t::extdRequestedElementIDSPresent
BOOL extdRequestedElementIDSPresent
Definition: wifi_hal_extender.h:654
wifi_steering_datarateInfo_t::maxStreams
UINT maxStreams
Definition: wifi_hal_extender.h:262
wifi_NeighborReport_t::bearing
wifi_Bearing_t bearing
Definition: wifi_hal_extender.h:546
wifi_VHTCapabilities_t::mcs
USHORT mcs
Definition: wifi_hal_extender.h:471
wifi_steering_evProbeReq_t::blocked
BOOL blocked
Definition: wifi_hal_extender.h:288
wifi_steerTriggered_callback_register
void wifi_steerTriggered_callback_register(wifi_steerTriggered_callback callback_proc, CHAR *module)
wifi_BeaconRequest_t::wideBandwidthChannel
wifi_WideBWChannel_t wideBandwidthChannel
Definition: wifi_hal_extender.h:651
wifi_steering_evProbeReq_t::rssi
UINT rssi
Definition: wifi_hal_extender.h:286
wifi_TSFInfo_t
Definition: wifi_hal_extender.h:423
wifi_steering_evDisconnect_t::source
wifi_disconnectSource_t source
Definition: wifi_hal_extender.h:330
wifi_MeasurementPilotTransmission_t::pilot
UCHAR pilot
Definition: wifi_hal_extender.h:515
wifi_NeighborReport_t::btmTerminationDuration
wifi_BTMTerminationDuration_t btmTerminationDuration
Definition: wifi_hal_extender.h:544
_wifi_associated_dev_stats::cli_rssi_bcn
wifi_rssi_snapshot_t cli_rssi_bcn
Definition: wifi_hal_extender.h:146
wifi_BTMResponse_t::token
UCHAR token
Definition: wifi_hal_extender.h:598
wifi_steering_rrmCaps_t::ftmRangeRpt
BOOL ftmRangeRpt
Definition: wifi_hal_extender.h:277
wifi_BTMRequest_t::token
UCHAR token
Definition: wifi_hal_extender.h:570
_wifi_associated_dev_stats::cli_tx_retries
ULLONG cli_tx_retries
Definition: wifi_hal_extender.h:141
wifi_NeighborReport_t::btmTerminationDurationPresent
BOOL btmTerminationDurationPresent
Definition: wifi_hal_extender.h:543
wifi_BSSTransitionCandidatePreference_t::preference
UCHAR preference
Definition: wifi_hal_extender.h:429
wifi_BTMQuery_t::queryReason
UCHAR queryReason
Definition: wifi_hal_extender.h:590
_wifi_channelStats::ch_non_80211_noise
INT ch_non_80211_noise
Definition: wifi_hal_extender.h:38
wifi_Measurement_t::type
UCHAR type
Definition: wifi_hal_extender.h:448
wifi_NeighborReport_t::opClass
UCHAR opClass
Definition: wifi_hal_extender.h:534
wifi_BeaconReporting_t::condition
UCHAR condition
Definition: wifi_hal_extender.h:620
wifi_cancelRMBeaconRequest
INT wifi_cancelRMBeaconRequest(UINT apIndex, UCHAR dialogToken)
wifi_BeaconReport_t::wideBandwidthChannel
wifi_WideBWChannel_t wideBandwidthChannel
Definition: wifi_hal_extender.h:676
_wifi_associated_dev_rate_info_tx_stats::mpdus
ULLONG mpdus
Definition: wifi_hal_extender.h:115
WIFI_STEERING_EVENT_CLIENT_CONNECT
@ WIFI_STEERING_EVENT_CLIENT_CONNECT
Definition: wifi_hal_extender.h:237
wifi_NeighborReport_t
Definition: wifi_hal_extender.h:521
wifi_NeighborReport_t::bearingPresent
BOOL bearingPresent
Definition: wifi_hal_extender.h:545
WIFI_STEERING_EVENT_RSSI_XING
@ WIFI_STEERING_EVENT_RSSI_XING
Definition: wifi_hal_extender.h:241
wifi_NeighborRequestFrame_t::ssid
ssid_t ssid
Definition: wifi_hal_extender.h:610
wifi_steering_evAuthFail_t::bsBlocked
BOOL bsBlocked
Definition: wifi_hal_extender.h:381
wifi_steering_evConnect_t
Client Connect Event Data This data is provided with WIFI_STEERING_EVENT_CLIENT_CONNECT.
Definition: wifi_hal_extender.h:311
wifi_BeaconRequest_t::reportingRetailPresent
BOOL reportingRetailPresent
Definition: wifi_hal_extender.h:648
wifi_steering_clientConfig_t::rssiHighXing
UINT rssiHighXing
Definition: wifi_hal_extender.h:200
wifi_steering_evAuthFail_t::client_mac
mac_address_t client_mac
Definition: wifi_hal_extender.h:378
wifi_MeasurementPilotTransmission_t
Definition: wifi_hal_extender.h:514
_wifi_associated_dev_rate_info_tx_stats::retries
ULLONG retries
Definition: wifi_hal_extender.h:117
wifi_BeaconReport_t::frameInfo
UCHAR frameInfo
Definition: wifi_hal_extender.h:669
wifi_steering_event_t::disconnect
wifi_steering_evDisconnect_t disconnect
Definition: wifi_hal_extender.h:396
ULONG
#define ULONG
Definition: bt_hal.h:77
wifi_NeighborReport_t::htCapsPresent
BOOL htCapsPresent
Definition: wifi_hal_extender.h:549
wifi_BeaconReporting_t
Definition: wifi_hal_extender.h:619
pre_assoc_assoc_block
@ pre_assoc_assoc_block
Definition: wifi_hal_extender.h:950
wifi_BTMTerminationDuration_t::tsf
ULONG tsf
Definition: wifi_hal_extender.h:415
wifi_applySSIDSettings
INT wifi_applySSIDSettings(INT ssidIndex)
Apply SSID and AP (in the case of Acess Point devices) to the hardware.
wifi_Measurement_t::token
UCHAR token
Definition: wifi_hal_extender.h:446
wifi_HTOperation_t
Definition: wifi_hal_extender.h:478
wifi_VHTCapabilities_t::rxHighestSupportedRate
USHORT rxHighestSupportedRate
Definition: wifi_hal_extender.h:472
wifi_HTCapabilities_t::info
USHORT info
Definition: wifi_hal_extender.h:458
wifi_steerTriggered_callback
INT(* wifi_steerTriggered_callback)(INT apIndex, wifi_steer_trigger_data_t *data)
Definition: wifi_hal_extender.h:967
_wifi_channelStats::ch_utilization_busy
ULLONG ch_utilization_busy
Definition: wifi_hal_extender.h:41
wifi_BTMQueryRequest_callback
INT(* wifi_BTMQueryRequest_callback)(UINT apIndex, CHAR *peerMac, wifi_BTMQuery_t *query, UINT inMemSize, wifi_BTMRequest_t *request)
This call back is invoked when a STA sends a BTM query message to a vAP in the gateway....
Definition: wifi_hal_extender.h:1196
wifi_steer_trigger_data_t::cond
wifi_steer_matching_condition_t cond
Definition: wifi_hal_extender.h:964
wifi_BTMResponse_t
Definition: wifi_hal_extender.h:597
_wifi_associated_dev_rate_info_tx_stats::mcs
UCHAR mcs
Definition: wifi_hal_extender.h:110
_wifi_associated_dev_rate_info_tx_stats
Definition: wifi_hal_extender.h:107
wifi_NeighborReport_t::rmEnabledCaps
wifi_RMEnabledCapabilities_t rmEnabledCaps
Definition: wifi_hal_extender.h:560
wifi_getApAssociatedDeviceStats
INT wifi_getApAssociatedDeviceStats(INT apIndex, mac_address_t *clientMacAddress, wifi_associated_dev_stats_t *associated_dev_stats, ULLONG *handle)
Get the associated device status.
wifi_steering_clientRemove
INT wifi_steering_clientRemove(UINT steeringgroupIndex, INT apIndex, mac_address_t client_mac)
Remove Client Config from apIndex.
_wifi_associated_dev_rate_info_rx_stats::flags
ULLONG flags
Definition: wifi_hal_extender.h:86
WIFI_STEERING_EVENT_CLIENT_ACTIVITY
@ WIFI_STEERING_EVENT_CLIENT_ACTIVITY
Definition: wifi_hal_extender.h:239
_wifi_associated_dev_stats::cli_tx_errors
ULLONG cli_tx_errors
Definition: wifi_hal_extender.h:143
wifi_BSSTransitionCandidatePreference_t
Definition: wifi_hal_extender.h:428
wifi_steering_evRssiXing_t::rssi
UINT rssi
Definition: wifi_hal_extender.h:357
wifi_steering_clientConfig_t::authRejectReason
UINT authRejectReason
Definition: wifi_hal_extender.h:202
wifi_steering_rrmCaps_t::lciMeas
BOOL lciMeas
Definition: wifi_hal_extender.h:276
wifi_disconnectType_t
wifi_disconnectType_t
Wifi Disconnect Types These are the types of wifi disconnects.
Definition: wifi_hal_extender.h:224
DISCONNECT_SOURCE_UNKNOWN
@ DISCONNECT_SOURCE_UNKNOWN
Definition: wifi_hal_extender.h:215
wifi_steering_clientConfig_t::rssiAuthLWM
UINT rssiAuthLWM
Definition: wifi_hal_extender.h:198
wifi_steering_event_t::activity
wifi_steering_evActivity_t activity
Definition: wifi_hal_extender.h:397
wifi_BTMQuery_t
Definition: wifi_hal_extender.h:588
wifi_NeighborReport_t::phyTable
UCHAR phyTable
Definition: wifi_hal_extender.h:536
_wifi_associated_dev_rate_info_rx_stats::rssi_array
UCHAR rssi_array[8][4]
Definition: wifi_hal_extender.h:104
wifi_BeaconReport_t::channel
UCHAR channel
Definition: wifi_hal_extender.h:666
wifi_steering_evChanUtil_t
Channel Utilization Event Data This data is provided with WIFI_STEERING_EVENT_CHAN_UTILIZATION.
Definition: wifi_hal_extender.h:347
wifi_steering_rrmCaps_t::neighRpt
BOOL neighRpt
Definition: wifi_hal_extender.h:272
wifi_steering_event_t::probeReq
wifi_steering_evProbeReq_t probeReq
Definition: wifi_hal_extender.h:394
MAX_CANDIDATES
#define MAX_CANDIDATES
Definition: wifi_hal_extender.h:408
_wifi_channelStats::ch_max_80211_rssi
INT ch_max_80211_rssi
Definition: wifi_hal_extender.h:37
wifi_BTMRequest_t::validityInterval
UCHAR validityInterval
Definition: wifi_hal_extender.h:573
wifi_steering_clientDisconnect
INT wifi_steering_clientDisconnect(UINT steeringgroupIndex, INT apIndex, mac_address_t client_mac, wifi_disconnectType_t type, UINT reason)
Initiate a Client Disconnect.
wifi_NeighborReport_t::channel
UCHAR channel
Definition: wifi_hal_extender.h:535
wifi_BeaconReport_t::startTime
ULLONG startTime
Definition: wifi_hal_extender.h:667
wifi_NeighborRequestFrame_t::measCount
UCHAR measCount
Definition: wifi_hal_extender.h:611
_wifi_associated_dev_stats::cli_rx_bytes
ULLONG cli_rx_bytes
Definition: wifi_hal_extender.h:136
wifi_steer_trigger_data_t::sta_mac
mac_address_t sta_mac
Definition: wifi_hal_extender.h:960
wifi_BeaconRequest_t::wideBandWidthChannelPresent
BOOL wideBandWidthChannelPresent
Definition: wifi_hal_extender.h:650
wifi_steering_evAuthFail_t::rssi
UINT rssi
Definition: wifi_hal_extender.h:379
wifi_BeaconReport_t::duration
USHORT duration
Definition: wifi_hal_extender.h:668
wifi_BTMRequest_t::requestMode
UCHAR requestMode
Definition: wifi_hal_extender.h:571
wifi_NeighborReport_t::secondaryChannelOffset
wifi_SecondaryChannelOffset_t secondaryChannelOffset
Definition: wifi_hal_extender.h:558
UINT
#define UINT
Definition: bt_hal.h:69
DISCONNECT_SOURCE_LOCAL
@ DISCONNECT_SOURCE_LOCAL
Definition: wifi_hal_extender.h:216
wifi_VHTOperation_t::mcs_nss
USHORT mcs_nss
Definition: wifi_hal_extender.h:487
wifi_BeaconReport_t::rcpi
UCHAR rcpi
Definition: wifi_hal_extender.h:670
wifi_steer_trigger_data_t
Definition: wifi_hal_extender.h:958
wifi_steering_event_t
Wifi Steering Event This is the data containing a single steering event.
Definition: wifi_hal_extender.h:389
wifi_BeaconRequest_t::numRepetitions
USHORT numRepetitions
Definition: wifi_hal_extender.h:660
wifi_Bearing_t::bearing
USHORT bearing
Definition: wifi_hal_extender.h:433
UCHAR
#define UCHAR
Definition: bt_hal.h:49
_wifi_channelStats::ch_utilization_busy_tx
ULLONG ch_utilization_busy_tx
Definition: wifi_hal_extender.h:42
wifi_BeaconRequest_t::vendorSpecificPresent
BOOL vendorSpecificPresent
Definition: wifi_hal_extender.h:658
wifi_associated_dev_tid_entry::sum_time_ms
ULLONG sum_time_ms
Definition: wifi_hal_extender.h:126
wifi_NeighborReport_t::vhtOpPresent
BOOL vhtOpPresent
Definition: wifi_hal_extender.h:555
wifi_BeaconReport_t::antenna
UCHAR antenna
Definition: wifi_hal_extender.h:673
_wifi_associated_dev_stats::cli_rx_retries
ULLONG cli_rx_retries
Definition: wifi_hal_extender.h:140
wifi_associated_dev_tid_entry::tid
UCHAR tid
Definition: wifi_hal_extender.h:124
wifi_RMBeaconReport_callback
INT(* wifi_RMBeaconReport_callback)(UINT apIndex, wifi_BeaconReport_t *out_struct, UINT *out_array_size, UCHAR *out_DialogToken)
Definition: wifi_hal_extender.h:1303
_wifi_associated_dev_stats::cli_tx_rate
double cli_tx_rate
Definition: wifi_hal_extender.h:145
wifi_VendorSpecific_t
Definition: wifi_hal_extender.h:505
wifi_BTMTerminationDuration_t
Definition: wifi_hal_extender.h:414
wifi_BTMResponse_callback
INT(* wifi_BTMResponse_callback)(UINT apIndex, CHAR *peerMac, wifi_BTMResponse_t *response)
This call back is invoked when a STA responds to a BTM Request from the gateway.
Definition: wifi_hal_extender.h:1221
bssid_t
mac_address_t bssid_t
Definition: wifi_hal_generic.h:214
wifi_Measurement_t::lcr
UCHAR lcr
Definition: wifi_hal_extender.h:451
wifi_HTCapabilities_t::ampduParams
UCHAR ampduParams
Definition: wifi_hal_extender.h:459
_wifi_channelStats::ch_in_pool
BOOL ch_in_pool
Definition: wifi_hal_extender.h:34
wifi_steering_apConfig_t::apIndex
INT apIndex
Definition: wifi_hal_extender.h:167
wifi_steering_evDisconnect_t::type
wifi_disconnectType_t type
Definition: wifi_hal_extender.h:331
wifi_setBTMRequest
INT wifi_setBTMRequest(UINT apIndex, CHAR *peerMac, wifi_BTMRequest_t *request)
Set a BTM Request to a non-AP STA. The callback register function should be called first so that the ...
wifi_steering_rrmCaps_t::bcnRptPassive
BOOL bcnRptPassive
Definition: wifi_hal_extender.h:273
wifi_startNeighborScan
INT wifi_startNeighborScan(INT apIndex, wifi_neighborScanMode_t scan_mode, INT dwell_time, UINT chan_num, UINT *chan_list)
This API initates the scanning.
wifi_VHTCapabilities_t::txHighestSupportedRate
USHORT txHighestSupportedRate
Definition: wifi_hal_extender.h:474
wifi_BTMResponse_t::status
UCHAR status
Definition: wifi_hal_extender.h:599
DISCONNECT_TYPE_DISASSOC
@ DISCONNECT_TYPE_DISASSOC
Definition: wifi_hal_extender.h:226
WIFI_STEERING_EVENT_PROBE_REQ
@ WIFI_STEERING_EVENT_PROBE_REQ
Definition: wifi_hal_extender.h:236
wifi_steering_clientConfig_t::rssiInactXing
UINT rssiInactXing
Definition: wifi_hal_extender.h:199
wifi_neighborScanMode_t
wifi_neighborScanMode_t
Represents the wifi scan modes.
Definition: wifi_hal_ap.h:346
wifi_BeaconReport_t::opClass
UCHAR opClass
Definition: wifi_hal_extender.h:665
_wifi_associated_dev_rate_info_tx_stats::flags
ULLONG flags
Definition: wifi_hal_extender.h:112
MAX_REQUESTED_ELEMS
#define MAX_REQUESTED_ELEMS
Definition: wifi_hal_extender.h:616
wifi_BeaconRequest_t::reportingDetail
UCHAR reportingDetail
Definition: wifi_hal_extender.h:649
wifi_NeighborReport_t::msmtPilotTransmission
wifi_MeasurementPilotTransmission_t msmtPilotTransmission
Definition: wifi_hal_extender.h:562
wifi_Measurement_t::mode
UCHAR mode
Definition: wifi_hal_extender.h:447
wifi_NeighborReport_t::tsfInfo
wifi_TSFInfo_t tsfInfo
Definition: wifi_hal_extender.h:538
wifi_steering_event_t::timestamp_ms
ULLONG timestamp_ms
Definition: wifi_hal_extender.h:392
wifi_associated_dev_tid_entry::ac
UCHAR ac
Definition: wifi_hal_extender.h:123
wifi_BeaconReport_t::wideBandWidthChannelPresent
BOOL wideBandWidthChannelPresent
Definition: wifi_hal_extender.h:675
_wifi_associated_dev_rate_info_rx_stats::mcs
UCHAR mcs
Definition: wifi_hal_extender.h:84
wifi_BeaconRequest_t::duration
USHORT duration
Definition: wifi_hal_extender.h:641
wifi_NeighborReport_t::htOp
wifi_HTOperation_t htOp
Definition: wifi_hal_extender.h:554
wifi_steering_datarateInfo_t::maxChwidth
UINT maxChwidth
Definition: wifi_hal_extender.h:261
wifi_steer_trigger_data_t::src_bss
mac_address_t src_bss
Definition: wifi_hal_extender.h:961
wifi_Bearing_t::height
USHORT height
Definition: wifi_hal_extender.h:435
wifi_steering_event_t::authFail
wifi_steering_evAuthFail_t authFail
Definition: wifi_hal_extender.h:401
wifi_BTMRequest_t::numCandidates
UCHAR numCandidates
Definition: wifi_hal_extender.h:582
wifi_WideBWChannel_t::centerSeg0
UCHAR centerSeg0
Definition: wifi_hal_extender.h:441
wifi_BTMQueryRequest_callback_register
INT wifi_BTMQueryRequest_callback_register(UINT apIndex, wifi_BTMQueryRequest_callback btmQueryCallback, wifi_BTMResponse_callback btmResponseCallback)
BTM Query callback registration function.
wifi_Measurement_t::lci
UCHAR lci
Definition: wifi_hal_extender.h:450
wifi_steering_clientMeasure
INT wifi_steering_clientMeasure(UINT steeringgroupIndex, INT apIndex, mac_address_t client_mac)
Initiate Instant Client RSSI Measurement.
wifi_steering_evConnect_t::bandCap5G
BOOL bandCap5G
Definition: wifi_hal_extender.h:316
_wifi_channelStats
Definition: wifi_hal_extender.h:32
wifi_TSFInfo_t::interval
USHORT interval
Definition: wifi_hal_extender.h:425
_wifi_associated_dev_rate_info_rx_stats::retries
ULLONG retries
Definition: wifi_hal_extender.h:91
_wifi_channelStats::ch_utilization_busy_rx
ULLONG ch_utilization_busy_rx
Definition: wifi_hal_extender.h:43
wifi_steering_evConnect_t::bandCap2G
BOOL bandCap2G
Definition: wifi_hal_extender.h:315
DISCONNECT_TYPE_DEAUTH
@ DISCONNECT_TYPE_DEAUTH
Definition: wifi_hal_extender.h:227
WIFI_STEERING_EVENT_CLIENT_DISCONNECT
@ WIFI_STEERING_EVENT_CLIENT_DISCONNECT
Definition: wifi_hal_extender.h:238
_wifi_associated_dev_rate_info_rx_stats::rssi_combined
UCHAR rssi_combined
Definition: wifi_hal_extender.h:92
wifi_steering_eventType_t
wifi_steering_eventType_t
Wifi Steering Event Types These are the different steering event types that are sent by the wifi_hal ...
Definition: wifi_hal_extender.h:235
wifi_steering_evConnect_t::bandCap6G
BOOL bandCap6G
Definition: wifi_hal_extender.h:317
wifi_RMBeaconRequestCallbackUnregister
INT wifi_RMBeaconRequestCallbackUnregister(UINT apIndex, wifi_RMBeaconReport_callback beaconReportCallback)
wifi_steering_evRssi_t::rssi
UINT rssi
Definition: wifi_hal_extender.h:370
wifi_steering_evRssiXing_t::lowXing
wifi_steering_rssiChange_t lowXing
Definition: wifi_hal_extender.h:360
wifi_WideBWChannel_t::bandwidth
UCHAR bandwidth
Definition: wifi_hal_extender.h:440
_wifi_associated_dev_rate_info_tx_stats::bw
USHORT bw
Definition: wifi_hal_extender.h:111
wifi_NeighborRequestFrame_t
Definition: wifi_hal_extender.h:607
wifi_BTMTerminationDuration_t::duration
USHORT duration
Definition: wifi_hal_extender.h:416
wifi_setApCsaDeauth
INT wifi_setApCsaDeauth(INT apIndex, INT mode)
This API set the CSA (Channel Switch Announcement) deauthentication to all clients before moving to a...
wifi_steering_event_t::rssiXing
wifi_steering_evRssiXing_t rssiXing
Definition: wifi_hal_extender.h:399
wifi_steering_event_t::type
wifi_steering_eventType_t type
Definition: wifi_hal_extender.h:390
wifi_associated_dev_tid_entry
Definition: wifi_hal_extender.h:121
wifi_steering_datarateInfo_t::isStaticSmps
UINT isStaticSmps
Definition: wifi_hal_extender.h:266
wifi_NeighborReport_t::msmtPilotTransmissionPresent
BOOL msmtPilotTransmissionPresent
Definition: wifi_hal_extender.h:561
wifi_steering_event_t::chanUtil
wifi_steering_evChanUtil_t chanUtil
Definition: wifi_hal_extender.h:398
wifi_NeighborReport_t::secondaryChannelOffsetPresent
BOOL secondaryChannelOffsetPresent
Definition: wifi_hal_extender.h:557
wifi_BTMRequest_t::termDuration
wifi_BTMTerminationDuration_t termDuration
Definition: wifi_hal_extender.h:578
wifi_RMBeaconRequestCallbackRegister
INT wifi_RMBeaconRequestCallbackRegister(UINT apIndex, wifi_RMBeaconReport_callback beaconReportCallback)
wifi_steering_rrmCaps_t::linkMeas
BOOL linkMeas
Definition: wifi_hal_extender.h:271
wifi_BeaconReport_t::rsni
UCHAR rsni
Definition: wifi_hal_extender.h:671
wifi_getRadioChannelStats
INT wifi_getRadioChannelStats(INT radioIndex, wifi_channelStats_t *input_output_channelStats_array, INT array_size)
Get the channels utilization status.
wifi_getSSIDRadioIndex
INT wifi_getSSIDRadioIndex(INT ssidIndex, INT *radioIndex)
Get the radio index associated with the SSID entry.
wifi_ChannelReport_t::opClass
UCHAR opClass
Definition: wifi_hal_extender.h:632
wifi_NeighborReport_t::vhtCapsPresent
BOOL vhtCapsPresent
Definition: wifi_hal_extender.h:551
wifi_BeaconRequest_t::beaconReporting
wifi_BeaconReporting_t beaconReporting
Definition: wifi_hal_extender.h:647
wifi_associated_dev_tid_stats
Definition: wifi_hal_extender.h:130
wifi_steering_event_t::apIndex
INT apIndex
Definition: wifi_hal_extender.h:391
wifi_steer_trigger_data_t::type
wifi_steer_type_t type
Definition: wifi_hal_extender.h:963
wifi_NeighborReport_t::info
UINT info
Definition: wifi_hal_extender.h:533
wifi_steering_event_t::rssi
wifi_steering_evRssi_t rssi
Definition: wifi_hal_extender.h:400
_wifi_associated_dev_rate_info_tx_stats::bytes
ULLONG bytes
Definition: wifi_hal_extender.h:113
wifi_HTCapabilities_t::aselCaps
UCHAR aselCaps
Definition: wifi_hal_extender.h:463
wifi_associated_dev_tid_entry_t
struct wifi_associated_dev_tid_entry wifi_associated_dev_tid_entry_t
_wifi_channelStats::ch_utilization_busy_self
ULLONG ch_utilization_busy_self
Definition: wifi_hal_extender.h:44
wifi_steering_apConfig_t::utilAvgCount
UINT utilAvgCount
Definition: wifi_hal_extender.h:170
wifi_MeasurementPilotTransmission_t::vendorSpecific
wifi_VendorSpecific_t vendorSpecific
Definition: wifi_hal_extender.h:517
wifi_NeighborReport_t::wideBandWidthChannelPresent
BOOL wideBandWidthChannelPresent
Definition: wifi_hal_extender.h:547
wifi_steering_evActivity_t::active
BOOL active
Definition: wifi_hal_extender.h:340
MAX_CHANNELS_REPORT
#define MAX_CHANNELS_REPORT
Definition: wifi_hal_extender.h:617
_wifi_channelStats::ch_utilization_total
ULLONG ch_utilization_total
Definition: wifi_hal_extender.h:40
wifi_BTMRequest_t::disassociationImminent
UCHAR disassociationImminent
Definition: wifi_hal_extender.h:579
wifi_steering_clientConfig_t::rssiProbeLWM
UINT rssiProbeLWM
Definition: wifi_hal_extender.h:196
mac_address_t
unsigned char mac_address_t[6]
Definition: wifi_hal_generic.h:211
WIFI_STEERING_EVENT_RSSI
@ WIFI_STEERING_EVENT_RSSI
Definition: wifi_hal_extender.h:242
_wifi_channelStats::ch_utilization_busy_ext
ULLONG ch_utilization_busy_ext
Definition: wifi_hal_extender.h:45
wifi_BeaconReport_t::tsf
UINT tsf
Definition: wifi_hal_extender.h:674
_wifi_associated_dev_rate_info_rx_stats::msdus
ULLONG msdus
Definition: wifi_hal_extender.h:88
wifi_steering_clientConfig_t::rssiLowXing
UINT rssiLowXing
Definition: wifi_hal_extender.h:201
post_assoc_active_80211v
@ post_assoc_active_80211v
Definition: wifi_hal_extender.h:953
_wifi_associated_dev_stats::cli_tx_frames
ULLONG cli_tx_frames
Definition: wifi_hal_extender.h:139
wifi_steering_apConfig_t::inactCheckIntervalSec
UINT inactCheckIntervalSec
Definition: wifi_hal_extender.h:172
wifi_Bearing_t::dist
UINT dist
Definition: wifi_hal_extender.h:434
wifi_NeighborReport_t::vendorSpecific
wifi_VendorSpecific_t vendorSpecific
Definition: wifi_hal_extender.h:564
wifi_steering_evProbeReq_t::broadcast
BOOL broadcast
Definition: wifi_hal_extender.h:287
wifi_getApAssociatedDeviceRxStatsResult
INT wifi_getApAssociatedDeviceRxStatsResult(INT radioIndex, mac_address_t *clientMacAddress, wifi_associated_dev_rate_info_rx_stats_t **stats_array, UINT *output_array_size, ULLONG *handle)
Get the associated client per rate receive status.
wifi_steering_clientConfig_t::rssiProbeHWM
UINT rssiProbeHWM
Definition: wifi_hal_extender.h:195
wifi_steering_evRssi_t
Client RSSI Measurement Event Data This data is provided with WIFI_STEERING_EVENT_RSSI,...
Definition: wifi_hal_extender.h:368