1 /*
2  * Copyright (c) 2018-2020 The Linux Foundation. All rights reserved.
3  * Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
4  *
5  * Permission to use, copy, modify, and/or distribute this software for
6  * any purpose with or without fee is hereby granted, provided that the
7  * above copyright notice and this permission notice appear in all
8  * copies.
9  *
10  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
11  * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
12  * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
13  * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
14  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
15  * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
16  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
17  * PERFORMANCE OF THIS SOFTWARE.
18  */
19 
20 #if !defined(CONFIG_TDLS_H__)
21 #define CONFIG_TDLS_H__
22 
23 #include "cfg_define.h"
24 #include "cfg_converged.h"
25 #include "qdf_types.h"
26 
27 /*
28  * <ini>
29  * gTDLSUapsdMask - ACs to setup U-APSD for TDLS Sta.
30  * @Min: 0
31  * @Max: 0x0F
32  * @Default: 0x0F
33  *
34  * This ini is used to configure the ACs for which mask needs to be enabled.
35  * 0x1: Background	0x2: Best effort
36  * 0x4: Video		0x8: Voice
37  *
38  * Related: gEnableTDLSSupport.
39  *
40  * Supported Feature: TDLS
41  *
42  * Usage: Internal/External
43  *
44  * </ini>
45  */
46 #define CFG_TDLS_QOS_WMM_UAPSD_MASK CFG_INI_UINT( \
47 	"gTDLSUapsdMask", \
48 	0, \
49 	0x0F, \
50 	0x0F, \
51 	CFG_VALUE_OR_DEFAULT, \
52 	"ACs to setup U-APSD for TDLS Sta")
53 
54 /*
55  * <ini>
56  * gEnableTDLSBufferSta - Controls the TDLS buffer.
57  * @Min: 0
58  * @Max: 1
59  * @Default: 1
60  *
61  * This ini is used to control the TDLS buffer.
62  * Buffer STA is not enabled in CLD 2.0 yet.
63  *
64  * Related: gEnableTDLSSupport.
65  *
66  * Supported Feature: TDLS
67  *
68  * Usage: Internal/External
69  *
70  * </ini>
71  */
72 #define CFG_TDLS_BUF_STA_ENABLED CFG_INI_BOOL( \
73 	"gEnableTDLSBufferSta", \
74 	1, \
75 	"Controls the TDLS buffer")
76 
77 /*
78  * <ini>
79  * gTDLSPuapsdInactivityTime - Peer UAPSD Inactivity time.
80  * @Min: 0
81  * @Max: 10
82  * @Default: 0
83  *
84  * This ini is used to configure peer uapsd inactivity time(in ms).
85  *
86  * Related: gEnableTDLSSupport.
87  *
88  * Supported Feature: TDLS
89  *
90  * Usage: Internal/External
91  *
92  * </ini>
93  */
94 #define CFG_TDLS_PUAPSD_INACT_TIME CFG_INI_UINT( \
95 	"gTDLSPuapsdInactivityTime", \
96 	0, \
97 	10, \
98 	0, \
99 	CFG_VALUE_OR_DEFAULT, \
100 	"Peer UAPSD Inactivity time")
101 
102 /*
103  * <ini>
104  * gTDLSPuapsdRxFrameThreshold - Peer UAPSD Rx frame threshold.
105  * @Min: 10
106  * @Max: 20
107  * @Default: 10
108  *
109  * This ini is used to configure maximum Rx frame during SP.
110  *
111  * Related: gEnableTDLSSupport.
112  *
113  * Supported Feature: TDLS
114  *
115  * Usage: Internal/External
116  *
117  * </ini>
118  */
119 #define CFG_TDLS_RX_FRAME_THRESHOLD CFG_INI_UINT( \
120 	"gTDLSPuapsdRxFrameThreshold", \
121 	10, \
122 	20, \
123 	10, \
124 	CFG_VALUE_OR_DEFAULT, \
125 	"Peer UAPSD Rx frame threshold")
126 
127 /*
128  * <ini>
129  * gEnableTDLSOffChannel - Enables off-channel support for TDLS link.
130  * @Min: 0
131  * @Max: 1
132  * @Default: 1
133  *
134  * This ini is used to enable/disable off-channel support for TDLS link.
135  *
136  * Related: gEnableTDLSSupport.
137  *
138  * Supported Feature: TDLS
139  *
140  * Usage: Internal/External
141  *
142  * </ini>
143  */
144 #define CFG_TDLS_OFF_CHANNEL_ENABLED CFG_INI_BOOL( \
145 	"gEnableTDLSOffChannel", \
146 	1, \
147 	"Enables off-channel support for TDLS")
148 
149 /*
150  * <ini>
151  * gEnableTDLSSupport - Enable support for TDLS.
152  * @Min: 0
153  * @Max: 1
154  * @Default: 1
155  *
156  * This ini is used to enable/disable TDLS support.
157  *
158  * Related: None.
159  *
160  * Supported Feature: TDLS
161  *
162  * Usage: Internal/External
163  *
164  * </ini>
165  */
166 #define CFG_TDLS_SUPPORT_ENABLE CFG_INI_BOOL( \
167 	"gEnableTDLSSupport", \
168 	1, \
169 	"enable/disable TDLS support")
170 
171 /*
172  * <ini>
173  * gEnableTDLSImplicitTrigger - Enable Implicit TDLS.
174  * @Min: 0
175  * @Max: 1
176  * @Default: 1
177  *
178  * This ini is used to enable/disable implicit TDLS.
179  * CLD driver initiates TDLS Discovery towards a peer whenever TDLS Setup
180  * criteria (throughput and RSSI thresholds) is met and then it tears down
181  * TDLS when teardown criteria (idle packet count and RSSI) is met.
182  *
183  * Related: gEnableTDLSSupport.
184  *
185  * Supported Feature: TDLS
186  *
187  * Usage: Internal/External
188  *
189  * </ini>
190  */
191 #define CFG_TDLS_IMPLICIT_TRIGGER CFG_INI_BOOL( \
192 	"gEnableTDLSImplicitTrigger", \
193 	1, \
194 	"enable/disable implicit TDLS")
195 
196 /*
197  * <ini>
198  * gTDLSTxStatsPeriod - TDLS TX statistics time period.
199  * @Min: 1000
200  * @Max: 4294967295
201  * @Default: 2000
202  *
203  * This ini is used to configure the time period (in ms) to evaluate whether
204  * the number of Tx/Rx packets exceeds TDLSTxPacketThreshold and triggers a
205  * TDLS Discovery request.
206  *
207  * Related: gEnableTDLSSupport.
208  *
209  * Supported Feature: TDLS
210  *
211  * Usage: Internal/External
212  *
213  * </ini>
214  */
215 #define CFG_TDLS_TX_STATS_PERIOD CFG_INI_UINT( \
216 	"gTDLSTxStatsPeriod", \
217 	1000, \
218 	4294967295UL, \
219 	2000, \
220 	CFG_VALUE_OR_DEFAULT, \
221 	"TDLS TX statistics time period")
222 
223 /*
224  * <ini>
225  * gTDLSTxPacketThreshold - Tx/Rx Packet threshold for initiating TDLS.
226  * @Min: 0
227  * @Max: 4294967295
228  * @Default: 40
229  *
230  * This ini is used to configure the number of Tx/Rx packets during the
231  * period of gTDLSTxStatsPeriod when exceeded, a TDLS Discovery request
232  * is triggered.
233  * Related: gEnableTDLSSupport.
234  *
235  * Supported Feature: TDLS
236  *
237  * Usage: Internal/External
238  *
239  * </ini>
240  */
241 #define CFG_TDLS_TX_PACKET_THRESHOLD CFG_INI_UINT( \
242 	"gTDLSTxPacketThreshold", \
243 	0, \
244 	4294967295UL, \
245 	40, \
246 	CFG_VALUE_OR_DEFAULT, \
247 	"Tx/Rx Packet threshold for initiating TDLS")
248 
249 /*
250  * <ini>
251  * gTDLSMaxDiscoveryAttempt - Attempts for sending TDLS discovery requests.
252  * @Min: 1
253  * @Max: 100
254  * @Default: 5
255  *
256  * This ini is used to configure the number of failures of discover request,
257  * when exceeded, the peer is assumed to be not TDLS capable and no further
258  * TDLS Discovery request is made.
259  *
260  * Related: gEnableTDLSSupport.
261  *
262  * Supported Feature: TDLS
263  *
264  * Usage: Internal/External
265  *
266  * </ini>
267  */
268 #define CFG_TDLS_MAX_DISCOVERY_ATTEMPT CFG_INI_UINT( \
269 	"gTDLSMaxDiscoveryAttempt", \
270 	1, \
271 	100, \
272 	5, \
273 	CFG_VALUE_OR_DEFAULT, \
274 	"Attempts for sending TDLS discovery requests")
275 
276 /*
277  * gTDLSMaxPeerCount - Max TDLS connected peer count
278  * @Min: 1
279  * @Max: 8
280  * @Default: 8
281  *
282  * This ini is used to configure the max connected TDLS peer count.
283  *
284  * Related: gEnableTDLSSupport.
285  *
286  * Supported Feature: TDLS
287  *
288  * Usage: External
289  *
290  * </ini>
291  */
292 #define CFG_TDLS_MAX_PEER_COUNT CFG_INI_UINT( \
293 	"gTDLSMaxPeerCount", \
294 	1, \
295 	8, \
296 	8, \
297 	CFG_VALUE_OR_DEFAULT, \
298 	"Max TDLS peer count")
299 
300 /*
301  * <ini>
302  * gTDLSIdleTimeout - Duration within which number of TX / RX frames meet the
303  * criteria for TDLS teardown.
304  * @Min: 500
305  * @Max: 40000
306  * @Default: 5000
307  *
308  * This ini is used to configure the time period (in ms) to evaluate whether
309  * the number of Tx/Rx packets exceeds gTDLSIdlePacketThreshold and thus meets
310  * criteria for TDLS teardown.
311  * Teardown notification interval (gTDLSIdleTimeout) should be multiple of
312  * setup notification (gTDLSTxStatsPeriod) interval.
313  * e.g.
314  *      if setup notification (gTDLSTxStatsPeriod) interval = 500, then
315  *      teardown notification (gTDLSIdleTimeout) interval should be 1000,
316  *      1500, 2000, 2500...
317  *
318  * Related: gEnableTDLSSupport.
319  *
320  * Supported Feature: TDLS
321  *
322  * Usage: Internal/External
323  *
324  */
325 #define CFG_TDLS_IDLE_TIMEOUT CFG_INI_UINT( \
326 	"gTDLSIdleTimeout", \
327 	500, \
328 	40000, \
329 	5000, \
330 	CFG_VALUE_OR_DEFAULT, \
331 	"this is idle time period")
332 
333 /*
334  * <ini>
335  * gTDLSIdlePacketThreshold - Number of idle packet.
336  * @Min: 0
337  * @Max: 40000
338  * @Default: 3
339  *
340  * This ini is used to configure the number of Tx/Rx packet, below which
341  * within last gTDLSTxStatsPeriod period is considered as idle condition.
342  *
343  * Related: gEnableTDLSSupport.
344  *
345  * Supported Feature: TDLS
346  *
347  * Usage: Internal/External
348  *
349  * </ini>
350  */
351 #define CFG_TDLS_IDLE_PACKET_THRESHOLD CFG_INI_UINT( \
352 	"gTDLSIdlePacketThreshold", \
353 	0, \
354 	40000, \
355 	3, \
356 	CFG_VALUE_OR_DEFAULT, \
357 	"Number of idle packet")
358 
359 /*
360  * <ini>
361  * gTDLSRSSITriggerThreshold - RSSI threshold for TDLS connection.
362  * @Min: -120
363  * @Max: 0
364  * @Default: -75
365  *
366  * This ini is used to configure the absolute value (in dB) of the peer RSSI,
367  * below which a TDLS setup request is triggered.
368  *
369  * Related: gEnableTDLSSupport.
370  *
371  * Supported Feature: TDLS
372  *
373  * Usage: Internal/External
374  *
375  * </ini>
376  */
377 #define CFG_TDLS_RSSI_TRIGGER_THRESHOLD CFG_INI_INT( \
378 	"gTDLSRSSITriggerThreshold", \
379 	-120, \
380 	0, \
381 	-75, \
382 	CFG_VALUE_OR_DEFAULT, \
383 	"RSSI threshold for TDLS connection")
384 
385 /*
386  * <ini>
387  * gTDLSRSSITeardownThreshold - RSSI threshold for TDLS teardown.
388  * @Min: -120
389  * @Max: 0
390  * @Default: -75
391  *
392  * This ini is used to configure the absolute value (in dB) of the peer RSSI,
393  * when exceed, a TDLS teardown is triggered.
394  *
395  * Related: gEnableTDLSSupport.
396  *
397  * Supported Feature: TDLS
398  *
399  * Usage: Internal/External
400  *
401  * </ini>
402  */
403 #define CFG_TDLS_RSSI_TEARDOWN_THRESHOLD CFG_INI_INT( \
404 	"gTDLSRSSITeardownThreshold", \
405 	-120, \
406 	0, \
407 	-75, \
408 	CFG_VALUE_OR_DEFAULT, \
409 	"RSSI threshold for TDLS teardown")
410 
411 /*
412  * <ini>
413  * gTDLSRSSIDelta - Delta value for the peer RSSI that can trigger teardown.
414  * @Min: -30
415  * @Max: 0
416  * @Default: -20
417  *
418  * This ini is used to configure delta for peer RSSI such that if Peer RSSI
419  * is less than AP RSSI plus delta will trigger a teardown.
420  *
421  * Related: gEnableTDLSSupport.
422  *
423  * Supported Feature: TDLS
424  *
425  * Usage: Internal/External
426  *
427  * </ini>
428  */
429 #define CFG_TDLS_RSSI_DELTA CFG_INI_INT( \
430 	"gTDLSRSSIDelta", \
431 	-30, \
432 	0, \
433 	-20, \
434 	CFG_VALUE_OR_DEFAULT, \
435 	"Delta value for the peer RSSI that can trigger teardown")
436 
437 /*
438  * <ini>
439  * gTDLSPrefOffChanNum - Preferred TDLS channel number when off-channel support
440  * is enabled.
441  * @Min: 1
442  * @Max: 165
443  * @Default: 36
444  *
445  * This ini is used to configure preferred TDLS channel number when off-channel
446  * support is enabled.
447  *
448  * Related: gEnableTDLSSupport, gEnableTDLSOffChannel.
449  *
450  * Supported Feature: TDLS
451  *
452  * Usage: Internal/External
453  *
454  * </ini>
455  */
456 #define CFG_TDLS_PREFERRED_OFF_CHANNEL_NUM CFG_INI_UINT( \
457 	"gTDLSPrefOffChanNum", \
458 	1, \
459 	165, \
460 	36, \
461 	CFG_VALUE_OR_DEFAULT, \
462 	"Preferred TDLS channel number")
463 
464 /*
465  * <ini>
466  * tdls_pref_off_chan_num_6g - Preferred TDLS 6g channel freq when off-channel
467  * support is enabled.
468  * @Min: 0
469  * @Max: 7115
470  * @Default: 5975
471  *
472  * This ini is used to configure preferred TDLS 6G channel number when
473  * off-channel support is enabled. If this is set to 0, 6Ghz offchannel is
474  * disabled.
475  *
476  * Related: gEnableTDLSSupport, gEnableTDLSOffChannel.
477  *
478  * Supported Feature: TDLS
479  *
480  * Usage: Internal/External
481  *
482  * </ini>
483  */
484 #define CFG_TDLS_PREFERRED_OFF_CHANNEL_FREQ_6G CFG_INI_UINT( \
485 	"tdls_pref_off_chan_freq_6g", \
486 	0, \
487 	7115, \
488 	5975, \
489 	CFG_VALUE_OR_DEFAULT, \
490 	"Preferred TDLS channel frequency for 6ghz channels")
491 
492 /*
493  * <ini>
494  * gTDLSPrefOffChanBandwidth - Preferred TDLS channel bandwidth when
495  * off-channel support is enabled.
496  * @Min: 1
497  * @Max: 15
498  * @Default: 15
499  *
500  * This ini is used to configure preferred TDLS channel bandwidth when
501  * off-channel support is enabled.
502  * 0x1: 20 MHz	0x2: 40 MHz	0x4: 80 MHz	0x8: 160 MHz
503  * When more than one bits are set then firmware starts from the highest and
504  * selects one based on capability of peer. So, that means if 0xF is set that
505  * means fw will try intersect with 160 MHz BW and the peer supported BW.
506  *
507  * Related: gEnableTDLSSupport, gEnableTDLSOffChannel.
508  *
509  * Supported Feature: TDLS
510  *
511  * Usage: Internal/External
512  *
513  * </ini>
514  */
515 #define CFG_TDLS_PREFERRED_OFF_CHANNEL_BW CFG_INI_UINT( \
516 	"gTDLSPrefOffChanBandwidth", \
517 	1, \
518 	15, \
519 	15, \
520 	CFG_VALUE_OR_DEFAULT, \
521 	"Preferred TDLS channel bandwidth")
522 
523 /*
524  * <ini>
525  * gTDLSPuapsdPTIWindow - This ini is used to configure peer traffic indication
526  * window.
527  * @Min: 1
528  * @Max: 5
529  * @Default: 2
530  *
531  * This ini is used to configure buffering time in number of beacon intervals.
532  *
533  * Related: gEnableTDLSSupport.
534  *
535  * Supported Feature: TDLS
536  *
537  * Usage: Internal/External
538  *
539  * </ini>
540  */
541 #define CFG_TDLS_PUAPSD_PEER_TRAFFIC_IND_WINDOW CFG_INI_UINT( \
542 	"gTDLSPuapsdPTIWindow", \
543 	1, \
544 	5, \
545 	2, \
546 	CFG_VALUE_OR_DEFAULT, \
547 	"This ini is used to configure peer traffic indication")
548 
549 /*
550  * <ini>
551  * gTDLSPuapsdPTIWindow - This ini is used to configure peer traffic indication
552  * window.
553  * @Min: 1
554  * @Max: 5
555  * @Default: 2
556  *
557  * This ini is used to configure buffering time in number of beacon intervals.
558  *
559  * Related: gEnableTDLSSupport.
560  *
561  * Supported Feature: TDLS
562  *
563  * Usage: Internal/External
564  *
565  * </ini>
566  */
567 #define CFG_TDLS_PUAPSD_PEER_TRAFFIC_RSP_TIMEOUT CFG_INI_UINT( \
568 	"gTDLSPuapsdPTRTimeout", \
569 	0, \
570 	10000, \
571 	5000, \
572 	CFG_VALUE_OR_DEFAULT, \
573 	"Peer Traffic Response timer duration in ms")
574 
575 /*
576  * <ini>
577  * gTDLSExternalControl - Enable external TDLS control.
578  * @Min: 0
579  * @Max: 2
580  * @Default: 1
581  *
582  * This ini is used to enable/disable external TDLS control.
583  * TDLS external control works with TDLS implicit trigger. TDLS external
584  * control allows a user to add a MAC address of potential TDLS peers so
585  * that the CLD driver can initiate implicit TDLS setup to only those peers
586  * when criteria for TDLS setup (throughput and RSSI threshold) is met.
587  * There are two flavors of external control supported. If control default
588  * is set 1 it means strict external control where only for configured
589  * tdls peer mac address tdls link will be established. If control default
590  * is set 2 liberal tdls external control is needed which means
591  * tdls link will be established with configured peer mac address as well
592  * as any other peer which supports tdls.
593  *
594  * Related: gEnableTDLSSupport, gEnableTDLSImplicitTrigger.
595  *
596  * Supported Feature: TDLS
597  *
598  * Usage: Internal/External
599  *
600  * </ini>
601  */
602 #define CFG_TDLS_EXTERNAL_CONTROL CFG_INI_UINT( \
603 	"gTDLSExternalControl", \
604 	0, \
605 	2, \
606 	1, \
607 	CFG_VALUE_OR_DEFAULT, \
608 	"Enable external TDLS control")
609 
610 /*
611  * <ini>
612  * gEnableTDLSWmmMode - Enables WMM support over TDLS link.
613  * @Min: 0
614  * @Max: 1
615  * @Default: 1
616  *
617  * This ini is used to enable/disable WMM support over TDLS link.
618  * This is required to be set to 1 for any TDLS and uAPSD functionality.
619  *
620  * Related: gEnableTDLSSupport.
621  *
622  * Supported Feature: TDLS
623  *
624  * Usage: Internal/External
625  *
626  * </ini>
627  */
628 #define CFG_TDLS_WMM_MODE_ENABLE CFG_INI_BOOL( \
629 	"gEnableTDLSWmmMode", \
630 	1, \
631 	"Enables WMM support over TDLS link")
632 
633 /*
634  * <ini>
635  * gEnableTDLSScan - Allow scan and maintain TDLS link.
636  * @Min: 0
637  * @Max: 1
638  * @Default: 1
639  *
640  * This ini is used to enable/disable TDLS scan.
641  *  0: If peer is not buffer STA capable and device is not sleep STA
642  *     capable, then teardown TDLS link when scan is initiated. If peer
643  *     is buffer STA and we can be sleep STA then TDLS link is maintained
644  *     during scan.
645  *  1: Maintain TDLS link and allow scan even if peer is not buffer STA
646  *     capable and device is not sleep STA capable. There will be loss of
647  *     Rx pkts since peer would not know when device moves away from tdls
648  *     channel. Tx on TDLS link would stop when device moves away from tdls
649  *     channel.
650  *
651  * Related: gEnableTDLSSupport.
652  *
653  * Supported Feature: TDLS
654  *
655  * Usage: Internal/External
656  *
657  * </ini>
658  */
659 #define CFG_TDLS_SCAN_ENABLE CFG_INI_BOOL( \
660 	"gEnableTDLSScan", \
661 	1, \
662 	"Allow scan and maintain TDLS link")
663 
664 /*
665  * <ini>
666  * gTDLSPeerKickoutThreshold - TDLS peer kick out threshold to firmware.
667  * @Min: 10
668  * @Max: 5000
669  * @Default: 96
670  *
671  * This ini is used to configure TDLS peer kick out threshold to firmware.
672  *     Firmware will use this value to determine, when to send TDLS
673  *     peer kick out event to host.
674  *     E.g.
675  *        if peer kick out threshold is 10, then firmware will wait for 10
676  *        consecutive packet failures and then send TDLS kick out
677  *        notification to host driver
678  *
679  * Related: gEnableTDLSSupport.
680  *
681  * Supported Feature: TDLS
682  *
683  * Usage: Internal/External
684  *
685  * </ini>
686  */
687 #define CFG_TDLS_PEER_KICKOUT_THRESHOLD CFG_INI_UINT( \
688 	"gTDLSPeerKickoutThreshold", \
689 	10, \
690 	5000, \
691 	96, \
692 	CFG_VALUE_OR_DEFAULT, \
693 	"TDLS peer kick out threshold to firmware")
694 /*
695  * <ini>
696  * gTDLSDiscoveryWakeTimeout - TDLS discovery WAKE timeout in ms.
697  * @Min: 10
698  * @Max: 5000
699  * @Default: 96
700  *
701  * DUT will wake until this timeout to receive TDLS discovery response
702  * from peer. If tdls_discovery_wake_timeout is 0x0, the DUT will
703  * choose autonomously what wake timeout value to use.
704  *
705  *
706  * Related: gEnableTDLSSupport.
707  *
708  * Supported Feature: TDLS
709  *
710  * Usage: External
711  *
712  * </ini>
713  */
714  #define CFG_TDLS_DISCOVERY_WAKE_TIMEOUT CFG_INI_UINT( \
715 	"gTDLSDiscoveryWakeTimeout", \
716 	0, \
717 	2000, \
718 	200, \
719 	CFG_VALUE_OR_DEFAULT, \
720 	"TDLS peer kick out threshold to firmware")
721 
722 /*
723  * <ini>
724  * gTDLSEnableDeferTime - Timer to defer for enabling TDLS on P2P listen.
725  * @Min: 500
726  * @Max: 6000
727  * @Default: 2000
728  *
729  * This ini is used to set the timer to defer for enabling TDLS on P2P
730  * listen (value in milliseconds).
731  *
732  * Related: gEnableTDLSSupport.
733  *
734  * Supported Feature: TDLS
735  *
736  * Usage: Internal/External
737  *
738  * </ini>
739  */
740 #define CFG_TDLS_ENABLE_DEFER_TIMER CFG_INI_UINT( \
741 	"gTDLSEnableDeferTime", \
742 	500, \
743 	6000, \
744 	2000, \
745 	CFG_VALUE_OR_DEFAULT, \
746 	"Timer to defer for enabling TDLS on P2P listen")
747 
748 #define CFG_TDLS_ALL \
749 	CFG(CFG_TDLS_QOS_WMM_UAPSD_MASK) \
750 	CFG(CFG_TDLS_BUF_STA_ENABLED) \
751 	CFG(CFG_TDLS_PUAPSD_INACT_TIME) \
752 	CFG(CFG_TDLS_RX_FRAME_THRESHOLD) \
753 	CFG(CFG_TDLS_OFF_CHANNEL_ENABLED) \
754 	CFG(CFG_TDLS_SUPPORT_ENABLE) \
755 	CFG(CFG_TDLS_IMPLICIT_TRIGGER) \
756 	CFG(CFG_TDLS_TX_STATS_PERIOD) \
757 	CFG(CFG_TDLS_TX_PACKET_THRESHOLD) \
758 	CFG(CFG_TDLS_MAX_DISCOVERY_ATTEMPT) \
759 	CFG(CFG_TDLS_MAX_PEER_COUNT) \
760 	CFG(CFG_TDLS_IDLE_TIMEOUT) \
761 	CFG(CFG_TDLS_IDLE_PACKET_THRESHOLD) \
762 	CFG(CFG_TDLS_RSSI_TRIGGER_THRESHOLD) \
763 	CFG(CFG_TDLS_RSSI_TEARDOWN_THRESHOLD) \
764 	CFG(CFG_TDLS_RSSI_DELTA) \
765 	CFG(CFG_TDLS_PREFERRED_OFF_CHANNEL_NUM) \
766 	CFG(CFG_TDLS_PREFERRED_OFF_CHANNEL_FREQ_6G) \
767 	CFG(CFG_TDLS_PREFERRED_OFF_CHANNEL_BW) \
768 	CFG(CFG_TDLS_PUAPSD_PEER_TRAFFIC_IND_WINDOW) \
769 	CFG(CFG_TDLS_PUAPSD_PEER_TRAFFIC_RSP_TIMEOUT) \
770 	CFG(CFG_TDLS_EXTERNAL_CONTROL) \
771 	CFG(CFG_TDLS_WMM_MODE_ENABLE) \
772 	CFG(CFG_TDLS_SCAN_ENABLE) \
773 	CFG(CFG_TDLS_PEER_KICKOUT_THRESHOLD) \
774 	CFG(CFG_TDLS_DISCOVERY_WAKE_TIMEOUT) \
775 	CFG(CFG_TDLS_ENABLE_DEFER_TIMER)
776 
777 #endif
778