xref: /wlan-driver/qcacld-3.0/components/mlme/dispatcher/inc/cfg_mlme_wifi_pos.h (revision 5113495b16420b49004c444715d2daae2066e7dc)
1 /*
2  * Copyright (c) 2012-2020 The Linux Foundation. All rights reserved.
3  * Copyright (c) 2022-2023 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 /**
21  * DOC: This file contains centralized definitions of converged configuration.
22  */
23 
24 #ifndef __CFG_MLME_WIFI_POS_H
25 #define __CFG_MLME_WIFI_POS_H
26 
27 /*
28  * <ini>
29  * gfine_time_meas_cap - fine timing measurement capability information
30  * @Min: 0x0000
31  * @Max: 0x00BD
32  * @Default: 0x000D
33  *
34  * fine timing measurement capability information
35  *
36  * <----- fine_time_meas_cap (in bits) ----->
37  * +---------+-----+-----+-----+-----+------+------+-------+-------+-----+-----+
38  * |  10-31  |  9  |  8  |  7  |  6  |   5  |   4  |   3   |   2   |  1  |  0  |
39  * +---------+-----+-----+-----+-----+------+------+-------+-------+-----+-----+
40  * | reserved| NAN | NAN | SAP | SAP |P2P-GO|P2P-GO|P2P-CLI|P2P-CLI| STA | STA |
41  * |         | resp|init |resp |init |resp  |init  |resp   |init   |resp |init |
42  * +---------+-----+-----+-----+-----+------+------+-------+-------+-----+-----+
43  *
44  * resp - responder role; init- initiator role
45  *
46  * CFG_FINE_TIME_MEAS_CAPABILITY_MAX computed based on the table
47  * +-----------------+-----------------+-----------+
48  * |  Device Role    |   Initiator     | Responder |
49  * +-----------------+-----------------+-----------+
50  * |   Station       |       Y         |     N     |
51  * |   P2P-CLI       |       Y         |     Y     |
52  * |   P2P-GO        |       Y         |     Y     |
53  * |   SAP           |       N         |     Y     |
54  * +-----------------+-----------------+-----------+
55  *
56  * Related: None
57  *
58  * Supported Feature: WIFI POS
59  *
60  * Usage: Internal/External
61  *
62  * </ini>
63  */
64 #define CFG_FINE_TIME_MEAS_CAPABILITY CFG_INI_UINT( \
65 			"gfine_time_meas_cap", \
66 			0x0000, \
67 			0x003BD, \
68 			0x0030D, \
69 			CFG_VALUE_OR_DEFAULT, \
70 			"fine timing measurement capability")
71 
72 /*
73  * <ini>
74  * oem_6g_support_disable - oem 6g support is disabled
75  * @Min: 0
76  * @Max: 1
77  * @Default: 1
78  *
79  * This ini is used to show OEM is 6Ghz disabled. For legacy OEM apps
80  * having no support for 6Ghz, the default value is 1 and thus driver will
81  * not serve 6Ghz info to legacy oem application.
82  * OEM apps supporting 6Ghz sets the ini value to 0 to get 6Ghz
83  * information from driver.
84  *
85  * Related: None
86  *
87  * Supported Feature: WIFI POS
88  *
89  * Usage: Internal/External
90  *
91  * </ini>
92  */
93 #define CFG_OEM_SIXG_SUPPORT_DISABLE CFG_INI_BOOL( \
94 		"oem_6g_support_disable", \
95 		1, \
96 		"oem 6Ghz support Enabled/disabled")
97 /*
98  * <ini>
99  * enable_responder_secure_ltf_support - R-STA secure LTF keyseed support
100  * @Min: false
101  * @Max: true
102  * @Default: false
103  *
104  * This ini is used to enable R-STA advertising secure LTF support.
105  *
106  * Related: None
107  *
108  * Supported Feature: WIFI POS
109  *
110  * Usage: Internal/External
111  *
112  * </ini>
113  */
114 #define CFG_RESPONDER_SECURE_LTF_SUPPORT CFG_INI_BOOL( \
115 		"enable_responder_secure_ltf_support", \
116 		false, \
117 		"enable Responder secure LTF support")
118 
119 /*
120  * <ini>
121  * enable_responder_11az_support - R-STA 11az ranging support
122  * @Min: 0
123  * @Max: 3
124  * @Default: 0
125  *
126  * This ini is used to enable TB and NTB of R-STA advertising 11az ranging
127  * capabilities.
128  *
129  * +-----------+----------+-------+
130  * |  Value    |   TB     |  NTB  |
131  * +-----------+----------+-------+
132  * |   0x0     |    0     |   0   |
133  * |   0x1     |    0     |   1   |
134  * |   0x2     |    1     |   0   |
135  * |   0x3     |    1     |   1   |
136  * +-----------+----------+-------+
137  *
138  * Related: None
139  *
140  * Supported Feature: WIFI POS
141  *
142  * Usage: Internal/External
143  *
144  * </ini>
145  */
146 #define CFG_RESPONDER_11AZ_SUPPORT CFG_INI_UINT( \
147 		"enable_responder_11az_support", \
148 		0, \
149 		3, \
150 		0, \
151 		CFG_VALUE_OR_DEFAULT, \
152 		"enable Responder 11az support")
153 
154 #define CFG_WIFI_POS_ALL \
155 	CFG(CFG_FINE_TIME_MEAS_CAPABILITY) \
156 	CFG(CFG_OEM_SIXG_SUPPORT_DISABLE) \
157 	CFG(CFG_RESPONDER_SECURE_LTF_SUPPORT) \
158 	CFG(CFG_RESPONDER_11AZ_SUPPORT)
159 
160 #endif /* __CFG_MLME_WIFI_POS_H */
161